diff --git a/bower.json b/bower.json index ec20d16..e2a3507 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "grommet", - "version": "0.5.3", + "version": "0.5.4", "main": "grommet.js", "description": "The most advanced UX framework for enterprise applications.", "authors": [ @@ -21,12 +21,11 @@ }, "engine-strict": true, "engines": { - "node": ">= 0.10", - "npm": "^3.3.12" + "node": ">= 4.4.0" }, "dependencies": { "react": "^0.14.2", - "grommet": "^0.5.3" + "grommet": "^0.5.4" }, "ignore": [] } \ No newline at end of file diff --git a/css/grommet-aruba.css b/css/grommet-aruba.css index 6a4bdd5..58c476c 100644 --- a/css/grommet-aruba.css +++ b/css/grommet-aruba.css @@ -431,24 +431,6 @@ ins { ins { border-bottom: 1px solid; } -/*------------------------------------* #BOX-SIZING -\*------------------------------------*/ -/** - * Set the global `box-sizing` state to `border-box`. - * - * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice - * paulirish.com/2012/box-sizing-border-box-ftw - */ -html { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -*, *:before, *:after { - -webkit-box-sizing: inherit; - -moz-box-sizing: inherit; - box-sizing: inherit; } - /*------------------------------------* #SHARED \*------------------------------------*/ /** @@ -583,116 +565,111 @@ img[height] { /* [2] */ max-width: none; } -html, +.grommet, .brand-font { font-family: "Open Sans", Arial, sans-serif; } -html, -body { +.grommet { font-size: 16px; font-size: 1rem; line-height: 24px; } - -h1 { - font-size: 48px; - font-size: 3rem; - line-height: 1.125; } - -h2 { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -h3 { - font-size: 24px; - font-size: 1.5rem; - line-height: 1.25; } - -h4 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h5 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h1, -h2, -h3, -h4, -h5 { - font-weight: 100; - max-width: 100%; } - h1.header--strong, - h1 > strong, - h2.header--strong, - h2 > strong, - h3.header--strong, - h3 > strong, - h4.header--strong, - h4 > strong, - h5.header--strong, - h5 > strong { - font-weight: 600; } - h1 a, - h1 a.anchor, - h2 a, - h2 a.anchor, - h3 a, - h3 a.anchor, - h4 a, - h4 a.anchor, - h5 a, - h5 a.anchor { - color: inherit; - text-decoration: none; } - h1 a:hover, - h1 a.anchor:hover, - h2 a:hover, - h2 a.anchor:hover, - h3 a:hover, - h3 a.anchor:hover, - h4 a:hover, - h4 a.anchor:hover, - h5 a:hover, - h5 a.anchor:hover { + .grommet h1 { + font-size: 48px; + font-size: 3rem; + line-height: 1.125; } + .grommet h2 { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet h3 { + font-size: 24px; + font-size: 1.5rem; + line-height: 1.25; } + .grommet h4 { + font-size: 18px; + font-size: 1.125rem; + line-height: 1.33333; } + .grommet h5 { + font-size: 17px; + font-size: 1.0625rem; + line-height: 1.41176; } + .grommet h6 { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .grommet h1, + .grommet h2, + .grommet h3, + .grommet h4, + .grommet h5, + .grommet h6 { + font-weight: 100; + max-width: 100%; } + .grommet h1.header--strong, + .grommet h1 > strong, + .grommet h2.header--strong, + .grommet h2 > strong, + .grommet h3.header--strong, + .grommet h3 > strong, + .grommet h4.header--strong, + .grommet h4 > strong, + .grommet h5.header--strong, + .grommet h5 > strong, + .grommet h6.header--strong, + .grommet h6 > strong { + font-weight: 600; } + .grommet h1 a, + .grommet h1 a.anchor, + .grommet h2 a, + .grommet h2 a.anchor, + .grommet h3 a, + .grommet h3 a.anchor, + .grommet h4 a, + .grommet h4 a.anchor, + .grommet h5 a, + .grommet h5 a.anchor, + .grommet h6 a, + .grommet h6 a.anchor { + color: inherit; text-decoration: none; } - -p, -dd, -li { - max-width: 576px; - margin-left: 0px; } - -dd { - margin-bottom: 12px; } - -p { - margin-top: 24px; - margin-bottom: 24px; } - -blockquote { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -b, -strong { - font-weight: 600; } - -code.hljs { - border: 1px solid #ccc; } - -.large-number-font { - font-family: "Source Sans Pro", Arial, sans-serif; } - -.secondary { - color: #777; } - -.error { - color: #c8200d; } + .grommet h1 a:hover, + .grommet h1 a.anchor:hover, + .grommet h2 a:hover, + .grommet h2 a.anchor:hover, + .grommet h3 a:hover, + .grommet h3 a.anchor:hover, + .grommet h4 a:hover, + .grommet h4 a.anchor:hover, + .grommet h5 a:hover, + .grommet h5 a.anchor:hover, + .grommet h6 a:hover, + .grommet h6 a.anchor:hover { + text-decoration: none; } + .grommet p, + .grommet dd, + .grommet li { + max-width: 576px; + margin-left: 0px; } + .grommet dd { + margin-bottom: 12px; } + .grommet p { + margin-top: 24px; + margin-bottom: 24px; } + .grommet blockquote { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet b, + .grommet strong { + font-weight: 600; } + .grommet code.hljs { + border: 1px solid rgba(0, 0, 0, 0.15); } + .grommet .large-number-font { + font-family: "Source Sans Pro", Arial, sans-serif; } + .grommet .secondary { + color: #777; } + .grommet .error { + color: #c8200d; } @-webkit-keyframes fadein { from { @@ -706,69 +683,68 @@ code.hljs { to { opacity: 1; } } -input, -select, -textarea { +.grommet input, +.grommet select, +.grommet textarea { font-size: 16px; font-size: 1rem; line-height: 1.5; padding: 11px 23px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 4px 4px 4px 4px; outline: none; - margin-right: 12px; background-color: transparent; } - html.rtl input, html.rtl - select, html.rtl - textarea { + .grommet.rtl .grommet input, .grommet.rtl + .grommet select, .grommet.rtl + .grommet textarea { margin-right: 0; margin-left: 12px; } - input:focus, - select:focus, - textarea:focus { + .grommet input:focus, + .grommet select:focus, + .grommet textarea:focus { padding: 10px 22px; border-width: 2px; border-color: #ff4c00; } - input::-moz-focus-inner, - select::-moz-focus-inner, - textarea::-moz-focus-inner { + .grommet input::-moz-focus-inner, + .grommet select::-moz-focus-inner, + .grommet textarea::-moz-focus-inner { border: none; outline: none; } - input::-webkit-input-placeholder, - select::-webkit-input-placeholder, - textarea::-webkit-input-placeholder { + .grommet input::-webkit-input-placeholder, + .grommet select::-webkit-input-placeholder, + .grommet textarea::-webkit-input-placeholder { color: #aaa; } - input::-moz-placeholder, - select::-moz-placeholder, - textarea::-moz-placeholder { + .grommet input::-moz-placeholder, + .grommet select::-moz-placeholder, + .grommet textarea::-moz-placeholder { color: #aaa; } - input:-ms-input-placeholder, - select:-ms-input-placeholder, - textarea:-ms-input-placeholder { + .grommet input:-ms-input-placeholder, + .grommet select:-ms-input-placeholder, + .grommet textarea:-ms-input-placeholder { color: #aaa; } - input.error, - select.error, - textarea.error { + .grommet input.error, + .grommet select.error, + .grommet textarea.error { border-color: #c8200d; } -input[type="button"], -input[type="submit"] { +.grommet input[type="button"], +.grommet input[type="submit"] { text-align: center; line-height: inherit; } -select { - border-color: #ccc; - padding-right: 24px; +.grommet select { + border-color: rgba(0, 0, 0, 0.15); + padding-right: 48px; -webkit-appearance: none; -moz-appearance: none; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px; cursor: pointer; } - select::-moz-focus-inner { + .grommet select::-moz-focus-inner { border: none; } - select.plain { + .grommet select.plain { border: none; } -input[type=range] { +.grommet input[type=range] { position: relative; -webkit-appearance: none; border-color: transparent; @@ -776,26 +752,26 @@ input[type=range] { padding: 0px; cursor: pointer; overflow-x: hidden; } - input[type=range]:focus { + .grommet input[type=range]:focus { outline: none; } - input[type=range]::-moz-focus-inner { + .grommet input[type=range]::-moz-focus-inner { border: none; } - input[type=range]::-moz-focus-outer { + .grommet input[type=range]::-moz-focus-outer { border: none; } - input[type=range]::-webkit-slider-runnable-track { + .grommet input[type=range]::-webkit-slider-runnable-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-runnable-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-runnable-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-webkit-slider-thumb { + .grommet input[type=range]::-webkit-slider-thumb { position: relative; height: 24px; width: 24px; overflow: visible; -webkit-appearance: none; margin-top: -11px; } - input[type=range]::-webkit-slider-thumb:before { + .grommet input[type=range]::-webkit-slider-thumb:before { content: ""; position: absolute; left: -3000px; @@ -804,9 +780,9 @@ input[type=range] { bottom: 9px; background-color: #ff8300; pointer-events: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:before { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:before { background-color: #fff; } - input[type=range]::-webkit-slider-thumb:after { + .grommet input[type=range]::-webkit-slider-thumb:after { content: ""; position: absolute; border: 2px solid #ff8300; @@ -815,22 +791,22 @@ input[type=range] { border-radius: 24px; background-color: #fff; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:after { background-color: transparent; border-color: #fff; } - input[type=range]:hover::-webkit-slider-thumb:after { + .grommet input[type=range]:hover::-webkit-slider-thumb:after { content: ""; border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-webkit-slider-thumb:after { background-color: #fff; border-color: #fff; } - input[type=range]::-moz-range-track { + .grommet input[type=range]::-moz-range-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-moz-range-thumb { + .grommet input[type=range]::-moz-range-thumb { position: relative; height: 24px; width: 24px; @@ -840,33 +816,33 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-thumb { border-color: #fff; background-color: transparent; } - input[type=range]::hover::-moz-range-thumb { + .grommet input[type=range]::hover::-moz-range-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::hover::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::hover::-moz-range-thumb { border-color: #fff; background-color: #fff; } - input[type=range]::-ms-track { + .grommet input[type=range]::-ms-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); border-color: transparent; color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-fill-lower { + .grommet input[type=range]::-ms-fill-lower { background: #ff8300; border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-lower { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-lower { background: #fff; } - input[type=range]::-ms-fill-upper { + .grommet input[type=range]::-ms-fill-upper { background: rgba(51, 51, 51, 0.2); border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-upper { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-upper { background: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-thumb { + .grommet input[type=range]::-ms-thumb { position: relative; height: 24px; width: 24px; @@ -876,25 +852,27 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-thumb { border-color: #fff; } - input[type=range]:hover::-ms-thumb { + .grommet input[type=range]:hover::-ms-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-ms-thumb { border-color: #fff; background-color: #fff; } -html.rtl, -body.rtl { - direction: rtl; } - @media screen and (min-width: 45em) { - html, - body { + html.grommet { height: 100%; width: 100%; overflow: visible; } } +.grommet { + box-sizing: border-box; } + .grommet.rtl { + direction: rtl; } + .grommet * { + box-sizing: inherit; } + /*------------------------------------* #LIST-BARE \*------------------------------------*/ /** @@ -905,114 +883,109 @@ body.rtl { padding: 0; list-style: none; } -a, +.grommet a:not(.anchor), .anchor { color: #ff8300; text-decoration: none; cursor: pointer; } - a:visited, + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button, + .anchor.plain .grommet a:not(.anchor).button, .grommet a:not(.anchor).plain + .anchor.button, + .anchor.plain + .anchor.button { + text-decoration: none; } + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover, + .anchor.plain .grommet a:not(.anchor).button:hover, .grommet a:not(.anchor).plain + .anchor.button:hover, + .anchor.plain + .anchor.button:hover { + text-decoration: none; } + .grommet a:not(.anchor):visited, .anchor:visited { color: #ff8300; } - a.active, + .grommet a:not(.anchor).active, .anchor.active { color: #333; } - a:hover:not(.anchor--disabled), - .anchor:hover:not(.anchor--disabled) { - text-decoration: underline; - color: #d16b00; } - a__icon, - .anchor__icon { - display: inline-block; - padding: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a.anchor--primary, - .anchor.anchor--primary { - font-size: 19px; - font-size: 1.1875rem; - line-height: 24px; - font-weight: 600; - color: #ff8300; - text-decoration: none; } - a.anchor--primary .control-icon, - .anchor.anchor--primary .control-icon { - stroke: #ff8300; - margin-right: 12px; } - html.rtl a.anchor--primary .control-icon, html.rtl - .anchor.anchor--primary .control-icon { - margin-right: 0; - margin-left: 12px; } - a.anchor--primary > span, - .anchor.anchor--primary > span { - vertical-align: middle; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon { - transform: translateX(3px); - stroke: #ff8300; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline { - stroke-width: 3px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a--disabled, - .anchor--disabled { - opacity: 0.3; + .grommet a:not(.anchor):hover, + .anchor:hover { + color: #d16b00; + text-decoration: underline; } + +.anchor--disabled:hover { + color: #ff8300; } + +.anchor__icon { + display: inline-block; + padding: 12px; } + +.anchor--primary, +.anchor--icon-label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + text-decoration: none; } + .anchor--primary .control-icon, + .anchor--icon-label .control-icon { + vertical-align: middle; + margin-right: 12px; } + html.rtl .anchor--primary .control-icon, html.rtl + .anchor--icon-label .control-icon { + margin-right: 0; + margin-left: 12px; } + .anchor--primary > span, + .anchor--icon-label > span { + vertical-align: middle; } + +.anchor--reverse .control-icon { + margin-right: 0; + margin-left: 12px; } + +.anchor--primary { + color: #ff8300; } + .anchor--primary .control-icon { + stroke: #ff8300; } + .anchor--primary:hover .control-icon { + stroke: #ff8300; + transform: translateX(3px); } + .anchor--primary:hover .control-icon path, + .anchor--primary:hover .control-icon polyline { + stroke-width: 3px; } + .anchor--primary.anchor--disabled .control-icon { + transform: none; } + +.anchor--disabled { + opacity: 0.3; + cursor: default; } + .anchor--disabled .control-icon { cursor: default; } - a--disabled .control-icon, - .anchor--disabled .control-icon { - cursor: default; } -#loading { - position: absolute; - width: 100%; - height: 100%; - background-color: #ddd; - text-align: center; - padding-top: 100px; - font-size: 48px; - color: #ccc; - font-style: italic; } +.anchor--icon { + display: inline-block; } + +.grommet [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a { + color: rgba(255, 255, 255, 0.85); } + .grommet [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover { + color: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover .control-icon { + fill: #fff; + stroke: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } @media screen and (min-width: 45em) { - .app { + .grommet.app { position: absolute; top: 0px; bottom: 0px; @@ -1020,10 +993,10 @@ a, right: 0px; overflow: auto; } } -.app--inline { +.grommet.app--inline { position: relative; } -.app--centered > .split { +.grommet.app--centered > .split { width: 100%; max-width: 960px; margin-left: auto; @@ -1074,7 +1047,7 @@ a, .article > * { flex: 0 0 auto; } -article:not(.article) { +.grommet article:not(.article) { width: 100%; } .attribute { @@ -1095,38 +1068,6 @@ article:not(.article) { background-position: center center; background-size: cover; background-repeat: no-repeat; } - .box__texture { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: -1; - overflow: hidden; } - .box__container { - padding-left: 24px; - padding-right: 24px; } - .box__container--full { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full { - width: calc(100vw - 48px); } - .box__container--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full-horizontal { - width: calc(100vw - 48px); } - .app--centered .box__container > .box { - width: 100%; - max-width: 960px; - margin-left: auto; - margin-right: auto; } - @media screen and (max-width: 44.9375em) { - .app--centered .box__container > .box { - padding-left: 0px; - padding-right: 0px; } } - .box--wrap { - flex-wrap: wrap; } .box--pad-none { padding: 0px; } .box--pad-small { @@ -1159,180 +1100,255 @@ article:not(.article) { .box--pad-vertical-large { padding-top: 48px; padding-bottom: 48px; } - .box--full { - position: relative; - max-width: 100%; - width: 100vw; - min-height: 100vh; - height: 100%; } - .layer__container .box--full { - width: calc(100vw - 48px); } - .box--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box--full-horizontal { - width: calc(100vw - 48px); } - .box--full-vertical { - min-height: 100vh; } - .box--direction-row { - flex-direction: row; } - .box--direction-row.box--reverse { - flex-direction: row-reverse; } - .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 12px; } - html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 0; - margin-left: 12px; } - .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 24px; } - html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 0; - margin-left: 24px; } - .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 48px; } - html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 0; - margin-left: 48px; } - @media screen and (max-width: 44.9375em) { - .box--direction-row.box--responsive { - flex-direction: column; } - .box--direction-row.box--responsive.box--reverse { - flex-direction: column-reverse; } } - .box--direction-column { - flex-direction: column; } - .box--direction-column.box--reverse { - flex-direction: column-reverse; } - .box--direction-column > .header.box--direction-row, - .box--direction-column > .footer.box--direction-row, - .box--direction-column > .header__container--fixed { - flex: 0 0 auto; } - .box--direction-column.box--pad-between-small > *:not(:last-child) { - margin-bottom: 12px; } - .box--direction-column.box--pad-between-medium > *:not(:last-child) { - margin-bottom: 24px; } - .box--direction-column.box--pad-between-large > *:not(:last-child) { - margin-bottom: 48px; } - .box--justify-start { - justify-content: flex-start; } - .box--justify-center { - justify-content: center; } - .box--justify-between { - justify-content: space-between; } - .box--justify-end { - justify-content: flex-end; } - .box--align-start { - align-items: flex-start; } - .box--align-center { - align-items: center; } - .box--align-end { - align-items: flex-end; } - .box--separator-top, .box--separator-horizontal, .box--separator-all { - border-top: 1px solid #ccc; } - .box--separator-bottom, .box--separator-horizontal, .box--separator-all { - border-bottom: 1px solid #ccc; } - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: 1px solid #ccc; } - @media screen and (max-width: 44.9375em) { - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: none; - border-bottom: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: none; - border-bottom: 1px solid #ccc; } } - [class*="background-color-index-"] .box[class*="box--separator"] { - border-color: #eee; } - .box--text-align-left { - text-align: left; } - .box--text-align-center { - text-align: center; } - .box--text-align-right { - text-align: right; } .box > .flex-grow-1, .box > .flex { flex-grow: 1; } - .box--direction-down, .box--direction-up { - flex-direction: column; } - .box--direction-left { - justify-content: flex-end; } - .box--flush { - padding: 0px; } + .box > .no-flex { + flex: 0 0 auto; } + +.box__texture { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; + overflow: hidden; } + +.box__container { + padding-left: 24px; + padding-right: 24px; } + .app--centered .box__container > .box { + width: 100%; + max-width: 960px; + margin-left: auto; + margin-right: auto; } + @media screen and (max-width: 44.9375em) { + .app--centered .box__container > .box { + padding-left: 0px; + padding-right: 0px; } } + +.box__container--full { + max-width: 100%; + width: 100vw; } + +.box__container--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--wrap { + flex-wrap: wrap; } + +.box--full { + position: relative; + max-width: 100%; + width: 100vw; + min-height: 100vh; + height: 100%; } + +.box--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--full-vertical { + min-height: 100vh; } + +.box--direction-row { + flex-direction: row; } + .box--direction-row.box--reverse { + flex-direction: row-reverse; } + .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 12px; } + html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 0; + margin-left: 12px; } + .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 24px; } + html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 0; + margin-left: 24px; } + .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 48px; } + html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 0; + margin-left: 48px; } + @media screen and (max-width: 44.9375em) { + .box--direction-row.box--responsive { + flex-direction: column; } + .box--direction-row.box--responsive:not(.box--justify-center) { + align-items: stretch; } + .box--direction-row.box--responsive.box--reverse { + flex-direction: column-reverse; } } + +.box--direction-column { + flex-direction: column; } + .box--direction-column.box--reverse { + flex-direction: column-reverse; } + .box--direction-column > .header.box--direction-row, + .box--direction-column > .footer.box--direction-row, + .box--direction-column > .header__container--fixed { + flex: 0 0 auto; } + .box--direction-column.box--pad-between-small > *:not(:last-child) { + margin-bottom: 12px; } + .box--direction-column.box--pad-between-medium > *:not(:last-child) { + margin-bottom: 24px; } + .box--direction-column.box--pad-between-large > *:not(:last-child) { + margin-bottom: 48px; } + +.box--justify-start { + justify-content: flex-start; } + +.box--justify-center { + justify-content: center; } + +.box--justify-between { + justify-content: space-between; } + +.box--justify-end { + justify-content: flex-end; } + +.box--align-start { + align-items: flex-start; } + +.box--align-center { + align-items: center; } + +.box--align-end { + align-items: flex-end; } + +.box--align-baseline { + align-items: baseline; } + +.box--align-content-start { + align-content: flex-start; } + +.box--align-content-end { + align-content: flex-end; } + +.box--align-content-center { + align-content: center; } + +.box--align-content-between { + align-content: space-between; } + +.box--align-content-around { + align-content: space-around; } + +.box--separator-top, +.box--separator-horizontal, +.box--separator-all { + border-top: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-bottom, +.box--separator-horizontal, +.box--separator-all { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-left, +.box--separator-vertical, +.box--separator-all { + border-left: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-right, +.box--separator-vertical, +.box--separator-all { + border-right: 1px solid rgba(0, 0, 0, 0.15); } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .box[class*="box--separator"] { + border-color: rgba(255, 255, 255, 0.5); } + +.box--text-align-left { + text-align: left; } + +.box--text-align-center { + text-align: center; } + +.box--text-align-right { + text-align: right; } + +.box--clickable { + cursor: pointer; } .brick { - box-shadow: 1px 1px 5px #eee; padding: 24px; position: relative; - margin: 0 12px 12px 0; float: left; + margin: 0 12px 12px 0; max-width: calc(100% - 12px); } - .brick .brick--label { + .brick__label { position: absolute; top: 0; right: 0; left: 0; - bottom: 0; } - .brick .brick--label span { + bottom: 0; + overflow: hidden; } + .brick__label span { text-transform: uppercase; text-decoration: none; color: #333; position: absolute; left: 24px; bottom: 24px; } + .brick__background { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; } + .brick__container { + position: absolute; + top: 24px; + bottom: 24px; + left: 24px; + right: 24px; + max-width: calc(100% - 48px); } + .brick--clickable:hover, .brick--clickable:focus { + z-index: 1; + transition: transform 0.4s; + transform: scale(1.05); + outline: none; } .brick[class*="background-color-index-"] span { color: #fff; } - -.brick--1-1 { - width: calc(25% - 12px); } - .brick--1-1:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-1 { - width: calc(50% - 12px); } } - -.brick--1-2 { - width: calc(25% - 12px); } - .brick--1-2:after { - padding-top: calc(200% + 60px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-2 { - width: calc(50% - 12px); } } - -.brick--2-1 { - width: calc(50% - 12px); } - .brick--2-1:after { - padding-top: calc(50% - 30px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-1 { - width: calc(100% - 12px); } } - -.brick--2-2 { - width: calc(50% - 12px); } - .brick--2-2:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-2 { - width: calc(100% - 12px); } } - -.brick--content-wrapper { - position: absolute; - top: 24px; - bottom: 24px; - left: 24px; - right: 24px; - max-width: calc(100% - 48px); } - -input[type="button"], -input[type="submit"], -button:not(.button) { + .brick--1-1 { + width: calc(25% - 12px); } + .brick--1-1:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-1 { + width: calc(50% - 12px); } } + .brick--1-2 { + width: calc(25% - 12px); } + .brick--1-2:after { + padding-top: calc(200% + 60px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-2 { + width: calc(50% - 12px); } } + .brick--2-1 { + width: calc(50% - 12px); } + .brick--2-1:after { + padding-top: calc(50% - 30px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-1 { + width: calc(100% - 12px); } } + .brick--2-2 { + width: calc(50% - 12px); } + .brick--2-2:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-2 { + width: calc(100% - 12px); } } + +.grommet input[type="button"], +.grommet input[type="submit"], +.grommet button:not(.button) { padding: 6px 22px; background-color: transparent; border: 2px solid #ff8300; @@ -1347,17 +1363,22 @@ button:not(.button) { outline: none; min-width: 120px; max-width: 384px; } - input[type="button"]:focus:not(.button--disabled), - input[type="submit"]:focus:not(.button--disabled), - button:not(.button):focus:not(.button--disabled) { + .grommet input[type="button"]:focus:not(.button--disabled), + .grommet input[type="submit"]:focus:not(.button--disabled), + .grommet button:not(.button):focus:not(.button--disabled) { border-color: #ff4c00; box-shadow: 0 0 1px 1px #ff4c00; } @media screen and (min-width: 45em) { - input[type="button"], - input[type="submit"], - button:not(.button) { + .grommet input[type="button"], + .grommet input[type="submit"], + .grommet button:not(.button) { transition: 0.1s ease-in-out; } } +.grommet a.button { + text-decoration: none; } + .grommet a.button:hover { + text-decoration: none; } + .button { padding: 6px 22px; background-color: transparent; @@ -1379,104 +1400,131 @@ button:not(.button) { @media screen and (min-width: 45em) { .button { transition: 0.1s ease-in-out; } } - .button__icon { - display: inline-block; - padding: 12px; } - .button--primary { - border-color: #ff8300; - background-color: #ff8300; + +.button__icon { + display: inline-block; + padding: 12px; } + +.button--primary { + border-color: #ff8300; + background-color: #ff8300; + color: #fff; } + .button--primary:hover:not(.button--disabled) { color: #fff; } - .button--secondary { - border-color: rgba(51, 51, 51, 0.6); } - .button--accent { + .button--primary:hover:not(.button--disabled) .button__icon .control-icon { + fill: #fff; + stroke: #fff; } + +.button--secondary { + border-color: rgba(51, 51, 51, 0.6); } + +.button--accent { + border-color: #9fd4c9; } + +.button--plain { + border: none; + padding: 0; + width: auto; + height: auto; + min-width: 0; + max-width: none; + font-weight: inherit; } + .button--plain.button--primary { + background-color: #ff8300; } + .button--plain > span:not(.button__icon):first-child { + margin-left: 12px; } + .button--plain > span:not(.button__icon):last-child { + margin-right: 12px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover .control-icon { + fill: #fff; + stroke: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary) { + border-color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary).button--accent { border-color: #9fd4c9; } - .button--icon { - border: none; - padding: 0; - width: auto; - height: auto; - min-width: 0; - max-width: none; } - .button--icon.button--primary { - background-color: #ff8300; } - .button--icon > span:not(.button__icon) { - vertical-align: middle; } - .button--icon > span:not(.button__icon):first-child { - margin-left: 12px; } - .button--icon > span:not(.button__icon):last-child { - margin-right: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover .control-icon { - fill: #fff; - stroke: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary) { - border-color: #eee; - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary).button--accent { - border-color: #9fd4c9; } - .button--disabled { - opacity: 0.3; - cursor: default; } - .button--fill { - width: 100%; - max-width: none; - flex-grow: 1; } + +.button--disabled { + opacity: 0.3; + cursor: default; } + +.button--icon, +.button:not(.button--fill) { + flex: 0 0 auto; } + +.button--fill { + width: 100%; + max-width: none; + flex-grow: 1; } .calendar { position: relative; display: inline-block; min-width: 288px; } - .calendar__input { - width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .calendar__input:focus { - padding-right: 59px; } - .calendar__control { - position: absolute; - top: 50%; - right: 12px; - transform: translateY(-50%); } - .calendar__drop { - border-top-left-radius: 0px; - border-top-right-radius: 0px; } - .calendar__title { - text-align: center; } - .calendar__grid { - width: 100%; - padding: 12px; } - .calendar__grid table { - width: 100%; } - .calendar__grid th, - .calendar__grid td { - text-align: center; - padding: 6px; } - .calendar__grid th { - color: #777; - font-weight: normal; } - .calendar__day { - display: inline-block; - cursor: pointer; - width: 24px; - height: 24px; - transition: background-color 0.3s; } - .calendar__day:hover { - background-color: rgba(0, 0, 0, 0.1); } - .calendar__day--other-month { - color: #777; } - .calendar__day--active { - background-color: #ff8300; - color: #dbdbdb; } - .calendar--active .calendar__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + +.calendar__input { + width: 100%; + height: 100%; + display: block; + padding-right: 60px; } + .calendar__input:focus { + padding-right: 59px; } + .calendar__input::-ms-clear { + display: none; } + +.calendar__control { + position: absolute; + top: 50%; + right: 12px; + transform: translateY(-50%); } + +.calendar__drop { + border-top-left-radius: 0px; + border-top-right-radius: 0px; } + +.calendar__title { + text-align: center; } + +.calendar__grid { + width: 100%; + padding: 12px; } + .calendar__grid table { + width: 100%; } + .calendar__grid th, + .calendar__grid td { + text-align: center; + padding: 6px; } + .calendar__grid th { + color: #777; + font-weight: normal; } + +.calendar__day { + display: inline-block; + cursor: pointer; + width: 24px; + height: 24px; + transition: background-color 0.3s; } + .calendar__day:hover { + background-color: rgba(221, 221, 221, 0.5); } + +.calendar__day--other-month { + color: #777; } + +.calendar__day--active { + background-color: #ff8300; + color: rgba(255, 255, 255, 0.85); } + +.calendar--active .calendar__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } @-webkit-keyframes carousel-reveal { 0% { @@ -1510,8 +1558,11 @@ button:not(.button) { display: flex; max-width: none; transition: all 0.8s; } - .carousel__item > * { - width: 100%; } + .carousel .tiles.box--direction-row > .tile.carousel__item { + flex: 1 1 100%; + box-sizing: border-box; } + .carousel .tiles.box--direction-row > .tile.carousel__item > * { + width: 100%; } .carousel__arrow { -webkit-animation: carousel-reveal 1s; animation: carousel-reveal 1s; @@ -1524,8 +1575,10 @@ button:not(.button) { filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); -webkit-filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); } .carousel__arrow .control-icon polyline { - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); stroke-width: 1px; } + .carousel__arrow:hover .control-icon polyline { + stroke: #fff; } .carousel__arrow--next { right: 0; } .carousel__arrow--prev { @@ -1547,7 +1600,7 @@ button:not(.button) { display: inline-block; width: 36px; height: 36px; - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); fill: transparent; cursor: pointer; filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); @@ -1561,6 +1614,12 @@ button:not(.button) { opacity: 0; -webkit-animation: carousel-hide 1s; animation: carousel-hide 1s; } + .carousel img { + -webkit-user-drag: none; + -khtml-user-drag: none; + -moz-user-drag: none; + -o-user-drag: none; + user-drag: none; } .carousel-controls__control { width: 36px; @@ -1592,13 +1651,11 @@ button:not(.button) { position: relative; display: block; } .chart__grid { - stroke: #ccc; } + stroke: rgba(0, 0, 0, 0.15); } .chart__graphic { width: 100%; height: 192px; max-height: calc(100vh - 144px); } - .chart__graphic:focus { - outline: #ff4c00 solid 1px; } @media screen and (min-width: 45em) { .chart__values g { -webkit-animation: reveal-chart 1.5s; @@ -2033,150 +2090,157 @@ button:not(.button) { cursor: pointer; } .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__label { color: #fff; } .check-box > :first-child { margin-right: 12px; } html.rtl .check-box > :first-child { margin-right: 0; margin-left: 12px; } - .check-box__input { - opacity: 0; - position: absolute; } - .check-box__input:checked + .check-box__control { - border-color: #ff8300; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control { - border-color: #fff; } - .check-box__input:checked + .check-box__control .check-box__control-check { - display: block; } - .check-box__input:checked + .check-box__control + .check-box__label { - color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control + .check-box__label { - color: #fff; } - .check-box__input:focus + .check-box__control { - border-color: #ff4c00; - box-shadow: 0 0 1px 1px #ff4c00; } - .check-box__control { - position: relative; - top: -1px; - display: inline-block; - width: 24px; - height: 24px; - vertical-align: middle; - background-color: inherit; - border: 2px solid #999; - border-radius: 4px 4px 4px 4px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control { - border-color: #dbdbdb; } - .check-box__control-check { - position: absolute; - top: -2px; - left: -2px; - display: none; - width: 24px; - height: 24px; - stroke-width: 4px; - stroke: #ff8300; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control-check { - stroke: #fff; } - .check-box__label { - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__label { - color: #dbdbdb; } - .check-box--disabled .check-box__control { - opacity: 0.5; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - background-color: #fff; + +.check-box__input { + opacity: 0; + position: absolute; } + .check-box__input:checked + .check-box__control { + border-color: #ff8300; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control { border-color: #fff; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + .check-box__input:checked + .check-box__control .check-box__control-check { + display: block; } + .check-box__input:checked + .check-box__control + .check-box__label { + color: #333; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control + .check-box__label { + color: #fff; } + .check-box__input:focus + .check-box__control { + border-color: #ff4c00; + box-shadow: 0 0 1px 1px #ff4c00; } + +.check-box__control { + position: relative; + top: -1px; + display: inline-block; + width: 24px; + height: 24px; + vertical-align: middle; + background-color: inherit; + border: 2px solid #999; + border-radius: 4px 4px 4px 4px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control { + border-color: rgba(255, 255, 255, 0.7); } + +.check-box__control-check { + position: absolute; + top: -2px; + left: -2px; + display: none; + width: 24px; + height: 24px; + stroke-width: 4px; + stroke: #ff8300; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control-check { + stroke: #fff; } + +.check-box__label { + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__label { + color: rgba(255, 255, 255, 0.85); } + +.check-box--disabled .check-box__control { + opacity: 0.5; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle .check-box__control { + width: 48px; + height: 24px; + border-radius: 24px; + background-color: rgba(51, 51, 51, 0.2); + border: none; + transition: background-color 0.3s; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + .check-box--toggle .check-box__control:after { content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { - background-color: #fff; - border-color: #fff; } - .check-box--toggle .check-box__control { - width: 48px; - height: 24px; + display: block; + position: absolute; + top: -2px; + left: 0px; + width: 28px; + height: 28px; + background-color: #fff; + border: 2px solid #999; border-radius: 24px; - background-color: rgba(51, 51, 51, 0.2); - border: none; - transition: background-color 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - .check-box--toggle .check-box__control:after { - content: ""; - display: block; - position: absolute; - top: -2px; - left: 0px; - width: 28px; - height: 28px; - background-color: #fff; - border: 2px solid #999; - border-radius: 24px; - transition: margin-left 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control:after { - background-color: transparent; - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: #ff8300; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - stroke: transparent; } - .check-box--toggle .check-box__input:checked + .check-box__control:after { - content: ""; - background-color: #fff; - border-color: #ff8300; - margin-left: 24px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - display: none; } + transition: margin-left 0.3s; + box-sizing: border-box; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control:after { + background-color: transparent; + border-color: rgba(255, 255, 255, 0.7); } + +.check-box--toggle .check-box__input:checked + .check-box__control { + background-color: #ff8300; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + stroke: transparent; } + .check-box--toggle .check-box__input:checked + .check-box__control:after { + content: ""; + background-color: #fff; + border-color: #ff8300; + margin-left: 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { + border-color: rgba(255, 255, 255, 0.7); } + .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + display: none; } -.background-color-index-dark { +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) { color: #fff; } +.background-color-index-brand { + background-color: #ff8300; } + .background-color-index-neutral-1, .background-color-index-neutral-4 { - background-color: #545454; - color: #fff; } + background-color: #545454; } .background-color-index-neutral-1-a, .background-color-index-neutral-4-a { - background-color: rgba(84, 84, 84, 0.8); - color: #fff; } + background-color: rgba(84, 84, 84, 0.8); } .background-color-index-neutral-2, .background-color-index-neutral-5 { - background-color: #767676; - color: #fff; } + background-color: #767676; } .background-color-index-neutral-2-a, .background-color-index-neutral-5-a { - background-color: rgba(118, 118, 118, 0.8); - color: #fff; } + background-color: rgba(118, 118, 118, 0.8); } .background-color-index-neutral-3, .background-color-index-neutral-6 { - background-color: #989898; - color: #fff; } + background-color: #989898; } .background-color-index-neutral-3-a, .background-color-index-neutral-6-a { - background-color: rgba(152, 152, 152, 0.8); - color: #fff; } + background-color: rgba(152, 152, 152, 0.8); } .background-color-index-accent-1, .background-color-index-accent-3 { @@ -2188,43 +2252,35 @@ button:not(.button) { .background-color-index-accent-2, .background-color-index-accent-4 { - background-color: #d5d848; - color: #fff; } + background-color: #d5d848; } .background-color-index-accent-2-a, .background-color-index-accent-4-a { - background-color: rgba(213, 216, 72, 0.8); - color: #fff; } + background-color: rgba(213, 216, 72, 0.8); } .background-color-index-grey-1, .background-color-index-grey-4 { - background-color: #2d3034; - color: #fff; } + background-color: #2d3034; } .background-color-index-grey-1-a, .background-color-index-grey-4-a { - background-color: rgba(45, 48, 52, 0.8); - color: #fff; } + background-color: rgba(45, 48, 52, 0.8); } .background-color-index-grey-2, .background-color-index-grey-5 { - background-color: #52555a; - color: #fff; } + background-color: #52555a; } .background-color-index-grey-2-a, .background-color-index-grey-5-a { - background-color: rgba(82, 85, 90, 0.8); - color: #fff; } + background-color: rgba(82, 85, 90, 0.8); } .background-color-index-grey-3, .background-color-index-grey-6 { - background-color: #999999; - color: #fff; } + background-color: #999999; } .background-color-index-grey-3-a, .background-color-index-grey-6-a { - background-color: rgba(153, 153, 153, 0.8); - color: #fff; } + background-color: rgba(153, 153, 153, 0.8); } .background-color-index-graph-1, .background-color-index-graph-6 { @@ -2232,57 +2288,45 @@ button:not(.button) { .background-color-index-graph-2, .background-color-index-graph-7 { - background-color: #0049a0; - color: #fff; } + background-color: #0049a0; } .background-color-index-graph-3, .background-color-index-graph-8 { - background-color: #886f9c; - color: #fff; } + background-color: #886f9c; } .background-color-index-graph-4, .background-color-index-graph-9 { - background-color: #5fbcdd; - color: #fff; } + background-color: #5fbcdd; } .background-color-index-graph-5, .background-color-index-graph-10 { - background-color: #7fba44; - color: #fff; } + background-color: #7fba44; } .background-color-index-critical { - background-color: #c8200d; - color: #fff; } + background-color: #c8200d; } .background-color-index-error { - background-color: #c8200d; - color: #fff; } + background-color: #c8200d; } .background-color-index-warning { - background-color: #e57118; - color: #fff; } + background-color: #e57118; } .background-color-index-ok { - background-color: #2aac24; - color: #fff; } + background-color: #2aac24; } .background-color-index-unknown { - background-color: #999999; - color: #fff; } + background-color: #999999; } .background-color-index-disabled { - background-color: #999999; - color: #fff; } + background-color: #999999; } .background-color-index-light-1, .background-color-index-light-3 { - background-color: #ffffff; - color: #333; } + background-color: #ffffff; } .background-color-index-light-2, .background-color-index-light-4 { - background-color: #f5f5f5; - color: #333; } + background-color: #f5f5f5; } .center-column { padding-left: 24px; @@ -2293,6 +2337,22 @@ button:not(.button) { margin-left: auto; margin-right: auto; } +.columns { + display: flex; + flex-direction: row; + width: 100%; } + +.columns__column { + flex: 0 0 192px; + display: flex; + flex-direction: column; } + +.columns--small > .columns__column { + flex-basis: 96px; } + +.columns--large > .columns__column { + flex-basis: 384px; } + @media screen and (min-width: 45em) { .dashboard { height: calc(100vh - 96px); } } @@ -2302,249 +2362,309 @@ button:not(.button) { height: calc(100vh - 48px); } } .distribution { - position: relative; - display: block; } - .distribution__graphic { - width: 100%; - height: 192px; - max-height: calc(100vh - 144px); } - .distribution__graphic:focus { - outline: #ff4c00 solid 1px; } - .distribution__background { - fill: #f5f5f5; } - .distribution__item--clickable { - cursor: pointer; } - .distribution__item-box.color-index-unset { - fill: #ddd; } - .distribution__item-box.color-index-brand { - fill: #ff8300; } - .distribution__item-box.color-index-critical { - fill: #c8200d; } - .distribution__item-box.color-index-error { - fill: #c8200d; } - .distribution__item-box.color-index-warning { - fill: #e57118; } - .distribution__item-box.color-index-ok { - fill: #2aac24; } - .distribution__item-box.color-index-unknown { - fill: #999999; } - .distribution__item-box.color-index-disabled { - fill: #999999; } - .distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-6 { - fill: #ec9b58; } - .distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-7 { - fill: #0049a0; } - .distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-8 { - fill: #886f9c; } - .distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-9 { - fill: #5fbcdd; } - .distribution__item-box.color-index-graph-5, .distribution__item-box.color-index-graph-10 { - fill: #7fba44; } - .distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-3 { - fill: #9fd4c9; } - .distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-4 { - fill: #d5d848; } - .distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-4 { - fill: #2d3034; } - .distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-5 { - fill: #52555a; } - .distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-6 { - fill: #999999; } - .distribution__item-icons.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__item-icons.color-index-unset { - stroke: #ddd; } - .distribution__item-icons.color-index-brand { - stroke: #ff8300; } - .distribution__item-icons.color-index-critical { - stroke: #c8200d; } - .distribution__item-icons.color-index-error { - stroke: #c8200d; } - .distribution__item-icons.color-index-warning { - stroke: #e57118; } - .distribution__item-icons.color-index-ok { - stroke: #2aac24; } - .distribution__item-icons.color-index-unknown { - stroke: #999999; } - .distribution__item-icons.color-index-disabled { - stroke: #999999; } - .distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-6 { - stroke: #ec9b58; } - .distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-7 { - stroke: #0049a0; } - .distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-8 { - stroke: #886f9c; } - .distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-9 { - stroke: #5fbcdd; } - .distribution__item-icons.color-index-graph-5, .distribution__item-icons.color-index-graph-10 { - stroke: #7fba44; } - .distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-4 { - stroke: #2d3034; } - .distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-5 { - stroke: #52555a; } - .distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-6 { - stroke: #999999; } - .distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-3 { - stroke: #9fd4c9; } - .distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-4 { + position: relative; } + +.distribution__graphic { + width: 100%; + height: 192px; + max-height: calc(100vh - 144px); } + +.distribution__background { + fill: #f5f5f5; } + +.distribution__item--clickable { + cursor: pointer; } + +.distribution__item-box.color-index-unset { + fill: #ddd; } + +.distribution__item-box.color-index-brand { + fill: #ff8300; } + +.distribution__item-box.color-index-critical { + fill: #c8200d; } + +.distribution__item-box.color-index-error { + fill: #c8200d; } + +.distribution__item-box.color-index-warning { + fill: #e57118; } + +.distribution__item-box.color-index-ok { + fill: #2aac24; } + +.distribution__item-box.color-index-unknown { + fill: #999999; } + +.distribution__item-box.color-index-disabled { + fill: #999999; } + +.distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-6 { + fill: #ec9b58; } + +.distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-7 { + fill: #0049a0; } + +.distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-8 { + fill: #886f9c; } + +.distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-9 { + fill: #5fbcdd; } + +.distribution__item-box.color-index-graph-5, .distribution__item-box.color-index-graph-10 { + fill: #7fba44; } + +.distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-3 { + fill: #9fd4c9; } + +.distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-4 { + fill: #d5d848; } + +.distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-4 { + fill: #2d3034; } + +.distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-5 { + fill: #52555a; } + +.distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-6 { + fill: #999999; } + +.distribution__item-icons.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.distribution__item-icons.color-index-unset { + stroke: #ddd; } + +.distribution__item-icons.color-index-brand { + stroke: #ff8300; } + +.distribution__item-icons.color-index-critical { + stroke: #c8200d; } + +.distribution__item-icons.color-index-error { + stroke: #c8200d; } + +.distribution__item-icons.color-index-warning { + stroke: #e57118; } + +.distribution__item-icons.color-index-ok { + stroke: #2aac24; } + +.distribution__item-icons.color-index-unknown { + stroke: #999999; } + +.distribution__item-icons.color-index-disabled { + stroke: #999999; } + +.distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-6 { + stroke: #ec9b58; } + +.distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-7 { + stroke: #0049a0; } + +.distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-8 { + stroke: #886f9c; } + +.distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-9 { + stroke: #5fbcdd; } + +.distribution__item-icons.color-index-graph-5, .distribution__item-icons.color-index-graph-10 { + stroke: #7fba44; } + +.distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-4 { + stroke: #2d3034; } + +.distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-5 { + stroke: #52555a; } + +.distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-6 { + stroke: #999999; } + +.distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-3 { + stroke: #9fd4c9; } + +.distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-4 { + stroke: #d5d848; } + +.distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + stroke: #ffffff; } + +.distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + stroke: #f5f5f5; } + +.distribution__label { + position: absolute; + font-family: "Source Sans Pro", Arial, sans-serif; + overflow: hidden; + text-align: left; + pointer-events: none; } + .distribution__label.color-index-brand { + color: #fff; } + .distribution__label.color-index-critical { + color: #fff; } + .distribution__label.color-index-error { + color: #fff; } + .distribution__label.color-index-warning { + color: #fff; } + .distribution__label.color-index-ok { + color: #fff; } + .distribution__label.color-index-unknown { + color: #fff; } + .distribution__label.color-index-disabled { + color: #fff; } + .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-4 { + color: #fff; } + .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-5 { + color: #fff; } + .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-6 { + color: #fff; } + .distribution__label.color-index-graph-2, .distribution__label.color-index-graph-7 { + color: #fff; } + .distribution__label.color-index-graph-3, .distribution__label.color-index-graph-8 { + color: #fff; } + .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-9 { + color: #fff; } + .distribution__label.color-index-graph-5, .distribution__label.color-index-graph-10 { + color: #fff; } + .distribution__label.color-index-accent-2, .distribution__label.color-index-accent-4 { + color: #fff; } + .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-4 { + color: #fff; } + .distribution__label.color-index-grey-2, .distribution__label.color-index-grey-5 { + color: #fff; } + .distribution__label.color-index-grey-3, .distribution__label.color-index-grey-6 { + color: #fff; } + +.distribution__label-value { + display: block; + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; } + +.distribution__label-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + font-weight: normal; } + +.distribution__label-label { + display: block; } + +.distribution__label--active { + color: #333; } + +.distribution__label--thin .distribution__label-value, +.distribution__label--thin .distribution__label-label { + display: inline-block; } + +.distribution__label--small .distribution__label-value, +.distribution__label--small .distribution__label-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1; + margin-right: 4px; } + +.distribution__label--icons { + padding: 0 12px 12px 0; + background-color: rgba(255, 255, 255, 0.8); + color: #333; } + .distribution__label--icons .label-value { + line-height: 1; } + .distribution__label--icons .label-units { + color: #777; } + .distribution__label--icons .label-label { + display: block; } + +.distribution__loading-indicator { + stroke-width: 24px; } + .distribution__loading-indicator.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .distribution__loading-indicator.color-index-unset { + stroke: #ddd; } + .distribution__loading-indicator.color-index-brand { + stroke: #ff8300; } + .distribution__loading-indicator.color-index-critical { + stroke: #c8200d; } + .distribution__loading-indicator.color-index-error { + stroke: #c8200d; } + .distribution__loading-indicator.color-index-warning { + stroke: #e57118; } + .distribution__loading-indicator.color-index-ok { + stroke: #2aac24; } + .distribution__loading-indicator.color-index-unknown { + stroke: #999999; } + .distribution__loading-indicator.color-index-disabled { + stroke: #999999; } + .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-6 { + stroke: #ec9b58; } + .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-7 { + stroke: #0049a0; } + .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-8 { + stroke: #886f9c; } + .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-9 { + stroke: #5fbcdd; } + .distribution__loading-indicator.color-index-graph-5, .distribution__loading-indicator.color-index-graph-10 { + stroke: #7fba44; } + .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-4 { + stroke: #2d3034; } + .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-5 { + stroke: #52555a; } + .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-6 { + stroke: #999999; } + .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-3 { + stroke: #9fd4c9; } + .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-4 { stroke: #d5d848; } - .distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { stroke: #ffffff; } - .distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { stroke: #f5f5f5; } - .distribution__label { - position: absolute; - padding: 6px 12px; - font-family: "Source Sans Pro", Arial, sans-serif; - overflow: hidden; - text-align: left; - pointer-events: none; } - .distribution__label.color-index-brand { - color: #fff; } - .distribution__label.color-index-critical { - color: #fff; } - .distribution__label.color-index-error { - color: #fff; } - .distribution__label.color-index-warning { - color: #fff; } - .distribution__label.color-index-ok { - color: #fff; } - .distribution__label.color-index-unknown { - color: #fff; } - .distribution__label.color-index-disabled { - color: #fff; } - .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-4 { - color: #fff; } - .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-5 { - color: #fff; } - .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-6 { - color: #fff; } - .distribution__label.color-index-graph-2, .distribution__label.color-index-graph-7 { - color: #fff; } - .distribution__label.color-index-graph-3, .distribution__label.color-index-graph-8 { - color: #fff; } - .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-9 { - color: #fff; } - .distribution__label.color-index-graph-5, .distribution__label.color-index-graph-10 { - color: #fff; } - .distribution__label.color-index-accent-2, .distribution__label.color-index-accent-4 { - color: #fff; } - .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-4 { - color: #fff; } - .distribution__label.color-index-grey-2, .distribution__label.color-index-grey-5 { - color: #fff; } - .distribution__label.color-index-grey-3, .distribution__label.color-index-grey-6 { - color: #fff; } - .distribution__label-value { - display: block; - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; } - .distribution__label-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - font-weight: normal; } - .distribution__label-label { - display: block; } - .distribution__label--active { - color: #333; } - .distribution__label--thin .distribution__label-value, - .distribution__label--thin .distribution__label-label { - display: inline-block; } - .distribution__label--small .distribution__label-value, - .distribution__label--small .distribution__label-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1; - margin-right: 4px; } - .distribution__label--icons { - padding: 0 12px 12px 0; - background-color: rgba(255, 255, 255, 0.8); - color: #333; } - .distribution__label--icons .label-value { - line-height: 1; } - .distribution__label--icons .label-units { - color: #777; } - .distribution__label--icons .label-label { - display: block; } - .distribution__loading-indicator { - stroke-width: 24px; } - .distribution__loading-indicator.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__loading-indicator.color-index-unset { - stroke: #ddd; } - .distribution__loading-indicator.color-index-brand { - stroke: #ff8300; } - .distribution__loading-indicator.color-index-critical { - stroke: #c8200d; } - .distribution__loading-indicator.color-index-error { - stroke: #c8200d; } - .distribution__loading-indicator.color-index-warning { - stroke: #e57118; } - .distribution__loading-indicator.color-index-ok { - stroke: #2aac24; } - .distribution__loading-indicator.color-index-unknown { - stroke: #999999; } - .distribution__loading-indicator.color-index-disabled { - stroke: #999999; } - .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-6 { - stroke: #ec9b58; } - .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-7 { - stroke: #0049a0; } - .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-8 { - stroke: #886f9c; } - .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-9 { - stroke: #5fbcdd; } - .distribution__loading-indicator.color-index-graph-5, .distribution__loading-indicator.color-index-graph-10 { - stroke: #7fba44; } - .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-4 { - stroke: #2d3034; } - .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-5 { - stroke: #52555a; } - .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-6 { - stroke: #999999; } - .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-3 { - stroke: #9fd4c9; } - .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-4 { - stroke: #d5d848; } - .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { - stroke: #ffffff; } - .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { - stroke: #f5f5f5; } - .distribution--icons .distribution__label { - padding: 0 12px 12px 0; } - .distribution--icons .distribution__label-value { - line-height: 1; } - .distribution--small .distribution__graphic { - height: 96px; } - .distribution--large .distribution__graphic { - height: 288px; } - .distribution--full { - height: 100%; } - .distribution--full .distribution__graphic { - height: 100%; - max-height: 100%; } -.drop { - position: fixed; +.distribution--icons .distribution__label { + padding: 0 12px 12px 0; } + +.distribution--icons .distribution__label-value { + line-height: 1; } + +.distribution--small .distribution__graphic { + height: 96px; } + +.distribution--large .distribution__graphic { + height: 288px; } + +.distribution--full { + height: 100%; } + .distribution--full .distribution__graphic { + width: auto; + height: auto; + max-height: 100%; + max-width: 100%; } + +.grommet.drop { + position: absolute; z-index: 20; - background-color: rgba(255, 255, 255, 0.9); - border: none; border-radius: 4px 4px 4px 4px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); overflow: auto; } + .grommet.drop:not([class*="background-color-index-"]) { + background-color: rgba(248, 248, 248, 0.95); + border: none; + box-shadow: none; } .footer { min-height: 36px; line-height: 36px; width: 100%; } + .footer.box--direction-row > h1, + .footer.box--direction-row > h2, + .footer.box--direction-row > h3, + .footer.box--direction-row > h4 { + margin-bottom: 0px; } .footer__content { display: flex; justify-content: space-between; @@ -2597,9 +2717,12 @@ button:not(.button) { .footer--flush .footer__content { padding-left: 0px; padding-right: 0px; } - .footer--large .footer__content { - padding-top: 24px; - padding-bottom: 24px; } + .footer--large { + min-height: 96px; + line-height: 96px; } + .footer--small { + min-height: 24px; + line-height: 24px; } .footer__container--float { position: absolute; bottom: 0px; @@ -2614,13 +2737,12 @@ button:not(.button) { right: 0px; } .form { - position: relative; } + position: relative; + width: 480px; + max-width: 100%; } @media screen and (min-width: 45em) { - .form { - width: 480px; - max-width: 100%; } - .form .form-field .tiles__container { - max-width: 480px; } } + .form .form-field .tiles__container { + max-width: 480px; } } .form--pad-none { padding: 0px; } .form--pad-small { @@ -2689,7 +2811,7 @@ button:not(.button) { .form-field { position: relative; padding: 6px 24px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-bottom: -1px; background-color: #fff; color: #333; @@ -2702,210 +2824,223 @@ button:not(.button) { @media screen and (max-width: 44.9375em) { .form-field { display: block; } } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field { background-color: transparent; - color: #dbdbdb; } + color: rgba(255, 255, 255, 0.85); } .form--fill .form-field { width: 100%; } .form-field:last-child { margin-bottom: 0px; } - .form-field__label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 24px; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__label { - color: #dbdbdb; } - .form-field__contents { + +.form-field__label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 24px; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__label { + color: rgba(255, 255, 255, 0.85); } + +.form-field__contents { + display: block; + margin-left: -24px; + margin-right: -24px; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input, + .form-field__contents > textarea { display: block; - margin-left: -24px; - margin-right: -24px; } - .form-field__contents > input[type=text], - .form-field__contents > input[type=range], - .form-field__contents > input[type=email], - .form-field__contents > input[type=password], - .form-field__contents > input[type=number], - .form-field__contents > input[type=file], - .form-field__contents > select, - .form-field__contents > .search-input input, - .form-field__contents > .calendar input, - .form-field__contents > textarea { - display: block; - width: 100%; + width: 100%; + border: none; + padding: 0 24px; + border-radius: 0px; + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > input[type=text]:focus, + .form-field__contents > input[type=range]:focus, + .form-field__contents > input[type=email]:focus, + .form-field__contents > input[type=password]:focus, + .form-field__contents > input[type=number]:focus, + .form-field__contents > input[type=file]:focus, + .form-field__contents > select:focus, + .form-field__contents > .search-input input:focus, + .form-field__contents > .calendar input:focus, + .form-field__contents > textarea:focus { border: none; - padding: 0px; - padding-left: 24px; - padding-right: 24px; - border-radius: 0px; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > input[type=text]:focus, - .form-field__contents > input[type=range]:focus, - .form-field__contents > input[type=email]:focus, - .form-field__contents > input[type=password]:focus, - .form-field__contents > input[type=number]:focus, - .form-field__contents > input[type=file]:focus, - .form-field__contents > select:focus, - .form-field__contents > .search-input input:focus, - .form-field__contents > .calendar input:focus, - .form-field__contents > textarea:focus { - border: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > textarea { - color: #fff; } - .form-field__contents > input[type=range] { - width: calc(100% - 48px); - margin-left: 24px; - margin-right: 24px; - padding-left: 0px; - padding-right: 0px; } - .form-field__contents > select { - display: block; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); - background-position: center right 18px; - padding-left: 22px; } - html.rtl .form-field__contents > select { - background-position: center left 18px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > select { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } - .form-field__contents > select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #000; } - .form-field__contents ::-ms-clear { - display: none; } - .form-field__contents > select::-ms-expand { - display: none; } - .form-field__contents > select::-ms-value { - background: none; - color: inherit; } + padding: 0 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > textarea { - vertical-align: top; - height: auto; - resize: vertical; } - .form-field__contents > .check-box, - .form-field__contents > .radio-button { - display: block; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; - margin-top: 12px; - margin-bottom: 12px; - margin-left: 24px; - margin-right: 24px; } - .form-field__contents > .search-input, - .form-field__contents > .calendar { - display: block; } - .form-field__contents > .search-input input, - .form-field__contents > .calendar input { - margin-left: 0px; - margin-right: 0px; } - .form-field__contents > .search-input .search-input__control, - .form-field__contents > .search-input .calendar__control, - .form-field__contents > .calendar .search-input__control, - .form-field__contents > .calendar .calendar__control { - top: auto; - right: 6px; - transform: none; - bottom: -6px; } - html.rtl .form-field__contents > .search-input .search-input__control, html.rtl - .form-field__contents > .search-input .calendar__control, html.rtl - .form-field__contents > .calendar .search-input__control, html.rtl - .form-field__contents > .calendar .calendar__control { - right: auto; - left: 6px; } - .form-field__contents > .number-input { - display: flex; - padding-right: 6px; } - html.rtl .form-field__contents > .number-input { - padding-right: 0; - padding-left: 6px; } - .form-field__contents > .number-input input[type=number] { - display: inline-block; - flex: 1; - border: none; } - .form--compact .form-field__contents > .number-input input[type=number] { - width: 144px; } - .form-field__contents > input[type=file] { - display: inline-block; } - .form-field__contents > .table--selectable { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > .table--selectable table { - margin-bottom: 0px; } - .form-field__contents > .table--selectable table td:first-child, - .form-field__contents > .table--selectable table th:first-child { - padding-left: 24px; } - .form-field__contents > .form-field { - width: auto; - margin-top: 12px; - border: none; } - .form-field__contents > .form-field > .form-field__label { - border-top: 1px solid #ccc; - padding-top: 6px; } - .form-field__contents > .form-field--hidden { - margin-top: 0px; } - .form-field__help { + color: #fff; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + height: 24px; } + .form-field__contents > input[type=range] { + width: calc(100% - 48px); + margin-left: 24px; + margin-right: 24px; + padding-left: 0px; + padding-right: 0px; } + .form-field__contents > select { display: block; - font-size: 13px; - font-size: 0.8125rem; - line-height: 1.84615; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__help { - color: #dbdbdb; } - .form-field__error { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); + background-position: center right 18px; } + html.rtl .form-field__contents > select { + background-position: center left 18px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > select { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } + .form-field__contents > select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #000; } + .form-field__contents > select::-ms-expand { + display: none; } + .form-field__contents > select::-ms-value { + background: none; + color: inherit; } + .form-field__contents > textarea { + vertical-align: top; + height: auto; + resize: vertical; } + .form-field__contents > .check-box, + .form-field__contents > .radio-button { display: block; - float: right; - color: #c8200d; - line-height: 24px; } - html.rtl .form-field__error { - float: left; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__error { - color: #dbdbdb; } - .form-field--text { - cursor: pointer; } - .form-field--text .form-field__label { - cursor: pointer; } - @media screen and (max-width: 44.9375em) { - .form-field--hidden { - display: none; } } - @media screen and (min-width: 45em) { - .form-field--hidden { - border: none; - margin-bottom: 0px; - padding-top: 0px; - padding-bottom: 0px; - opacity: 0; - overflow: hidden; - max-height: 0px; - transition: max-height 0.2s, all 0.4s; } } - .form-field--error { - z-index: 1; - border-color: #c8200d; } - .form-field--focus { - z-index: 2; - border-color: #ff4c00; } + font-size: 16px; + font-size: 1rem; + line-height: 1.5; + margin-top: 12px; + margin-bottom: 12px; + margin-left: 24px; + margin-right: 24px; } + .form-field__contents > .search-input, + .form-field__contents > .calendar { + display: block; } + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + margin-left: 0px; + margin-right: 0px; } + .form-field__contents > .search-input .search-input__control, + .form-field__contents > .search-input .calendar__control, + .form-field__contents > .calendar .search-input__control, + .form-field__contents > .calendar .calendar__control { + top: auto; + right: 6px; + transform: none; + bottom: -6px; } + html.rtl .form-field__contents > .search-input .search-input__control, html.rtl + .form-field__contents > .search-input .calendar__control, html.rtl + .form-field__contents > .calendar .search-input__control, html.rtl + .form-field__contents > .calendar .calendar__control { + right: auto; + left: 6px; } + .form-field__contents > .number-input { + display: flex; + padding-right: 6px; } + html.rtl .form-field__contents > .number-input { + padding-right: 0; + padding-left: 6px; } + .form-field__contents > .number-input input[type=number] { + display: inline-block; + flex: 1; + border: none; + padding: 0 24px; } + .form-field__contents > .number-input input[type=number]:focus { + padding: 0 24px; } + .form--compact .form-field__contents > .number-input input[type=number] { + width: 144px; } + .form-field__contents > input[type=file] { + display: inline-block; } + .form-field__contents > .table--selectable { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > .table--selectable table { + margin-bottom: 0px; } + .form-field__contents > .table--selectable table td:first-child, + .form-field__contents > .table--selectable table th:first-child { + padding-left: 24px; } + .form-field__contents > .form-field { + width: auto; + margin-top: 12px; + border: none; } + .form-field__contents > .form-field > .form-field__label { + border-top: 1px solid rgba(0, 0, 0, 0.15); + padding-top: 6px; } + +.form-field__contents--hidden { + margin-top: 0px; } + +.form-field__help { + display: block; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.84615; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__help { + color: rgba(255, 255, 255, 0.85); } + +.form-field__error { + display: block; + float: right; + color: #c8200d; + line-height: 24px; } + html.rtl .form-field__error { + float: left; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__error { + color: rgba(255, 255, 255, 0.85); } + +.form-field--text { + cursor: pointer; } + .form-field--text .form-field__label { + cursor: pointer; } + +@media screen and (max-width: 44.9375em) { + .form-field--hidden { + display: none; } } + +@media screen and (min-width: 45em) { + .form-field--hidden { + border: none; + margin-bottom: 0px; + padding-top: 0px; + padding-bottom: 0px; + opacity: 0; + overflow: hidden; + max-height: 0px; + transition: max-height 0.2s, all 0.4s; } } + +.form-field--error { + z-index: 1; + border-color: #c8200d; } + +.form-field--focus { + z-index: 2; + border-color: #ff4c00; } .header { - height: 72px; + min-height: 72px; width: 100%; margin-bottom: 0px; } - .header--large { - height: 96px; } - .header--small { - height: 48px; } - .header.box > *:not(:last-child) { - margin-right: 12px; } .header a { color: inherit; text-decoration: none; } @@ -2914,37 +3049,40 @@ button:not(.button) { .header .status-icon { flex-grow: 0; flex-shrink: 0; } - .header > span { - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; } + +.header--large { + min-height: 96px; } + .header--large .header__content { + line-height: 96px; } + +.header--small { + min-height: 48px; } + .header--small .header__content { + line-height: 48px; } header.header { font-size: 24px; font-size: 1.5rem; - line-height: inherit; - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - transition: -webkit-transform 0.5s; - transition: transform 0.5s; } - *:not(.header__container--float) > header.header--float { - position: absolute; - top: 0px; - left: 0px; - right: 0px; } - header.header--primary .header__wrapper { - border-bottom: none; } + line-height: inherit; } header.header h1, header.header h2, header.header h3, header.header h4, header.header h5 { margin-bottom: 0; } - header.header.header--splash { - -webkit-transform: translate(0, 40vh); - transform: translate(0, 40vh); } - header.header.box--direction-row > * { - margin-bottom: 0px; } + +.header--splash { + -webkit-transform: translate(0, 40vh); + transform: translate(0, 40vh); } + +*:not(.header__container--float) > header.header--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; } + +header.header--primary .header__wrapper { + border-bottom: none; } .header:not(header).box--separator-top { padding-top: 6px; } @@ -2952,45 +3090,41 @@ header.header { .header:not(header).box--separator-bottom { padding-bottom: 6px; } -div.header__container { +.header__container { flex-shrink: 0; } - div.header__container--fixed { - position: relative; } - div.header__container--fixed .header__wrapper { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - z-index: 3; } - @media screen and (min-width: 45em) { - div.header__container--fixed .header__wrapper .header { - position: fixed; } - div.header__container--fixed .header__wrapper .header:not(.header--float) { - background-color: rgba(255, 255, 255, 0.9); } } - div.header__container--float { + +.header__container--fixed { + position: relative; } + .header__container--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; right: 0px; - padding-left: 24px; - padding-right: 24px; } + z-index: 3; } + @media screen and (min-width: 45em) { + .header__container--fixed .header__wrapper .header { + position: fixed; } + .header__container--fixed .header__wrapper .header:not(.header--float) { + background-color: rgba(255, 255, 255, 0.9); } } + +.header__container--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + padding-left: 24px; + padding-right: 24px; } -div.header__wrapper { +.header__wrapper { height: 72px; } -div.header--large .header__wrapper { +.header__wrapper--large { height: 96px; } -div.header--large .header__content { - line-height: 96px; } - -div.header--small .header__wrapper { +.header__wrapper--small { height: 48px; } -div.header--small .header__content { - line-height: 48px; } - -div.header--fixed .header__wrapper { +.header--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; @@ -2998,18 +3132,115 @@ div.header--fixed .header__wrapper { background-color: rgba(255, 255, 255, 0.9); z-index: 3; } -div.header--fixed.header--primary .header__wrapper { +.header--fixed.header--primary .header__wrapper { position: fixed; background-color: rgba(255, 255, 255, 0.9); } -div.header--fixed.header--primary .header__content { +.header--fixed.header--primary .header__content { position: static; background-color: transparent; } -div.header--flush .header__wrapper { +.header--flush .header__wrapper { padding-left: 0px; padding-right: 0px; } +h1.heading, +h2.heading, +h3.heading, +h4.heading, +h5.heading, +h6.heading { + margin-bottom: 12px; + line-height: 1; } + h1.heading--large, + h2.heading--large, + h3.heading--large, + h4.heading--large, + h5.heading--large, + h6.heading--large { + font-size: 125%; } + h1.heading--small, + h2.heading--small, + h3.heading--small, + h4.heading--small, + h5.heading--small, + h6.heading--small { + font-size: 75%; } + h1.heading--strong, + h2.heading--strong, + h3.heading--strong, + h4.heading--strong, + h5.heading--strong, + h6.heading--strong { + font-weight: 600; } + h1.heading--align-start, + h2.heading--align-start, + h3.heading--align-start, + h4.heading--align-start, + h5.heading--align-start, + h6.heading--align-start { + text-align: left; } + html.rtl h1.heading--align-start, html.rtl + h2.heading--align-start, html.rtl + h3.heading--align-start, html.rtl + h4.heading--align-start, html.rtl + h5.heading--align-start, html.rtl + h6.heading--align-start { + text-align: right; } + h1.heading--align-center, + h2.heading--align-center, + h3.heading--align-center, + h4.heading--align-center, + h5.heading--align-center, + h6.heading--align-center { + text-align: center; } + h1.heading--align-right, + h2.heading--align-right, + h3.heading--align-right, + h4.heading--align-right, + h5.heading--align-right, + h6.heading--align-right { + text-align: right; } + html.rtl h1.heading--align-right, html.rtl + h2.heading--align-right, html.rtl + h3.heading--align-right, html.rtl + h4.heading--align-right, html.rtl + h5.heading--align-right, html.rtl + h6.heading--align-right { + text-align: left; } + h1.heading--margin-none, + h2.heading--margin-none, + h3.heading--margin-none, + h4.heading--margin-none, + h5.heading--margin-none, + h6.heading--margin-none { + margin-top: 0; + margin-bottom: 0; } + h1.heading--margin-small, + h2.heading--margin-small, + h3.heading--margin-small, + h4.heading--margin-small, + h5.heading--margin-small, + h6.heading--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + h1.heading--margin-medium, + h2.heading--margin-medium, + h3.heading--margin-medium, + h4.heading--margin-medium, + h5.heading--margin-medium, + h6.heading--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + h1.heading--margin-large, + h2.heading--margin-large, + h3.heading--margin-large, + h4.heading--margin-large, + h5.heading--margin-large, + h6.heading--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + .headline { font-size: 48px; font-size: 3rem; @@ -3020,19 +3251,40 @@ div.header--flush .header__wrapper { .headline--large { font-size: 60px; font-size: 3.75rem; - line-height: 1.2; } + line-height: 1; } .headline--small { font-size: 30px; font-size: 1.875rem; - line-height: 1.6; } + line-height: 1; } .headline--strong { font-weight: 600; } + .headline--align-start { + text-align: left; } + html.rtl .headline--align-start { + text-align: right; } + .headline--align-center { + text-align: center; } + .headline--align-right { + text-align: right; } + html.rtl .headline--align-right { + text-align: left; } + .headline--margin-none { + margin-top: 0; + margin-bottom: 0; } + .headline--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .headline--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .headline--margin-large { + margin-top: 48px; + margin-bottom: 48px; } .control-icon { display: inline-block; width: 24px; height: 24px; - vertical-align: middle; cursor: pointer; fill: #999; stroke: #999; @@ -3127,24 +3379,30 @@ div.header--flush .header__wrapper { .control-icon { transition: all 0.3s ease-in-out; } } a:hover .control-icon, - .anchor:hover:not(.anchor--disabled) .control-icon, - .button:hover:not(.anchor--disabled) .control-icon, + .anchor:hover .control-icon, + .button:hover .control-icon, .menu__control:hover .control-icon { fill: #000; stroke: #000; } + .anchor.anchor--disabled:hover .control-icon { + fill: #999; + stroke: #999; } + .button.button--disabled:hover .control-icon { + fill: #999; + stroke: #999; } .control-icon__badge circle { fill: #9fd4c9; } .control-icon__badge text { stroke: #333; fill: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .control-icon:not([class*="color-index"]), .button--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .anchor:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu__control:hover > .control-icon, + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover > .control-icon, .button--primary:hover .control-icon { fill: #fff; stroke: #fff; } @@ -3154,6 +3412,9 @@ div.header--flush .header__wrapper { .control-icon--large { width: 48px; height: 48px; } + .control-icon--huge { + width: 288px; + height: 288px; } .status-icon { width: 24px; @@ -3185,6 +3446,9 @@ div.header--flush .header__wrapper { .status-icon--large { width: 48px; height: 48px; } + .status-icon--huge { + width: 288px; + height: 288px; } .status-icon--small { width: 12px; height: 12px; @@ -3274,6 +3538,9 @@ div.header--flush .header__wrapper { .logo-icon--large { width: 96px; height: 96px; } + .logo-icon--huge { + width: 288px; + height: 288px; } .right-left-icon--left { display: none; } @@ -3293,6 +3560,12 @@ html.rtl .right-left-icon--right { .image--small { width: 240px; } +.image--thumb { + width: 48px; + height: 48px; + flex: 0 0 auto; + object-fit: cover; } + .image--full { width: 100%; height: 100%; } @@ -3303,146 +3576,143 @@ html.rtl .right-left-icon--right { .image--full-vertical { height: 100%; } -@media screen and (max-width: 44.9375em) { - .label__text { - display: none; } } - -@media screen and (min-width: 45em) { - .label__icon { - display: none; } } - -a.active > .label .label__icon.control-icon svg { - fill: #000; - stroke: #000; } +.label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + margin-bottom: 24px; } + .label--uppercase { + text-transform: uppercase; + letter-spacing: 0.2em; } + .label--align-start { + text-align: left; } + html.rtl .label--align-start { + text-align: right; } + .label--align-center { + text-align: center; } + .label--align-right { + text-align: right; } + html.rtl .label--align-right { + text-align: left; } + .label--margin-none { + margin-top: 0; + margin-bottom: 0; } + .label--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .label--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .label--margin-large { + margin-top: 48px; + margin-bottom: 48px; } -.layer { +.grommet.layer { position: relative; - z-index: 10; } + z-index: 10; + background-color: rgba(0, 0, 0, 0.5); + height: 100vh; } @media screen and (min-width: 45em) { - .layer { + .grommet.layer { position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; } } @media screen and (max-width: 44.9375em) { - .layer:not(.layer--hidden) + .app { + .grommet.layer:not(.layer--hidden) + .app { display: none; } } - .layer__container { + .grommet.layer .layer__container { background-color: #fff; } @media screen and (max-width: 44.9375em) { - .layer__container { + .grommet.layer .layer__container { padding: 0 24px; - border-bottom: 1px solid #ccc; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } + min-height: 100vh; + min-width: 100vw; } } @media screen and (min-width: 45em) { - .layer__container { + .grommet.layer .layer__container { position: absolute; max-height: 100%; max-width: 100%; overflow: auto; padding: 0 48px; border-radius: 4px 4px 4px 4px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } - .layer__closer { + box-shadow: none; } } + .grommet.layer .layer__closer { position: absolute; top: 0px; right: 0px; z-index: 1; } - html.rtl .layer__closer { + .grommet.rtl .grommet.layer .layer__closer { right: auto; left: 0px; } - .layer--flush .layer__container { + .grommet.layer.layer--flush .layer__container { padding: 0px; } @media screen and (min-width: 45em) { - .layer--align-center:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-center:not(.layer--hidden) .layer__container { - left: 50%; - top: 50%; - max-height: calc(100vh - 48px); - max-width: calc(100vw - 48px); - transform: translate(-50%, -50%); } } - @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-center:not(.layer--hidden) .layer__container { + left: 50%; + top: 50%; + max-height: calc(100vh - 48px); + max-width: calc(100vw - 48px); + transform: translate(-50%, -50%); } } + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - left: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + left: 0px; } @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { left: auto; right: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - right: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + right: 0px; } @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { right: auto; left: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } @media screen and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-top:not(.layer--hidden) .layer__container { - left: 50%; - transform: translateX(-50%); } } - @media screen and (min-width: 45em) and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) .layer__container { - -webkit-animation: slide-down 0.2s ease-in-out forwards; - animation: slide-down 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-bottom:not(.layer--hidden) { - background-image: radial-gradient(circle at bottom, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-bottom:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + left: 50%; + transform: translateX(-50%); } } + @media screen and (min-width: 45em) and (min-width: 45em) { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + -webkit-animation: slide-down 0.2s ease-in-out forwards; + animation: slide-down 0.2s ease-in-out forwards; } } + .grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container { bottom: 0px; } - .layer--hidden { - left: -10000px; + .grommet.layer.layer--hidden { + left: -100vw; + right: 100vw; z-index: -1; } - .layer--hidden.layer--align-left { + .grommet.layer.layer--hidden.layer--align-left { right: auto; } - .layer--hidden.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--align-left .layer__container { left: -100vw; } @media screen and (max-width: 44.9375em) { - .layer--hidden { + .grommet.layer.layer--hidden { display: none; } } @media screen and (min-width: 45em) { - .layer--hidden.layer--peek { + .grommet.layer.layer--hidden.layer--peek { left: 0; z-index: 10; } - .layer--hidden.layer--peek.layer--align-left { + .grommet.layer.layer--hidden.layer--peek.layer--align-left { right: auto; } - .layer--hidden.layer--peek.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container { left: auto; right: -12px; border-right: 10px solid #ff8300; @@ -3512,6 +3782,8 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; } .list .list-item { max-width: none; } + .list .list-item:focus { + outline: #ff4c00 solid 1px; } .list .list-item__image { height: 24px; width: 24px; @@ -3531,7 +3803,7 @@ a.active > .label .label__icon.control-icon svg { .list .list-item--selectable { cursor: pointer; } .list .list-item--selectable:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .list .list-item--selected { background-color: white; color: #333; } @@ -3544,7 +3816,7 @@ a.active > .label .label__icon.control-icon svg { background-color: white; color: #333; } .list--selectable .list-item:hover:not(.list-item--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .list--small .list-item__image, .list--small .list__more__image { @@ -3560,165 +3832,184 @@ a.active > .label .label__icon.control-icon svg { list-style-type: none; white-space: normal; display: inline-block; - margin: 0px; } + margin: 0px; + line-height: 24px; } html.rtl .legend { text-align: right; } - .legend__item, .legend__total { - color: #777; } - .legend__item > *, .legend__total > * { - vertical-align: top; } - .legend__item-label, .legend__total-label { - display: inline-block; - width: 72px; } - .legend__item-value, .legend__total-value { - display: inline-block; - width: 72px; - text-align: right; } - html.rtl .legend__item-value, html.rtl .legend__total-value { - text-align: left; } - .legend__item-units, .legend__total-units { - display: inline-block; - margin-left: 6px; } - html.rtl .legend__item-units, html.rtl .legend__total-units { - margin-left: 0; - margin-right: 6px; } - .legend__item--clickable { - cursor: pointer; } - .legend__item svg.legend__item-swatch { - width: 12px; - height: 12px; - margin-top: 6px; - margin-right: 12px; - overflow: visible; } - .legend__item svg.legend__item-swatch.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .legend__item svg.legend__item-swatch.color-index-unset { - stroke: #ddd; } - .legend__item svg.legend__item-swatch.color-index-brand { - stroke: #ff8300; } - .legend__item svg.legend__item-swatch.color-index-critical { - stroke: #c8200d; } - .legend__item svg.legend__item-swatch.color-index-error { - stroke: #c8200d; } - .legend__item svg.legend__item-swatch.color-index-warning { - stroke: #e57118; } - .legend__item svg.legend__item-swatch.color-index-ok { - stroke: #2aac24; } - .legend__item svg.legend__item-swatch.color-index-unknown { - stroke: #999999; } - .legend__item svg.legend__item-swatch.color-index-disabled { - stroke: #999999; } - .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-6 { - stroke: #ec9b58; } - .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-7 { - stroke: #0049a0; } - .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-8 { - stroke: #886f9c; } - .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-9 { - stroke: #5fbcdd; } - .legend__item svg.legend__item-swatch.color-index-graph-5, .legend__item svg.legend__item-swatch.color-index-graph-10 { - stroke: #7fba44; } - .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-4 { - stroke: #2d3034; } - .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-5 { - stroke: #52555a; } - .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-6 { - stroke: #999999; } - .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-3 { - stroke: #9fd4c9; } - .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-4 { - stroke: #d5d848; } - .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { - stroke: #ffffff; } - .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { - stroke: #f5f5f5; } - html.rtl .legend__item svg.legend__item-swatch { - margin-right: 0; - margin-left: 12px; } - .legend__item svg.legend__item-swatch path { - stroke-width: 12px; - transition-property: stroke-width; - transition-duration: 0.3s; - transition-timing-function: ease-in-out; } - .legend__item--active { - color: #333; } - .legend__item--active svg.legend__item-swatch path { - stroke-width: 12px; } - .legend__total { - margin-left: 24px; } - html.rtl .legend__total { - margin-left: 0; - margin-right: 24px; } - .legend__total > * { - margin-top: 6px; - padding-top: 6px; - border-top: 1px dotted #ccc; } - .legend--single .legend__item-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; - width: auto; } - .legend--single .legend__item-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .legend--single .legend__item-units { - margin-left: 0; - margin-right: 6px; } -.login { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - bottom: 0px; - overflow: hidden; - z-index: 100; } - .login__background { - position: absolute; - max-width: none; } - .login__background--portrait { - width: auto; - height: 100%; } - .login__background--landscape { - height: auto; - width: 100%; } - .login__container { - position: relative; - width: 384px; - margin: 96px auto; - z-index: 1; - -webkit-animation-name: fadein; - -webkit-animation-duration: 0.5s; - animation-name: fadein; - animation-duration: 0.5s; } - @media screen and (max-width: 44.9375em) { - .login__container { - margin: 48px 0px; - width: 100%; - border-radius: 0px; } } - .login__footer { - position: absolute; - left: 0px; - right: 0px; - bottom: 6px; - padding: 6px 24px; - background-color: rgba(255, 255, 255, 0.9); - text-align: center; } +.legend__item, +.legend__total { + color: #777; } + .legend__item > *, + .legend__total > * { + vertical-align: top; } -.login-form { +.legend__item-label, +.legend__total-label { + display: inline-block; + min-width: 72px; + text-align: left; } + +.legend__item-value, +.legend__total-value { + display: inline-block; + width: 72px; + text-align: right; } + html.rtl .legend__item-value, html.rtl + .legend__total-value { + text-align: left; } + +.legend__item-units, +.legend__total-units { + display: inline-block; + margin-left: 6px; } + html.rtl .legend__item-units, html.rtl + .legend__total-units { + margin-left: 0; + margin-right: 6px; } + +.legend__item svg.legend__item-swatch { + width: 12px; + height: 12px; + margin-top: 6px; + margin-right: 12px; + overflow: visible; } + .legend__item svg.legend__item-swatch.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .legend__item svg.legend__item-swatch.color-index-unset { + stroke: #ddd; } + .legend__item svg.legend__item-swatch.color-index-brand { + stroke: #ff8300; } + .legend__item svg.legend__item-swatch.color-index-critical { + stroke: #c8200d; } + .legend__item svg.legend__item-swatch.color-index-error { + stroke: #c8200d; } + .legend__item svg.legend__item-swatch.color-index-warning { + stroke: #e57118; } + .legend__item svg.legend__item-swatch.color-index-ok { + stroke: #2aac24; } + .legend__item svg.legend__item-swatch.color-index-unknown { + stroke: #999999; } + .legend__item svg.legend__item-swatch.color-index-disabled { + stroke: #999999; } + .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-6 { + stroke: #ec9b58; } + .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-7 { + stroke: #0049a0; } + .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-8 { + stroke: #886f9c; } + .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-9 { + stroke: #5fbcdd; } + .legend__item svg.legend__item-swatch.color-index-graph-5, .legend__item svg.legend__item-swatch.color-index-graph-10 { + stroke: #7fba44; } + .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-4 { + stroke: #2d3034; } + .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-5 { + stroke: #52555a; } + .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-6 { + stroke: #999999; } + .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-3 { + stroke: #9fd4c9; } + .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-4 { + stroke: #d5d848; } + .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { + stroke: #ffffff; } + .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { + stroke: #f5f5f5; } + html.rtl .legend__item svg.legend__item-swatch { + margin-right: 0; + margin-left: 12px; } + .legend__item svg.legend__item-swatch path { + stroke-width: 12px; + transition-property: stroke-width; + transition-duration: 0.3s; + transition-timing-function: ease-in-out; } + +.legend__item--clickable { + cursor: pointer; } + +.legend__item--active { + color: #333; } + .legend__item--active svg.legend__item-swatch path { + stroke-width: 12px; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .legend__item--active { + color: #fff; } + +li.legend__total { + margin-left: 24px; } + html.rtl li.legend__total { + margin-left: 0; + margin-right: 24px; } + li.legend__total > * { + margin-top: 6px; + padding-top: 6px; + border-top: 1px dotted rgba(0, 0, 0, 0.15); } + +.legend--single .legend__item-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; + width: auto; } + +.legend--single .legend__item-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .legend--single .legend__item-units { + margin-left: 0; + margin-right: 6px; } + +.login { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + overflow: hidden; + z-index: 100; } + .login__background { + position: absolute; + max-width: none; } + .login__background--portrait { + width: auto; + height: 100%; } + .login__background--landscape { + height: auto; + width: 100%; } + .login__container { + position: relative; + width: 384px; + margin: 96px auto; + z-index: 1; + -webkit-animation-name: fadein; + -webkit-animation-duration: 0.5s; + animation-name: fadein; + animation-duration: 0.5s; } + @media screen and (max-width: 44.9375em) { + .login__container { + margin: 48px 0px; + width: 100%; + border-radius: 0px; } } + .login__footer { + position: absolute; + left: 0px; + right: 0px; + bottom: 6px; + padding: 6px 24px; + background-color: rgba(255, 255, 255, 0.9); + text-align: center; } + +.login-form { position: relative; - width: 384px; padding: 24px; - padding-bottom: 48px; background-color: #fff; - text-align: center; z-index: 1; -webkit-animation-name: fadein; -webkit-animation-duration: 0.5s; @@ -3726,33 +4017,26 @@ a.active > .label .label__icon.control-icon svg { animation-duration: 0.5s; } @media screen and (max-width: 44.9375em) { .login-form { - width: 100%; - border-radius: 0px; } } - .login-form__secondary-text { - color: #777; } + width: 100%; } } + .login-form__header { + text-align: center; } .login-form fieldset { - text-align: left; - border: none; - margin-bottom: 0px; } - .login-form fieldset > * { - width: 100%; - display: block; } - .login-form__remember-me { - display: block; - margin-top: 24px; - text-align: left; } + margin-bottom: 0; } .login-form__submit { - margin-top: 24px; - width: 100%; } - .login-form__error { - margin-bottom: 12px; - color: #c8200d; + width: 100%; + max-width: none; } + .login-form--align-start .login-form__header { text-align: left; } - .login-form__footer { - margin-top: 12px; - display: flex; - justify-content: space-between; - line-height: 36px; } + html.rtl .login-form--align-start .login-form__header { + text-align: right; } + .login-form--align-start .login-form__submit { + width: auto; } + .login-form--align-end .login-form__header { + text-align: right; } + html.rtl .login-form--align-end .login-form__header { + text-align: left; } + .login-form--align-end .login-form__submit { + width: auto; } .map { position: relative; @@ -3788,7 +4072,7 @@ a.active > .label .label__icon.control-icon svg { .map__item { display: inline-block; width: 192px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-right: 12px; margin-bottom: 12px; background-color: #fff; @@ -3802,7 +4086,7 @@ a.active > .label .label__icon.control-icon svg { .map__item > a > * { display: inline-block; } .map__item > a:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .map__item .status-icon { margin-right: 6px; } .map__item--active { @@ -3812,7 +4096,7 @@ a.active > .label .label__icon.control-icon svg { position: relative; font-size: 19px; font-size: 1.1875rem; - line-height: inherit; } + line-height: 1.26316; } .menu:focus { outline: none; } .menu:focus:not(.menu--expanded):after { @@ -3827,180 +4111,208 @@ a.active > .label .label__icon.control-icon svg { pointer-events: none; } .menu > * { flex: 0 0 auto; } - .menu a:not(.button) { + .menu a:not(.button), + .menu .anchor { text-decoration: none; } - .menu a:not(.button):hover { + .menu a:not(.button):hover, + .menu .anchor:hover { + text-decoration: none; color: #d16b00; } - .menu a:not(.button).active { + .menu a:not(.button).active, + .menu .anchor.active { color: #d16b00; } - .menu__control .control-icon-down { - width: 12px; - height: 12px; } - .menu__control .control-icon-down path, - .menu__control .control-icon-down polyline { - stroke-width: 4px; } - .menu__drop { - font-size: 16px; - font-size: 1rem; - line-height: inherit; - max-height: 100vh; } - .menu__drop .anchor { - padding: 12px 24px; - white-space: nowrap; - display: block; } - .menu__drop .anchor:hover, .menu__drop .anchor:focus { - text-decoration: none; - background-color: rgba(0, 0, 0, 0.1); } - .menu__drop .check-box, - .menu__drop .radio-button { - margin-top: 12px; - margin-bottom: 12px; } - .menu__drop--align-right { - text-align: right; } - html.rtl .menu__drop--align-right { - text-align: left; } - .menu__drop--align-right .menu__contents { - text-align: left; } - html.rtl .menu__drop--align-right .menu__contents { - text-align: right; } - .menu__drop--large .menu__control { - line-height: 96px; } - .menu--controlled { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu a:not(.button).active, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .menu .anchor.active { + color: #fff; } + .menu.menu--controlled { display: inline-block; cursor: pointer; } - .menu--controlled.menu--large { - line-height: 96px; } - .menu--controlled.menu--small { - height: 24px; } + +.menu__control:focus:not(.button--disabled) { + box-shadow: inset 0 0 1px 2px #ff4c00; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover .menu__control-label { + color: #fff; } + +.menu__control .control-icon-down { + width: 12px; + height: 12px; } + .menu__control .control-icon-down path, + .menu__control .control-icon-down polyline { + stroke-width: 4px; } + +@media screen and (min-width: 45em) { + .menu__control.menu--labelled .control-icon { + transition: none; } } + +.menu__drop { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + max-height: 100vh; } + .menu__drop a:not(.anchor--disabled) { + text-decoration: none; } + .menu__drop a:not(.anchor--disabled):hover { + text-decoration: none; } + .menu__drop .anchor { + padding: 12px 24px; + white-space: nowrap; + display: block; + text-decoration: none; } + .menu__drop .anchor:hover, .menu__drop .anchor:focus { + text-decoration: none; + background-color: rgba(221, 221, 221, 0.5); } + .menu__drop .menu__control { + text-align: left; } + .grommet.rtl .menu__drop .menu__control { + text-align: right; } + .menu__drop .menu__label { + padding: 12px 24px; + font-weight: 600; } + .menu__drop.menu__drop--align-right { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__control { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__control { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__contents { + text-align: left; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__contents { + text-align: right; } + .menu__drop.menu__drop--small { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .menu__drop.menu__drop--large { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.menu--inline.menu--row { + line-height: 48px; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-left: 24px; margin-right: 0; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-right: 24px; margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-right: 0; } .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-left: 0; margin-right: 24px; } .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-right: 0; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-right: 0; margin-left: 24px; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-left: 0; } - @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--direction-row.box--responsive > * { - margin-right: 0; } - html.rtl .menu--inline.menu.box--direction-row.box--responsive > * { - margin-left: 0; } } - .menu--inline.menu.box--direction-column a:not(.button) { - margin-bottom: 6px; } - .menu--small { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .menu--small .menu__control-drop-icon { - margin-left: 6px; } - html.rtl .menu--small .menu__control-drop-icon { - margin-left: 0; - margin-right: 6px; } - .menu--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--primary > .menu { - width: 100%; } - .menu--primary > a:not(.button) { - padding: 6px 24px; - margin-bottom: 0px; - width: 100%; - border-width: 6px; - border-color: transparent; - border-right-style: solid; } - html.rtl .menu--primary > a:not(.button) { - border-right-style: none; - border-left-style: solid; } - .menu--primary > a:not(.button):hover { - text-decoration: none; } - .menu--primary > a:not(.button):hover:not(.active) { - background-color: rgba(0, 0, 0, 0.1); } - .menu--primary > a:not(.button).active { - border-color: #ff8300; } - @media screen and (max-width: 44.9375em) { - .menu--primary.menu--down { - display: block; } - .menu--primary.menu--down > * { - display: block; } } -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h2, -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h3, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { - margin-top: 24px; } +@media screen and (max-width: 44.9375em) { + .menu--inline.box--direction-row.box--responsive > * { + margin-right: 0; } + .grommet.rtl .menu--inline.box--direction-row.box--responsive > * { + margin-left: 0; } } + +.menu--inline.box--direction-column a:not(.button) { + margin-bottom: 6px; } + +.menu--inline.menu--small { + font-size: 16px; + font-size: 1rem; + line-height: inherit; } + +.menu--inline.menu--large { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; } + +.menu--primary > .menu { + width: 100%; } + +.menu--primary > a:not(.button) { + padding: 6px 24px; + margin-bottom: 0px; + width: 100%; + border-width: 4px; + border-color: transparent; + border-right-style: solid; } + .grommet.rtl .menu--primary > a:not(.button) { + border-right-style: none; + border-left-style: solid; } + .menu--primary > a:not(.button):hover { + text-decoration: none; } + .menu--primary > a:not(.button):hover:not(.active) { + background-color: rgba(221, 221, 221, 0.5); } + .menu--primary > a:not(.button).active { + border-color: #ff8300; } + +@media screen and (max-width: 44.9375em) { + .menu--primary.menu--down { + display: block; } + .menu--primary.menu--down > * { + display: block; } } -.menu--inline.menu > hr, +.menu--inline.menu:not(.box--direction-row) > hr, .menu__drop > hr { margin: 12px 24px 18px; height: 1px; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); border: none; } -.menu--inline.menu.box.box--separator-top, +.menu--inline.menu:not(.box--direction-row) .menu__control-label, +.menu__drop .menu__control-label { + font-size: 19px; } + +.menu--inline.menu:not(.box--direction-row) a, +.menu__drop a { + text-decoration: none; } + +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h2, +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h3, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { + margin-top: 24px; } + +.menu--inline.menu:not(.box--direction-row).box.box--separator-top, .menu__drop.box.box--separator-top { border-color: transparent; } - .menu--inline.menu.box.box--separator-top:before, + .menu--inline.menu:not(.box--direction-row).box.box--separator-top:before, .menu__drop.box.box--separator-top:before { content: ''; margin: 12px 24px 18px; height: 1px; - background-color: #ccc; } - -.menu--inline.menu--small, -.menu__drop--small { - font-size: 1em; } - .menu--inline.menu--small .menu__control-label, - .menu__drop--small .menu__control-label { - padding: 12px; } - .menu--inline.menu--small .menu__control-icon svg, - .menu__drop--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--inline.menu--small > a, - .menu__drop--small > a { - padding: 6px 12px; } - -.menu--inline.menu .menu__control-label, -.menu__drop .menu__control-label { - font-size: 19px; } + background-color: rgba(0, 0, 0, 0.15); } -.menu--inline.menu a, -.menu__drop a { - text-decoration: none; } +.menu--inline.menu:not(.box--direction-row).menu--small > a, +.menu__drop.menu--small > a { + padding: 6px 0; } -.menu--inline.menu--large > a, -.menu__drop--large > a { - padding: 24px 48px; } +.menu--inline.menu:not(.box--direction-row).menu--large > a, +.menu__drop.menu--large > a { + padding: 24px 0; } @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--responsive > *, + .menu--inline.menu:not(.box--direction-row).box--responsive > *, .menu__drop.box--responsive > * { margin-left: 0px; margin-right: 0px; } - .menu--inline.menu.box--responsive .button, + .menu--inline.menu:not(.box--direction-row).box--responsive .button, .menu__drop.box--responsive .button { width: 100%; margin-bottom: 12px; } - .menu--inline.menu.box--responsive .menu, + .menu--inline.menu:not(.box--direction-row).box--responsive .menu, .menu__drop.box--responsive .menu { margin-bottom: 36px; } } @media screen and (max-width: 44.9375em) { .menu__drop { - max-width: 100%; - width: 100vw; } } + max-width: 100%; } } @-webkit-keyframes draw-meter { 0% { @@ -4029,295 +4341,470 @@ a.active > .label .label__icon.control-icon svg { .meter { display: inline-block; position: relative; } - .meter__slice { - stroke-width: 4px; } - .meter__threshold { - stroke: rgba(51, 51, 51, 0.2); } - .meter__value-container { - position: relative; - display: inline-block; } - .meter__graphic-container { - white-space: normal; } - .meter__graphic-container > a { - text-decoration: none; } - .meter__graphic:focus { - outline: #ff4c00 solid 1px; } - .meter__value { - white-space: normal; - pointer-events: none; } - .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter__value-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 38px; - font-weight: bold; } - .meter__value-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .meter__value-units { - margin-left: 0; - margin-right: 6px; } - .meter__value-label { - display: block; } - .meter__minmax-container { - display: block; } - .meter__minmax { - display: flex; - justify-content: space-between; - color: #777; - font-size: 14px; - font-size: 0.875rem; - line-height: 1.71429; } - .meter__label-min, .meter__label-max { - flex: 0 0 48px; } - .meter__label-max { - text-align: right; } - .meter__label { - fill: #777; } - .meter__label--active { - fill: #000; } - .meter--legend-right { - white-space: nowrap; } - .meter--legend-right .meter__legend { - vertical-align: top; - margin-left: 24px; } - html.rtl .meter--legend-right .meter__legend { - margin-left: 0; - margin-right: 24px; } - .meter--legend-right:not(.meter--tall-legend) .meter__legend { - position: relative; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); } - .meter--legend-bottom .meter__legend { - margin-top: 24px; - display: block; } - .meter:not(.meter--vertical) .meter__graphic-container { - display: inline-block; } - .meter:not(.meter--vertical) .meter__minmax-container { - display: block; - width: 192px; } - .meter:not(.meter--vertical) .meter__minmax { - width: 100%; } - .meter:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--vertical .meter__graphic-container { - display: inline-block; - white-space: nowrap; } - .meter--vertical .meter__minmax-container { - height: 192px; } - .meter--vertical .meter__minmax { - flex-direction: column; - height: 100%; } - .meter--vertical .meter__minmax-min { - order: 1; } - .meter--vertical .meter__minmax-max { - order: 0; } - .meter--vertical .meter__label-min, .meter--vertical .meter__label-max { - flex: 0 0 auto; - text-align: left; } - .meter--vertical .meter__label-min { - order: 1; } - .meter--vertical .meter__label-max { - order: 0; } - .meter--vertical .meter__value-label { - display: block; } - .meter--vertical.meter--small .meter__minmax-container { - height: 96px; } - .meter--vertical.meter--large .meter__minmax-container { - height: 288px; } - .meter--small .meter__slice { - stroke-width: 8px; } - .meter--small .meter__values .meter__slice:hover { - stroke-width: 24px; } - .meter--small .meter__value-value { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--large .meter__value-value { - font-size: 64px; - font-size: 4rem; - line-height: 1.125; } - .meter--large .meter__value-units { - font-size: 48px; - font-size: 3rem; - line-height: 1; } - .meter.meter--active .meter__values .meter__slice:hover { - stroke-width: 12px; } - .meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { - stroke-width: 12px; } - .meter--bar .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 192px 192px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--bar .meter__values .meter__slice.color-index-brand { - stroke: #ff8300; } - .meter--bar .meter__values .meter__slice.color-index-critical { - stroke: #c8200d; } - .meter--bar .meter__values .meter__slice.color-index-error { - stroke: #c8200d; } - .meter--bar .meter__values .meter__slice.color-index-warning { - stroke: #e57118; } - .meter--bar .meter__values .meter__slice.color-index-ok { - stroke: #2aac24; } - .meter--bar .meter__values .meter__slice.color-index-unknown { - stroke: #999999; } - .meter--bar .meter__values .meter__slice.color-index-disabled { - stroke: #999999; } - .meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-6 { - stroke: #ec9b58; } - .meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-7 { - stroke: #0049a0; } - .meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-8 { - stroke: #886f9c; } - .meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-9 { - stroke: #5fbcdd; } - .meter--bar .meter__values .meter__slice.color-index-graph-5, .meter--bar .meter__values .meter__slice.color-index-graph-10 { - stroke: #7fba44; } - .meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-4 { - stroke: #2d3034; } - .meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-5 { - stroke: #52555a; } - .meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-6 { - stroke: #999999; } - .meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-3 { - stroke: #9fd4c9; } - .meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-4 { - stroke: #d5d848; } - .meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--bar .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--bar .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-meter 1.5s linear; - animation: draw-meter 1.5s linear; } } - .meter--bar .meter__thresholds .meter__slice.color-index-unset, - .meter--bar .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-brand, - .meter--bar .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(255, 131, 0, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-critical, - .meter--bar .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(200, 32, 13, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-error, - .meter--bar .meter__tracks .meter__slice.color-index-error { - stroke: rgba(200, 32, 13, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-warning, - .meter--bar .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(229, 113, 24, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-ok, - .meter--bar .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(42, 172, 36, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-unknown, - .meter--bar .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(153, 153, 153, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-disabled, - .meter--bar .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(153, 153, 153, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, - .meter--bar .meter__tracks .meter__slice.color-index-graph-1, - .meter--bar .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(236, 155, 88, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, - .meter--bar .meter__tracks .meter__slice.color-index-graph-2, - .meter--bar .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(0, 73, 160, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, - .meter--bar .meter__tracks .meter__slice.color-index-graph-3, - .meter--bar .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(136, 111, 156, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-9, - .meter--bar .meter__tracks .meter__slice.color-index-graph-4, - .meter--bar .meter__tracks .meter__slice.color-index-graph-9 { - stroke: rgba(95, 188, 221, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-5, .meter--bar .meter__thresholds .meter__slice.color-index-graph-10, - .meter--bar .meter__tracks .meter__slice.color-index-graph-5, - .meter--bar .meter__tracks .meter__slice.color-index-graph-10 { - stroke: rgba(127, 186, 68, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-3, - .meter--bar .meter__tracks .meter__slice.color-index-accent-1, - .meter--bar .meter__tracks .meter__slice.color-index-accent-3 { - stroke: rgba(159, 212, 201, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, - .meter--bar .meter__tracks .meter__slice.color-index-accent-2, - .meter--bar .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(213, 216, 72, 0.5); } - .meter--bar .meter__value { - text-align: left; } - .meter--bar .meter__value-label { - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--bar:not(.meter--vertical) .meter__minmax-container > a { - vertical-align: top; - display: block; - height: 24px; } - .meter--bar:not(.meter--vertical) .meter__graphic { - width: 192px; } - .meter--bar:not(.meter--vertical) .meter__value { - display: inline-block; + +.meter__slice { + stroke-width: 4px; } + +.meter__threshold { + stroke: rgba(51, 51, 51, 0.2); } + +.meter__value-container { + position: relative; + display: inline-block; } + +.meter__graphic-container { + white-space: normal; } + .meter__graphic-container > a { + text-decoration: none; } + +.meter__graphic:focus { + outline: #ff4c00 solid 1px; } + +.meter__graphic text { + fill: #777; } + +.meter__value { + white-space: normal; + pointer-events: none; } + +.meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter__value-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 38px; + font-weight: bold; } + +.meter__value-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .meter__value-units { + margin-left: 0; + margin-right: 6px; } + +.meter__value-label { + display: block; } + +.meter__minmax-container { + display: block; } + +.meter__minmax { + display: flex; + justify-content: space-between; + color: #777; + font-size: 14px; + font-size: 0.875rem; + line-height: 1.71429; } + +.meter__label-min, +.meter__label-max { + flex: 0 0 48px; } + +.meter__label-max { + text-align: right; } + +.meter__label { + fill: #777; } + +.meter__label--active { + fill: #000; } + +.meter--legend-right { + white-space: nowrap; } + .meter--legend-right .meter__legend { vertical-align: top; - margin-left: 12px; } - html.rtl .meter--bar:not(.meter--vertical) .meter__value { - margin-left: 0; - margin-right: 12px; } - .meter--bar:not(.meter--vertical) .meter__value-value { - font-size: 24px; - font-size: 1.5rem; - line-height: 1; } - .meter--bar:not(.meter--vertical) .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { - display: inline-block; - margin-left: 4px; } - html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 24px; } + html.rtl .meter--legend-right .meter__legend { margin-left: 0; - margin-right: 4px; } - .meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { - min-width: 84px; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + margin-right: 24px; } + .meter--legend-right:not(.meter--tall-legend) .meter__legend { + position: relative; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); } + +.meter--legend-bottom .meter__legend { + margin-top: 24px; + display: block; } + +.meter--legend-bottom.meter--legend-align-center .meter__legend { + text-align: center; } + +.meter:not(.meter--vertical) .meter__graphic-container { + display: inline-block; } + +.meter:not(.meter--vertical) .meter__minmax-container { + display: block; + width: 192px; } + +.meter:not(.meter--vertical) .meter__minmax { + width: 100%; } + +.meter:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--vertical .meter__graphic-container { + display: inline-block; + white-space: nowrap; } + +.meter--vertical .meter__minmax-container { + height: 192px; } + +.meter--vertical .meter__minmax { + flex-direction: column; + height: 100%; } + +.meter--vertical .meter__minmax-min { + order: 1; } + +.meter--vertical .meter__minmax-max { + order: 0; } + +.meter--vertical .meter__label-min, +.meter--vertical .meter__label-max { + flex: 0 0 auto; + text-align: left; } + +.meter--vertical .meter__label-min { + order: 1; } + +.meter--vertical .meter__label-max { + order: 0; } + +.meter--vertical .meter__value-label { + display: block; } + +.meter--vertical.meter--small .meter__minmax-container { + height: 96px; } + +.meter--vertical.meter--large .meter__minmax-container { + height: 288px; } + +.meter--small .meter__slice { + stroke-width: 8px; } + +.meter--small .meter__values .meter__slice:hover { + stroke-width: 24px; } + +.meter--small .meter__value-value { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--large .meter__value-value { + font-size: 64px; + font-size: 4rem; + line-height: 1.125; } + +.meter--large .meter__value-units { + font-size: 48px; + font-size: 3rem; + line-height: 1; } + +.meter--active .meter__values .meter__slice:hover { + stroke-width: 12px; } + +.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { + stroke-width: 12px; } + +.meter--bar .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 192px 192px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--bar .meter__values .meter__slice.color-index-brand { + stroke: #ff8300; } + +.meter--bar .meter__values .meter__slice.color-index-critical { + stroke: #c8200d; } + +.meter--bar .meter__values .meter__slice.color-index-error { + stroke: #c8200d; } + +.meter--bar .meter__values .meter__slice.color-index-warning { + stroke: #e57118; } + +.meter--bar .meter__values .meter__slice.color-index-ok { + stroke: #2aac24; } + +.meter--bar .meter__values .meter__slice.color-index-unknown { + stroke: #999999; } + +.meter--bar .meter__values .meter__slice.color-index-disabled { + stroke: #999999; } + +.meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-6 { + stroke: #ec9b58; } + +.meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-7 { + stroke: #0049a0; } + +.meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-8 { + stroke: #886f9c; } + +.meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-9 { + stroke: #5fbcdd; } + +.meter--bar .meter__values .meter__slice.color-index-graph-5, .meter--bar .meter__values .meter__slice.color-index-graph-10 { + stroke: #7fba44; } + +.meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-4 { + stroke: #2d3034; } + +.meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-5 { + stroke: #52555a; } + +.meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-6 { + stroke: #999999; } + +.meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-3 { + stroke: #9fd4c9; } + +.meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-4 { + stroke: #d5d848; } + +.meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--bar .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--bar .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-meter 1.5s linear; + animation: draw-meter 1.5s linear; } } + +.meter--bar .meter__thresholds .meter__slice.color-index-unset, +.meter--bar .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-brand, +.meter--bar .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(255, 131, 0, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-critical, +.meter--bar .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(200, 32, 13, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-error, +.meter--bar .meter__tracks .meter__slice.color-index-error { + stroke: rgba(200, 32, 13, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-warning, +.meter--bar .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(229, 113, 24, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-ok, +.meter--bar .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(42, 172, 36, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-unknown, +.meter--bar .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(153, 153, 153, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-disabled, +.meter--bar .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(153, 153, 153, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, +.meter--bar .meter__tracks .meter__slice.color-index-graph-1, +.meter--bar .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(236, 155, 88, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, +.meter--bar .meter__tracks .meter__slice.color-index-graph-2, +.meter--bar .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(0, 73, 160, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, +.meter--bar .meter__tracks .meter__slice.color-index-graph-3, +.meter--bar .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(136, 111, 156, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-9, +.meter--bar .meter__tracks .meter__slice.color-index-graph-4, +.meter--bar .meter__tracks .meter__slice.color-index-graph-9 { + stroke: rgba(95, 188, 221, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-5, .meter--bar .meter__thresholds .meter__slice.color-index-graph-10, +.meter--bar .meter__tracks .meter__slice.color-index-graph-5, +.meter--bar .meter__tracks .meter__slice.color-index-graph-10 { + stroke: rgba(127, 186, 68, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-3, +.meter--bar .meter__tracks .meter__slice.color-index-accent-1, +.meter--bar .meter__tracks .meter__slice.color-index-accent-3 { + stroke: rgba(159, 212, 201, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, +.meter--bar .meter__tracks .meter__slice.color-index-accent-2, +.meter--bar .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(213, 216, 72, 0.5); } + +.meter--bar .meter__value { + text-align: left; } + +.meter--bar .meter__value-label { + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--bar.meter--vertical { + white-space: nowrap; } + .meter--bar.meter--vertical svg.meter__graphic { + height: 192px; } + .meter--bar.meter--vertical .meter__labeled-graphic { + display: inline-block; } + .meter--bar.meter--vertical .meter__value { + position: relative; + vertical-align: top; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; } + .meter--bar.meter--vertical .meter__minmax-container { + position: absolute; top: 0px; - -webkit-transform: none; - transform: none; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__value { - min-width: 48px; } - .meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; } - .meter--bar:not(.meter--vertical).meter--small .meter__value-value, - .meter--bar:not(.meter--vertical).meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + left: 24px; } + .meter--bar.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + .meter--bar.meter--vertical.meter--legend-right .meter__value { + min-width: 60px; } + .meter--bar.meter--vertical.meter--small svg.meter__graphic { + height: 96px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 24px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 36px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 48px; } + .meter--bar.meter--vertical.meter--small .meter__value { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { min-width: 42px; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { - min-width: 72px; } + .meter--bar.meter--vertical.meter--large svg.meter__graphic { + height: 288px; + width: 36px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 72px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 108px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 144px; } + .meter--bar.meter--vertical.meter--large .meter__value { + top: 144px; } + .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { + top: 144px; } + +.meter--bar:not(.meter--vertical) .meter__minmax-container > a { + vertical-align: top; + display: block; + height: 24px; } + +.meter--bar:not(.meter--vertical) .meter__graphic { + width: 192px; } + +.meter--bar:not(.meter--vertical) .meter__value { + display: inline-block; + vertical-align: top; + margin-left: 12px; } + html.rtl .meter--bar:not(.meter--vertical) .meter__value { + margin-left: 0; + margin-right: 12px; } + +.meter--bar:not(.meter--vertical) .meter__value-value { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.meter--bar:not(.meter--vertical) .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + display: inline-block; + margin-left: 4px; } + html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 0; + margin-right: 4px; } + +.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { + min-width: 84px; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + top: 0px; + -webkit-transform: none; + transform: none; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__value { + min-width: 48px; } + +.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; } + +.meter--bar:not(.meter--vertical).meter--small .meter__value-value, +.meter--bar:not(.meter--vertical).meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic, .meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic { + height: 12px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 24px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 36px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 48px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + min-width: 42px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { + min-width: 72px; } + +.meter--bar:not(.meter--vertical).meter--large { + line-height: 36px; } .meter--bar:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; } + width: 288px; + height: 36px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 72px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 108px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 144px; } .meter--bar:not(.meter--vertical).meter--large .meter__value { margin-left: 16px; } html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value { @@ -4327,369 +4814,558 @@ a.active > .label .label__icon.control-icon svg { font-size: 26px; font-size: 1.625rem; line-height: inherit; } - .meter--bar.meter--vertical { - white-space: nowrap; } - .meter--bar.meter--vertical svg.meter__graphic { - height: 192px; } - .meter--bar.meter--vertical .meter__labeled-graphic { - display: inline-block; } - .meter--bar.meter--vertical .meter__value { - position: relative; - vertical-align: top; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; } - .meter--bar.meter--vertical .meter__minmax-container { - position: absolute; - top: 0px; - left: 24px; } - .meter--bar.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--bar.meter--vertical.meter--legend-right .meter__value { - min-width: 60px; } - .meter--bar.meter--vertical.meter--small svg.meter__graphic { - height: 96px; } - .meter--bar.meter--vertical.meter--small .meter__value { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { - min-width: 42px; } - .meter--bar.meter--vertical.meter--large svg.meter__graphic { - height: 288px; } - .meter--bar.meter--vertical.meter--large .meter__value { - top: 144px; } - .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { - top: 144px; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc, .meter--spiral { - margin: 0px auto; } } - .meter--circle svg.meter__graphic, .meter--arc svg.meter__graphic, .meter--spiral svg.meter__graphic { - display: block; } - .meter--circle .meter.series-pre path, .meter--arc .meter.series-pre path, .meter--spiral .meter.series-pre path { - stroke-dashoffset: 768px; } - .meter--circle .meter__slice, .meter--arc .meter__slice, .meter--spiral .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 768px 768px; - stroke-dashoffset: 0; - fill: none; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__slice-indicator, .meter--arc .meter__slice-indicator, .meter--spiral .meter__slice-indicator { - stroke-linecap: square; - stroke-width: 4px; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__values .meter__slice.color-index-loading, .meter--arc .meter__values .meter__slice.color-index-loading, .meter--spiral .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--circle .meter__values .meter__slice.color-index-unset, .meter--arc .meter__values .meter__slice.color-index-unset, .meter--spiral .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--circle .meter__values .meter__slice.color-index-brand, .meter--arc .meter__values .meter__slice.color-index-brand, .meter--spiral .meter__values .meter__slice.color-index-brand { - stroke: #ff8300; } - .meter--circle .meter__values .meter__slice.color-index-critical, .meter--arc .meter__values .meter__slice.color-index-critical, .meter--spiral .meter__values .meter__slice.color-index-critical { - stroke: #c8200d; } - .meter--circle .meter__values .meter__slice.color-index-error, .meter--arc .meter__values .meter__slice.color-index-error, .meter--spiral .meter__values .meter__slice.color-index-error { - stroke: #c8200d; } - .meter--circle .meter__values .meter__slice.color-index-warning, .meter--arc .meter__values .meter__slice.color-index-warning, .meter--spiral .meter__values .meter__slice.color-index-warning { - stroke: #e57118; } - .meter--circle .meter__values .meter__slice.color-index-ok, .meter--arc .meter__values .meter__slice.color-index-ok, .meter--spiral .meter__values .meter__slice.color-index-ok { - stroke: #2aac24; } - .meter--circle .meter__values .meter__slice.color-index-unknown, .meter--arc .meter__values .meter__slice.color-index-unknown, .meter--spiral .meter__values .meter__slice.color-index-unknown { - stroke: #999999; } - .meter--circle .meter__values .meter__slice.color-index-disabled, .meter--arc .meter__values .meter__slice.color-index-disabled, .meter--spiral .meter__values .meter__slice.color-index-disabled { - stroke: #999999; } - .meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-6, .meter--arc .meter__values .meter__slice.color-index-graph-1, .meter--arc .meter__values .meter__slice.color-index-graph-6, .meter--spiral .meter__values .meter__slice.color-index-graph-1, .meter--spiral .meter__values .meter__slice.color-index-graph-6 { - stroke: #ec9b58; } - .meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-7, .meter--arc .meter__values .meter__slice.color-index-graph-2, .meter--arc .meter__values .meter__slice.color-index-graph-7, .meter--spiral .meter__values .meter__slice.color-index-graph-2, .meter--spiral .meter__values .meter__slice.color-index-graph-7 { - stroke: #0049a0; } - .meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-8, .meter--arc .meter__values .meter__slice.color-index-graph-3, .meter--arc .meter__values .meter__slice.color-index-graph-8, .meter--spiral .meter__values .meter__slice.color-index-graph-3, .meter--spiral .meter__values .meter__slice.color-index-graph-8 { - stroke: #886f9c; } - .meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-9, .meter--arc .meter__values .meter__slice.color-index-graph-4, .meter--arc .meter__values .meter__slice.color-index-graph-9, .meter--spiral .meter__values .meter__slice.color-index-graph-4, .meter--spiral .meter__values .meter__slice.color-index-graph-9 { - stroke: #5fbcdd; } - .meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--circle .meter__values .meter__slice.color-index-graph-10, .meter--arc .meter__values .meter__slice.color-index-graph-5, .meter--arc .meter__values .meter__slice.color-index-graph-10, .meter--spiral .meter__values .meter__slice.color-index-graph-5, .meter--spiral .meter__values .meter__slice.color-index-graph-10 { - stroke: #7fba44; } - .meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--arc .meter__values .meter__slice.color-index-grey-1, .meter--arc .meter__values .meter__slice.color-index-grey-4, .meter--spiral .meter__values .meter__slice.color-index-grey-1, .meter--spiral .meter__values .meter__slice.color-index-grey-4 { - stroke: #2d3034; } - .meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-5, .meter--arc .meter__values .meter__slice.color-index-grey-2, .meter--arc .meter__values .meter__slice.color-index-grey-5, .meter--spiral .meter__values .meter__slice.color-index-grey-2, .meter--spiral .meter__values .meter__slice.color-index-grey-5 { - stroke: #52555a; } - .meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-6, .meter--arc .meter__values .meter__slice.color-index-grey-3, .meter--arc .meter__values .meter__slice.color-index-grey-6, .meter--spiral .meter__values .meter__slice.color-index-grey-3, .meter--spiral .meter__values .meter__slice.color-index-grey-6 { - stroke: #999999; } - .meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-3, .meter--arc .meter__values .meter__slice.color-index-accent-1, .meter--arc .meter__values .meter__slice.color-index-accent-3, .meter--spiral .meter__values .meter__slice.color-index-accent-1, .meter--spiral .meter__values .meter__slice.color-index-accent-3 { - stroke: #9fd4c9; } - .meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-4, .meter--arc .meter__values .meter__slice.color-index-accent-2, .meter--arc .meter__values .meter__slice.color-index-accent-4, .meter--spiral .meter__values .meter__slice.color-index-accent-2, .meter--spiral .meter__values .meter__slice.color-index-accent-4 { - stroke: #d5d848; } - .meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, .meter--arc .meter__values .meter__slice.color-index-light-1, .meter--arc .meter__values .meter__slice.color-index-light-3, .meter--spiral .meter__values .meter__slice.color-index-light-1, .meter--spiral .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, .meter--arc .meter__values .meter__slice.color-index-light-2, .meter--arc .meter__values .meter__slice.color-index-light-4, .meter--spiral .meter__values .meter__slice.color-index-light-2, .meter--spiral .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--circle .meter__values .meter__slice--clickable, .meter--arc .meter__values .meter__slice--clickable, .meter--spiral .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--circle .meter__values .meter__slice, .meter--arc .meter__values .meter__slice, .meter--spiral .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-arc 1.5s linear; - animation: draw-arc 1.5s linear; } } - .meter--circle .meter__thresholds .meter__slice.color-index-unset, - .meter--circle .meter__tracks .meter__slice.color-index-unset, .meter--arc .meter__thresholds .meter__slice.color-index-unset, - .meter--arc .meter__tracks .meter__slice.color-index-unset, .meter--spiral .meter__thresholds .meter__slice.color-index-unset, - .meter--spiral .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-brand, - .meter--circle .meter__tracks .meter__slice.color-index-brand, .meter--arc .meter__thresholds .meter__slice.color-index-brand, - .meter--arc .meter__tracks .meter__slice.color-index-brand, .meter--spiral .meter__thresholds .meter__slice.color-index-brand, - .meter--spiral .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(255, 131, 0, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-critical, - .meter--circle .meter__tracks .meter__slice.color-index-critical, .meter--arc .meter__thresholds .meter__slice.color-index-critical, - .meter--arc .meter__tracks .meter__slice.color-index-critical, .meter--spiral .meter__thresholds .meter__slice.color-index-critical, - .meter--spiral .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(200, 32, 13, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-error, - .meter--circle .meter__tracks .meter__slice.color-index-error, .meter--arc .meter__thresholds .meter__slice.color-index-error, - .meter--arc .meter__tracks .meter__slice.color-index-error, .meter--spiral .meter__thresholds .meter__slice.color-index-error, - .meter--spiral .meter__tracks .meter__slice.color-index-error { - stroke: rgba(200, 32, 13, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-warning, - .meter--circle .meter__tracks .meter__slice.color-index-warning, .meter--arc .meter__thresholds .meter__slice.color-index-warning, - .meter--arc .meter__tracks .meter__slice.color-index-warning, .meter--spiral .meter__thresholds .meter__slice.color-index-warning, - .meter--spiral .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(229, 113, 24, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-ok, - .meter--circle .meter__tracks .meter__slice.color-index-ok, .meter--arc .meter__thresholds .meter__slice.color-index-ok, - .meter--arc .meter__tracks .meter__slice.color-index-ok, .meter--spiral .meter__thresholds .meter__slice.color-index-ok, - .meter--spiral .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(42, 172, 36, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-unknown, - .meter--circle .meter__tracks .meter__slice.color-index-unknown, .meter--arc .meter__thresholds .meter__slice.color-index-unknown, - .meter--arc .meter__tracks .meter__slice.color-index-unknown, .meter--spiral .meter__thresholds .meter__slice.color-index-unknown, - .meter--spiral .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(153, 153, 153, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-disabled, - .meter--circle .meter__tracks .meter__slice.color-index-disabled, .meter--arc .meter__thresholds .meter__slice.color-index-disabled, - .meter--arc .meter__tracks .meter__slice.color-index-disabled, .meter--spiral .meter__thresholds .meter__slice.color-index-disabled, - .meter--spiral .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(153, 153, 153, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, - .meter--circle .meter__tracks .meter__slice.color-index-graph-1, - .meter--circle .meter__tracks .meter__slice.color-index-graph-6, .meter--arc .meter__thresholds .meter__slice.color-index-graph-1, .meter--arc .meter__thresholds .meter__slice.color-index-graph-6, - .meter--arc .meter__tracks .meter__slice.color-index-graph-1, - .meter--arc .meter__tracks .meter__slice.color-index-graph-6, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-1, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(236, 155, 88, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, - .meter--circle .meter__tracks .meter__slice.color-index-graph-2, - .meter--circle .meter__tracks .meter__slice.color-index-graph-7, .meter--arc .meter__thresholds .meter__slice.color-index-graph-2, .meter--arc .meter__thresholds .meter__slice.color-index-graph-7, - .meter--arc .meter__tracks .meter__slice.color-index-graph-2, - .meter--arc .meter__tracks .meter__slice.color-index-graph-7, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-2, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(0, 73, 160, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, - .meter--circle .meter__tracks .meter__slice.color-index-graph-3, - .meter--circle .meter__tracks .meter__slice.color-index-graph-8, .meter--arc .meter__thresholds .meter__slice.color-index-graph-3, .meter--arc .meter__thresholds .meter__slice.color-index-graph-8, - .meter--arc .meter__tracks .meter__slice.color-index-graph-3, - .meter--arc .meter__tracks .meter__slice.color-index-graph-8, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-3, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(136, 111, 156, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-9, - .meter--circle .meter__tracks .meter__slice.color-index-graph-4, - .meter--circle .meter__tracks .meter__slice.color-index-graph-9, .meter--arc .meter__thresholds .meter__slice.color-index-graph-4, .meter--arc .meter__thresholds .meter__slice.color-index-graph-9, - .meter--arc .meter__tracks .meter__slice.color-index-graph-4, - .meter--arc .meter__tracks .meter__slice.color-index-graph-9, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-9, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-4, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-9 { - stroke: rgba(95, 188, 221, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-5, .meter--circle .meter__thresholds .meter__slice.color-index-graph-10, - .meter--circle .meter__tracks .meter__slice.color-index-graph-5, - .meter--circle .meter__tracks .meter__slice.color-index-graph-10, .meter--arc .meter__thresholds .meter__slice.color-index-graph-5, .meter--arc .meter__thresholds .meter__slice.color-index-graph-10, - .meter--arc .meter__tracks .meter__slice.color-index-graph-5, - .meter--arc .meter__tracks .meter__slice.color-index-graph-10, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-10, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-5, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-10 { - stroke: rgba(127, 186, 68, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-3, - .meter--circle .meter__tracks .meter__slice.color-index-accent-1, - .meter--circle .meter__tracks .meter__slice.color-index-accent-3, .meter--arc .meter__thresholds .meter__slice.color-index-accent-1, .meter--arc .meter__thresholds .meter__slice.color-index-accent-3, - .meter--arc .meter__tracks .meter__slice.color-index-accent-1, - .meter--arc .meter__tracks .meter__slice.color-index-accent-3, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-1, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-3 { - stroke: rgba(159, 212, 201, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, - .meter--circle .meter__tracks .meter__slice.color-index-accent-2, - .meter--circle .meter__tracks .meter__slice.color-index-accent-4, .meter--arc .meter__thresholds .meter__slice.color-index-accent-2, .meter--arc .meter__thresholds .meter__slice.color-index-accent-4, - .meter--arc .meter__tracks .meter__slice.color-index-accent-2, - .meter--arc .meter__tracks .meter__slice.color-index-accent-4, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-2, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(213, 216, 72, 0.5); } - .meter--circle .meter__threshold, .meter--arc .meter__threshold, .meter--spiral .meter__threshold { - stroke-linecap: butt; } - .meter--circle .meter__value-label, .meter--arc .meter__value-label, .meter--spiral .meter__value-label { - display: block; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc { - width: 192px; } } - .meter--circle .meter__value, .meter--arc .meter__value { - white-space: normal; - pointer-events: none; - text-align: center; } - .meter--circle .meter__value--active, .meter--arc .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter--circle .meter__minmax-container, .meter--arc:not(.meter--vertical) .meter__minmax-container { - width: 192px; } - .meter--circle .meter__value, .meter--arc:not(.meter--vertical) .meter__value { - position: absolute; - left: 50%; } - .meter--circle.meter--small .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter--circle.meter--large .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--circle.meter--legend-right .meter__legend, .meter--arc.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--circle.meter--legend-right.meter--small .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { - top: 48px; } - .meter--circle.meter--legend-right.meter--large .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { - top: 144px; } - .meter--circle svg.meter__graphic { - width: 192px; - height: 192px; } - .meter--circle .meter__value { - top: 96px; - -webkit-transform: translateX(-50%) translateY(-50%); - transform: translateX(-50%) translateY(-50%); - max-width: 144px; } - .meter--circle.meter--small svg.meter__graphic { - width: 96px; - height: 96px; } - .meter--circle.meter--small .meter__value { - top: 48px; - max-width: 72px; } - .meter--circle.meter--large svg.meter__graphic { - width: 288px; - height: 288px; } - .meter--circle.meter--large .meter__value { - top: 144px; - max-width: 216px; } - .meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { - position: static; - margin: 0 auto; - -webkit-transform: none; - transform: none; } - .meter--arc:not(.meter--vertical) svg.meter__graphic { - width: 192px; - height: 144px; } - .meter--arc:not(.meter--vertical) .meter__value { - top: 108px; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - max-width: 120px; } - .meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { - top: 72px; } - .meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; - height: 72px; } - .meter--arc:not(.meter--vertical).meter--small .meter__value { - top: 60px; - max-width: 60px; } - .meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; - height: 216px; } - .meter--arc:not(.meter--vertical).meter--large .meter__value { - top: 156px; - max-width: 180px; } - .meter--arc.meter--vertical svg.meter__graphic { - display: inline; - width: 144px; - height: 192px; } - .meter--arc.meter--vertical .meter__value { - position: relative; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; - margin-left: -24px; - vertical-align: top; } - html.rtl .meter--arc.meter--vertical .meter__value { - margin-left: 0; - margin-right: -24px; } - .meter--arc.meter--vertical .meter__minmax-container { - display: inline-block; - vertical-align: top; - margin-left: 12px; - padding-top: 12px; - padding-bottom: 12px; } - html.rtl .meter--arc.meter--vertical .meter__minmax-container { - margin-left: 0; - margin-right: 12px; } - .meter--arc.meter--vertical.meter--small svg.meter__graphic { - width: 72px; - height: 96px; } - .meter--arc.meter--vertical.meter--small .meter__value { - top: 48px; - margin-left: -12px; } - html.rtl .meter--arc.meter--vertical.meter--small .meter__value { - margin-left: 0; - margin-right: -12px; } - .meter--arc.meter--vertical.meter--small .meter__minmax-container { - padding-top: 0px; - padding-bottom: 0px; } - .meter--arc.meter--vertical.meter--large svg.meter__graphic { - width: 216px; - height: 288px; } - .meter--arc.meter--vertical.meter--large .meter__value { - top: 144px; - margin-left: -48px; } - html.rtl .meter--arc.meter--vertical.meter--large .meter__value { - margin-left: 0; - margin-right: -48px; } - .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: -72px; } - html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: 0; - margin-right: -72px; } - .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: -60px; } - html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: 0; - margin-right: -60px; } - .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { - min-width: 78px; } - .meter--arc.meter--vertical.meter--legend-right .meter__value { - min-width: 120px; } - .meter--spiral .meter__value { - position: absolute; - top: 0px; - right: 0px; - white-space: normal; - text-align: right; } - .meter--spiral .meter__value-value { - display: block; - font-size: 24px; - font-size: 1.5rem; - line-height: 1; - margin-bottom: 6px; } - .meter--spiral .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; - color: #777; - margin-left: 0.2em; } - html.rtl .meter--spiral .meter__value-units { - margin-left: 0; - margin-right: 0.2em; } - .meter--spiral .meter__value-label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--loading .meter__thresholds, - .meter--loading .meter__value { - display: none; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc, + .meter--spiral { + margin: 0px auto; } } + +.meter--circle svg.meter__graphic, +.meter--arc svg.meter__graphic, +.meter--spiral svg.meter__graphic { + display: block; } + +.meter--circle .meter.series-pre path, +.meter--arc .meter.series-pre path, +.meter--spiral .meter.series-pre path { + stroke-dashoffset: 768px; } + +.meter--circle .meter__slice, +.meter--arc .meter__slice, +.meter--spiral .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 768px 768px; + stroke-dashoffset: 0; + fill: none; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__slice-indicator, +.meter--arc .meter__slice-indicator, +.meter--spiral .meter__slice-indicator { + stroke-linecap: square; + stroke-width: 4px; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__values .meter__slice.color-index-loading, +.meter--arc .meter__values .meter__slice.color-index-loading, +.meter--spiral .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--circle .meter__values .meter__slice.color-index-unset, +.meter--arc .meter__values .meter__slice.color-index-unset, +.meter--spiral .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--circle .meter__values .meter__slice.color-index-brand, +.meter--arc .meter__values .meter__slice.color-index-brand, +.meter--spiral .meter__values .meter__slice.color-index-brand { + stroke: #ff8300; } + +.meter--circle .meter__values .meter__slice.color-index-critical, +.meter--arc .meter__values .meter__slice.color-index-critical, +.meter--spiral .meter__values .meter__slice.color-index-critical { + stroke: #c8200d; } + +.meter--circle .meter__values .meter__slice.color-index-error, +.meter--arc .meter__values .meter__slice.color-index-error, +.meter--spiral .meter__values .meter__slice.color-index-error { + stroke: #c8200d; } + +.meter--circle .meter__values .meter__slice.color-index-warning, +.meter--arc .meter__values .meter__slice.color-index-warning, +.meter--spiral .meter__values .meter__slice.color-index-warning { + stroke: #e57118; } + +.meter--circle .meter__values .meter__slice.color-index-ok, +.meter--arc .meter__values .meter__slice.color-index-ok, +.meter--spiral .meter__values .meter__slice.color-index-ok { + stroke: #2aac24; } + +.meter--circle .meter__values .meter__slice.color-index-unknown, +.meter--arc .meter__values .meter__slice.color-index-unknown, +.meter--spiral .meter__values .meter__slice.color-index-unknown { + stroke: #999999; } + +.meter--circle .meter__values .meter__slice.color-index-disabled, +.meter--arc .meter__values .meter__slice.color-index-disabled, +.meter--spiral .meter__values .meter__slice.color-index-disabled { + stroke: #999999; } + +.meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-6, +.meter--arc .meter__values .meter__slice.color-index-graph-1, +.meter--arc .meter__values .meter__slice.color-index-graph-6, +.meter--spiral .meter__values .meter__slice.color-index-graph-1, +.meter--spiral .meter__values .meter__slice.color-index-graph-6 { + stroke: #ec9b58; } + +.meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-7, +.meter--arc .meter__values .meter__slice.color-index-graph-2, +.meter--arc .meter__values .meter__slice.color-index-graph-7, +.meter--spiral .meter__values .meter__slice.color-index-graph-2, +.meter--spiral .meter__values .meter__slice.color-index-graph-7 { + stroke: #0049a0; } + +.meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-8, +.meter--arc .meter__values .meter__slice.color-index-graph-3, +.meter--arc .meter__values .meter__slice.color-index-graph-8, +.meter--spiral .meter__values .meter__slice.color-index-graph-3, +.meter--spiral .meter__values .meter__slice.color-index-graph-8 { + stroke: #886f9c; } + +.meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-9, +.meter--arc .meter__values .meter__slice.color-index-graph-4, +.meter--arc .meter__values .meter__slice.color-index-graph-9, +.meter--spiral .meter__values .meter__slice.color-index-graph-4, +.meter--spiral .meter__values .meter__slice.color-index-graph-9 { + stroke: #5fbcdd; } + +.meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--circle .meter__values .meter__slice.color-index-graph-10, +.meter--arc .meter__values .meter__slice.color-index-graph-5, +.meter--arc .meter__values .meter__slice.color-index-graph-10, +.meter--spiral .meter__values .meter__slice.color-index-graph-5, +.meter--spiral .meter__values .meter__slice.color-index-graph-10 { + stroke: #7fba44; } + +.meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-4, +.meter--arc .meter__values .meter__slice.color-index-grey-1, +.meter--arc .meter__values .meter__slice.color-index-grey-4, +.meter--spiral .meter__values .meter__slice.color-index-grey-1, +.meter--spiral .meter__values .meter__slice.color-index-grey-4 { + stroke: #2d3034; } + +.meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-5, +.meter--arc .meter__values .meter__slice.color-index-grey-2, +.meter--arc .meter__values .meter__slice.color-index-grey-5, +.meter--spiral .meter__values .meter__slice.color-index-grey-2, +.meter--spiral .meter__values .meter__slice.color-index-grey-5 { + stroke: #52555a; } + +.meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-6, +.meter--arc .meter__values .meter__slice.color-index-grey-3, +.meter--arc .meter__values .meter__slice.color-index-grey-6, +.meter--spiral .meter__values .meter__slice.color-index-grey-3, +.meter--spiral .meter__values .meter__slice.color-index-grey-6 { + stroke: #999999; } + +.meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-3, +.meter--arc .meter__values .meter__slice.color-index-accent-1, +.meter--arc .meter__values .meter__slice.color-index-accent-3, +.meter--spiral .meter__values .meter__slice.color-index-accent-1, +.meter--spiral .meter__values .meter__slice.color-index-accent-3 { + stroke: #9fd4c9; } + +.meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-4, +.meter--arc .meter__values .meter__slice.color-index-accent-2, +.meter--arc .meter__values .meter__slice.color-index-accent-4, +.meter--spiral .meter__values .meter__slice.color-index-accent-2, +.meter--spiral .meter__values .meter__slice.color-index-accent-4 { + stroke: #d5d848; } + +.meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, +.meter--arc .meter__values .meter__slice.color-index-light-1, +.meter--arc .meter__values .meter__slice.color-index-light-3, +.meter--spiral .meter__values .meter__slice.color-index-light-1, +.meter--spiral .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, +.meter--arc .meter__values .meter__slice.color-index-light-2, +.meter--arc .meter__values .meter__slice.color-index-light-4, +.meter--spiral .meter__values .meter__slice.color-index-light-2, +.meter--spiral .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--circle .meter__values .meter__slice--clickable, +.meter--arc .meter__values .meter__slice--clickable, +.meter--spiral .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--circle .meter__values .meter__slice, + .meter--arc .meter__values .meter__slice, + .meter--spiral .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-arc 1.5s linear; + animation: draw-arc 1.5s linear; } } + +.meter--circle .meter__thresholds .meter__slice.color-index-unset, +.meter--circle .meter__tracks .meter__slice.color-index-unset, +.meter--arc .meter__thresholds .meter__slice.color-index-unset, +.meter--arc .meter__tracks .meter__slice.color-index-unset, +.meter--spiral .meter__thresholds .meter__slice.color-index-unset, +.meter--spiral .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-brand, +.meter--circle .meter__tracks .meter__slice.color-index-brand, +.meter--arc .meter__thresholds .meter__slice.color-index-brand, +.meter--arc .meter__tracks .meter__slice.color-index-brand, +.meter--spiral .meter__thresholds .meter__slice.color-index-brand, +.meter--spiral .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(255, 131, 0, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-critical, +.meter--circle .meter__tracks .meter__slice.color-index-critical, +.meter--arc .meter__thresholds .meter__slice.color-index-critical, +.meter--arc .meter__tracks .meter__slice.color-index-critical, +.meter--spiral .meter__thresholds .meter__slice.color-index-critical, +.meter--spiral .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(200, 32, 13, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-error, +.meter--circle .meter__tracks .meter__slice.color-index-error, +.meter--arc .meter__thresholds .meter__slice.color-index-error, +.meter--arc .meter__tracks .meter__slice.color-index-error, +.meter--spiral .meter__thresholds .meter__slice.color-index-error, +.meter--spiral .meter__tracks .meter__slice.color-index-error { + stroke: rgba(200, 32, 13, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-warning, +.meter--circle .meter__tracks .meter__slice.color-index-warning, +.meter--arc .meter__thresholds .meter__slice.color-index-warning, +.meter--arc .meter__tracks .meter__slice.color-index-warning, +.meter--spiral .meter__thresholds .meter__slice.color-index-warning, +.meter--spiral .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(229, 113, 24, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-ok, +.meter--circle .meter__tracks .meter__slice.color-index-ok, +.meter--arc .meter__thresholds .meter__slice.color-index-ok, +.meter--arc .meter__tracks .meter__slice.color-index-ok, +.meter--spiral .meter__thresholds .meter__slice.color-index-ok, +.meter--spiral .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(42, 172, 36, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-unknown, +.meter--circle .meter__tracks .meter__slice.color-index-unknown, +.meter--arc .meter__thresholds .meter__slice.color-index-unknown, +.meter--arc .meter__tracks .meter__slice.color-index-unknown, +.meter--spiral .meter__thresholds .meter__slice.color-index-unknown, +.meter--spiral .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(153, 153, 153, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-disabled, +.meter--circle .meter__tracks .meter__slice.color-index-disabled, +.meter--arc .meter__thresholds .meter__slice.color-index-disabled, +.meter--arc .meter__tracks .meter__slice.color-index-disabled, +.meter--spiral .meter__thresholds .meter__slice.color-index-disabled, +.meter--spiral .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(153, 153, 153, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, +.meter--circle .meter__tracks .meter__slice.color-index-graph-1, +.meter--circle .meter__tracks .meter__slice.color-index-graph-6, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-1, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-6, +.meter--arc .meter__tracks .meter__slice.color-index-graph-1, +.meter--arc .meter__tracks .meter__slice.color-index-graph-6, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-1, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(236, 155, 88, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, +.meter--circle .meter__tracks .meter__slice.color-index-graph-2, +.meter--circle .meter__tracks .meter__slice.color-index-graph-7, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-2, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-7, +.meter--arc .meter__tracks .meter__slice.color-index-graph-2, +.meter--arc .meter__tracks .meter__slice.color-index-graph-7, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-2, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(0, 73, 160, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, +.meter--circle .meter__tracks .meter__slice.color-index-graph-3, +.meter--circle .meter__tracks .meter__slice.color-index-graph-8, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-3, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-8, +.meter--arc .meter__tracks .meter__slice.color-index-graph-3, +.meter--arc .meter__tracks .meter__slice.color-index-graph-8, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-3, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(136, 111, 156, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-9, +.meter--circle .meter__tracks .meter__slice.color-index-graph-4, +.meter--circle .meter__tracks .meter__slice.color-index-graph-9, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-4, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-9, +.meter--arc .meter__tracks .meter__slice.color-index-graph-4, +.meter--arc .meter__tracks .meter__slice.color-index-graph-9, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-4, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-9 { + stroke: rgba(95, 188, 221, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-5, .meter--circle .meter__thresholds .meter__slice.color-index-graph-10, +.meter--circle .meter__tracks .meter__slice.color-index-graph-5, +.meter--circle .meter__tracks .meter__slice.color-index-graph-10, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-5, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-10, +.meter--arc .meter__tracks .meter__slice.color-index-graph-5, +.meter--arc .meter__tracks .meter__slice.color-index-graph-10, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-5, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-10 { + stroke: rgba(127, 186, 68, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-3, +.meter--circle .meter__tracks .meter__slice.color-index-accent-1, +.meter--circle .meter__tracks .meter__slice.color-index-accent-3, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-1, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-3, +.meter--arc .meter__tracks .meter__slice.color-index-accent-1, +.meter--arc .meter__tracks .meter__slice.color-index-accent-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-1, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-3 { + stroke: rgba(159, 212, 201, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, +.meter--circle .meter__tracks .meter__slice.color-index-accent-2, +.meter--circle .meter__tracks .meter__slice.color-index-accent-4, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-2, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-4, +.meter--arc .meter__tracks .meter__slice.color-index-accent-2, +.meter--arc .meter__tracks .meter__slice.color-index-accent-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-2, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(213, 216, 72, 0.5); } + +.meter--circle .meter__threshold, +.meter--arc .meter__threshold, +.meter--spiral .meter__threshold { + stroke-linecap: butt; } + +.meter--circle .meter__value-label, +.meter--arc .meter__value-label, +.meter--spiral .meter__value-label { + display: block; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc { + width: 192px; } } + +.meter--circle .meter__value, +.meter--arc .meter__value { + white-space: normal; + pointer-events: none; + text-align: center; } + +.meter--circle .meter__value--active, +.meter--arc .meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter--circle .meter__minmax-container, +.meter--arc:not(.meter--vertical) .meter__minmax-container { + width: 192px; } + +.meter--circle .meter__value, +.meter--arc:not(.meter--vertical) .meter__value { + position: absolute; + left: 50%; } + +.meter--circle.meter--small .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter--circle.meter--large .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--circle.meter--legend-right .meter__legend, +.meter--arc.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + +.meter--circle.meter--legend-right.meter--small .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { + top: 48px; } + +.meter--circle.meter--legend-right.meter--large .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { + top: 144px; } + +.meter--circle svg.meter__graphic { + width: 192px; + height: 192px; } + +.meter--circle .meter__value { + top: 96px; + -webkit-transform: translateX(-50%) translateY(-50%); + transform: translateX(-50%) translateY(-50%); + max-width: 144px; } + +.meter--circle.meter--small svg.meter__graphic { + width: 96px; + height: 96px; } + +.meter--circle.meter--small .meter__value { + top: 48px; + max-width: 72px; } + +.meter--circle.meter--large svg.meter__graphic { + width: 288px; + height: 288px; } + +.meter--circle.meter--large .meter__value { + top: 144px; + max-width: 216px; } + +.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { + position: static; + margin: 0 auto; + -webkit-transform: none; + transform: none; } + +.meter--arc:not(.meter--vertical) svg.meter__graphic { + width: 192px; + height: 144px; } + +.meter--arc:not(.meter--vertical) .meter__value { + top: 108px; + -webkit-transform: translateX(-50%); + transform: translateX(-50%); + max-width: 120px; } + +.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { + top: 72px; } + +.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; + height: 72px; } + +.meter--arc:not(.meter--vertical).meter--small .meter__value { + top: 60px; + max-width: 60px; } + +.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { + width: 288px; + height: 216px; } + +.meter--arc:not(.meter--vertical).meter--large .meter__value { + top: 156px; + max-width: 180px; } + +.meter--arc.meter--vertical svg.meter__graphic { + display: inline; + width: 144px; + height: 192px; } + +.meter--arc.meter--vertical .meter__value { + position: relative; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; + margin-left: -24px; + vertical-align: top; } + html.rtl .meter--arc.meter--vertical .meter__value { + margin-left: 0; + margin-right: -24px; } + +.meter--arc.meter--vertical .meter__minmax-container { + display: inline-block; + vertical-align: top; + margin-left: 12px; + padding-top: 12px; + padding-bottom: 12px; } + html.rtl .meter--arc.meter--vertical .meter__minmax-container { + margin-left: 0; + margin-right: 12px; } + +.meter--arc.meter--vertical.meter--small svg.meter__graphic { + width: 72px; + height: 96px; } + +.meter--arc.meter--vertical.meter--small .meter__value { + top: 48px; + margin-left: -12px; } + html.rtl .meter--arc.meter--vertical.meter--small .meter__value { + margin-left: 0; + margin-right: -12px; } + +.meter--arc.meter--vertical.meter--small .meter__minmax-container { + padding-top: 0px; + padding-bottom: 0px; } + +.meter--arc.meter--vertical.meter--large svg.meter__graphic { + width: 216px; + height: 288px; } + +.meter--arc.meter--vertical.meter--large .meter__value { + top: 144px; + margin-left: -48px; } + html.rtl .meter--arc.meter--vertical.meter--large .meter__value { + margin-left: 0; + margin-right: -48px; } + +.meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: -72px; } + html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: 0; + margin-right: -72px; } + +.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: -60px; } + html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: 0; + margin-right: -60px; } + +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { + min-width: 78px; } + +.meter--arc.meter--vertical.meter--legend-right .meter__value { + min-width: 120px; } + +.meter--spiral .meter__value { + position: absolute; + top: 0px; + right: 0px; + white-space: normal; + text-align: right; } + +.meter--spiral .meter__value-value { + display: block; + font-size: 24px; + font-size: 1.5rem; + line-height: 1; + margin-bottom: 6px; } + +.meter--spiral .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; + color: #777; + margin-left: 0.2em; } + html.rtl .meter--spiral .meter__value-units { + margin-left: 0; + margin-right: 0.2em; } + +.meter--spiral .meter__value-label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--loading .meter__thresholds, +.meter--loading .meter__value { + display: none; } .notification { font-size: 19px; @@ -4711,54 +5387,71 @@ a.active > .label .label__icon.control-icon svg { font-size: 19px; font-size: 1.1875rem; line-height: 24px; } - .notification--critical .notification__status .status-icon__base { + .notification:not(.notification--disabled) { + cursor: pointer; } + .notification:not(.notification--disabled):hover { + z-index: 1; + box-shadow: 0px 0px 0px 2px #ff8300; } + .notification--status-critical .notification__status .status-icon__base { fill: #fff; } - .notification--critical .notification__status .status-icon__detail { + .notification--status-critical .notification__status .status-icon__detail { stroke: #c8200d; fill: #c8200d; } - .notification--critical .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-critical .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--error .notification__status .status-icon__base { + .notification--status-critical:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #c8200d; } + .notification--status-error .notification__status .status-icon__base { fill: #fff; } - .notification--error .notification__status .status-icon__detail { + .notification--status-error .notification__status .status-icon__detail { stroke: #c8200d; fill: #c8200d; } - .notification--error .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-error .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--warning .notification__status .status-icon__base { + .notification--status-error:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #c8200d; } + .notification--status-warning .notification__status .status-icon__base { fill: #fff; } - .notification--warning .notification__status .status-icon__detail { + .notification--status-warning .notification__status .status-icon__detail { stroke: #e57118; fill: #e57118; } - .notification--warning .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-warning .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--ok .notification__status .status-icon__base { + .notification--status-warning:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #e57118; } + .notification--status-ok .notification__status .status-icon__base { fill: #fff; } - .notification--ok .notification__status .status-icon__detail { + .notification--status-ok .notification__status .status-icon__detail { stroke: #2aac24; fill: #2aac24; } - .notification--ok .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-ok .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--unknown .notification__status .status-icon__base { + .notification--status-ok:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #2aac24; } + .notification--status-unknown .notification__status .status-icon__base { fill: #fff; } - .notification--unknown .notification__status .status-icon__detail { + .notification--status-unknown .notification__status .status-icon__detail { stroke: #999999; fill: #999999; } - .notification--unknown .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--disabled .notification__status .status-icon__base { + .notification--status-unknown:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #999999; } + .notification--status-disabled .notification__status .status-icon__base { fill: #fff; } - .notification--disabled .notification__status .status-icon__detail { + .notification--status-disabled .notification__status .status-icon__detail { stroke: #999999; fill: #999999; } - .notification--disabled .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } + .notification--status-disabled:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #999999; } .notifications-control__icon { width: 48px; @@ -4771,7 +5464,7 @@ a.active > .label .label__icon.control-icon svg { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .notifications__container { position: absolute; @@ -4781,8 +5474,8 @@ a.active > .label .label__icon.control-icon svg { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 4px 4px 4px 4px; } .notifications__icon { position: absolute; @@ -4797,6 +5490,10 @@ a.active > .label .label__icon.control-icon svg { .number-input__input::-webkit-outer-spin-button, .number-input__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } + .number-input__input:invalid { + box-shadow: none; } + .number-input__input::-ms-clear { + display: none; } .object { overflow: auto; } @@ -4832,25 +5529,54 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; color: #777; } .object__attribute--array > .object__attribute-value > ol > li { - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li:last-child { - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li > ul { padding-top: 0px; padding-bottom: 0px; } -.paragraph--small { +.grommet .paragraph--align-start { + text-align: left; } + html.rtl .grommet .paragraph--align-start { + text-align: right; } + +.grommet .paragraph--align-center { + text-align: center; } + +.grommet .paragraph--align-right { + text-align: right; } + html.rtl .grommet .paragraph--align-right { + text-align: left; } + +.grommet .paragraph--margin-none { + margin-top: 0; + margin-bottom: 0; } + +.grommet .paragraph--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + +.grommet .paragraph--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + +.grommet .paragraph--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + +.grommet .paragraph.paragraph--small { font-size: 14px; font-size: 0.875rem; line-height: 1.71429; } - .paragraph--small a { + .grommet .paragraph.paragraph--small a { text-decoration: none; } -.paragraph--large { +.grommet .paragraph.paragraph--large { font-size: 24px; font-size: 1.5rem; line-height: 28px; } - .paragraph--large a { + .grommet .paragraph.paragraph--large a { color: #ff8300; font-weight: 600; } @@ -4861,26 +5587,26 @@ a.active > .label .label__icon.control-icon svg { cursor: pointer; } .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #fff; } .radio-button__input { opacity: 0; position: absolute; } .radio-button__input:checked + .radio-button__control { border-color: #ff8300; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #fff; } .radio-button__input:checked + .radio-button__control:after { content: ""; @@ -4892,7 +5618,7 @@ a.active > .label .label__icon.control-icon svg { height: 10px; background-color: #ff8300; border-radius: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control:after { background-color: #fff; } .radio-button__input:focus + .radio-button__control { content: ""; @@ -4912,12 +5638,12 @@ a.active > .label .label__icon.control-icon svg { html.rtl .radio-button__control { margin-right: 0; margin-left: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__control { - border-color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__control { + border-color: rgba(255, 255, 255, 0.7); } .radio-button__label { color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__label { - color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__label { + color: rgba(255, 255, 255, 0.85); } .radio-button--disabled .radio-button__control { opacity: 0.5; } @@ -4928,121 +5654,193 @@ a.active > .label .label__icon.control-icon svg { margin: -1px; border: 1px solid #ff4c00; box-shadow: 0 0 1px 1px #ff4c00; } - .search--controlled { - cursor: pointer; } - .search__input { - margin-right: 0px; } - .header .search__input { - font-size: inherit; } - .search__drop { - font-size: 20px; - font-size: 1.25rem; + +.search--controlled { + cursor: pointer; } + +.search__input { + margin-right: 0px; } + .header .search__input { + font-size: inherit; line-height: inherit; } + .search__input::-ms-clear { + display: none; } + +.search__drop { + font-size: 20px; + font-size: 1.25rem; + line-height: inherit; } + @media screen and (max-width: 44.9375em) { + .search__drop { + max-width: 100%; + width: 100vw; } } + .search__drop input { + margin-right: 0px; + box-sizing: border-box; + width: 100%; } @media screen and (max-width: 44.9375em) { - .search__drop { - max-width: 100%; - width: 100vw; } } - .search__drop--inline { - margin-left: -1px; } - .search__drop--inline .search__drop-contents { - display: block; } - .search__drop--controlled .search__drop-contents { - display: inline-block; } - .search__drop input { - margin-right: 0px; - box-sizing: border-box; - width: 100%; } - @media screen and (max-width: 44.9375em) { - .search__drop input { - width: calc(100vw - 72px); } } - .search__drop-control { - vertical-align: top; - height: 48px; } - .search__drop .search__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search__drop--large { - line-height: 96px; } - .search--inline { - position: relative; } - .search--inline .search__input { - width: 100%; - box-sizing: border-box; - padding-right: 47px; } - .search--inline .search__input:focus { - padding-right: 46px; } - html.rtl .search--inline .search__input { - padding-right: 23px; - padding-left: 47px; } - html.rtl .search--inline .search__input:focus { - padding-right: 22px; - padding-left: 46px; } - .header .search--inline .search__input:not(:focus) { - border-color: transparent; } - .search--inline .control-icon-search { - position: absolute; - right: 12px; - top: 50%; - transform: translateY(-50%); - pointer-events: none; } - html.rtl .search--inline .control-icon-search { - right: auto; - left: 12px; } - .search--small { - line-height: 24px; } - .search--small .search__input { - font-size: 14px; - font-size: 0.875rem; - line-height: 14px; - padding: 4px 13px; - padding-right: 23px; } - .search--small .search__input:focus { - padding: 3px 12px; - padding-right: 22px; } - .search--small .control-icon-search { - height: 12px; - width: 12px; } - .search--large { - line-height: triple(24px); } - .search--large .search__input { - font-size: 36px; - font-size: 2.25rem; - line-height: 48px; - padding: -7px 35px; - padding-right: 47px; } - .search--large .control-icon-search { - right: 24px; } + .search__drop input { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion { + padding: 6px 24px; + cursor: pointer; } + @media screen and (max-width: 44.9375em) { + .search__drop .search__suggestion { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } -.search-input { - position: relative; +.search__drop-control { + vertical-align: top; + height: 48px; } + +.search__drop--controlled .search__drop-contents { display: inline-block; } - .search-input__input { + +.search__drop--large { + line-height: 96px; } + +.search--inline { + position: relative; } + .search--inline .search__input { width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .search-input__input:focus { - padding-right: 59px; } - .search-input__control { + box-sizing: border-box; + padding-left: 11px; + padding-right: 47px; + border-radius: 0; + -webkit-appearance: none; } + .search--inline .search__input:focus { + padding-left: 10px; + padding-right: 46px; } + html.rtl .search--inline .search__input { + padding-right: 11px; + padding-left: 47px; } + html.rtl .search--inline .search__input:focus { + padding-right: 11px; + padding-left: 46px; } + .header .search--inline .search__input:not(:focus) { + border-color: transparent; } + .search--inline .control-icon-search { position: absolute; + right: 12px; top: 50%; transform: translateY(-50%); - right: 12px; } - .search-input__suggestions { - border-top-left-radius: 0px; - border-top-right-radius: 0px; - margin: 0px; - list-style-type: none; } - .search-input__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search-input__suggestion:hover, .search-input__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search-input--active .search-input__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + pointer-events: none; } + html.rtl .search--inline .control-icon-search { + right: auto; + left: 12px; } + +.search--small .search__input { + font-size: 19px; + font-size: 1.1875rem; + line-height: inherit; + padding: 4px 18px; + padding-right: 23px; } + .search--small .search__input:focus { + padding: 3px 17px; + padding-right: 22px; } + +.search--large .search__input { + font-size: 54px; + font-size: 3.375rem; + line-height: normal; + padding: 12px 24px; + padding-right: 72px; } + .search--large .search__input:focus { + padding: 11px 71px; + padding-left: 23px; } + @media screen and (max-width: 44.9375em) { + .search--large .search__input:focus { + padding: 10px 22px; + padding-right: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--large .search__input { + font-size: inherit; + padding: 11px 23px; + padding-right: 47px; + line-height: 1.5; } } + +.search--large .control-icon-search { + right: 24px; + width: 48px; + height: 48px; } + @media screen and (max-width: 44.9375em) { + .search--large .control-icon-search { + right: 12px; + width: 24px; + height: 24px; } } + @media screen and (min-width: 45em) { + .search--large .control-icon-search { + transition: none; } } + +.search--icon-align-start.search--inline .search__input { + padding-left: 47px; + padding-right: 23px; } + .search--icon-align-start.search--inline .search__input:focus { + padding-left: 46px; + padding-right: 23px; } + +.search--icon-align-start.search--inline .control-icon-search { + left: 12px; } + +.search--icon-align-start.search--large .search__input { + padding-left: 72px; + padding-right: 24px; } + .search--icon-align-start.search--large .search__input:focus { + padding-left: 71px; + padding-right: 23px; } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input:focus { + padding: 10px 22px; + padding-left: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input { + padding: 11px 23px; + padding-left: 47px; } } + +.search--fill { + width: 100%; + max-width: none; + flex-grow: 1; } + +.search-input { + position: relative; + display: inline-block; } + +.grommet .search-input__input, +.search-input__input { + width: 100%; + height: 100%; + display: block; + padding-right: 48px; } + .grommet .search-input__input:focus, + .search-input__input:focus { + padding-right: 47px; } + .grommet .search-input__input::-ms-clear, + .search-input__input::-ms-clear { + display: none; } + +.search-input__control { + position: absolute; + top: 50%; + transform: translateY(-50%); + right: 6px; } + +.search-input__suggestions { + border-top-left-radius: 0px; + border-top-right-radius: 0px; + margin: 0px; + list-style-type: none; } + +.search-input__suggestion { + padding: 6px 24px; + cursor: pointer; } + .search-input__suggestion:hover, .search-input__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } + +.search-input--active .search-input__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } section:not(.section) { padding-top: 24px; @@ -5115,7 +5913,7 @@ section > dl > dd { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .session__container { position: absolute; @@ -5125,8 +5923,8 @@ section > dl > dd { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 4px 4px 4px 4px; } .session .react-gravatar { position: absolute; @@ -5135,7 +5933,7 @@ section > dl > dd { .session__actions { margin-top: 24px; padding-top: 24px; - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .session a { cursor: pointer; } @@ -5160,7 +5958,7 @@ section > dl > dd { display: flex; flex-direction: column; } .sidebar--fixed > * { - flex: 1; + flex: 1 1 auto; overflow: auto; } .sidebar--fixed > *.header, .sidebar--fixed > *.footer { flex: 0 0 auto; } @@ -5216,41 +6014,62 @@ section > dl > dd { .skip-link-anchor { width: 0; height: 0; - overflow: hidden; } + overflow: hidden; + position: absolute; } .tab { - padding: 12px; } + padding: 0 12px; } + .tabs--justify-start .tab:first-of-type, + .tabs--justify-end .tab:first-of-type { + padding-left: 0; } + .tabs--justify-start .tab:last-of-type, + .tabs--justify-end .tab:last-of-type { + padding-right: 0; } + @media screen and (max-width: 44.9375em) { + .tabs--responsive .tab:first-of-type, + .tabs--responsive .tab:last-of-type { + padding-left: 12px; + padding-right: 12px; } } .tab a { + display: inline-block; text-decoration: none; } .tab a:hover, .tab a:visited, .tab a:link, .tab a:active { text-decoration: none; } - .tab a:focus .tab__label { - border-bottom: 4px solid; } + .tab a:focus:not(tab--active .tab__link) .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tab__label { + display: inline-block; cursor: pointer; - padding-bottom: 12px; - font-weight: 600; - color: #777; } - .tab--active .tab__label { + padding-bottom: 10px; + color: #777; + border-bottom: 4px solid transparent; } + .tab--active .tab__label, + .tab--active .tab__link:hover .tab__label { color: #000; - border-bottom: 4px solid #000; } - .tab:hover .tab__label, .tab:focus .tab__label { - border-bottom: 4px solid; } + border-color: #000; } + .tab:hover .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tabs { - margin: 0; + margin: 12px 0; padding: 0; display: flex; flex-wrap: wrap; - justify-content: center; align-items: center; list-style: none; - border-bottom: 1px solid #ccc; } - .tabs__content { - padding: 24px; } - @media screen and (max-width: 44.9375em) { - .tabs__content { - padding: 24px 0; } } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + .tabs--justify-center { + justify-content: center; } + .tabs--justify-start { + justify-content: flex-start; } + .tabs--justify-end { + justify-content: flex-end; } + @media screen and (max-width: 44.9375em) { + .tabs--justify-start.tabs--responsive, .tabs--justify-center.tabs--responsive, .tabs--justify-end.tabs--responsive { + flex-direction: column; + text-align: center; } } + .tabs + div:focus { + outline: none; } .table table { width: 100%; } @@ -5272,7 +6091,7 @@ section > dl > dd { font-size: 20px; font-size: 1.25rem; line-height: 1.2; - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .table__mirror { position: absolute; @@ -5282,9 +6101,6 @@ section > dl > dd { .table__mirror > thead { position: fixed; background-color: rgba(255, 255, 255, 0.9); } - @media screen and (max-width: 44.9375em) { - .table__mirror > thead { - position: static; } } .table__more { margin-top: 24px; @@ -5292,6 +6108,10 @@ section > dl > dd { .table--scrollable { position: relative; } + .table--scrollable .table__table thead { + visibility: hidden; } + .table--scrollable .table__table th { + border-bottom: none; } .table--selectable tbody tr { cursor: pointer; } @@ -5300,23 +6120,69 @@ section > dl > dd { .table--selectable tbody tr.table-row--selected td { background-color: white; color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr.table-row--selected td { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr.table-row--selected td { background-color: rgba(0, 0, 0, 0.2); color: #fff; } .table--selectable tbody tr:hover:not(.table-row--selected) td { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { color: #fff; } +.table--small thead { + display: none; } + +.table--small td { + display: block; } + .table--small td:before { + font-weight: 100; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + content: attr(data-th); + display: block; + padding-right: 12px; } + +.table--small tr { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.table--small td, +.table--small th { + padding-left: 24px; } + .tag { - background-color: rgba(128, 128, 128, 0.6); - padding: 3px 6px; + padding: 6px 22px; + background-color: transparent; + border: 2px solid #ff8300; + border-radius: 4px 4px 4px 4px; + color: #333; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + cursor: pointer; + text-align: center; + outline: none; + min-width: 120px; + max-width: 384px; + border-color: rgba(51, 51, 51, 0.6); + margin: 0 12px 12px 0; position: relative; - margin: 0 12px 12px 0; } - .tag .tag--label { - color: #fff; + opacity: 0.7; } + .tag:focus:not(.button--disabled) { + border-color: #ff4c00; + box-shadow: 0 0 1px 1px #ff4c00; } + @media screen and (min-width: 45em) { + .tag { + transition: 0.1s ease-in-out; } } + .tag a, + .tag a:hover, + .tag .anchor:hover:not(.anchor--disabled) { + color: #333; text-decoration: none; } + .tag:hover { + box-shadow: 0px 0px 0px 2px rgba(51, 51, 51, 0.6); + opacity: 1; } .tbd { text-align: center; @@ -5325,23 +6191,12 @@ section > dl > dd { font-size: 6rem; line-height: 1; font-style: italic; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); color: #fff; } .tiles { width: 100%; padding: 12px; } - @media screen and (min-width: 45em) { - .tiles.box--direction-row > .tile { - flex: 0 0 192px; } - .tiles.box--direction-row > .tile > * { - box-sizing: border-box; } - .tiles.box--direction-row > .tile--wide { - box-sizing: border-box; } - .tiles.box--direction-row:not(.tiles--flush) > .tile { - margin: 12px; } - .tiles.box--direction-row:not(.tiles--flush) > .tile--wide { - flex-basis: calc(100% - 24px); } } .tiles__container { display: flex; flex-direction: row; @@ -5356,6 +6211,16 @@ section > dl > dd { .tiles__container .tiles.box--direction-row { width: 100%; overflow: hidden; } + .tiles > .tile { + flex-grow: 0; + flex-shrink: 0; } + @media screen and (min-width: 45em) { + .tiles > .tile { + flex-basis: 192px; } } + .tiles:not(.tiles--flush) > .tile { + margin: 12px; } + .tiles:not(.tiles--flush) > .tile--wide { + flex-basis: calc(100% - 24px); } .tiles--fill.box--wrap { justify-content: space-around; } .tiles--fill.box--wrap > .tile { @@ -5382,16 +6247,14 @@ section > dl > dd { background-color: white; color: #333; } .tiles--selectable .tile:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - .tiles--small > .tile { - flex-basis: 96px; } + @media screen and (min-width: 45em) { + .tiles--small > .tile { + flex-basis: 96px; } } @media screen and (min-width: 45em) { .tiles--large > .tile { flex-basis: 384px; } } - @media screen and (max-width: 44.9375em) { - .tiles--large > .tile { - flex-basis: 100%; } } .tiles:focus { outline: #ff4c00 solid 1px; } @@ -5411,7 +6274,7 @@ section > dl > dd { background-color: white; color: #333; } .tile--selectable:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .tile--eclipsed { opacity: 0.2; } @@ -5440,9 +6303,13 @@ section > dl > dd { text-decoration: none; } [class*="background-color-index-"] .title a:hover { text-decoration: underline; } + .title span { + overflow: hidden; + text-overflow: ellipsis; } .title svg, .title img { - max-width: 576px; } + max-width: 576px; + flex: 0 0 auto; } .title svg:not(:last-child), .title img:not(:last-child) { margin-right: 12px; } @@ -5454,7 +6321,7 @@ section > dl > dd { .title--interactive:hover { color: #ff8300; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .title--interactive:hover { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .title--interactive:hover { color: #fff; } @media screen and (max-width: 44.9375em) { .title--responsive svg, @@ -5510,7 +6377,7 @@ section > dl > dd { .topology__part > .topology__parts .topology__part { flex: 1; } .topology__part--demarcate { - border: 1px solid #ccc; } + border: 1px solid rgba(0, 0, 0, 0.15); } .topology__part--demarcate.topology__part--empty { background-color: #f5f5f5; min-width: 24px; @@ -5579,16 +6446,13 @@ section > dl > dd { display: flex; align-items: center; text-align: left; - padding: 24px; - background-color: rgba(45, 48, 52, 0.7); - color: #dbdbdb; - border-radius: 4px 4px 4px 4px; } + padding: 24px; } .video__control.button--primary { flex: 0 0 auto; width: 96px; height: 96px; border-radius: 48px; - background-color: rgba(255, 131, 0, 0.7); } + background-color: rgba(255, 131, 0, 0.8); } .video__control.button--primary:hover { background-color: #ff8300; } .video__title { @@ -5599,13 +6463,13 @@ section > dl > dd { right: 0px; bottom: 0px; height: 72px; - color: #dbdbdb; + color: rgba(255, 255, 255, 0.85); background-color: rgba(45, 48, 52, 0.7); } .video__timeline-chapter { position: absolute; height: 100%; padding-left: 6px; - border-left: 2px solid #dbdbdb; + border-left: 2px solid rgba(255, 255, 255, 0.7); text-align: left; cursor: pointer; } .video__timeline-chapter:hover { @@ -5626,6 +6490,13 @@ section > dl > dd { .video__progress-meter { height: 100%; background-color: #ff8300; } + .video--titled .video__summary { + background-color: rgba(45, 48, 52, 0.7); + color: rgba(255, 255, 255, 0.85); + border-radius: 4px 4px 4px 4px; + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; } .video--playing:not(.video--interacting) .video__summary, .video--playing:not(.video--interacting) .video__timeline, .video--playing:not(.video--interacting) .video__progress { diff --git a/css/grommet-aruba.min.css b/css/grommet-aruba.min.css index 7dc5edc..96bd74d 100644 --- a/css/grommet-aruba.min.css +++ b/css/grommet-aruba.min.css @@ -6,4 +6,4 @@ * github.com/inuitcss | inuitcss.com */@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:300;src:local("Source Sans Pro Light"),local("SourceSansPro-Light"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/toadOcfmlt9b38dHJxOBGPS42wKzre0cxmO5m5GyTsY.ttf) format("truetype")}@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:400;src:local("Source Sans Pro"),local("SourceSansPro-Regular"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/ODelI1aHBYDBqgeIAH2zlEY6Fu39Tt9XkmtSosaMoEA.ttf) format("truetype")}@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:700;src:local("Source Sans Pro Bold"),local("SourceSansPro-Bold"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/toadOcfmlt9b38dHJxOBGLlcMrNrsnL9dgADnXgYJjs.ttf) format("truetype")}@font-face{font-family:Source Sans Pro;font-style:italic;font-weight:400;src:local("Source Sans Pro Italic"),local("SourceSansPro-It"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/M2Jd71oPJhLKp0zdtTvoMzpKUtbt71woJ25xl7KOGD0.ttf) format("truetype")} -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,html{font-family:Open Sans,Arial,sans-serif}body,html{font-size:16px;font-size:1rem;line-height:24px}h1{font-size:48px;font-size:3rem;line-height:1.125}h2{font-size:36px;font-size:2.25rem;line-height:1.33333}h3{font-size:24px;font-size:1.5rem;line-height:1.25}h4,h5{font-size:18px;font-size:1.125rem;line-height:1.33333}h1,h2,h3,h4,h5{font-weight:100;max-width:100%}h1.header--strong,h1>strong,h2.header--strong,h2>strong,h3.header--strong,h3>strong,h4.header--strong,h4>strong,h5.header--strong,h5>strong{font-weight:600}h1 a,h1 a.anchor,h2 a,h2 a.anchor,h3 a,h3 a.anchor,h4 a,h4 a.anchor,h5 a,h5 a.anchor{color:inherit;text-decoration:none}h1 a.anchor:hover,h1 a:hover,h2 a.anchor:hover,h2 a:hover,h3 a.anchor:hover,h3 a:hover,h4 a.anchor:hover,h4 a:hover,h5 a.anchor:hover,h5 a:hover{text-decoration:none}dd,li,p{max-width:576px;margin-left:0}dd{margin-bottom:12px}p{margin-top:24px;margin-bottom:24px}blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}b,strong{font-weight:600}code.hljs{border:1px solid #ccc}.large-number-font{font-family:Source Sans Pro,Arial,sans-serif}.secondary{color:#777}.error{color:#c8200d}input,select,textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid #ccc;border-radius:4px 4px 4px 4px;outline:none;margin-right:12px;background-color:transparent}html.rtl input,html.rtl select,html.rtl textarea{margin-right:0;margin-left:12px}input:focus,select:focus,textarea:focus{padding:10px 22px;border-width:2px;border-color:#ff4c00}input::-moz-focus-inner,select::-moz-focus-inner,textarea::-moz-focus-inner{border:none;outline:none}input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#aaa}input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#aaa}input:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#aaa}input.error,select.error,textarea.error{border-color:#c8200d}input[type=button],input[type=submit]{text-align:center;line-height:inherit}select{border-color:#ccc;padding-right:24px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right;cursor:pointer}select::-moz-focus-inner{border:none}select.plain{border:none}input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}input[type=range]:focus{outline:none}input[type=range]::-moz-focus-inner,input[type=range]::-moz-focus-outer{border:none}input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#ff8300;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:before{background-color:#fff}input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #ff8300;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #ff8300;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-ms-fill-lower{background:#ff8300;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-lower{background:#fff}input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-thumb{border-color:#fff}input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}body.rtl,html.rtl{direction:rtl}@media screen and (min-width:45em){body,html{height:100%;width:100%;overflow:visible}}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,a{text-decoration:none;cursor:pointer}.anchor,.anchor:visited,a,a:visited{color:#ff8300}.anchor.active,a.active{color:#333}.anchor:hover:not(.anchor--disabled),a:hover:not(.anchor--disabled){text-decoration:underline;color:#d16b00}.anchor__icon,a__icon{display:inline-block;padding:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) a{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor.anchor--primary,a.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;color:#ff8300;text-decoration:none}.anchor.anchor--primary .control-icon,a.anchor--primary .control-icon{stroke:#ff8300;margin-right:12px}html.rtl .anchor.anchor--primary .control-icon,html.rtl a.anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor.anchor--primary>span,a.anchor--primary>span{vertical-align:middle}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon{transform:translateX(3px);stroke:#ff8300}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline{stroke-width:3px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor--disabled,a--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon,a--disabled .control-icon{cursor:default}#loading{position:absolute;width:100%;height:100%;background-color:#ddd;text-align:center;padding-top:100px;font-size:48px;color:#ccc;font-style:italic}@media screen and (min-width:45em){.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.app--inline{position:relative}.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:center center;background-size:cover;background-repeat:no-repeat}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.box__container--full{max-width:100%;width:100vw}.layer__container .box__container--full{width:calc(100vw - 48px)}.box__container--full-horizontal{max-width:100%;width:100vw}.layer__container .box__container--full-horizontal{width:calc(100vw - 48px)}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box--wrap{flex-wrap:wrap}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box--full{position:relative;max-width:100%;width:100vw;min-height:100vh;height:100%}.layer__container .box--full{width:calc(100vw - 48px)}.box--full-horizontal{max-width:100%;width:100vw}.layer__container .box--full-horizontal{width:calc(100vw - 48px)}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid #ccc}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid #ccc}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid #ccc}@media screen and (max-width:44.9375em){.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:none;border-bottom:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:none;border-bottom:1px solid #ccc}}[class*=background-color-index-] .box[class*=box--separator]{border-color:#eee}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box--direction-down,.box--direction-up{flex-direction:column}.box--direction-left{justify-content:flex-end}.box--flush{padding:0}.brick{box-shadow:1px 1px 5px #eee;padding:24px;position:relative;margin:0 12px 12px 0;float:left;max-width:calc(100% - 12px)}.brick .brick--label{position:absolute;top:0;right:0;left:0;bottom:0}.brick .brick--label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.brick--content-wrapper{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}button:not(.button),input[type=button],input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #ff8300;border-radius:4px 4px 4px 4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}button:not(.button):focus:not(.button--disabled),input[type=button]:focus:not(.button--disabled),input[type=submit]:focus:not(.button--disabled){border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}@media screen and (min-width:45em){button:not(.button),input[type=button],input[type=submit]{transition:.1s ease-in-out}}.button{padding:6px 22px;background-color:transparent;border:2px solid #ff8300;border-radius:4px 4px 4px 4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#ff8300;background-color:#ff8300;color:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#9fd4c9}.button--icon{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none}.button--icon.button--primary{background-color:#ff8300}.button--icon>span:not(.button__icon){vertical-align:middle}.button--icon>span:not(.button__icon):first-child{margin-left:12px}.button--icon>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary){border-color:#eee;color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary).button--accent{border-color:#9fd4c9}.button--disabled{opacity:.3;cursor:default}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:rgba(0,0,0,.1)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#ff8300;color:#dbdbdb}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:#fff;stroke-width:1px}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#ff8300;fill:#ff8300}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#ff8300;fill:#ff8300}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:#ccc}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.chart__graphic:focus{outline:1px solid #ff4c00}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#ff8300}.chart__values-line.color-index-critical,.chart__values-line.color-index-error{stroke:#c8200d}.chart__values-line.color-index-warning{stroke:#e57118}.chart__values-line.color-index-ok{stroke:#2aac24}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#999}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-6{stroke:#ec9b58}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-7{stroke:#0049a0}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-8{stroke:#886f9c}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-9{stroke:#5fbcdd}.chart__values-line.color-index-graph-5,.chart__values-line.color-index-graph-10{stroke:#7fba44}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-4{stroke:#2d3034}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-5{stroke:#52555a}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-6{stroke:#999}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-3{stroke:#9fd4c9}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-4{stroke:#d5d848}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-area.color-index-error,.chart__values-bar.color-index-critical,.chart__values-bar.color-index-error{fill:rgba(200,32,13,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(229,113,24,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(42,172,36,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,60%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-6{fill:rgba(236,155,88,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-7{fill:rgba(0,73,160,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-8{fill:rgba(136,111,156,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-9,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-9{fill:rgba(95,188,221,.7)}.chart__values-area.color-index-graph-5,.chart__values-area.color-index-graph-10,.chart__values-bar.color-index-graph-5,.chart__values-bar.color-index-graph-10{fill:rgba(127,186,68,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#ff8300}.chart__values-area--active.color-index-critical,.chart__values-area--active.color-index-error,.chart__values-bar--active.color-index-critical,.chart__values-bar--active.color-index-error{fill:#c8200d}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#e57118}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#2aac24}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#999}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-6{fill:#ec9b58}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-7{fill:#0049a0}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-8{fill:#886f9c}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-9,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-9{fill:#5fbcdd}.chart__values-area--active.color-index-graph-5,.chart__values-area--active.color-index-graph-10,.chart__values-bar--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-10{fill:#7fba44}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-3{fill:#9fd4c9}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-4{fill:#d5d848}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-4{fill:#2d3034}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-5{fill:#52555a}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-6{fill:#999}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#ff8300}.chart__values-point.color-index-critical,.chart__values-point.color-index-error{stroke:#c8200d}.chart__values-point.color-index-warning{stroke:#e57118}.chart__values-point.color-index-ok{stroke:#2aac24}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#999}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-6{stroke:#ec9b58}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-7{stroke:#0049a0}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-8{stroke:#886f9c}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-9{stroke:#5fbcdd}.chart__values-point.color-index-graph-5,.chart__values-point.color-index-graph-10{stroke:#7fba44}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-4{stroke:#2d3034}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-5{stroke:#52555a}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-6{stroke:#999}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-3{stroke:#9fd4c9}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-4{stroke:#d5d848}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#ff8300}.chart__values--loading.color-index-critical,.chart__values--loading.color-index-error{stroke:#c8200d}.chart__values--loading.color-index-warning{stroke:#e57118}.chart__values--loading.color-index-ok{stroke:#2aac24}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#999}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-6{stroke:#ec9b58}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-7{stroke:#0049a0}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-8{stroke:#886f9c}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-9{stroke:#5fbcdd}.chart__values--loading.color-index-graph-5,.chart__values--loading.color-index-graph-10{stroke:#7fba44}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-4{stroke:#2d3034}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-5{stroke:#52555a}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-6{stroke:#999}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-3{stroke:#9fd4c9}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-4{stroke:#d5d848}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical,.chart__yaxis .chart__bar.color-index-error{fill:rgba(200,32,13,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(229,113,24,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(42,172,36,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,60%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(236,155,88,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-7{fill:rgba(0,73,160,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(136,111,156,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-9{fill:rgba(95,188,221,.5)}.chart__yaxis .chart__bar.color-index-graph-5,.chart__yaxis .chart__bar.color-index-graph-10{fill:rgba(127,186,68,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#ff8300}.chart__cursor-point.color-index-critical,.chart__cursor-point.color-index-error{fill:#c8200d}.chart__cursor-point.color-index-warning{fill:#e57118}.chart__cursor-point.color-index-ok{fill:#2aac24}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#999}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-6{fill:#ec9b58}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-7{fill:#0049a0}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-8{fill:#886f9c}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-9{fill:#5fbcdd}.chart__cursor-point.color-index-graph-5,.chart__cursor-point.color-index-graph-10{fill:#7fba44}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-3{fill:#9fd4c9}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-4{fill:#d5d848}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-4{fill:#2d3034}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-5{fill:#52555a}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-6{fill:#999}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#c8200d}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#c8200d;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#c8200d;stop-opacity:0}.chart--area .chart__gradient.color-index-error .begin,.chart--bar .chart__gradient.color-index-error .begin{stop-color:#c8200d}.chart--area .chart__gradient.color-index-error .mid,.chart--bar .chart__gradient.color-index-error .mid{stop-color:#c8200d;stop-opacity:.5}.chart--area .chart__gradient.color-index-error .end,.chart--bar .chart__gradient.color-index-error .end{stop-color:#c8200d;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#e57118}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#e57118;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#e57118;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#2aac24}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#2aac24;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#2aac24;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#999}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#999;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#999;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#999}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#999;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#999;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#ec9b58}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#ec9b58;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#ec9b58;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#0049a0}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#0049a0;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#0049a0;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#886f9c}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#886f9c;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#886f9c;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-9 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-9 .begin{stop-color:#5fbcdd}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-9 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-9 .mid{stop-color:#5fbcdd;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-9 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-9 .end{stop-color:#5fbcdd;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--area .chart__gradient.color-index-graph-10 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-10 .begin{stop-color:#7fba44}.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--area .chart__gradient.color-index-graph-10 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-10 .mid{stop-color:#7fba44;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-5 .end,.chart--area .chart__gradient.color-index-graph-10 .end,.chart--bar .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-10 .end{stop-color:#7fba44;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#ff8300}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-area.color-index-error,.chart--sparkline .chart__values-bar.color-index-critical,.chart--sparkline .chart__values-bar.color-index-error{fill:#c8200d}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#e57118}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#2aac24}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#999}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#ec9b58}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#0049a0}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#886f9c}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-9,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-9{fill:#5fbcdd}.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-area.color-index-graph-10,.chart--sparkline .chart__values-bar.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-10{fill:#7fba44}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-3{fill:#9fd4c9}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#d5d848}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-4{fill:#2d3034}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#52555a}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#999}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:4px 4px 4px 4px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control{border-color:#dbdbdb}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__label{color:#dbdbdb}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#ff8300;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}.background-color-index-dark{color:#fff}.background-color-index-neutral-1,.background-color-index-neutral-4{background-color:#545454;color:#fff}.background-color-index-neutral-1-a,.background-color-index-neutral-4-a{background-color:rgba(84,84,84,.8);color:#fff}.background-color-index-neutral-2,.background-color-index-neutral-5{background-color:#767676;color:#fff}.background-color-index-neutral-2-a,.background-color-index-neutral-5-a{background-color:hsla(0,0%,46%,.8);color:#fff}.background-color-index-neutral-3,.background-color-index-neutral-6{background-color:#989898;color:#fff}.background-color-index-neutral-3-a,.background-color-index-neutral-6-a{background-color:hsla(0,0%,60%,.8);color:#fff}.background-color-index-accent-1,.background-color-index-accent-3{background-color:#9fd4c9}.background-color-index-accent-1-a,.background-color-index-accent-3-a{background-color:rgba(159,212,201,.8)}.background-color-index-accent-2,.background-color-index-accent-4{background-color:#d5d848;color:#fff}.background-color-index-accent-2-a,.background-color-index-accent-4-a{background-color:rgba(213,216,72,.8);color:#fff}.background-color-index-grey-1,.background-color-index-grey-4{background-color:#2d3034;color:#fff}.background-color-index-grey-1-a,.background-color-index-grey-4-a{background-color:rgba(45,48,52,.8);color:#fff}.background-color-index-grey-2,.background-color-index-grey-5{background-color:#52555a;color:#fff}.background-color-index-grey-2-a,.background-color-index-grey-5-a{background-color:rgba(82,85,90,.8);color:#fff}.background-color-index-grey-3,.background-color-index-grey-6{background-color:#999;color:#fff}.background-color-index-grey-3-a,.background-color-index-grey-6-a{background-color:hsla(0,0%,60%,.8);color:#fff}.background-color-index-graph-1,.background-color-index-graph-6{background-color:#ec9b58}.background-color-index-graph-2,.background-color-index-graph-7{background-color:#0049a0;color:#fff}.background-color-index-graph-3,.background-color-index-graph-8{background-color:#886f9c;color:#fff}.background-color-index-graph-4,.background-color-index-graph-9{background-color:#5fbcdd;color:#fff}.background-color-index-graph-5,.background-color-index-graph-10{background-color:#7fba44;color:#fff}.background-color-index-critical,.background-color-index-error{background-color:#c8200d;color:#fff}.background-color-index-warning{background-color:#e57118;color:#fff}.background-color-index-ok{background-color:#2aac24;color:#fff}.background-color-index-disabled,.background-color-index-unknown{background-color:#999;color:#fff}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff;color:#333}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5;color:#333}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative;display:block}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__graphic:focus{outline:1px solid #ff4c00}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#ff8300}.distribution__item-box.color-index-critical,.distribution__item-box.color-index-error{fill:#c8200d}.distribution__item-box.color-index-warning{fill:#e57118}.distribution__item-box.color-index-ok{fill:#2aac24}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#999}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-6{fill:#ec9b58}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-7{fill:#0049a0}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-8{fill:#886f9c}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-9{fill:#5fbcdd}.distribution__item-box.color-index-graph-5,.distribution__item-box.color-index-graph-10{fill:#7fba44}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-3{fill:#9fd4c9}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-4{fill:#d5d848}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-4{fill:#2d3034}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-5{fill:#52555a}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-6{fill:#999}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#ff8300}.distribution__item-icons.color-index-critical,.distribution__item-icons.color-index-error{stroke:#c8200d}.distribution__item-icons.color-index-warning{stroke:#e57118}.distribution__item-icons.color-index-ok{stroke:#2aac24}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#999}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-6{stroke:#ec9b58}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-7{stroke:#0049a0}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-8{stroke:#886f9c}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-9{stroke:#5fbcdd}.distribution__item-icons.color-index-graph-5,.distribution__item-icons.color-index-graph-10{stroke:#7fba44}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-4{stroke:#2d3034}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-5{stroke:#52555a}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-6{stroke:#999}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-3{stroke:#9fd4c9}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-4{stroke:#d5d848}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;padding:6px 12px;font-family:Source Sans Pro,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-accent-2,.distribution__label.color-index-accent-4,.distribution__label.color-index-brand,.distribution__label.color-index-critical,.distribution__label.color-index-disabled,.distribution__label.color-index-error,.distribution__label.color-index-graph-2,.distribution__label.color-index-graph-3,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-5,.distribution__label.color-index-graph-7,.distribution__label.color-index-graph-8,.distribution__label.color-index-graph-9,.distribution__label.color-index-graph-10,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-2,.distribution__label.color-index-grey-3,.distribution__label.color-index-grey-4,.distribution__label.color-index-grey-5,.distribution__label.color-index-grey-6,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-ok,.distribution__label.color-index-unknown,.distribution__label.color-index-warning{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#ff8300}.distribution__loading-indicator.color-index-critical,.distribution__loading-indicator.color-index-error{stroke:#c8200d}.distribution__loading-indicator.color-index-warning{stroke:#e57118}.distribution__loading-indicator.color-index-ok{stroke:#2aac24}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#999}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-6{stroke:#ec9b58}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-7{stroke:#0049a0}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-8{stroke:#886f9c}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-9{stroke:#5fbcdd}.distribution__loading-indicator.color-index-graph-5,.distribution__loading-indicator.color-index-graph-10{stroke:#7fba44}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-4{stroke:#2d3034}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-5{stroke:#52555a}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-6{stroke:#999}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-3{stroke:#9fd4c9}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-4{stroke:#d5d848}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{height:100%;max-height:100%}.drop{position:fixed;z-index:5;background-color:hsla(0,0%,100%,.9);border:none;border-radius:4px 4px 4px 4px;box-shadow:0 2px 4px rgba(0,0,0,.3);overflow:auto}.footer{min-height:36px;line-height:36px;width:100%}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large .footer__content{padding-top:24px;padding-bottom:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative}@media screen and (min-width:45em){.form{width:480px;max-width:100%}.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid #ccc;margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field{background-color:transparent;color:#dbdbdb}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__label{color:#dbdbdb}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0;padding-left:24px;padding-right:24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>textarea{color:#fff}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px;padding-left:22px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents ::-ms-clear,.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid #ccc;padding-top:6px}.form-field__contents>.form-field--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__help{color:#dbdbdb}.form-field__error{display:block;float:right;color:#c8200d;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__error{color:#dbdbdb}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#c8200d}.form-field--focus{z-index:2;border-color:#ff4c00}.header{height:72px;width:100%;margin-bottom:0}.header--large{height:96px}.header--small{height:48px}.header.box>:not(:last-child){margin-right:12px}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}header.header{font-size:24px;font-size:1.5rem;line-height:inherit;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .5s;transition:transform .5s}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}header.header.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}header.header.box--direction-row>*{margin-bottom:0}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}div.header__container{flex-shrink:0}div.header__container--fixed{position:relative}div.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){div.header__container--fixed .header__wrapper .header{position:fixed}div.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}div.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}div.header__wrapper{height:72px}div.header--large .header__wrapper{height:96px}div.header--large .header__content{line-height:96px}div.header--small .header__wrapper{height:48px}div.header--small .header__content{line-height:48px}div.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}div.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}div.header--fixed.header--primary .header__content{position:static;background-color:transparent}div.header--flush .header__wrapper{padding-left:0;padding-right:0}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1.2}.headline--small{font-size:30px;font-size:1.875rem;line-height:1.6}.headline--strong{font-weight:600}.control-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#ff8300}.control-icon.color-index-critical,.control-icon.color-index-error{stroke:#c8200d}.control-icon.color-index-warning{stroke:#e57118}.control-icon.color-index-ok{stroke:#2aac24}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#999}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{stroke:#ec9b58}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{stroke:#0049a0}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{stroke:#886f9c}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{stroke:#5fbcdd}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{stroke:#7fba44}.control-icon.color-index-grey-1,.control-icon.color-index-grey-4{stroke:#2d3034}.control-icon.color-index-grey-2,.control-icon.color-index-grey-5{stroke:#52555a}.control-icon.color-index-grey-3,.control-icon.color-index-grey-6{stroke:#999}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{stroke:#9fd4c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{stroke:#d5d848}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#ff8300}.control-icon.color-index-critical,.control-icon.color-index-error{fill:#c8200d}.control-icon.color-index-warning{fill:#e57118}.control-icon.color-index-ok{fill:#2aac24}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#999}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{fill:#ec9b58}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{fill:#0049a0}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{fill:#886f9c}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{fill:#5fbcdd}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{fill:#7fba44}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{fill:#9fd4c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{fill:#d5d848}.control-icon.color-index-grey-1,.control-icon.color-index-grey-4{fill:#2d3034}.control-icon.color-index-grey-2,.control-icon.color-index-grey-5{fill:#52555a}.control-icon.color-index-grey-3,.control-icon.color-index-grey-6{fill:#999}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover:not(.anchor--disabled) .control-icon,.button:hover:not(.anchor--disabled) .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.control-icon__badge circle{fill:#9fd4c9}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .control-icon{fill:#dbdbdb;stroke:#dbdbdb}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#999}.status-icon-critical .status-icon__base,.status-icon-error .status-icon__base{fill:#c8200d}.status-icon-warning .status-icon__base{fill:#e57118}.status-icon-ok .status-icon__base{fill:#2aac24}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#999}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#999;stroke:#999}.status-icon--large{width:48px;height:48px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#ff8300}.logo-icon.color-index-critical,.logo-icon.color-index-error{stroke:#c8200d}.logo-icon.color-index-warning{stroke:#e57118}.logo-icon.color-index-ok{stroke:#2aac24}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#999}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-6{stroke:#ec9b58}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-7{stroke:#0049a0}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-8{stroke:#886f9c}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-9{stroke:#5fbcdd}.logo-icon.color-index-graph-5,.logo-icon.color-index-graph-10{stroke:#7fba44}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-4{stroke:#2d3034}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-5{stroke:#52555a}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-6{stroke:#999}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-3{stroke:#9fd4c9}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-4{stroke:#d5d848}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}@media screen and (max-width:44.9375em){.label__text{display:none}}@media screen and (min-width:45em){.label__icon{display:none}}a.active>.label .label__icon.control-icon svg{fill:#000;stroke:#000}.layer{position:relative;z-index:4}@media screen and (min-width:45em){.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.layer:not(.layer--hidden)+.app{display:none}}.layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.layer__container{padding:0 24px;border-bottom:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.3)}}@media screen and (min-width:45em){.layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:4px 4px 4px 4px;box-shadow:0 2px 4px rgba(0,0,0,.3)}}.layer__closer{position:absolute;top:0;right:0;z-index:1}html.rtl .layer__closer{right:auto;left:0}.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.layer--align-center:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-top:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-bottom:not(.layer--hidden){background-image:radial-gradient(circle at bottom,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.layer--hidden{left:-10000px;z-index:-1}.layer--hidden.layer--align-left{right:auto}.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.layer--hidden{display:none}}@media screen and (min-width:45em){.layer--hidden.layer--peek{left:0;z-index:4}.layer--hidden.layer--peek.layer--align-left{right:auto}.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #ff8300;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:rgba(0,0,0,.1)}.list .list-item--selected{background-color:#fff;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#fff;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:rgba(0,0,0,.1);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;width:72px}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item--clickable{cursor:pointer}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#ff8300}.legend__item svg.legend__item-swatch.color-index-critical,.legend__item svg.legend__item-swatch.color-index-error{stroke:#c8200d}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#e57118}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#2aac24}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#999}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#ec9b58}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#0049a0}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#886f9c}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-9{stroke:#5fbcdd}.legend__item svg.legend__item-swatch.color-index-graph-5,.legend__item svg.legend__item-swatch.color-index-graph-10{stroke:#7fba44}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-4{stroke:#2d3034}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#52555a}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#999}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-3{stroke:#9fd4c9}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#d5d848}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}.legend__total{margin-left:24px}html.rtl .legend__total{margin-left:0;margin-right:24px}.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted #ccc}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;width:384px;padding:24px;padding-bottom:48px;background-color:#fff;text-align:center;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%;border-radius:0}}.login-form__secondary-text{color:#777}.login-form fieldset{text-align:left;border:none;margin-bottom:0}.login-form fieldset>*{width:100%;display:block}.login-form__remember-me{display:block;margin-top:24px;text-align:left}.login-form__submit{margin-top:24px;width:100%}.login-form__error{margin-bottom:12px;color:#c8200d;text-align:left}.login-form__footer{margin-top:12px;display:flex;justify-content:space-between;line-height:36px}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid #ccc;margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:rgba(0,0,0,.1)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:inherit}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #ff4c00;box-shadow:0 0 1px 1px #ff4c00;pointer-events:none}.menu>*{flex:0 0 auto}.menu a:not(.button){text-decoration:none}.menu a:not(.button).active,.menu a:not(.button):hover{color:#d16b00}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}.menu__drop{font-size:16px;font-size:1rem;line-height:inherit;max-height:100vh}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:rgba(0,0,0,.1)}.menu__drop .check-box,.menu__drop .radio-button{margin-top:12px;margin-bottom:12px}.menu__drop--align-right{text-align:right}.menu__drop--align-right .menu__contents,html.rtl .menu__drop--align-right{text-align:left}html.rtl .menu__drop--align-right .menu__contents{text-align:right}.menu__drop--large .menu__control{line-height:96px}.menu--controlled{display:inline-block;cursor:pointer}.menu--controlled.menu--large{line-height:96px}.menu--controlled.menu--small{height:24px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.menu.box--direction-row.box--responsive>*{margin-right:0}html.rtl .menu--inline.menu.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.menu.box--direction-column a:not(.button){margin-bottom:6px}.menu--small{font-size:16px;font-size:1rem;line-height:1.5}.menu--small .menu__control-drop-icon{margin-left:6px}html.rtl .menu--small .menu__control-drop-icon{margin-left:0;margin-right:6px}.menu--small .menu__control-icon svg{width:18px;height:18px}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:6px;border-color:transparent;border-right-style:solid}html.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:rgba(0,0,0,.1)}.menu--primary>a:not(.button).active{border-color:#ff8300}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:#ccc;border:none}.menu--inline.menu.box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu.box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:#ccc}.menu--inline.menu--small,.menu__drop--small{font-size:1em}.menu--inline.menu--small .menu__control-label,.menu__drop--small .menu__control-label{padding:12px}.menu--inline.menu--small .menu__control-icon svg,.menu__drop--small .menu__control-icon svg{width:18px;height:18px}.menu--inline.menu--small>a,.menu__drop--small>a{padding:6px 12px}.menu--inline.menu .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu a,.menu__drop a{text-decoration:none}.menu--inline.menu--large>a,.menu__drop--large>a{padding:24px 48px}@media screen and (max-width:44.9375em){.menu--inline.menu.box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu.box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu.box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%;width:100vw}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #ff4c00}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter.meter--active .meter__values .meter__slice:hover,.meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#ff8300}.meter--bar .meter__values .meter__slice.color-index-critical,.meter--bar .meter__values .meter__slice.color-index-error{stroke:#c8200d}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#e57118}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#2aac24}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#999}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#ec9b58}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#0049a0}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#886f9c}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-9{stroke:#5fbcdd}.meter--bar .meter__values .meter__slice.color-index-graph-5,.meter--bar .meter__values .meter__slice.color-index-graph-10{stroke:#7fba44}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-4{stroke:#2d3034}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#52555a}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#999}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-3{stroke:#9fd4c9}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#d5d848}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(255,131,0,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__thresholds .meter__slice.color-index-error,.meter--bar .meter__tracks .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-error{stroke:rgba(200,32,13,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(229,113,24,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(42,172,36,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,60%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(236,155,88,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(0,73,160,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(136,111,156,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-9,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(95,188,221,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__thresholds .meter__slice.color-index-graph-10,.meter--bar .meter__tracks .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-10{stroke:rgba(127,186,68,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(159,212,201,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(213,216,72,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#ff8300}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--arc .meter__values .meter__slice.color-index-error,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-error,.meter--spiral .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-error{stroke:#c8200d}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#e57118}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#2aac24}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#999}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#ec9b58}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#0049a0}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#886f9c}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-9,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-9,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-9{stroke:#5fbcdd}.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--arc .meter__values .meter__slice.color-index-graph-10,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-10,.meter--spiral .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-10{stroke:#7fba44}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-4{stroke:#2d3034}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#52555a}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#999}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-3{stroke:#9fd4c9}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#d5d848}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(255,131,0,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__thresholds .meter__slice.color-index-error,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-error,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-error,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-error,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-error,.meter--spiral .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-error{stroke:rgba(200,32,13,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(229,113,24,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(42,172,36,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,60%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(236,155,88,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(0,73,160,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(136,111,156,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-9,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-9,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-9,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-9,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(95,188,221,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__thresholds .meter__slice.color-index-graph-10,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-10,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-10,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-10,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-10{stroke:rgba(127,186,68,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(159,212,201,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(213,216,72,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification--critical .notification__status .status-icon__base{fill:#fff}.notification--critical .notification__status .status-icon__detail{stroke:#c8200d;fill:#c8200d}.notification--critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--error .notification__status .status-icon__base{fill:#fff}.notification--error .notification__status .status-icon__detail{stroke:#c8200d;fill:#c8200d}.notification--error .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--warning .notification__status .status-icon__base{fill:#fff}.notification--warning .notification__status .status-icon__detail{stroke:#e57118;fill:#e57118}.notification--warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--ok .notification__status .status-icon__base{fill:#fff}.notification--ok .notification__status .status-icon__detail{stroke:#2aac24;fill:#2aac24}.notification--ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--unknown .notification__status .status-icon__base{fill:#fff}.notification--unknown .notification__status .status-icon__detail{stroke:#999;fill:#999}.notification--unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--disabled .notification__status .status-icon__base{fill:#fff}.notification--disabled .notification__status .status-icon__detail{stroke:#999;fill:#999}.notification--disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:4px 4px 4px 4px}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.paragraph--small a{text-decoration:none}.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.paragraph--large a{color:#ff8300;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#ff8300;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#d16b00;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__control{border-color:#dbdbdb}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__label{color:#dbdbdb}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #ff4c00;box-shadow:0 0 1px 1px #ff4c00}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop--inline{margin-left:-1px}.search__drop--inline .search__drop-contents{display:block}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop-control{vertical-align:top;height:48px}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:rgba(0,0,0,.1)}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-right:47px}.search--inline .search__input:focus{padding-right:46px}html.rtl .search--inline .search__input{padding-right:23px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:22px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small{line-height:24px}.search--small .search__input{font-size:14px;font-size:.875rem;line-height:14px;padding:4px 13px;padding-right:23px}.search--small .search__input:focus{padding:3px 12px;padding-right:22px}.search--small .control-icon-search{height:12px;width:12px}.search--large{line-height:triple(24px)}.search--large .search__input{font-size:36px;font-size:2.25rem;line-height:48px;padding:-7px 35px;padding-right:47px}.search--large .control-icon-search{right:24px}.search-input{position:relative;display:inline-block}.search-input__input{width:100%;height:100%;display:block;padding-right:60px}.search-input__input:focus{padding-right:59px}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:12px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:rgba(0,0,0,.1)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#ff8300}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:4px 4px 4px 4px}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid #ccc}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden}.tab{padding:12px}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus .tab__label{border-bottom:4px solid}.tab__label{cursor:pointer;padding-bottom:12px;font-weight:600;color:#777}.tab--active .tab__label{color:#000;border-bottom:4px solid #000}.tab:focus .tab__label,.tab:hover .tab__label{border-bottom:4px solid}.tabs{margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;list-style:none;border-bottom:1px solid #ccc}.tabs__content{padding:24px}@media screen and (max-width:44.9375em){.tabs__content{padding:24px 0}}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid #ccc}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}@media screen and (max-width:44.9375em){.table__mirror>thead{position:static}}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#fff;color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:rgba(0,0,0,.1);color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.tag{background-color:hsla(0,0%,50%,.6);padding:3px 6px;position:relative;margin:0 12px 12px 0}.tag .tag--label{color:#fff;text-decoration:none}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:#ccc;color:#fff}.tiles{width:100%;padding:12px}@media screen and (min-width:45em){.tiles.box--direction-row>.tile{flex:0 0 192px}.tiles.box--direction-row>.tile--wide,.tiles.box--direction-row>.tile>*{box-sizing:border-box}.tiles.box--direction-row:not(.tiles--flush)>.tile{margin:12px}.tiles.box--direction-row:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#fff;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tiles--small>.tile{flex-basis:96px}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}@media screen and (max-width:44.9375em){.tiles--large>.tile{flex-basis:100%}}.tiles:focus{outline:1px solid #ff4c00}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#fff;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title img,.title svg{max-width:576px}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#ff8300;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid #ccc}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px;background-color:rgba(45,48,52,.7);color:#dbdbdb;border-radius:4px 4px 4px 4px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(255,131,0,.7)}.video__control.button--primary:hover{background-color:#ff8300}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:#dbdbdb;background-color:rgba(45,48,52,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid #dbdbdb;text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#ff8300}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both} \ No newline at end of file +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,.grommet{font-family:Open Sans,Arial,sans-serif}.grommet{font-size:16px;font-size:1rem;line-height:24px}.grommet h1{font-size:48px;font-size:3rem;line-height:1.125}.grommet h2{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet h3{font-size:24px;font-size:1.5rem;line-height:1.25}.grommet h4{font-size:18px;font-size:1.125rem;line-height:1.33333}.grommet h5{font-size:17px;font-size:1.0625rem;line-height:1.41176}.grommet h6{font-size:16px;font-size:1rem;line-height:1.5}.grommet h1,.grommet h2,.grommet h3,.grommet h4,.grommet h5,.grommet h6{font-weight:100;max-width:100%}.grommet h1.header--strong,.grommet h1>strong,.grommet h2.header--strong,.grommet h2>strong,.grommet h3.header--strong,.grommet h3>strong,.grommet h4.header--strong,.grommet h4>strong,.grommet h5.header--strong,.grommet h5>strong,.grommet h6.header--strong,.grommet h6>strong{font-weight:600}.grommet h1 a,.grommet h1 a.anchor,.grommet h2 a,.grommet h2 a.anchor,.grommet h3 a,.grommet h3 a.anchor,.grommet h4 a,.grommet h4 a.anchor,.grommet h5 a,.grommet h5 a.anchor,.grommet h6 a,.grommet h6 a.anchor{color:inherit;text-decoration:none}.grommet h1 a.anchor:hover,.grommet h1 a:hover,.grommet h2 a.anchor:hover,.grommet h2 a:hover,.grommet h3 a.anchor:hover,.grommet h3 a:hover,.grommet h4 a.anchor:hover,.grommet h4 a:hover,.grommet h5 a.anchor:hover,.grommet h5 a:hover,.grommet h6 a.anchor:hover,.grommet h6 a:hover{text-decoration:none}.grommet dd,.grommet li,.grommet p{max-width:576px;margin-left:0}.grommet dd{margin-bottom:12px}.grommet p{margin-top:24px;margin-bottom:24px}.grommet blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet b,.grommet strong{font-weight:600}.grommet code.hljs{border:1px solid rgba(0,0,0,.15)}.grommet .large-number-font{font-family:Source Sans Pro,Arial,sans-serif}.grommet .secondary{color:#777}.grommet .error{color:#c8200d}.grommet input,.grommet select,.grommet textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid rgba(0,0,0,.15);border-radius:4px 4px 4px 4px;outline:none;background-color:transparent}.grommet.rtl .grommet input,.grommet.rtl .grommet select,.grommet.rtl .grommet textarea{margin-right:0;margin-left:12px}.grommet input:focus,.grommet select:focus,.grommet textarea:focus{padding:10px 22px;border-width:2px;border-color:#ff4c00}.grommet input::-moz-focus-inner,.grommet select::-moz-focus-inner,.grommet textarea::-moz-focus-inner{border:none;outline:none}.grommet input::-webkit-input-placeholder,.grommet select::-webkit-input-placeholder,.grommet textarea::-webkit-input-placeholder{color:#aaa}.grommet input::-moz-placeholder,.grommet select::-moz-placeholder,.grommet textarea::-moz-placeholder{color:#aaa}.grommet input:-ms-input-placeholder,.grommet select:-ms-input-placeholder,.grommet textarea:-ms-input-placeholder{color:#aaa}.grommet input.error,.grommet select.error,.grommet textarea.error{border-color:#c8200d}.grommet input[type=button],.grommet input[type=submit]{text-align:center;line-height:inherit}.grommet select{border-color:rgba(0,0,0,.15);padding-right:48px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px;cursor:pointer}.grommet select::-moz-focus-inner{border:none}.grommet select.plain{border:none}.grommet input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}.grommet input[type=range]:focus{outline:none}.grommet input[type=range]::-moz-focus-inner,.grommet input[type=range]::-moz-focus-outer{border:none}.grommet input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}.grommet input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#ff8300;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:before{background-color:#fff}.grommet input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #ff8300;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}.grommet input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}.grommet input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #ff8300;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}.grommet input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}.grommet input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-fill-lower{background:#ff8300;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-lower{background:#fff}.grommet input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-thumb{border-color:#fff}.grommet input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}@media screen and (min-width:45em){html.grommet{height:100%;width:100%;overflow:visible}}.grommet{box-sizing:border-box}.grommet.rtl{direction:rtl}.grommet *{box-sizing:inherit}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,.grommet a:not(.anchor){color:#ff8300;text-decoration:none;cursor:pointer}.anchor.plain .anchor.button,.anchor.plain .anchor.button:hover,.anchor.plain .grommet a:not(.anchor).button,.anchor.plain .grommet a:not(.anchor).button:hover,.grommet a:not(.anchor).plain .anchor.button,.grommet a:not(.anchor).plain .anchor.button:hover,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover{text-decoration:none}.anchor:visited,.grommet a:not(.anchor):visited{color:#ff8300}.anchor.active,.grommet a:not(.anchor).active{color:#333}.anchor:hover,.grommet a:not(.anchor):hover{color:#d16b00;text-decoration:underline}.anchor--disabled:hover{color:#ff8300}.anchor__icon{display:inline-block;padding:12px}.anchor--icon-label,.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;text-decoration:none}.anchor--icon-label .control-icon,.anchor--primary .control-icon{vertical-align:middle;margin-right:12px}html.rtl .anchor--icon-label .control-icon,html.rtl .anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor--icon-label>span,.anchor--primary>span{vertical-align:middle}.anchor--reverse .control-icon{margin-right:0;margin-left:12px}.anchor--primary{color:#ff8300}.anchor--primary .control-icon{stroke:#ff8300}.anchor--primary:hover .control-icon{stroke:#ff8300;transform:translateX(3px)}.anchor--primary:hover .control-icon path,.anchor--primary:hover .control-icon polyline{stroke-width:3px}.anchor--primary.anchor--disabled .control-icon{transform:none}.anchor--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon{cursor:default}.anchor--icon{display:inline-block}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a{color:hsla(0,0%,100%,.85)}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}@media screen and (min-width:45em){.grommet.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.grommet.app--inline{position:relative}.grommet.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}.grommet article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:50%;background-size:cover;background-repeat:no-repeat}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box>.no-flex{flex:0 0 auto}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box__container--full,.box__container--full-horizontal{max-width:100%;width:100vw}.box--wrap{flex-wrap:wrap}.box--full{position:relative;min-height:100vh;height:100%}.box--full,.box--full-horizontal{max-width:100%;width:100vw}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive:not(.box--justify-center){align-items:stretch}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--align-baseline{align-items:baseline}.box--align-content-start{align-content:flex-start}.box--align-content-end{align-content:flex-end}.box--align-content-center{align-content:center}.box--align-content-between{align-content:space-between}.box--align-content-around{align-content:space-around}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid rgba(0,0,0,.15)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .box[class*=box--separator]{border-color:hsla(0,0%,100%,.5)}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box--clickable{cursor:pointer}.brick{padding:24px;position:relative;float:left;margin:0 12px 12px 0;max-width:calc(100% - 12px)}.brick__label{position:absolute;top:0;right:0;left:0;bottom:0;overflow:hidden}.brick__label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick__background{position:absolute;top:0;bottom:0;left:0;right:0}.brick__container{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}.brick--clickable:focus,.brick--clickable:hover{z-index:1;transition:transform .4s;transform:scale(1.05);outline:none}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #ff8300;border-radius:4px 4px 4px 4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.grommet button:not(.button):focus:not(.button--disabled),.grommet input[type=button]:focus:not(.button--disabled),.grommet input[type=submit]:focus:not(.button--disabled){border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}@media screen and (min-width:45em){.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{transition:.1s ease-in-out}}.grommet a.button,.grommet a.button:hover{text-decoration:none}.button{padding:6px 22px;background-color:transparent;border:2px solid #ff8300;border-radius:4px 4px 4px 4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#ff8300;background-color:#ff8300;color:#fff}.button--primary:hover:not(.button--disabled){color:#fff}.button--primary:hover:not(.button--disabled) .button__icon .control-icon{fill:#fff;stroke:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#9fd4c9}.button--plain{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none;font-weight:inherit}.button--plain.button--primary{background-color:#ff8300}.button--plain>span:not(.button__icon):first-child{margin-left:12px}.button--plain>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary){border-color:hsla(0,0%,100%,.7);color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary).button--accent{border-color:#9fd4c9}.button--disabled{opacity:.3;cursor:default}.button--icon,.button:not(.button--fill){flex:0 0 auto}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__input::-ms-clear{display:none}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:hsla(0,0%,87%,.5)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#ff8300;color:hsla(0,0%,100%,.85)}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel .tiles.box--direction-row>.tile.carousel__item{flex:1 1 100%;box-sizing:border-box}.carousel .tiles.box--direction-row>.tile.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:hsla(0,0%,100%,.7);stroke-width:1px}.carousel__arrow:hover .control-icon polyline{stroke:#fff}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:hsla(0,0%,100%,.7);fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#ff8300;fill:#ff8300}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#ff8300;fill:#ff8300}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:rgba(0,0,0,.15)}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#ff8300}.chart__values-line.color-index-critical,.chart__values-line.color-index-error{stroke:#c8200d}.chart__values-line.color-index-warning{stroke:#e57118}.chart__values-line.color-index-ok{stroke:#2aac24}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#999}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-6{stroke:#ec9b58}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-7{stroke:#0049a0}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-8{stroke:#886f9c}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-9{stroke:#5fbcdd}.chart__values-line.color-index-graph-5,.chart__values-line.color-index-graph-10{stroke:#7fba44}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-4{stroke:#2d3034}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-5{stroke:#52555a}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-6{stroke:#999}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-3{stroke:#9fd4c9}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-4{stroke:#d5d848}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-area.color-index-error,.chart__values-bar.color-index-critical,.chart__values-bar.color-index-error{fill:rgba(200,32,13,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(229,113,24,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(42,172,36,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,60%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-6{fill:rgba(236,155,88,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-7{fill:rgba(0,73,160,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-8{fill:rgba(136,111,156,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-9,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-9{fill:rgba(95,188,221,.7)}.chart__values-area.color-index-graph-5,.chart__values-area.color-index-graph-10,.chart__values-bar.color-index-graph-5,.chart__values-bar.color-index-graph-10{fill:rgba(127,186,68,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#ff8300}.chart__values-area--active.color-index-critical,.chart__values-area--active.color-index-error,.chart__values-bar--active.color-index-critical,.chart__values-bar--active.color-index-error{fill:#c8200d}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#e57118}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#2aac24}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#999}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-6{fill:#ec9b58}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-7{fill:#0049a0}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-8{fill:#886f9c}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-9,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-9{fill:#5fbcdd}.chart__values-area--active.color-index-graph-5,.chart__values-area--active.color-index-graph-10,.chart__values-bar--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-10{fill:#7fba44}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-3{fill:#9fd4c9}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-4{fill:#d5d848}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-4{fill:#2d3034}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-5{fill:#52555a}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-6{fill:#999}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#ff8300}.chart__values-point.color-index-critical,.chart__values-point.color-index-error{stroke:#c8200d}.chart__values-point.color-index-warning{stroke:#e57118}.chart__values-point.color-index-ok{stroke:#2aac24}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#999}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-6{stroke:#ec9b58}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-7{stroke:#0049a0}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-8{stroke:#886f9c}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-9{stroke:#5fbcdd}.chart__values-point.color-index-graph-5,.chart__values-point.color-index-graph-10{stroke:#7fba44}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-4{stroke:#2d3034}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-5{stroke:#52555a}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-6{stroke:#999}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-3{stroke:#9fd4c9}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-4{stroke:#d5d848}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#ff8300}.chart__values--loading.color-index-critical,.chart__values--loading.color-index-error{stroke:#c8200d}.chart__values--loading.color-index-warning{stroke:#e57118}.chart__values--loading.color-index-ok{stroke:#2aac24}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#999}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-6{stroke:#ec9b58}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-7{stroke:#0049a0}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-8{stroke:#886f9c}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-9{stroke:#5fbcdd}.chart__values--loading.color-index-graph-5,.chart__values--loading.color-index-graph-10{stroke:#7fba44}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-4{stroke:#2d3034}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-5{stroke:#52555a}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-6{stroke:#999}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-3{stroke:#9fd4c9}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-4{stroke:#d5d848}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical,.chart__yaxis .chart__bar.color-index-error{fill:rgba(200,32,13,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(229,113,24,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(42,172,36,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,60%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(236,155,88,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-7{fill:rgba(0,73,160,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(136,111,156,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-9{fill:rgba(95,188,221,.5)}.chart__yaxis .chart__bar.color-index-graph-5,.chart__yaxis .chart__bar.color-index-graph-10{fill:rgba(127,186,68,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#ff8300}.chart__cursor-point.color-index-critical,.chart__cursor-point.color-index-error{fill:#c8200d}.chart__cursor-point.color-index-warning{fill:#e57118}.chart__cursor-point.color-index-ok{fill:#2aac24}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#999}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-6{fill:#ec9b58}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-7{fill:#0049a0}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-8{fill:#886f9c}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-9{fill:#5fbcdd}.chart__cursor-point.color-index-graph-5,.chart__cursor-point.color-index-graph-10{fill:#7fba44}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-3{fill:#9fd4c9}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-4{fill:#d5d848}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-4{fill:#2d3034}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-5{fill:#52555a}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-6{fill:#999}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#c8200d}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#c8200d;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#c8200d;stop-opacity:0}.chart--area .chart__gradient.color-index-error .begin,.chart--bar .chart__gradient.color-index-error .begin{stop-color:#c8200d}.chart--area .chart__gradient.color-index-error .mid,.chart--bar .chart__gradient.color-index-error .mid{stop-color:#c8200d;stop-opacity:.5}.chart--area .chart__gradient.color-index-error .end,.chart--bar .chart__gradient.color-index-error .end{stop-color:#c8200d;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#e57118}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#e57118;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#e57118;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#2aac24}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#2aac24;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#2aac24;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#999}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#999;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#999;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#999}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#999;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#999;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#ec9b58}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#ec9b58;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#ec9b58;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#0049a0}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#0049a0;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#0049a0;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#886f9c}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#886f9c;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#886f9c;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-9 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-9 .begin{stop-color:#5fbcdd}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-9 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-9 .mid{stop-color:#5fbcdd;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-9 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-9 .end{stop-color:#5fbcdd;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--area .chart__gradient.color-index-graph-10 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-10 .begin{stop-color:#7fba44}.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--area .chart__gradient.color-index-graph-10 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-10 .mid{stop-color:#7fba44;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-5 .end,.chart--area .chart__gradient.color-index-graph-10 .end,.chart--bar .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-10 .end{stop-color:#7fba44;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#ff8300}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-area.color-index-error,.chart--sparkline .chart__values-bar.color-index-critical,.chart--sparkline .chart__values-bar.color-index-error{fill:#c8200d}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#e57118}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#2aac24}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#999}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#ec9b58}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#0049a0}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#886f9c}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-9,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-9{fill:#5fbcdd}.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-area.color-index-graph-10,.chart--sparkline .chart__values-bar.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-10{fill:#7fba44}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-3{fill:#9fd4c9}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#d5d848}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-4{fill:#2d3034}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#52555a}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#999}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:4px 4px 4px 4px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control{border-color:hsla(0,0%,100%,.7)}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__label{color:hsla(0,0%,100%,.85)}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s;box-sizing:border-box}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#ff8300;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]){color:#fff}.background-color-index-brand{background-color:#ff8300}.background-color-index-neutral-1,.background-color-index-neutral-4{background-color:#545454}.background-color-index-neutral-1-a,.background-color-index-neutral-4-a{background-color:rgba(84,84,84,.8)}.background-color-index-neutral-2,.background-color-index-neutral-5{background-color:#767676}.background-color-index-neutral-2-a,.background-color-index-neutral-5-a{background-color:hsla(0,0%,46%,.8)}.background-color-index-neutral-3,.background-color-index-neutral-6{background-color:#989898}.background-color-index-neutral-3-a,.background-color-index-neutral-6-a{background-color:hsla(0,0%,60%,.8)}.background-color-index-accent-1,.background-color-index-accent-3{background-color:#9fd4c9}.background-color-index-accent-1-a,.background-color-index-accent-3-a{background-color:rgba(159,212,201,.8)}.background-color-index-accent-2,.background-color-index-accent-4{background-color:#d5d848}.background-color-index-accent-2-a,.background-color-index-accent-4-a{background-color:rgba(213,216,72,.8)}.background-color-index-grey-1,.background-color-index-grey-4{background-color:#2d3034}.background-color-index-grey-1-a,.background-color-index-grey-4-a{background-color:rgba(45,48,52,.8)}.background-color-index-grey-2,.background-color-index-grey-5{background-color:#52555a}.background-color-index-grey-2-a,.background-color-index-grey-5-a{background-color:rgba(82,85,90,.8)}.background-color-index-grey-3,.background-color-index-grey-6{background-color:#999}.background-color-index-grey-3-a,.background-color-index-grey-6-a{background-color:hsla(0,0%,60%,.8)}.background-color-index-graph-1,.background-color-index-graph-6{background-color:#ec9b58}.background-color-index-graph-2,.background-color-index-graph-7{background-color:#0049a0}.background-color-index-graph-3,.background-color-index-graph-8{background-color:#886f9c}.background-color-index-graph-4,.background-color-index-graph-9{background-color:#5fbcdd}.background-color-index-graph-5,.background-color-index-graph-10{background-color:#7fba44}.background-color-index-critical,.background-color-index-error{background-color:#c8200d}.background-color-index-warning{background-color:#e57118}.background-color-index-ok{background-color:#2aac24}.background-color-index-disabled,.background-color-index-unknown{background-color:#999}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.columns{display:flex;flex-direction:row;width:100%}.columns__column{flex:0 0 192px;display:flex;flex-direction:column}.columns--small>.columns__column{flex-basis:96px}.columns--large>.columns__column{flex-basis:384px}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#ff8300}.distribution__item-box.color-index-critical,.distribution__item-box.color-index-error{fill:#c8200d}.distribution__item-box.color-index-warning{fill:#e57118}.distribution__item-box.color-index-ok{fill:#2aac24}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#999}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-6{fill:#ec9b58}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-7{fill:#0049a0}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-8{fill:#886f9c}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-9{fill:#5fbcdd}.distribution__item-box.color-index-graph-5,.distribution__item-box.color-index-graph-10{fill:#7fba44}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-3{fill:#9fd4c9}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-4{fill:#d5d848}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-4{fill:#2d3034}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-5{fill:#52555a}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-6{fill:#999}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#ff8300}.distribution__item-icons.color-index-critical,.distribution__item-icons.color-index-error{stroke:#c8200d}.distribution__item-icons.color-index-warning{stroke:#e57118}.distribution__item-icons.color-index-ok{stroke:#2aac24}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#999}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-6{stroke:#ec9b58}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-7{stroke:#0049a0}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-8{stroke:#886f9c}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-9{stroke:#5fbcdd}.distribution__item-icons.color-index-graph-5,.distribution__item-icons.color-index-graph-10{stroke:#7fba44}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-4{stroke:#2d3034}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-5{stroke:#52555a}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-6{stroke:#999}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-3{stroke:#9fd4c9}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-4{stroke:#d5d848}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;font-family:Source Sans Pro,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-accent-2,.distribution__label.color-index-accent-4,.distribution__label.color-index-brand,.distribution__label.color-index-critical,.distribution__label.color-index-disabled,.distribution__label.color-index-error,.distribution__label.color-index-graph-2,.distribution__label.color-index-graph-3,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-5,.distribution__label.color-index-graph-7,.distribution__label.color-index-graph-8,.distribution__label.color-index-graph-9,.distribution__label.color-index-graph-10,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-2,.distribution__label.color-index-grey-3,.distribution__label.color-index-grey-4,.distribution__label.color-index-grey-5,.distribution__label.color-index-grey-6,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-ok,.distribution__label.color-index-unknown,.distribution__label.color-index-warning{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#ff8300}.distribution__loading-indicator.color-index-critical,.distribution__loading-indicator.color-index-error{stroke:#c8200d}.distribution__loading-indicator.color-index-warning{stroke:#e57118}.distribution__loading-indicator.color-index-ok{stroke:#2aac24}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#999}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-6{stroke:#ec9b58}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-7{stroke:#0049a0}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-8{stroke:#886f9c}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-9{stroke:#5fbcdd}.distribution__loading-indicator.color-index-graph-5,.distribution__loading-indicator.color-index-graph-10{stroke:#7fba44}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-4{stroke:#2d3034}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-5{stroke:#52555a}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-6{stroke:#999}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-3{stroke:#9fd4c9}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-4{stroke:#d5d848}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{width:auto;height:auto;max-height:100%;max-width:100%}.grommet.drop{position:absolute;z-index:5;border-radius:4px 4px 4px 4px;overflow:auto}.grommet.drop:not([class*=background-color-index-]){background-color:hsla(0,0%,97%,.95);border:none;box-shadow:none}.footer{min-height:36px;line-height:36px;width:100%}.footer.box--direction-row>h1,.footer.box--direction-row>h2,.footer.box--direction-row>h3,.footer.box--direction-row>h4{margin-bottom:0}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large{min-height:96px;line-height:96px}.footer--small{min-height:24px;line-height:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative;width:480px;max-width:100%}@media screen and (min-width:45em){.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid rgba(0,0,0,.15);margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field{background-color:transparent;color:hsla(0,0%,100%,.85)}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__label{color:hsla(0,0%,100%,.85)}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0 24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none;padding:0 24px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>textarea{color:#fff}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select{height:24px}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none;padding:0 24px}.form-field__contents>.number-input input[type=number]:focus{padding:0 24px}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid rgba(0,0,0,.15);padding-top:6px}.form-field__contents--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__help{color:hsla(0,0%,100%,.85)}.form-field__error{display:block;float:right;color:#c8200d;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__error{color:hsla(0,0%,100%,.85)}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#c8200d}.form-field--focus{z-index:2;border-color:#ff4c00}.header{min-height:72px;width:100%;margin-bottom:0}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header--large{min-height:96px}.header--large .header__content{line-height:96px}.header--small{min-height:48px}.header--small .header__content{line-height:48px}header.header{font-size:24px;font-size:1.5rem;line-height:inherit}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}.header__container{flex-shrink:0}.header__container--fixed{position:relative}.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){.header__container--fixed .header__wrapper .header{position:fixed}.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}.header__wrapper{height:72px}.header__wrapper--large{height:96px}.header__wrapper--small{height:48px}.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}.header--fixed.header--primary .header__content{position:static;background-color:transparent}.header--flush .header__wrapper{padding-left:0;padding-right:0}h1.heading,h2.heading,h3.heading,h4.heading,h5.heading,h6.heading{margin-bottom:12px;line-height:1}h1.heading--large,h2.heading--large,h3.heading--large,h4.heading--large,h5.heading--large,h6.heading--large{font-size:125%}h1.heading--small,h2.heading--small,h3.heading--small,h4.heading--small,h5.heading--small,h6.heading--small{font-size:75%}h1.heading--strong,h2.heading--strong,h3.heading--strong,h4.heading--strong,h5.heading--strong,h6.heading--strong{font-weight:600}h1.heading--align-start,h2.heading--align-start,h3.heading--align-start,h4.heading--align-start,h5.heading--align-start,h6.heading--align-start{text-align:left}html.rtl h1.heading--align-start,html.rtl h2.heading--align-start,html.rtl h3.heading--align-start,html.rtl h4.heading--align-start,html.rtl h5.heading--align-start,html.rtl h6.heading--align-start{text-align:right}h1.heading--align-center,h2.heading--align-center,h3.heading--align-center,h4.heading--align-center,h5.heading--align-center,h6.heading--align-center{text-align:center}h1.heading--align-right,h2.heading--align-right,h3.heading--align-right,h4.heading--align-right,h5.heading--align-right,h6.heading--align-right{text-align:right}html.rtl h1.heading--align-right,html.rtl h2.heading--align-right,html.rtl h3.heading--align-right,html.rtl h4.heading--align-right,html.rtl h5.heading--align-right,html.rtl h6.heading--align-right{text-align:left}h1.heading--margin-none,h2.heading--margin-none,h3.heading--margin-none,h4.heading--margin-none,h5.heading--margin-none,h6.heading--margin-none{margin-top:0;margin-bottom:0}h1.heading--margin-small,h2.heading--margin-small,h3.heading--margin-small,h4.heading--margin-small,h5.heading--margin-small,h6.heading--margin-small{margin-top:12px;margin-bottom:12px}h1.heading--margin-medium,h2.heading--margin-medium,h3.heading--margin-medium,h4.heading--margin-medium,h5.heading--margin-medium,h6.heading--margin-medium{margin-top:24px;margin-bottom:24px}h1.heading--margin-large,h2.heading--margin-large,h3.heading--margin-large,h4.heading--margin-large,h5.heading--margin-large,h6.heading--margin-large{margin-top:48px;margin-bottom:48px}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1}.headline--small{font-size:30px;font-size:1.875rem;line-height:1}.headline--strong{font-weight:600}.headline--align-start{text-align:left}html.rtl .headline--align-start{text-align:right}.headline--align-center{text-align:center}.headline--align-right{text-align:right}html.rtl .headline--align-right{text-align:left}.headline--margin-none{margin-top:0;margin-bottom:0}.headline--margin-small{margin-top:12px;margin-bottom:12px}.headline--margin-medium{margin-top:24px;margin-bottom:24px}.headline--margin-large{margin-top:48px;margin-bottom:48px}.control-icon{display:inline-block;width:24px;height:24px;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#ff8300}.control-icon.color-index-critical,.control-icon.color-index-error{stroke:#c8200d}.control-icon.color-index-warning{stroke:#e57118}.control-icon.color-index-ok{stroke:#2aac24}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#999}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{stroke:#ec9b58}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{stroke:#0049a0}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{stroke:#886f9c}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{stroke:#5fbcdd}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{stroke:#7fba44}.control-icon.color-index-grey-1,.control-icon.color-index-grey-4{stroke:#2d3034}.control-icon.color-index-grey-2,.control-icon.color-index-grey-5{stroke:#52555a}.control-icon.color-index-grey-3,.control-icon.color-index-grey-6{stroke:#999}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{stroke:#9fd4c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{stroke:#d5d848}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#ff8300}.control-icon.color-index-critical,.control-icon.color-index-error{fill:#c8200d}.control-icon.color-index-warning{fill:#e57118}.control-icon.color-index-ok{fill:#2aac24}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#999}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{fill:#ec9b58}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{fill:#0049a0}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{fill:#886f9c}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{fill:#5fbcdd}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{fill:#7fba44}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{fill:#9fd4c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{fill:#d5d848}.control-icon.color-index-grey-1,.control-icon.color-index-grey-4{fill:#2d3034}.control-icon.color-index-grey-2,.control-icon.color-index-grey-5{fill:#52555a}.control-icon.color-index-grey-3,.control-icon.color-index-grey-6{fill:#999}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover .control-icon,.button:hover .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.anchor.anchor--disabled:hover .control-icon,.button.button--disabled:hover .control-icon{fill:#999;stroke:#999}.control-icon__badge circle{fill:#9fd4c9}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .control-icon:not([class*=color-index]){fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.control-icon--huge{width:288px;height:288px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#999}.status-icon-critical .status-icon__base,.status-icon-error .status-icon__base{fill:#c8200d}.status-icon-warning .status-icon__base{fill:#e57118}.status-icon-ok .status-icon__base{fill:#2aac24}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#999}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#999;stroke:#999}.status-icon--large{width:48px;height:48px}.status-icon--huge{width:288px;height:288px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#ff8300}.logo-icon.color-index-critical,.logo-icon.color-index-error{stroke:#c8200d}.logo-icon.color-index-warning{stroke:#e57118}.logo-icon.color-index-ok{stroke:#2aac24}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#999}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-6{stroke:#ec9b58}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-7{stroke:#0049a0}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-8{stroke:#886f9c}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-9{stroke:#5fbcdd}.logo-icon.color-index-graph-5,.logo-icon.color-index-graph-10{stroke:#7fba44}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-4{stroke:#2d3034}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-5{stroke:#52555a}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-6{stroke:#999}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-3{stroke:#9fd4c9}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-4{stroke:#d5d848}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.logo-icon--huge{width:288px;height:288px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--thumb{width:48px;height:48px;flex:0 0 auto;object-fit:cover}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}.label{font-size:19px;font-size:1.1875rem;line-height:1.26316;margin-bottom:24px}.label--uppercase{text-transform:uppercase;letter-spacing:.2em}.label--align-start{text-align:left}html.rtl .label--align-start{text-align:right}.label--align-center{text-align:center}.label--align-right{text-align:right}html.rtl .label--align-right{text-align:left}.label--margin-none{margin-top:0;margin-bottom:0}.label--margin-small{margin-top:12px;margin-bottom:12px}.label--margin-medium{margin-top:24px;margin-bottom:24px}.label--margin-large{margin-top:48px;margin-bottom:48px}.grommet.layer{position:relative;z-index:4;background-color:rgba(0,0,0,.5);height:100vh}@media screen and (min-width:45em){.grommet.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.grommet.layer:not(.layer--hidden)+.app{display:none}}.grommet.layer .layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.grommet.layer .layer__container{padding:0 24px;min-height:100vh;min-width:100vw}}@media screen and (min-width:45em){.grommet.layer .layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:4px 4px 4px 4px;box-shadow:none}}.grommet.layer .layer__closer{position:absolute;top:0;right:0;z-index:1}.grommet.rtl .grommet.layer .layer__closer{right:auto;left:0}.grommet.layer.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.grommet.layer.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0}@media screen and (min-width:45em){.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0}@media screen and (min-width:45em){.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}.grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.grommet.layer.layer--hidden{left:-100vw;right:100vw;z-index:-1}.grommet.layer.layer--hidden.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.grommet.layer.layer--hidden{display:none}}@media screen and (min-width:45em){.grommet.layer.layer--hidden.layer--peek{left:0;z-index:4}.grommet.layer.layer--hidden.layer--peek.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #ff8300;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item:focus{outline:1px solid #ff4c00}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:hsla(0,0%,87%,.5)}.list .list-item--selected{background-color:#fff;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#fff;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:hsla(0,0%,87%,.5);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0;line-height:24px}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;min-width:72px;text-align:left}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#ff8300}.legend__item svg.legend__item-swatch.color-index-critical,.legend__item svg.legend__item-swatch.color-index-error{stroke:#c8200d}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#e57118}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#2aac24}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#999}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#ec9b58}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#0049a0}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#886f9c}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-9{stroke:#5fbcdd}.legend__item svg.legend__item-swatch.color-index-graph-5,.legend__item svg.legend__item-swatch.color-index-graph-10{stroke:#7fba44}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-4{stroke:#2d3034}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#52555a}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#999}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-3{stroke:#9fd4c9}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#d5d848}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--clickable{cursor:pointer}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .legend__item--active{color:#fff}li.legend__total{margin-left:24px}html.rtl li.legend__total{margin-left:0;margin-right:24px}li.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted rgba(0,0,0,.15)}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;padding:24px;background-color:#fff;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%}}.login-form__header{text-align:center}.login-form fieldset{margin-bottom:0}.login-form__submit{width:100%;max-width:none}.login-form--align-start .login-form__header{text-align:left}html.rtl .login-form--align-start .login-form__header{text-align:right}.login-form--align-start .login-form__submit{width:auto}.login-form--align-end .login-form__header{text-align:right}html.rtl .login-form--align-end .login-form__header{text-align:left}.login-form--align-end .login-form__submit{width:auto}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid rgba(0,0,0,.15);margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:hsla(0,0%,87%,.5)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:1.26316}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #ff4c00;box-shadow:0 0 1px 1px #ff4c00;pointer-events:none}.menu>*{flex:0 0 auto}.menu .anchor,.menu a:not(.button){text-decoration:none}.menu .anchor:hover,.menu a:not(.button):hover{text-decoration:none;color:#d16b00}.menu .anchor.active,.menu a:not(.button).active{color:#d16b00}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu .anchor.active,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu a:not(.button).active{color:#fff}.menu.menu--controlled{display:inline-block;cursor:pointer}.menu__control:focus:not(.button--disabled){box-shadow:inset 0 0 1px 2px #ff4c00}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover .menu__control-label{color:#fff}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}@media screen and (min-width:45em){.menu__control.menu--labelled .control-icon{transition:none}}.menu__drop{font-size:19px;font-size:1.1875rem;line-height:1.26316;max-height:100vh}.menu__drop .anchor,.menu__drop a:not(.anchor--disabled),.menu__drop a:not(.anchor--disabled):hover{text-decoration:none}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:hsla(0,0%,87%,.5)}.menu__drop .menu__control{text-align:left}.grommet.rtl .menu__drop .menu__control{text-align:right}.menu__drop .menu__label{padding:12px 24px;font-weight:600}.menu__drop.menu__drop--align-right{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right{text-align:left}.menu__drop.menu__drop--align-right .menu__control{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right .menu__control,.menu__drop.menu__drop--align-right .menu__contents{text-align:left}.grommet.rtl .menu__drop.menu__drop--align-right .menu__contents{text-align:right}.menu__drop.menu__drop--small{font-size:16px;font-size:1rem;line-height:1.5}.menu__drop.menu__drop--large{font-size:24px;font-size:1.5rem;line-height:1}.menu--inline.menu--row{line-height:48px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.box--direction-row.box--responsive>*{margin-right:0}.grommet.rtl .menu--inline.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.box--direction-column a:not(.button){margin-bottom:6px}.menu--inline.menu--small{font-size:16px;font-size:1rem;line-height:inherit}.menu--inline.menu--large{font-size:24px;font-size:1.5rem;line-height:inherit}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:4px;border-color:transparent;border-right-style:solid}.grommet.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:hsla(0,0%,87%,.5)}.menu--primary>a:not(.button).active{border-color:#ff8300}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu:not(.box--direction-row)>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15);border:none}.menu--inline.menu:not(.box--direction-row) .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu:not(.box--direction-row) a,.menu__drop a{text-decoration:none}.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu:not(.box--direction-row).box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu:not(.box--direction-row).box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15)}.menu--inline.menu:not(.box--direction-row).menu--small>a,.menu__drop.menu--small>a{padding:6px 0}.menu--inline.menu:not(.box--direction-row).menu--large>a,.menu__drop.menu--large>a{padding:24px 0}@media screen and (max-width:44.9375em){.menu--inline.menu:not(.box--direction-row).box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu:not(.box--direction-row).box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu:not(.box--direction-row).box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #ff4c00}.meter__graphic text{fill:#777}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter--legend-bottom.meter--legend-align-center .meter__legend{text-align:center}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter--active .meter__values .meter__slice:hover,.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#ff8300}.meter--bar .meter__values .meter__slice.color-index-critical,.meter--bar .meter__values .meter__slice.color-index-error{stroke:#c8200d}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#e57118}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#2aac24}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#999}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#ec9b58}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#0049a0}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#886f9c}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-9{stroke:#5fbcdd}.meter--bar .meter__values .meter__slice.color-index-graph-5,.meter--bar .meter__values .meter__slice.color-index-graph-10{stroke:#7fba44}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-4{stroke:#2d3034}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#52555a}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#999}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-3{stroke:#9fd4c9}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#d5d848}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(255,131,0,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__thresholds .meter__slice.color-index-error,.meter--bar .meter__tracks .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-error{stroke:rgba(200,32,13,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(229,113,24,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(42,172,36,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,60%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(236,155,88,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(0,73,160,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(136,111,156,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-9,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(95,188,221,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__thresholds .meter__slice.color-index-graph-10,.meter--bar .meter__tracks .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-10{stroke:rgba(127,186,68,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(159,212,201,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(213,216,72,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{width:24px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{width:36px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{width:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px;width:36px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{width:72px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{width:108px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{width:144px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic,.meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic{height:12px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{height:24px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{height:36px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{height:48px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large{line-height:36px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:36px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{height:72px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{height:108px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{height:144px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#ff8300}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--arc .meter__values .meter__slice.color-index-error,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-error,.meter--spiral .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-error{stroke:#c8200d}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#e57118}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#2aac24}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#999}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#ec9b58}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#0049a0}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#886f9c}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-9,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-9,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-9{stroke:#5fbcdd}.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--arc .meter__values .meter__slice.color-index-graph-10,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-10,.meter--spiral .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-10{stroke:#7fba44}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-4{stroke:#2d3034}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#52555a}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#999}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-3{stroke:#9fd4c9}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#d5d848}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(255,131,0,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__thresholds .meter__slice.color-index-error,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-error,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-error,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-error,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-error,.meter--spiral .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-error{stroke:rgba(200,32,13,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(229,113,24,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(42,172,36,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,60%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(236,155,88,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(0,73,160,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(136,111,156,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-9,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-9,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-9,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-9,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(95,188,221,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__thresholds .meter__slice.color-index-graph-10,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-10,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-10,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-10,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-10{stroke:rgba(127,186,68,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(159,212,201,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(213,216,72,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification:not(.notification--disabled){cursor:pointer}.notification:not(.notification--disabled):hover{z-index:1;box-shadow:0 0 0 2px #ff8300}.notification--status-critical .notification__status .status-icon__base{fill:#fff}.notification--status-critical .notification__status .status-icon__detail{stroke:#c8200d;fill:#c8200d}.notification--status-critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-critical:not(.notification--disabled):hover{box-shadow:0 0 0 2px #c8200d}.notification--status-error .notification__status .status-icon__base{fill:#fff}.notification--status-error .notification__status .status-icon__detail{stroke:#c8200d;fill:#c8200d}.notification--status-error .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-error:not(.notification--disabled):hover{box-shadow:0 0 0 2px #c8200d}.notification--status-warning .notification__status .status-icon__base{fill:#fff}.notification--status-warning .notification__status .status-icon__detail{stroke:#e57118;fill:#e57118}.notification--status-warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-warning:not(.notification--disabled):hover{box-shadow:0 0 0 2px #e57118}.notification--status-ok .notification__status .status-icon__base{fill:#fff}.notification--status-ok .notification__status .status-icon__detail{stroke:#2aac24;fill:#2aac24}.notification--status-ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-ok:not(.notification--disabled):hover{box-shadow:0 0 0 2px #2aac24}.notification--status-unknown .notification__status .status-icon__base{fill:#fff}.notification--status-unknown .notification__status .status-icon__detail{stroke:#999;fill:#999}.notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-unknown:not(.notification--disabled):hover{box-shadow:0 0 0 2px #999}.notification--status-disabled .notification__status .status-icon__base{fill:#fff}.notification--status-disabled .notification__status .status-icon__detail{stroke:#999;fill:#999}.notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-disabled:not(.notification--disabled):hover{box-shadow:0 0 0 2px #999}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:4px 4px 4px 4px}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input__input:invalid{box-shadow:none}.number-input__input::-ms-clear{display:none}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.grommet .paragraph--align-start{text-align:left}html.rtl .grommet .paragraph--align-start{text-align:right}.grommet .paragraph--align-center{text-align:center}.grommet .paragraph--align-right{text-align:right}html.rtl .grommet .paragraph--align-right{text-align:left}.grommet .paragraph--margin-none{margin-top:0;margin-bottom:0}.grommet .paragraph--margin-small{margin-top:12px;margin-bottom:12px}.grommet .paragraph--margin-medium{margin-top:24px;margin-bottom:24px}.grommet .paragraph--margin-large{margin-top:48px;margin-bottom:48px}.grommet .paragraph.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.grommet .paragraph.paragraph--small a{text-decoration:none}.grommet .paragraph.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.grommet .paragraph.paragraph--large a{color:#ff8300;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#ff8300}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#ff8300;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#d16b00;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__control{border-color:hsla(0,0%,100%,.7)}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__label{color:hsla(0,0%,100%,.85)}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #ff4c00;box-shadow:0 0 1px 1px #ff4c00}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit;line-height:inherit}.search__input::-ms-clear{display:none}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}@media screen and (max-width:44.9375em){.search__drop .search__suggestion{width:calc(100vw - 72px)}}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search__drop-control{vertical-align:top;height:48px}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-left:11px;padding-right:47px;border-radius:0;-webkit-appearance:none}.search--inline .search__input:focus{padding-left:10px;padding-right:46px}html.rtl .search--inline .search__input{padding-right:11px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:11px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small .search__input{font-size:19px;font-size:1.1875rem;line-height:inherit;padding:4px 18px;padding-right:23px}.search--small .search__input:focus{padding:3px 17px;padding-right:22px}.search--large .search__input{font-size:54px;font-size:3.375rem;line-height:normal;padding:12px 24px;padding-right:72px}.search--large .search__input:focus{padding:11px 71px;padding-left:23px}@media screen and (max-width:44.9375em){.search--large .search__input:focus{padding:10px 22px;padding-right:46px}}@media screen and (max-width:44.9375em){.search--large .search__input{font-size:inherit;padding:11px 23px;padding-right:47px;line-height:1.5}}.search--large .control-icon-search{right:24px;width:48px;height:48px}@media screen and (max-width:44.9375em){.search--large .control-icon-search{right:12px;width:24px;height:24px}}@media screen and (min-width:45em){.search--large .control-icon-search{transition:none}}.search--icon-align-start.search--inline .search__input{padding-left:47px;padding-right:23px}.search--icon-align-start.search--inline .search__input:focus{padding-left:46px;padding-right:23px}.search--icon-align-start.search--inline .control-icon-search{left:12px}.search--icon-align-start.search--large .search__input{padding-left:72px;padding-right:24px}.search--icon-align-start.search--large .search__input:focus{padding-left:71px;padding-right:23px}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input:focus{padding:10px 22px;padding-left:46px}}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input{padding:11px 23px;padding-left:47px}}.search--fill{width:100%;max-width:none;flex-grow:1}.search-input{position:relative;display:inline-block}.grommet .search-input__input,.search-input__input{width:100%;height:100%;display:block;padding-right:48px}.grommet .search-input__input:focus,.search-input__input:focus{padding-right:47px}.grommet .search-input__input::-ms-clear,.search-input__input::-ms-clear{display:none}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:6px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#ff8300}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:4px 4px 4px 4px}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid rgba(0,0,0,.15)}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1 1 auto;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden;position:absolute}.tab{padding:0 12px}.tabs--justify-end .tab:first-of-type,.tabs--justify-start .tab:first-of-type{padding-left:0}.tabs--justify-end .tab:last-of-type,.tabs--justify-start .tab:last-of-type{padding-right:0}@media screen and (max-width:44.9375em){.tabs--responsive .tab:first-of-type,.tabs--responsive .tab:last-of-type{padding-left:12px;padding-right:12px}}.tab a{display:inline-block}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus:not(tab--active .tab__link) .tab__label{border-color:rgba(0,0,0,.15)}.tab__label{display:inline-block;cursor:pointer;padding-bottom:10px;color:#777;border-bottom:4px solid transparent}.tab--active .tab__label,.tab--active .tab__link:hover .tab__label{color:#000;border-color:#000}.tab:hover .tab__label{border-color:rgba(0,0,0,.15)}.tabs{margin:12px 0;padding:0;display:flex;flex-wrap:wrap;align-items:center;list-style:none;border-bottom:1px solid rgba(0,0,0,.15)}.tabs--justify-center{justify-content:center}.tabs--justify-start{justify-content:flex-start}.tabs--justify-end{justify-content:flex-end}@media screen and (max-width:44.9375em){.tabs--justify-center.tabs--responsive,.tabs--justify-end.tabs--responsive,.tabs--justify-start.tabs--responsive{flex-direction:column;text-align:center}}.tabs+div:focus{outline:none}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid rgba(0,0,0,.15)}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--scrollable .table__table thead{visibility:hidden}.table--scrollable .table__table th{border-bottom:none}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#fff;color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:hsla(0,0%,87%,.5);color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.table--small thead{display:none}.table--small td{display:block}.table--small td:before{font-weight:100;font-size:19px;font-size:1.1875rem;line-height:24px;content:attr(data-th);display:block;padding-right:12px}.table--small tr{border-bottom:1px solid rgba(0,0,0,.15)}.table--small td,.table--small th{padding-left:24px}.tag{padding:6px 22px;background-color:transparent;border:2px solid #ff8300;border-radius:4px 4px 4px 4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px;border-color:rgba(51,51,51,.6);margin:0 12px 12px 0;position:relative;opacity:.7}.tag:focus:not(.button--disabled){border-color:#ff4c00;box-shadow:0 0 1px 1px #ff4c00}@media screen and (min-width:45em){.tag{transition:.1s ease-in-out}}.tag .anchor:hover:not(.anchor--disabled),.tag a,.tag a:hover{color:#333;text-decoration:none}.tag:hover{box-shadow:0 0 0 2px rgba(51,51,51,.6);opacity:1}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:rgba(0,0,0,.15);color:#fff}.tiles{width:100%;padding:12px}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles>.tile{flex-grow:0;flex-shrink:0}@media screen and (min-width:45em){.tiles>.tile{flex-basis:192px}}.tiles:not(.tiles--flush)>.tile{margin:12px}.tiles:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#fff;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}@media screen and (min-width:45em){.tiles--small>.tile{flex-basis:96px}}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}.tiles:focus{outline:1px solid #ff4c00}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#fff;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title span{overflow:hidden;text-overflow:ellipsis}.title img,.title svg{max-width:576px;flex:0 0 auto}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#ff8300;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid rgba(0,0,0,.15)}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(255,131,0,.8)}.video__control.button--primary:hover{background-color:#ff8300}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:hsla(0,0%,100%,.85);background-color:rgba(45,48,52,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid hsla(0,0%,100%,.7);text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#ff8300}.video--titled .video__summary{background-color:rgba(45,48,52,.7);color:hsla(0,0%,100%,.85);border-radius:4px 4px 4px 4px;font-size:19px;font-size:1.1875rem;line-height:1.26316}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both} \ No newline at end of file diff --git a/css/grommet-hpe.css b/css/grommet-hpe.css index 21ef2eb..2ea45bb 100644 --- a/css/grommet-hpe.css +++ b/css/grommet-hpe.css @@ -1,21 +1,21 @@ @charset "UTF-8"; @font-face { font-family: "Metric"; - src: url("https://hpefonts.s3.amazonaws.com/MetricWeb-Regular.woff") format("woff"); } + src: url("https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Regular.woff") format("woff"); } @font-face { font-family: "Metric"; - src: url("https://hpefonts.s3.amazonaws.com/MetricWeb-Bold.woff") format("woff"); + src: url("https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Bold.woff") format("woff"); font-weight: 700; } @font-face { font-family: "Metric"; - src: url("https://hpefonts.s3.amazonaws.com/MetricWeb-Semibold.woff") format("woff"); + src: url("https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Semibold.woff") format("woff"); font-weight: 600; } @font-face { font-family: "Metric"; - src: url("https://hpefonts.s3.amazonaws.com/MetricWeb-Light.woff") format("woff"); + src: url("https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Light.woff") format("woff"); font-weight: 100; } /*! @@ -439,24 +439,6 @@ ins { ins { border-bottom: 1px solid; } -/*------------------------------------* #BOX-SIZING -\*------------------------------------*/ -/** - * Set the global `box-sizing` state to `border-box`. - * - * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice - * paulirish.com/2012/box-sizing-border-box-ftw - */ -html { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -*, *:before, *:after { - -webkit-box-sizing: inherit; - -moz-box-sizing: inherit; - box-sizing: inherit; } - /*------------------------------------* #SHARED \*------------------------------------*/ /** @@ -591,116 +573,111 @@ img[height] { /* [2] */ max-width: none; } -html, +.grommet, .brand-font { font-family: "Metric", Arial, sans-serif; } -html, -body { +.grommet { font-size: 16px; font-size: 1rem; line-height: 24px; } - -h1 { - font-size: 48px; - font-size: 3rem; - line-height: 1.125; } - -h2 { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -h3 { - font-size: 24px; - font-size: 1.5rem; - line-height: 1.25; } - -h4 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h5 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h1, -h2, -h3, -h4, -h5 { - font-weight: 100; - max-width: 100%; } - h1.header--strong, - h1 > strong, - h2.header--strong, - h2 > strong, - h3.header--strong, - h3 > strong, - h4.header--strong, - h4 > strong, - h5.header--strong, - h5 > strong { - font-weight: 600; } - h1 a, - h1 a.anchor, - h2 a, - h2 a.anchor, - h3 a, - h3 a.anchor, - h4 a, - h4 a.anchor, - h5 a, - h5 a.anchor { - color: inherit; - text-decoration: none; } - h1 a:hover, - h1 a.anchor:hover, - h2 a:hover, - h2 a.anchor:hover, - h3 a:hover, - h3 a.anchor:hover, - h4 a:hover, - h4 a.anchor:hover, - h5 a:hover, - h5 a.anchor:hover { + .grommet h1 { + font-size: 48px; + font-size: 3rem; + line-height: 1.125; } + .grommet h2 { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet h3 { + font-size: 24px; + font-size: 1.5rem; + line-height: 1.25; } + .grommet h4 { + font-size: 18px; + font-size: 1.125rem; + line-height: 1.33333; } + .grommet h5 { + font-size: 17px; + font-size: 1.0625rem; + line-height: 1.41176; } + .grommet h6 { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .grommet h1, + .grommet h2, + .grommet h3, + .grommet h4, + .grommet h5, + .grommet h6 { + font-weight: 100; + max-width: 100%; } + .grommet h1.header--strong, + .grommet h1 > strong, + .grommet h2.header--strong, + .grommet h2 > strong, + .grommet h3.header--strong, + .grommet h3 > strong, + .grommet h4.header--strong, + .grommet h4 > strong, + .grommet h5.header--strong, + .grommet h5 > strong, + .grommet h6.header--strong, + .grommet h6 > strong { + font-weight: 600; } + .grommet h1 a, + .grommet h1 a.anchor, + .grommet h2 a, + .grommet h2 a.anchor, + .grommet h3 a, + .grommet h3 a.anchor, + .grommet h4 a, + .grommet h4 a.anchor, + .grommet h5 a, + .grommet h5 a.anchor, + .grommet h6 a, + .grommet h6 a.anchor { + color: inherit; text-decoration: none; } - -p, -dd, -li { - max-width: 576px; - margin-left: 0px; } - -dd { - margin-bottom: 12px; } - -p { - margin-top: 24px; - margin-bottom: 24px; } - -blockquote { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -b, -strong { - font-weight: 600; } - -code.hljs { - border: 1px solid #ccc; } - -.large-number-font { - font-family: "Metric", Arial, sans-serif; } - -.secondary { - color: #777; } - -.error { - color: #F04953; } + .grommet h1 a:hover, + .grommet h1 a.anchor:hover, + .grommet h2 a:hover, + .grommet h2 a.anchor:hover, + .grommet h3 a:hover, + .grommet h3 a.anchor:hover, + .grommet h4 a:hover, + .grommet h4 a.anchor:hover, + .grommet h5 a:hover, + .grommet h5 a.anchor:hover, + .grommet h6 a:hover, + .grommet h6 a.anchor:hover { + text-decoration: none; } + .grommet p, + .grommet dd, + .grommet li { + max-width: 576px; + margin-left: 0px; } + .grommet dd { + margin-bottom: 12px; } + .grommet p { + margin-top: 24px; + margin-bottom: 24px; } + .grommet blockquote { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet b, + .grommet strong { + font-weight: 600; } + .grommet code.hljs { + border: 1px solid rgba(0, 0, 0, 0.15); } + .grommet .large-number-font { + font-family: "Metric", Arial, sans-serif; } + .grommet .secondary { + color: #777; } + .grommet .error { + color: #F04953; } @-webkit-keyframes fadein { from { @@ -714,69 +691,68 @@ code.hljs { to { opacity: 1; } } -input, -select, -textarea { +.grommet input, +.grommet select, +.grommet textarea { font-size: 16px; font-size: 1rem; line-height: 1.5; padding: 11px 23px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 0px; outline: none; - margin-right: 12px; background-color: transparent; } - html.rtl input, html.rtl - select, html.rtl - textarea { + .grommet.rtl .grommet input, .grommet.rtl + .grommet select, .grommet.rtl + .grommet textarea { margin-right: 0; margin-left: 12px; } - input:focus, - select:focus, - textarea:focus { + .grommet input:focus, + .grommet select:focus, + .grommet textarea:focus { padding: 10px 22px; border-width: 2px; border-color: #2AD2C9; } - input::-moz-focus-inner, - select::-moz-focus-inner, - textarea::-moz-focus-inner { + .grommet input::-moz-focus-inner, + .grommet select::-moz-focus-inner, + .grommet textarea::-moz-focus-inner { border: none; outline: none; } - input::-webkit-input-placeholder, - select::-webkit-input-placeholder, - textarea::-webkit-input-placeholder { + .grommet input::-webkit-input-placeholder, + .grommet select::-webkit-input-placeholder, + .grommet textarea::-webkit-input-placeholder { color: #aaa; } - input::-moz-placeholder, - select::-moz-placeholder, - textarea::-moz-placeholder { + .grommet input::-moz-placeholder, + .grommet select::-moz-placeholder, + .grommet textarea::-moz-placeholder { color: #aaa; } - input:-ms-input-placeholder, - select:-ms-input-placeholder, - textarea:-ms-input-placeholder { + .grommet input:-ms-input-placeholder, + .grommet select:-ms-input-placeholder, + .grommet textarea:-ms-input-placeholder { color: #aaa; } - input.error, - select.error, - textarea.error { + .grommet input.error, + .grommet select.error, + .grommet textarea.error { border-color: #F04953; } -input[type="button"], -input[type="submit"] { +.grommet input[type="button"], +.grommet input[type="submit"] { text-align: center; line-height: inherit; } -select { - border-color: #ccc; - padding-right: 24px; +.grommet select { + border-color: rgba(0, 0, 0, 0.15); + padding-right: 48px; -webkit-appearance: none; -moz-appearance: none; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px; cursor: pointer; } - select::-moz-focus-inner { + .grommet select::-moz-focus-inner { border: none; } - select.plain { + .grommet select.plain { border: none; } -input[type=range] { +.grommet input[type=range] { position: relative; -webkit-appearance: none; border-color: transparent; @@ -784,26 +760,26 @@ input[type=range] { padding: 0px; cursor: pointer; overflow-x: hidden; } - input[type=range]:focus { + .grommet input[type=range]:focus { outline: none; } - input[type=range]::-moz-focus-inner { + .grommet input[type=range]::-moz-focus-inner { border: none; } - input[type=range]::-moz-focus-outer { + .grommet input[type=range]::-moz-focus-outer { border: none; } - input[type=range]::-webkit-slider-runnable-track { + .grommet input[type=range]::-webkit-slider-runnable-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-runnable-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-runnable-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-webkit-slider-thumb { + .grommet input[type=range]::-webkit-slider-thumb { position: relative; height: 24px; width: 24px; overflow: visible; -webkit-appearance: none; margin-top: -11px; } - input[type=range]::-webkit-slider-thumb:before { + .grommet input[type=range]::-webkit-slider-thumb:before { content: ""; position: absolute; left: -3000px; @@ -812,9 +788,9 @@ input[type=range] { bottom: 9px; background-color: #01a982; pointer-events: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:before { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:before { background-color: #fff; } - input[type=range]::-webkit-slider-thumb:after { + .grommet input[type=range]::-webkit-slider-thumb:after { content: ""; position: absolute; border: 2px solid #01a982; @@ -823,22 +799,22 @@ input[type=range] { border-radius: 24px; background-color: #fff; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:after { background-color: transparent; border-color: #fff; } - input[type=range]:hover::-webkit-slider-thumb:after { + .grommet input[type=range]:hover::-webkit-slider-thumb:after { content: ""; border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-webkit-slider-thumb:after { background-color: #fff; border-color: #fff; } - input[type=range]::-moz-range-track { + .grommet input[type=range]::-moz-range-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-moz-range-thumb { + .grommet input[type=range]::-moz-range-thumb { position: relative; height: 24px; width: 24px; @@ -848,33 +824,33 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-thumb { border-color: #fff; background-color: transparent; } - input[type=range]::hover::-moz-range-thumb { + .grommet input[type=range]::hover::-moz-range-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::hover::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::hover::-moz-range-thumb { border-color: #fff; background-color: #fff; } - input[type=range]::-ms-track { + .grommet input[type=range]::-ms-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); border-color: transparent; color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-fill-lower { + .grommet input[type=range]::-ms-fill-lower { background: #01a982; border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-lower { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-lower { background: #fff; } - input[type=range]::-ms-fill-upper { + .grommet input[type=range]::-ms-fill-upper { background: rgba(51, 51, 51, 0.2); border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-upper { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-upper { background: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-thumb { + .grommet input[type=range]::-ms-thumb { position: relative; height: 24px; width: 24px; @@ -884,25 +860,27 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-thumb { border-color: #fff; } - input[type=range]:hover::-ms-thumb { + .grommet input[type=range]:hover::-ms-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-ms-thumb { border-color: #fff; background-color: #fff; } -html.rtl, -body.rtl { - direction: rtl; } - @media screen and (min-width: 45em) { - html, - body { + html.grommet { height: 100%; width: 100%; overflow: visible; } } +.grommet { + box-sizing: border-box; } + .grommet.rtl { + direction: rtl; } + .grommet * { + box-sizing: inherit; } + /*------------------------------------* #LIST-BARE \*------------------------------------*/ /** @@ -913,114 +891,109 @@ body.rtl { padding: 0; list-style: none; } -a, +.grommet a:not(.anchor), .anchor { color: inherit; text-decoration: underline; cursor: pointer; } - a:visited, + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button, + .anchor.plain .grommet a:not(.anchor).button, .grommet a:not(.anchor).plain + .anchor.button, + .anchor.plain + .anchor.button { + text-decoration: none; } + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover, + .anchor.plain .grommet a:not(.anchor).button:hover, .grommet a:not(.anchor).plain + .anchor.button:hover, + .anchor.plain + .anchor.button:hover { + text-decoration: none; } + .grommet a:not(.anchor):visited, .anchor:visited { color: inherit; } - a.active, + .grommet a:not(.anchor).active, .anchor.active { color: #333; } - a:hover:not(.anchor--disabled), - .anchor:hover:not(.anchor--disabled) { - text-decoration: underline; - color: #000; } - a__icon, - .anchor__icon { - display: inline-block; - padding: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a.anchor--primary, - .anchor.anchor--primary { - font-size: 19px; - font-size: 1.1875rem; - line-height: 24px; - font-weight: 600; - color: #049371; - text-decoration: none; } - a.anchor--primary .control-icon, - .anchor.anchor--primary .control-icon { - stroke: #049371; - margin-right: 12px; } - html.rtl a.anchor--primary .control-icon, html.rtl - .anchor.anchor--primary .control-icon { - margin-right: 0; - margin-left: 12px; } - a.anchor--primary > span, - .anchor.anchor--primary > span { - vertical-align: middle; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon { - transform: translateX(3px); - stroke: #049371; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline { - stroke-width: 3px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a--disabled, - .anchor--disabled { - opacity: 0.3; + .grommet a:not(.anchor):hover, + .anchor:hover { + color: #000; + text-decoration: underline; } + +.anchor--disabled:hover { + color: inherit; } + +.anchor__icon { + display: inline-block; + padding: 12px; } + +.anchor--primary, +.anchor--icon-label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + text-decoration: none; } + .anchor--primary .control-icon, + .anchor--icon-label .control-icon { + vertical-align: middle; + margin-right: 12px; } + html.rtl .anchor--primary .control-icon, html.rtl + .anchor--icon-label .control-icon { + margin-right: 0; + margin-left: 12px; } + .anchor--primary > span, + .anchor--icon-label > span { + vertical-align: middle; } + +.anchor--reverse .control-icon { + margin-right: 0; + margin-left: 12px; } + +.anchor--primary { + color: #049371; } + .anchor--primary .control-icon { + stroke: #049371; } + .anchor--primary:hover .control-icon { + stroke: #049371; + transform: translateX(3px); } + .anchor--primary:hover .control-icon path, + .anchor--primary:hover .control-icon polyline { + stroke-width: 3px; } + .anchor--primary.anchor--disabled .control-icon { + transform: none; } + +.anchor--disabled { + opacity: 0.3; + cursor: default; } + .anchor--disabled .control-icon { cursor: default; } - a--disabled .control-icon, - .anchor--disabled .control-icon { - cursor: default; } -#loading { - position: absolute; - width: 100%; - height: 100%; - background-color: #ddd; - text-align: center; - padding-top: 100px; - font-size: 48px; - color: #ccc; - font-style: italic; } +.anchor--icon { + display: inline-block; } + +.grommet [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a { + color: rgba(255, 255, 255, 0.85); } + .grommet [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover { + color: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover .control-icon { + fill: #fff; + stroke: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } @media screen and (min-width: 45em) { - .app { + .grommet.app { position: absolute; top: 0px; bottom: 0px; @@ -1028,10 +1001,10 @@ a, right: 0px; overflow: auto; } } -.app--inline { +.grommet.app--inline { position: relative; } -.app--centered > .split { +.grommet.app--centered > .split { width: 100%; max-width: 960px; margin-left: auto; @@ -1082,7 +1055,7 @@ a, .article > * { flex: 0 0 auto; } -article:not(.article) { +.grommet article:not(.article) { width: 100%; } .attribute { @@ -1103,38 +1076,6 @@ article:not(.article) { background-position: center center; background-size: cover; background-repeat: no-repeat; } - .box__texture { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: -1; - overflow: hidden; } - .box__container { - padding-left: 24px; - padding-right: 24px; } - .box__container--full { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full { - width: calc(100vw - 48px); } - .box__container--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full-horizontal { - width: calc(100vw - 48px); } - .app--centered .box__container > .box { - width: 100%; - max-width: 960px; - margin-left: auto; - margin-right: auto; } - @media screen and (max-width: 44.9375em) { - .app--centered .box__container > .box { - padding-left: 0px; - padding-right: 0px; } } - .box--wrap { - flex-wrap: wrap; } .box--pad-none { padding: 0px; } .box--pad-small { @@ -1167,180 +1108,255 @@ article:not(.article) { .box--pad-vertical-large { padding-top: 48px; padding-bottom: 48px; } - .box--full { - position: relative; - max-width: 100%; - width: 100vw; - min-height: 100vh; - height: 100%; } - .layer__container .box--full { - width: calc(100vw - 48px); } - .box--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box--full-horizontal { - width: calc(100vw - 48px); } - .box--full-vertical { - min-height: 100vh; } - .box--direction-row { - flex-direction: row; } - .box--direction-row.box--reverse { - flex-direction: row-reverse; } - .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 12px; } - html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 0; - margin-left: 12px; } - .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 24px; } - html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 0; - margin-left: 24px; } - .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 48px; } - html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 0; - margin-left: 48px; } - @media screen and (max-width: 44.9375em) { - .box--direction-row.box--responsive { - flex-direction: column; } - .box--direction-row.box--responsive.box--reverse { - flex-direction: column-reverse; } } - .box--direction-column { - flex-direction: column; } - .box--direction-column.box--reverse { - flex-direction: column-reverse; } - .box--direction-column > .header.box--direction-row, - .box--direction-column > .footer.box--direction-row, - .box--direction-column > .header__container--fixed { - flex: 0 0 auto; } - .box--direction-column.box--pad-between-small > *:not(:last-child) { - margin-bottom: 12px; } - .box--direction-column.box--pad-between-medium > *:not(:last-child) { - margin-bottom: 24px; } - .box--direction-column.box--pad-between-large > *:not(:last-child) { - margin-bottom: 48px; } - .box--justify-start { - justify-content: flex-start; } - .box--justify-center { - justify-content: center; } - .box--justify-between { - justify-content: space-between; } - .box--justify-end { - justify-content: flex-end; } - .box--align-start { - align-items: flex-start; } - .box--align-center { - align-items: center; } - .box--align-end { - align-items: flex-end; } - .box--separator-top, .box--separator-horizontal, .box--separator-all { - border-top: 1px solid #ccc; } - .box--separator-bottom, .box--separator-horizontal, .box--separator-all { - border-bottom: 1px solid #ccc; } - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: 1px solid #ccc; } - @media screen and (max-width: 44.9375em) { - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: none; - border-bottom: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: none; - border-bottom: 1px solid #ccc; } } - [class*="background-color-index-"] .box[class*="box--separator"] { - border-color: #eee; } - .box--text-align-left { - text-align: left; } - .box--text-align-center { - text-align: center; } - .box--text-align-right { - text-align: right; } .box > .flex-grow-1, .box > .flex { flex-grow: 1; } - .box--direction-down, .box--direction-up { - flex-direction: column; } - .box--direction-left { - justify-content: flex-end; } - .box--flush { - padding: 0px; } + .box > .no-flex { + flex: 0 0 auto; } + +.box__texture { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; + overflow: hidden; } + +.box__container { + padding-left: 24px; + padding-right: 24px; } + .app--centered .box__container > .box { + width: 100%; + max-width: 960px; + margin-left: auto; + margin-right: auto; } + @media screen and (max-width: 44.9375em) { + .app--centered .box__container > .box { + padding-left: 0px; + padding-right: 0px; } } + +.box__container--full { + max-width: 100%; + width: 100vw; } + +.box__container--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--wrap { + flex-wrap: wrap; } + +.box--full { + position: relative; + max-width: 100%; + width: 100vw; + min-height: 100vh; + height: 100%; } + +.box--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--full-vertical { + min-height: 100vh; } + +.box--direction-row { + flex-direction: row; } + .box--direction-row.box--reverse { + flex-direction: row-reverse; } + .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 12px; } + html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 0; + margin-left: 12px; } + .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 24px; } + html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 0; + margin-left: 24px; } + .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 48px; } + html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 0; + margin-left: 48px; } + @media screen and (max-width: 44.9375em) { + .box--direction-row.box--responsive { + flex-direction: column; } + .box--direction-row.box--responsive:not(.box--justify-center) { + align-items: stretch; } + .box--direction-row.box--responsive.box--reverse { + flex-direction: column-reverse; } } + +.box--direction-column { + flex-direction: column; } + .box--direction-column.box--reverse { + flex-direction: column-reverse; } + .box--direction-column > .header.box--direction-row, + .box--direction-column > .footer.box--direction-row, + .box--direction-column > .header__container--fixed { + flex: 0 0 auto; } + .box--direction-column.box--pad-between-small > *:not(:last-child) { + margin-bottom: 12px; } + .box--direction-column.box--pad-between-medium > *:not(:last-child) { + margin-bottom: 24px; } + .box--direction-column.box--pad-between-large > *:not(:last-child) { + margin-bottom: 48px; } + +.box--justify-start { + justify-content: flex-start; } + +.box--justify-center { + justify-content: center; } + +.box--justify-between { + justify-content: space-between; } + +.box--justify-end { + justify-content: flex-end; } + +.box--align-start { + align-items: flex-start; } + +.box--align-center { + align-items: center; } + +.box--align-end { + align-items: flex-end; } + +.box--align-baseline { + align-items: baseline; } + +.box--align-content-start { + align-content: flex-start; } + +.box--align-content-end { + align-content: flex-end; } + +.box--align-content-center { + align-content: center; } + +.box--align-content-between { + align-content: space-between; } + +.box--align-content-around { + align-content: space-around; } + +.box--separator-top, +.box--separator-horizontal, +.box--separator-all { + border-top: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-bottom, +.box--separator-horizontal, +.box--separator-all { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-left, +.box--separator-vertical, +.box--separator-all { + border-left: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-right, +.box--separator-vertical, +.box--separator-all { + border-right: 1px solid rgba(0, 0, 0, 0.15); } + +[class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .box[class*="box--separator"] { + border-color: rgba(255, 255, 255, 0.5); } + +.box--text-align-left { + text-align: left; } + +.box--text-align-center { + text-align: center; } + +.box--text-align-right { + text-align: right; } + +.box--clickable { + cursor: pointer; } .brick { - box-shadow: 1px 1px 5px #eee; padding: 24px; position: relative; - margin: 0 12px 12px 0; float: left; + margin: 0 12px 12px 0; max-width: calc(100% - 12px); } - .brick .brick--label { + .brick__label { position: absolute; top: 0; right: 0; left: 0; - bottom: 0; } - .brick .brick--label span { + bottom: 0; + overflow: hidden; } + .brick__label span { text-transform: uppercase; text-decoration: none; color: #333; position: absolute; left: 24px; bottom: 24px; } + .brick__background { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; } + .brick__container { + position: absolute; + top: 24px; + bottom: 24px; + left: 24px; + right: 24px; + max-width: calc(100% - 48px); } + .brick--clickable:hover, .brick--clickable:focus { + z-index: 1; + transition: transform 0.4s; + transform: scale(1.05); + outline: none; } .brick[class*="background-color-index-"] span { color: #fff; } - -.brick--1-1 { - width: calc(25% - 12px); } - .brick--1-1:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-1 { - width: calc(50% - 12px); } } - -.brick--1-2 { - width: calc(25% - 12px); } - .brick--1-2:after { - padding-top: calc(200% + 60px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-2 { - width: calc(50% - 12px); } } - -.brick--2-1 { - width: calc(50% - 12px); } - .brick--2-1:after { - padding-top: calc(50% - 30px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-1 { - width: calc(100% - 12px); } } - -.brick--2-2 { - width: calc(50% - 12px); } - .brick--2-2:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-2 { - width: calc(100% - 12px); } } - -.brick--content-wrapper { - position: absolute; - top: 24px; - bottom: 24px; - left: 24px; - right: 24px; - max-width: calc(100% - 48px); } - -input[type="button"], -input[type="submit"], -button:not(.button) { + .brick--1-1 { + width: calc(25% - 12px); } + .brick--1-1:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-1 { + width: calc(50% - 12px); } } + .brick--1-2 { + width: calc(25% - 12px); } + .brick--1-2:after { + padding-top: calc(200% + 60px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-2 { + width: calc(50% - 12px); } } + .brick--2-1 { + width: calc(50% - 12px); } + .brick--2-1:after { + padding-top: calc(50% - 30px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-1 { + width: calc(100% - 12px); } } + .brick--2-2 { + width: calc(50% - 12px); } + .brick--2-2:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-2 { + width: calc(100% - 12px); } } + +.grommet input[type="button"], +.grommet input[type="submit"], +.grommet button:not(.button) { padding: 6px 22px; background-color: transparent; border: 2px solid #01a982; @@ -1355,17 +1371,22 @@ button:not(.button) { outline: none; min-width: 120px; max-width: 384px; } - input[type="button"]:focus:not(.button--disabled), - input[type="submit"]:focus:not(.button--disabled), - button:not(.button):focus:not(.button--disabled) { + .grommet input[type="button"]:focus:not(.button--disabled), + .grommet input[type="submit"]:focus:not(.button--disabled), + .grommet button:not(.button):focus:not(.button--disabled) { border-color: #2AD2C9; box-shadow: 0 0 1px 1px #2AD2C9; } @media screen and (min-width: 45em) { - input[type="button"], - input[type="submit"], - button:not(.button) { + .grommet input[type="button"], + .grommet input[type="submit"], + .grommet button:not(.button) { transition: 0.1s ease-in-out; } } +.grommet a.button { + text-decoration: none; } + .grommet a.button:hover { + text-decoration: none; } + .button { padding: 6px 22px; background-color: transparent; @@ -1387,104 +1408,131 @@ button:not(.button) { @media screen and (min-width: 45em) { .button { transition: 0.1s ease-in-out; } } - .button__icon { - display: inline-block; - padding: 12px; } - .button--primary { - border-color: #01a982; - background-color: #01a982; + +.button__icon { + display: inline-block; + padding: 12px; } + +.button--primary { + border-color: #01a982; + background-color: #01a982; + color: #fff; } + .button--primary:hover:not(.button--disabled) { color: #fff; } - .button--secondary { - border-color: rgba(51, 51, 51, 0.6); } - .button--accent { + .button--primary:hover:not(.button--disabled) .button__icon .control-icon { + fill: #fff; + stroke: #fff; } + +.button--secondary { + border-color: rgba(51, 51, 51, 0.6); } + +.button--accent { + border-color: #ff8d6d; } + +.button--plain { + border: none; + padding: 0; + width: auto; + height: auto; + min-width: 0; + max-width: none; + font-weight: inherit; } + .button--plain.button--primary { + background-color: #01a982; } + .button--plain > span:not(.button__icon):first-child { + margin-left: 12px; } + .button--plain > span:not(.button__icon):last-child { + margin-right: 12px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover .control-icon { + fill: #fff; + stroke: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary) { + border-color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary).button--accent { border-color: #ff8d6d; } - .button--icon { - border: none; - padding: 0; - width: auto; - height: auto; - min-width: 0; - max-width: none; } - .button--icon.button--primary { - background-color: #01a982; } - .button--icon > span:not(.button__icon) { - vertical-align: middle; } - .button--icon > span:not(.button__icon):first-child { - margin-left: 12px; } - .button--icon > span:not(.button__icon):last-child { - margin-right: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover .control-icon { - fill: #fff; - stroke: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary) { - border-color: #eee; - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary).button--accent { - border-color: #ff8d6d; } - .button--disabled { - opacity: 0.3; - cursor: default; } - .button--fill { - width: 100%; - max-width: none; - flex-grow: 1; } + +.button--disabled { + opacity: 0.3; + cursor: default; } + +.button--icon, +.button:not(.button--fill) { + flex: 0 0 auto; } + +.button--fill { + width: 100%; + max-width: none; + flex-grow: 1; } .calendar { position: relative; display: inline-block; min-width: 288px; } - .calendar__input { - width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .calendar__input:focus { - padding-right: 59px; } - .calendar__control { - position: absolute; - top: 50%; - right: 12px; - transform: translateY(-50%); } - .calendar__drop { - border-top-left-radius: 0px; - border-top-right-radius: 0px; } - .calendar__title { - text-align: center; } - .calendar__grid { - width: 100%; - padding: 12px; } - .calendar__grid table { - width: 100%; } - .calendar__grid th, - .calendar__grid td { - text-align: center; - padding: 6px; } - .calendar__grid th { - color: #777; - font-weight: normal; } - .calendar__day { - display: inline-block; - cursor: pointer; - width: 24px; - height: 24px; - transition: background-color 0.3s; } - .calendar__day:hover { - background-color: rgba(0, 0, 0, 0.1); } - .calendar__day--other-month { - color: #777; } - .calendar__day--active { - background-color: #01a982; - color: #dbdbdb; } - .calendar--active .calendar__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + +.calendar__input { + width: 100%; + height: 100%; + display: block; + padding-right: 60px; } + .calendar__input:focus { + padding-right: 59px; } + .calendar__input::-ms-clear { + display: none; } + +.calendar__control { + position: absolute; + top: 50%; + right: 12px; + transform: translateY(-50%); } + +.calendar__drop { + border-top-left-radius: 0px; + border-top-right-radius: 0px; } + +.calendar__title { + text-align: center; } + +.calendar__grid { + width: 100%; + padding: 12px; } + .calendar__grid table { + width: 100%; } + .calendar__grid th, + .calendar__grid td { + text-align: center; + padding: 6px; } + .calendar__grid th { + color: #777; + font-weight: normal; } + +.calendar__day { + display: inline-block; + cursor: pointer; + width: 24px; + height: 24px; + transition: background-color 0.3s; } + .calendar__day:hover { + background-color: rgba(221, 221, 221, 0.5); } + +.calendar__day--other-month { + color: #777; } + +.calendar__day--active { + background-color: #01a982; + color: rgba(255, 255, 255, 0.85); } + +.calendar--active .calendar__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } @-webkit-keyframes carousel-reveal { 0% { @@ -1518,8 +1566,11 @@ button:not(.button) { display: flex; max-width: none; transition: all 0.8s; } - .carousel__item > * { - width: 100%; } + .carousel .tiles.box--direction-row > .tile.carousel__item { + flex: 1 1 100%; + box-sizing: border-box; } + .carousel .tiles.box--direction-row > .tile.carousel__item > * { + width: 100%; } .carousel__arrow { -webkit-animation: carousel-reveal 1s; animation: carousel-reveal 1s; @@ -1532,8 +1583,10 @@ button:not(.button) { filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); -webkit-filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); } .carousel__arrow .control-icon polyline { - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); stroke-width: 1px; } + .carousel__arrow:hover .control-icon polyline { + stroke: #fff; } .carousel__arrow--next { right: 0; } .carousel__arrow--prev { @@ -1555,7 +1608,7 @@ button:not(.button) { display: inline-block; width: 36px; height: 36px; - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); fill: transparent; cursor: pointer; filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); @@ -1569,6 +1622,12 @@ button:not(.button) { opacity: 0; -webkit-animation: carousel-hide 1s; animation: carousel-hide 1s; } + .carousel img { + -webkit-user-drag: none; + -khtml-user-drag: none; + -moz-user-drag: none; + -o-user-drag: none; + user-drag: none; } .carousel-controls__control { width: 36px; @@ -1600,13 +1659,11 @@ button:not(.button) { position: relative; display: block; } .chart__grid { - stroke: #ccc; } + stroke: rgba(0, 0, 0, 0.15); } .chart__graphic { width: 100%; height: 192px; max-height: calc(100vh - 144px); } - .chart__graphic:focus { - outline: #2AD2C9 solid 1px; } @media screen and (min-width: 45em) { .chart__values g { -webkit-animation: reveal-chart 1.5s; @@ -1649,10 +1706,12 @@ button:not(.button) { stroke: #434343; } .chart__values-line.color-index-grey-4, .chart__values-line.color-index-grey-8 { stroke: #666666; } - .chart__values-line.color-index-accent-1, .chart__values-line.color-index-accent-3 { + .chart__values-line.color-index-accent-1, .chart__values-line.color-index-accent-4 { stroke: #2AD2C9; } - .chart__values-line.color-index-accent-2, .chart__values-line.color-index-accent-4 { + .chart__values-line.color-index-accent-2, .chart__values-line.color-index-accent-5 { stroke: #614767; } + .chart__values-line.color-index-accent-3, .chart__values-line.color-index-accent-6 { + stroke: #ff8d6d; } .chart__values-line.color-index-light-1, .chart__values-line.color-index-light-3 { stroke: #ffffff; } .chart__values-line.color-index-light-2, .chart__values-line.color-index-light-4 { @@ -1701,10 +1760,12 @@ button:not(.button) { fill: #998e88; } .chart__values-bar--active.color-index-graph-4, .chart__values-bar--active.color-index-graph-8, .chart__values-area--active.color-index-graph-4, .chart__values-area--active.color-index-graph-8 { fill: #8c6694; } - .chart__values-bar--active.color-index-accent-1, .chart__values-bar--active.color-index-accent-3, .chart__values-area--active.color-index-accent-1, .chart__values-area--active.color-index-accent-3 { + .chart__values-bar--active.color-index-accent-1, .chart__values-bar--active.color-index-accent-4, .chart__values-area--active.color-index-accent-1, .chart__values-area--active.color-index-accent-4 { fill: #2AD2C9; } - .chart__values-bar--active.color-index-accent-2, .chart__values-bar--active.color-index-accent-4, .chart__values-area--active.color-index-accent-2, .chart__values-area--active.color-index-accent-4 { + .chart__values-bar--active.color-index-accent-2, .chart__values-bar--active.color-index-accent-5, .chart__values-area--active.color-index-accent-2, .chart__values-area--active.color-index-accent-5 { fill: #614767; } + .chart__values-bar--active.color-index-accent-3, .chart__values-bar--active.color-index-accent-6, .chart__values-area--active.color-index-accent-3, .chart__values-area--active.color-index-accent-6 { + fill: #ff8d6d; } .chart__values-bar--active.color-index-grey-1, .chart__values-bar--active.color-index-grey-5, .chart__values-area--active.color-index-grey-1, .chart__values-area--active.color-index-grey-5 { fill: #333333; } .chart__values-bar--active.color-index-grey-2, .chart__values-bar--active.color-index-grey-6, .chart__values-area--active.color-index-grey-2, .chart__values-area--active.color-index-grey-6 { @@ -1752,10 +1813,12 @@ button:not(.button) { stroke: #434343; } .chart__values-point.color-index-grey-4, .chart__values-point.color-index-grey-8 { stroke: #666666; } - .chart__values-point.color-index-accent-1, .chart__values-point.color-index-accent-3 { + .chart__values-point.color-index-accent-1, .chart__values-point.color-index-accent-4 { stroke: #2AD2C9; } - .chart__values-point.color-index-accent-2, .chart__values-point.color-index-accent-4 { + .chart__values-point.color-index-accent-2, .chart__values-point.color-index-accent-5 { stroke: #614767; } + .chart__values-point.color-index-accent-3, .chart__values-point.color-index-accent-6 { + stroke: #ff8d6d; } .chart__values-point.color-index-light-1, .chart__values-point.color-index-light-3 { stroke: #ffffff; } .chart__values-point.color-index-light-2, .chart__values-point.color-index-light-4 { @@ -1798,10 +1861,12 @@ button:not(.button) { stroke: #434343; } .chart__values--loading.color-index-grey-4, .chart__values--loading.color-index-grey-8 { stroke: #666666; } - .chart__values--loading.color-index-accent-1, .chart__values--loading.color-index-accent-3 { + .chart__values--loading.color-index-accent-1, .chart__values--loading.color-index-accent-4 { stroke: #2AD2C9; } - .chart__values--loading.color-index-accent-2, .chart__values--loading.color-index-accent-4 { + .chart__values--loading.color-index-accent-2, .chart__values--loading.color-index-accent-5 { stroke: #614767; } + .chart__values--loading.color-index-accent-3, .chart__values--loading.color-index-accent-6 { + stroke: #ff8d6d; } .chart__values--loading.color-index-light-1, .chart__values--loading.color-index-light-3 { stroke: #ffffff; } .chart__values--loading.color-index-light-2, .chart__values--loading.color-index-light-4 { @@ -1868,10 +1933,12 @@ button:not(.button) { fill: #998e88; } .chart__cursor-point.color-index-graph-4, .chart__cursor-point.color-index-graph-8 { fill: #8c6694; } - .chart__cursor-point.color-index-accent-1, .chart__cursor-point.color-index-accent-3 { + .chart__cursor-point.color-index-accent-1, .chart__cursor-point.color-index-accent-4 { fill: #2AD2C9; } - .chart__cursor-point.color-index-accent-2, .chart__cursor-point.color-index-accent-4 { + .chart__cursor-point.color-index-accent-2, .chart__cursor-point.color-index-accent-5 { fill: #614767; } + .chart__cursor-point.color-index-accent-3, .chart__cursor-point.color-index-accent-6 { + fill: #ff8d6d; } .chart__cursor-point.color-index-grey-1, .chart__cursor-point.color-index-grey-5 { fill: #333333; } .chart__cursor-point.color-index-grey-2, .chart__cursor-point.color-index-grey-6 { @@ -2006,10 +2073,12 @@ button:not(.button) { fill: #998e88; } .chart--sparkline .chart__values-bar.color-index-graph-4, .chart--sparkline .chart__values-bar.color-index-graph-8, .chart--sparkline .chart__values-area.color-index-graph-4, .chart--sparkline .chart__values-area.color-index-graph-8 { fill: #8c6694; } - .chart--sparkline .chart__values-bar.color-index-accent-1, .chart--sparkline .chart__values-bar.color-index-accent-3, .chart--sparkline .chart__values-area.color-index-accent-1, .chart--sparkline .chart__values-area.color-index-accent-3 { + .chart--sparkline .chart__values-bar.color-index-accent-1, .chart--sparkline .chart__values-bar.color-index-accent-4, .chart--sparkline .chart__values-area.color-index-accent-1, .chart--sparkline .chart__values-area.color-index-accent-4 { fill: #2AD2C9; } - .chart--sparkline .chart__values-bar.color-index-accent-2, .chart--sparkline .chart__values-bar.color-index-accent-4, .chart--sparkline .chart__values-area.color-index-accent-2, .chart--sparkline .chart__values-area.color-index-accent-4 { + .chart--sparkline .chart__values-bar.color-index-accent-2, .chart--sparkline .chart__values-bar.color-index-accent-5, .chart--sparkline .chart__values-area.color-index-accent-2, .chart--sparkline .chart__values-area.color-index-accent-5 { fill: #614767; } + .chart--sparkline .chart__values-bar.color-index-accent-3, .chart--sparkline .chart__values-bar.color-index-accent-6, .chart--sparkline .chart__values-area.color-index-accent-3, .chart--sparkline .chart__values-area.color-index-accent-6 { + fill: #ff8d6d; } .chart--sparkline .chart__values-bar.color-index-grey-1, .chart--sparkline .chart__values-bar.color-index-grey-5, .chart--sparkline .chart__values-area.color-index-grey-1, .chart--sparkline .chart__values-area.color-index-grey-5 { fill: #333333; } .chart--sparkline .chart__values-bar.color-index-grey-2, .chart--sparkline .chart__values-bar.color-index-grey-6, .chart--sparkline .chart__values-area.color-index-grey-2, .chart--sparkline .chart__values-area.color-index-grey-6 { @@ -2029,255 +2098,249 @@ button:not(.button) { cursor: pointer; } .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__label { color: #fff; } .check-box > :first-child { margin-right: 12px; } html.rtl .check-box > :first-child { margin-right: 0; margin-left: 12px; } - .check-box__input { - opacity: 0; - position: absolute; } - .check-box__input:checked + .check-box__control { - border-color: #01a982; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control { - border-color: #fff; } - .check-box__input:checked + .check-box__control .check-box__control-check { - display: block; } - .check-box__input:checked + .check-box__control + .check-box__label { - color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control + .check-box__label { - color: #fff; } - .check-box__input:focus + .check-box__control { - border-color: #2AD2C9; - box-shadow: 0 0 1px 1px #2AD2C9; } - .check-box__control { - position: relative; - top: -1px; - display: inline-block; - width: 24px; - height: 24px; - vertical-align: middle; - background-color: inherit; - border: 2px solid #999; - border-radius: 0px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control { - border-color: #dbdbdb; } - .check-box__control-check { - position: absolute; - top: -2px; - left: -2px; - display: none; - width: 24px; - height: 24px; - stroke-width: 4px; - stroke: #01a982; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control-check { - stroke: #fff; } - .check-box__label { - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__label { - color: #dbdbdb; } - .check-box--disabled .check-box__control { - opacity: 0.5; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - background-color: #fff; + +.check-box__input { + opacity: 0; + position: absolute; } + .check-box__input:checked + .check-box__control { + border-color: #01a982; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control { border-color: #fff; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + .check-box__input:checked + .check-box__control .check-box__control-check { + display: block; } + .check-box__input:checked + .check-box__control + .check-box__label { + color: #333; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control + .check-box__label { + color: #fff; } + .check-box__input:focus + .check-box__control { + border-color: #2AD2C9; + box-shadow: 0 0 1px 1px #2AD2C9; } + +.check-box__control { + position: relative; + top: -1px; + display: inline-block; + width: 24px; + height: 24px; + vertical-align: middle; + background-color: inherit; + border: 2px solid #999; + border-radius: 0px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control { + border-color: rgba(255, 255, 255, 0.7); } + +.check-box__control-check { + position: absolute; + top: -2px; + left: -2px; + display: none; + width: 24px; + height: 24px; + stroke-width: 4px; + stroke: #01a982; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control-check { + stroke: #fff; } + +.check-box__label { + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__label { + color: rgba(255, 255, 255, 0.85); } + +.check-box--disabled .check-box__control { + opacity: 0.5; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle .check-box__control { + width: 48px; + height: 24px; + border-radius: 24px; + background-color: rgba(51, 51, 51, 0.2); + border: none; + transition: background-color 0.3s; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + .check-box--toggle .check-box__control:after { content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { - background-color: #fff; - border-color: #fff; } - .check-box--toggle .check-box__control { - width: 48px; - height: 24px; + display: block; + position: absolute; + top: -2px; + left: 0px; + width: 28px; + height: 28px; + background-color: #fff; + border: 2px solid #999; border-radius: 24px; - background-color: rgba(51, 51, 51, 0.2); - border: none; - transition: background-color 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - .check-box--toggle .check-box__control:after { - content: ""; - display: block; - position: absolute; - top: -2px; - left: 0px; - width: 28px; - height: 28px; - background-color: #fff; - border: 2px solid #999; - border-radius: 24px; - transition: margin-left 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control:after { - background-color: transparent; - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: #01a982; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - stroke: transparent; } - .check-box--toggle .check-box__input:checked + .check-box__control:after { - content: ""; - background-color: #fff; - border-color: #01a982; - margin-left: 24px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - display: none; } + transition: margin-left 0.3s; + box-sizing: border-box; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control:after { + background-color: transparent; + border-color: rgba(255, 255, 255, 0.7); } + +.check-box--toggle .check-box__input:checked + .check-box__control { + background-color: #01a982; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + stroke: transparent; } + .check-box--toggle .check-box__input:checked + .check-box__control:after { + content: ""; + background-color: #fff; + border-color: #01a982; + margin-left: 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { + border-color: rgba(255, 255, 255, 0.7); } + .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + display: none; } -.background-color-index-dark { +[class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) { color: #fff; } +.background-color-index-brand { + background-color: #01a982; } + .background-color-index-neutral-1, .background-color-index-neutral-5 { - background-color: #425563; - color: #fff; } + background-color: #425563; } .background-color-index-neutral-1-a, .background-color-index-neutral-5-a { - background-color: rgba(66, 85, 99, 0.8); - color: #fff; } + background-color: rgba(66, 85, 99, 0.8); } .background-color-index-neutral-2, .background-color-index-neutral-6 { - background-color: #5F7A76; - color: #fff; } + background-color: #5F7A76; } .background-color-index-neutral-2-a, .background-color-index-neutral-6-a { - background-color: rgba(95, 122, 118, 0.8); - color: #fff; } + background-color: rgba(95, 122, 118, 0.8); } .background-color-index-neutral-3, .background-color-index-neutral-7 { - background-color: #80746E; - color: #fff; } + background-color: #80746E; } .background-color-index-neutral-3-a, .background-color-index-neutral-7-a { - background-color: rgba(128, 116, 110, 0.8); - color: #fff; } + background-color: rgba(128, 116, 110, 0.8); } .background-color-index-neutral-4, .background-color-index-neutral-8 { - background-color: #767676; - color: #fff; } + background-color: #767676; } .background-color-index-neutral-4-a, .background-color-index-neutral-8-a { - background-color: rgba(118, 118, 118, 0.8); - color: #fff; } + background-color: rgba(118, 118, 118, 0.8); } .background-color-index-accent-1, -.background-color-index-accent-3 { - background-color: #2AD2C9; - color: #fff; } +.background-color-index-accent-4 { + background-color: #2AD2C9; } .background-color-index-accent-1-a, -.background-color-index-accent-3-a { - background-color: rgba(42, 210, 201, 0.8); - color: #fff; } +.background-color-index-accent-4-a { + background-color: rgba(42, 210, 201, 0.8); } .background-color-index-accent-2, -.background-color-index-accent-4 { - background-color: #614767; - color: #fff; } +.background-color-index-accent-5 { + background-color: #614767; } .background-color-index-accent-2-a, -.background-color-index-accent-4-a { - background-color: rgba(97, 71, 103, 0.8); - color: #fff; } +.background-color-index-accent-5-a { + background-color: rgba(97, 71, 103, 0.8); } + +.background-color-index-accent-3, +.background-color-index-accent-6 { + background-color: #ff8d6d; } + +.background-color-index-accent-3-a, +.background-color-index-accent-6-a { + background-color: rgba(255, 141, 109, 0.8); } .background-color-index-grey-1, .background-color-index-grey-5 { - background-color: #333333; - color: #fff; } + background-color: #333333; } .background-color-index-grey-1-a, .background-color-index-grey-5-a { - background-color: rgba(51, 51, 51, 0.8); - color: #fff; } + background-color: rgba(51, 51, 51, 0.8); } .background-color-index-grey-2, .background-color-index-grey-6 { - background-color: #3B3B3B; - color: #fff; } + background-color: #3B3B3B; } .background-color-index-grey-2-a, .background-color-index-grey-6-a { - background-color: rgba(59, 59, 59, 0.8); - color: #fff; } + background-color: rgba(59, 59, 59, 0.8); } .background-color-index-grey-3, .background-color-index-grey-7 { - background-color: #434343; - color: #fff; } + background-color: #434343; } .background-color-index-grey-3-a, .background-color-index-grey-7-a { - background-color: rgba(67, 67, 67, 0.8); - color: #fff; } + background-color: rgba(67, 67, 67, 0.8); } .background-color-index-grey-4, .background-color-index-grey-8 { - background-color: #666666; - color: #fff; } + background-color: #666666; } .background-color-index-grey-4-a, .background-color-index-grey-8-a { - background-color: rgba(102, 102, 102, 0.8); - color: #fff; } + background-color: rgba(102, 102, 102, 0.8); } .background-color-index-graph-1, .background-color-index-graph-5 { - background-color: #617c91; - color: #fff; } + background-color: #617c91; } .background-color-index-graph-2, .background-color-index-graph-6 { - background-color: #94aba8; - color: #fff; } + background-color: #94aba8; } .background-color-index-graph-3, .background-color-index-graph-7 { - background-color: #998e88; - color: #fff; } + background-color: #998e88; } .background-color-index-graph-4, .background-color-index-graph-8 { - background-color: #8c6694; - color: #fff; } + background-color: #8c6694; } .background-color-index-critical { - background-color: #F04953; - color: #fff; } + background-color: #F04953; } .background-color-index-error { - background-color: #F04953; - color: #fff; } + background-color: #F04953; } .background-color-index-warning { background-color: #FFD144; } .background-color-index-ok { - background-color: #01a982; - color: #fff; } + background-color: #01a982; } .background-color-index-unknown { background-color: #CCCCCC; } @@ -2287,13 +2350,11 @@ button:not(.button) { .background-color-index-light-1, .background-color-index-light-3 { - background-color: #ffffff; - color: #333; } + background-color: #ffffff; } .background-color-index-light-2, .background-color-index-light-4 { - background-color: #f5f5f5; - color: #333; } + background-color: #f5f5f5; } .center-column { padding-left: 24px; @@ -2304,6 +2365,22 @@ button:not(.button) { margin-left: auto; margin-right: auto; } +.columns { + display: flex; + flex-direction: row; + width: 100%; } + +.columns__column { + flex: 0 0 192px; + display: flex; + flex-direction: column; } + +.columns--small > .columns__column { + flex-basis: 96px; } + +.columns--large > .columns__column { + flex-basis: 384px; } + @media screen and (min-width: 45em) { .dashboard { height: calc(100vh - 96px); } } @@ -2313,249 +2390,317 @@ button:not(.button) { height: calc(100vh - 48px); } } .distribution { - position: relative; - display: block; } - .distribution__graphic { - width: 100%; - height: 192px; - max-height: calc(100vh - 144px); } - .distribution__graphic:focus { - outline: #2AD2C9 solid 1px; } - .distribution__background { - fill: #f5f5f5; } - .distribution__item--clickable { - cursor: pointer; } - .distribution__item-box.color-index-unset { - fill: #ddd; } - .distribution__item-box.color-index-brand { - fill: #01a982; } - .distribution__item-box.color-index-critical { - fill: #F04953; } - .distribution__item-box.color-index-error { - fill: #F04953; } - .distribution__item-box.color-index-warning { - fill: #FFD144; } - .distribution__item-box.color-index-ok { - fill: #01a982; } - .distribution__item-box.color-index-unknown { - fill: #CCCCCC; } - .distribution__item-box.color-index-disabled { - fill: #CCCCCC; } - .distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-5 { - fill: #617c91; } - .distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-6 { - fill: #94aba8; } - .distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-7 { - fill: #998e88; } - .distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-8 { - fill: #8c6694; } - .distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-3 { - fill: #2AD2C9; } - .distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-4 { - fill: #614767; } - .distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-5 { - fill: #333333; } - .distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-6 { - fill: #3B3B3B; } - .distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-7 { - fill: #434343; } - .distribution__item-box.color-index-grey-4, .distribution__item-box.color-index-grey-8 { - fill: #666666; } - .distribution__item-icons.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__item-icons.color-index-unset { - stroke: #ddd; } - .distribution__item-icons.color-index-brand { - stroke: #01a982; } - .distribution__item-icons.color-index-critical { - stroke: #F04953; } - .distribution__item-icons.color-index-error { - stroke: #F04953; } - .distribution__item-icons.color-index-warning { - stroke: #FFD144; } - .distribution__item-icons.color-index-ok { - stroke: #01a982; } - .distribution__item-icons.color-index-unknown { - stroke: #CCCCCC; } - .distribution__item-icons.color-index-disabled { - stroke: #CCCCCC; } - .distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-5 { - stroke: #617c91; } - .distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-6 { + position: relative; } + +.distribution__graphic { + width: 100%; + height: 192px; + max-height: calc(100vh - 144px); } + +.distribution__background { + fill: #f5f5f5; } + +.distribution__item--clickable { + cursor: pointer; } + +.distribution__item-box.color-index-unset { + fill: #ddd; } + +.distribution__item-box.color-index-brand { + fill: #01a982; } + +.distribution__item-box.color-index-critical { + fill: #F04953; } + +.distribution__item-box.color-index-error { + fill: #F04953; } + +.distribution__item-box.color-index-warning { + fill: #FFD144; } + +.distribution__item-box.color-index-ok { + fill: #01a982; } + +.distribution__item-box.color-index-unknown { + fill: #CCCCCC; } + +.distribution__item-box.color-index-disabled { + fill: #CCCCCC; } + +.distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-5 { + fill: #617c91; } + +.distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-6 { + fill: #94aba8; } + +.distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-7 { + fill: #998e88; } + +.distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-8 { + fill: #8c6694; } + +.distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-4 { + fill: #2AD2C9; } + +.distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-5 { + fill: #614767; } + +.distribution__item-box.color-index-accent-3, .distribution__item-box.color-index-accent-6 { + fill: #ff8d6d; } + +.distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-5 { + fill: #333333; } + +.distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-6 { + fill: #3B3B3B; } + +.distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-7 { + fill: #434343; } + +.distribution__item-box.color-index-grey-4, .distribution__item-box.color-index-grey-8 { + fill: #666666; } + +.distribution__item-icons.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.distribution__item-icons.color-index-unset { + stroke: #ddd; } + +.distribution__item-icons.color-index-brand { + stroke: #01a982; } + +.distribution__item-icons.color-index-critical { + stroke: #F04953; } + +.distribution__item-icons.color-index-error { + stroke: #F04953; } + +.distribution__item-icons.color-index-warning { + stroke: #FFD144; } + +.distribution__item-icons.color-index-ok { + stroke: #01a982; } + +.distribution__item-icons.color-index-unknown { + stroke: #CCCCCC; } + +.distribution__item-icons.color-index-disabled { + stroke: #CCCCCC; } + +.distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-5 { + stroke: #617c91; } + +.distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-6 { + stroke: #94aba8; } + +.distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-7 { + stroke: #998e88; } + +.distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-8 { + stroke: #8c6694; } + +.distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-5 { + stroke: #333333; } + +.distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-6 { + stroke: #3B3B3B; } + +.distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-7 { + stroke: #434343; } + +.distribution__item-icons.color-index-grey-4, .distribution__item-icons.color-index-grey-8 { + stroke: #666666; } + +.distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-4 { + stroke: #2AD2C9; } + +.distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-5 { + stroke: #614767; } + +.distribution__item-icons.color-index-accent-3, .distribution__item-icons.color-index-accent-6 { + stroke: #ff8d6d; } + +.distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + stroke: #ffffff; } + +.distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + stroke: #f5f5f5; } + +.distribution__label { + position: absolute; + font-family: "Metric", Arial, sans-serif; + overflow: hidden; + text-align: left; + pointer-events: none; } + .distribution__label.color-index-brand { + color: #fff; } + .distribution__label.color-index-critical { + color: #fff; } + .distribution__label.color-index-error { + color: #fff; } + .distribution__label.color-index-ok { + color: #fff; } + .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-5 { + color: #fff; } + .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-6 { + color: #fff; } + .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-7 { + color: #fff; } + .distribution__label.color-index-neutral-4, .distribution__label.color-index-neutral-8 { + color: #fff; } + .distribution__label.color-index-graph-1, .distribution__label.color-index-graph-5 { + color: #fff; } + .distribution__label.color-index-graph-2, .distribution__label.color-index-graph-6 { + color: #fff; } + .distribution__label.color-index-graph-3, .distribution__label.color-index-graph-7 { + color: #fff; } + .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-8 { + color: #fff; } + .distribution__label.color-index-accent-1, .distribution__label.color-index-accent-4 { + color: #fff; } + .distribution__label.color-index-accent-2, .distribution__label.color-index-accent-5 { + color: #fff; } + .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-5 { + color: #fff; } + .distribution__label.color-index-grey-2, .distribution__label.color-index-grey-6 { + color: #fff; } + .distribution__label.color-index-grey-3, .distribution__label.color-index-grey-7 { + color: #fff; } + .distribution__label.color-index-grey-4, .distribution__label.color-index-grey-8 { + color: #fff; } + +.distribution__label-value { + display: block; + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; } + +.distribution__label-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + font-weight: normal; } + +.distribution__label-label { + display: block; } + +.distribution__label--active { + color: #333; } + +.distribution__label--thin .distribution__label-value, +.distribution__label--thin .distribution__label-label { + display: inline-block; } + +.distribution__label--small .distribution__label-value, +.distribution__label--small .distribution__label-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1; + margin-right: 4px; } + +.distribution__label--icons { + padding: 0 12px 12px 0; + background-color: rgba(255, 255, 255, 0.8); + color: #333; } + .distribution__label--icons .label-value { + line-height: 1; } + .distribution__label--icons .label-units { + color: #777; } + .distribution__label--icons .label-label { + display: block; } + +.distribution__loading-indicator { + stroke-width: 24px; } + .distribution__loading-indicator.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .distribution__loading-indicator.color-index-unset { + stroke: #ddd; } + .distribution__loading-indicator.color-index-brand { + stroke: #01a982; } + .distribution__loading-indicator.color-index-critical { + stroke: #F04953; } + .distribution__loading-indicator.color-index-error { + stroke: #F04953; } + .distribution__loading-indicator.color-index-warning { + stroke: #FFD144; } + .distribution__loading-indicator.color-index-ok { + stroke: #01a982; } + .distribution__loading-indicator.color-index-unknown { + stroke: #CCCCCC; } + .distribution__loading-indicator.color-index-disabled { + stroke: #CCCCCC; } + .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-5 { + stroke: #617c91; } + .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-6 { stroke: #94aba8; } - .distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-7 { + .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-7 { stroke: #998e88; } - .distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-8 { + .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-8 { stroke: #8c6694; } - .distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-5 { + .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-5 { stroke: #333333; } - .distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-6 { + .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-6 { stroke: #3B3B3B; } - .distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-7 { + .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-7 { stroke: #434343; } - .distribution__item-icons.color-index-grey-4, .distribution__item-icons.color-index-grey-8 { + .distribution__loading-indicator.color-index-grey-4, .distribution__loading-indicator.color-index-grey-8 { stroke: #666666; } - .distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-3 { + .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-4 { stroke: #2AD2C9; } - .distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-4 { + .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-5 { stroke: #614767; } - .distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + .distribution__loading-indicator.color-index-accent-3, .distribution__loading-indicator.color-index-accent-6 { + stroke: #ff8d6d; } + .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { stroke: #ffffff; } - .distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { stroke: #f5f5f5; } - .distribution__label { - position: absolute; - padding: 6px 12px; - font-family: "Metric", Arial, sans-serif; - overflow: hidden; - text-align: left; - pointer-events: none; } - .distribution__label.color-index-brand { - color: #fff; } - .distribution__label.color-index-critical { - color: #fff; } - .distribution__label.color-index-error { - color: #fff; } - .distribution__label.color-index-ok { - color: #fff; } - .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-5 { - color: #fff; } - .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-6 { - color: #fff; } - .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-7 { - color: #fff; } - .distribution__label.color-index-neutral-4, .distribution__label.color-index-neutral-8 { - color: #fff; } - .distribution__label.color-index-graph-1, .distribution__label.color-index-graph-5 { - color: #fff; } - .distribution__label.color-index-graph-2, .distribution__label.color-index-graph-6 { - color: #fff; } - .distribution__label.color-index-graph-3, .distribution__label.color-index-graph-7 { - color: #fff; } - .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-8 { - color: #fff; } - .distribution__label.color-index-accent-1, .distribution__label.color-index-accent-3 { - color: #fff; } - .distribution__label.color-index-accent-2, .distribution__label.color-index-accent-4 { - color: #fff; } - .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-5 { - color: #fff; } - .distribution__label.color-index-grey-2, .distribution__label.color-index-grey-6 { - color: #fff; } - .distribution__label.color-index-grey-3, .distribution__label.color-index-grey-7 { - color: #fff; } - .distribution__label.color-index-grey-4, .distribution__label.color-index-grey-8 { - color: #fff; } - .distribution__label-value { - display: block; - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; } - .distribution__label-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - font-weight: normal; } - .distribution__label-label { - display: block; } - .distribution__label--active { - color: #333; } - .distribution__label--thin .distribution__label-value, - .distribution__label--thin .distribution__label-label { - display: inline-block; } - .distribution__label--small .distribution__label-value, - .distribution__label--small .distribution__label-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1; - margin-right: 4px; } - .distribution__label--icons { - padding: 0 12px 12px 0; - background-color: rgba(255, 255, 255, 0.8); - color: #333; } - .distribution__label--icons .label-value { - line-height: 1; } - .distribution__label--icons .label-units { - color: #777; } - .distribution__label--icons .label-label { - display: block; } - .distribution__loading-indicator { - stroke-width: 24px; } - .distribution__loading-indicator.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__loading-indicator.color-index-unset { - stroke: #ddd; } - .distribution__loading-indicator.color-index-brand { - stroke: #01a982; } - .distribution__loading-indicator.color-index-critical { - stroke: #F04953; } - .distribution__loading-indicator.color-index-error { - stroke: #F04953; } - .distribution__loading-indicator.color-index-warning { - stroke: #FFD144; } - .distribution__loading-indicator.color-index-ok { - stroke: #01a982; } - .distribution__loading-indicator.color-index-unknown { - stroke: #CCCCCC; } - .distribution__loading-indicator.color-index-disabled { - stroke: #CCCCCC; } - .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-5 { - stroke: #617c91; } - .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-6 { - stroke: #94aba8; } - .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-7 { - stroke: #998e88; } - .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-8 { - stroke: #8c6694; } - .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-5 { - stroke: #333333; } - .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-6 { - stroke: #3B3B3B; } - .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-7 { - stroke: #434343; } - .distribution__loading-indicator.color-index-grey-4, .distribution__loading-indicator.color-index-grey-8 { - stroke: #666666; } - .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-3 { - stroke: #2AD2C9; } - .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-4 { - stroke: #614767; } - .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { - stroke: #ffffff; } - .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { - stroke: #f5f5f5; } - .distribution--icons .distribution__label { - padding: 0 12px 12px 0; } - .distribution--icons .distribution__label-value { - line-height: 1; } - .distribution--small .distribution__graphic { - height: 96px; } - .distribution--large .distribution__graphic { - height: 288px; } - .distribution--full { - height: 100%; } - .distribution--full .distribution__graphic { - height: 100%; - max-height: 100%; } -.drop { - position: fixed; +.distribution--icons .distribution__label { + padding: 0 12px 12px 0; } + +.distribution--icons .distribution__label-value { + line-height: 1; } + +.distribution--small .distribution__graphic { + height: 96px; } + +.distribution--large .distribution__graphic { + height: 288px; } + +.distribution--full { + height: 100%; } + .distribution--full .distribution__graphic { + width: auto; + height: auto; + max-height: 100%; + max-width: 100%; } + +.grommet.drop { + position: absolute; z-index: 20; - background-color: rgba(255, 255, 255, 0.9); - border: none; border-radius: 0px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); overflow: auto; } + .grommet.drop:not([class*="background-color-index-"]) { + background-color: rgba(248, 248, 248, 0.95); + border: none; + box-shadow: none; } .footer { min-height: 36px; line-height: 36px; width: 100%; } + .footer.box--direction-row > h1, + .footer.box--direction-row > h2, + .footer.box--direction-row > h3, + .footer.box--direction-row > h4 { + margin-bottom: 0px; } .footer__content { display: flex; justify-content: space-between; @@ -2608,9 +2753,12 @@ button:not(.button) { .footer--flush .footer__content { padding-left: 0px; padding-right: 0px; } - .footer--large .footer__content { - padding-top: 24px; - padding-bottom: 24px; } + .footer--large { + min-height: 96px; + line-height: 96px; } + .footer--small { + min-height: 24px; + line-height: 24px; } .footer__container--float { position: absolute; bottom: 0px; @@ -2625,13 +2773,12 @@ button:not(.button) { right: 0px; } .form { - position: relative; } + position: relative; + width: 480px; + max-width: 100%; } @media screen and (min-width: 45em) { - .form { - width: 480px; - max-width: 100%; } - .form .form-field .tiles__container { - max-width: 480px; } } + .form .form-field .tiles__container { + max-width: 480px; } } .form--pad-none { padding: 0px; } .form--pad-small { @@ -2700,7 +2847,7 @@ button:not(.button) { .form-field { position: relative; padding: 6px 24px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-bottom: -1px; background-color: #fff; color: #333; @@ -2713,210 +2860,223 @@ button:not(.button) { @media screen and (max-width: 44.9375em) { .form-field { display: block; } } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field { background-color: transparent; - color: #dbdbdb; } + color: rgba(255, 255, 255, 0.85); } .form--fill .form-field { width: 100%; } .form-field:last-child { margin-bottom: 0px; } - .form-field__label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 24px; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__label { - color: #dbdbdb; } - .form-field__contents { + +.form-field__label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 24px; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__label { + color: rgba(255, 255, 255, 0.85); } + +.form-field__contents { + display: block; + margin-left: -24px; + margin-right: -24px; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input, + .form-field__contents > textarea { display: block; - margin-left: -24px; - margin-right: -24px; } - .form-field__contents > input[type=text], - .form-field__contents > input[type=range], - .form-field__contents > input[type=email], - .form-field__contents > input[type=password], - .form-field__contents > input[type=number], - .form-field__contents > input[type=file], - .form-field__contents > select, - .form-field__contents > .search-input input, - .form-field__contents > .calendar input, - .form-field__contents > textarea { - display: block; - width: 100%; + width: 100%; + border: none; + padding: 0 24px; + border-radius: 0px; + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > input[type=text]:focus, + .form-field__contents > input[type=range]:focus, + .form-field__contents > input[type=email]:focus, + .form-field__contents > input[type=password]:focus, + .form-field__contents > input[type=number]:focus, + .form-field__contents > input[type=file]:focus, + .form-field__contents > select:focus, + .form-field__contents > .search-input input:focus, + .form-field__contents > .calendar input:focus, + .form-field__contents > textarea:focus { border: none; - padding: 0px; - padding-left: 24px; - padding-right: 24px; - border-radius: 0px; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > input[type=text]:focus, - .form-field__contents > input[type=range]:focus, - .form-field__contents > input[type=email]:focus, - .form-field__contents > input[type=password]:focus, - .form-field__contents > input[type=number]:focus, - .form-field__contents > input[type=file]:focus, - .form-field__contents > select:focus, - .form-field__contents > .search-input input:focus, - .form-field__contents > .calendar input:focus, - .form-field__contents > textarea:focus { - border: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > textarea { - color: #fff; } - .form-field__contents > input[type=range] { - width: calc(100% - 48px); - margin-left: 24px; - margin-right: 24px; - padding-left: 0px; - padding-right: 0px; } - .form-field__contents > select { - display: block; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); - background-position: center right 18px; - padding-left: 22px; } - html.rtl .form-field__contents > select { - background-position: center left 18px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > select { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } - .form-field__contents > select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #000; } - .form-field__contents ::-ms-clear { - display: none; } - .form-field__contents > select::-ms-expand { - display: none; } - .form-field__contents > select::-ms-value { - background: none; - color: inherit; } + padding: 0 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > textarea { - vertical-align: top; - height: auto; - resize: vertical; } - .form-field__contents > .check-box, - .form-field__contents > .radio-button { - display: block; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; - margin-top: 12px; - margin-bottom: 12px; - margin-left: 24px; - margin-right: 24px; } - .form-field__contents > .search-input, - .form-field__contents > .calendar { - display: block; } - .form-field__contents > .search-input input, - .form-field__contents > .calendar input { - margin-left: 0px; - margin-right: 0px; } - .form-field__contents > .search-input .search-input__control, - .form-field__contents > .search-input .calendar__control, - .form-field__contents > .calendar .search-input__control, - .form-field__contents > .calendar .calendar__control { - top: auto; - right: 6px; - transform: none; - bottom: -6px; } - html.rtl .form-field__contents > .search-input .search-input__control, html.rtl - .form-field__contents > .search-input .calendar__control, html.rtl - .form-field__contents > .calendar .search-input__control, html.rtl - .form-field__contents > .calendar .calendar__control { - right: auto; - left: 6px; } - .form-field__contents > .number-input { - display: flex; - padding-right: 6px; } - html.rtl .form-field__contents > .number-input { - padding-right: 0; - padding-left: 6px; } - .form-field__contents > .number-input input[type=number] { - display: inline-block; - flex: 1; - border: none; } - .form--compact .form-field__contents > .number-input input[type=number] { - width: 144px; } - .form-field__contents > input[type=file] { - display: inline-block; } - .form-field__contents > .table--selectable { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > .table--selectable table { - margin-bottom: 0px; } - .form-field__contents > .table--selectable table td:first-child, - .form-field__contents > .table--selectable table th:first-child { - padding-left: 24px; } - .form-field__contents > .form-field { - width: auto; - margin-top: 12px; - border: none; } - .form-field__contents > .form-field > .form-field__label { - border-top: 1px solid #ccc; - padding-top: 6px; } - .form-field__contents > .form-field--hidden { - margin-top: 0px; } - .form-field__help { + color: #fff; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + height: 24px; } + .form-field__contents > input[type=range] { + width: calc(100% - 48px); + margin-left: 24px; + margin-right: 24px; + padding-left: 0px; + padding-right: 0px; } + .form-field__contents > select { display: block; - font-size: 13px; - font-size: 0.8125rem; - line-height: 1.84615; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__help { - color: #dbdbdb; } - .form-field__error { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); + background-position: center right 18px; } + html.rtl .form-field__contents > select { + background-position: center left 18px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > select { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } + .form-field__contents > select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #000; } + .form-field__contents > select::-ms-expand { + display: none; } + .form-field__contents > select::-ms-value { + background: none; + color: inherit; } + .form-field__contents > textarea { + vertical-align: top; + height: auto; + resize: vertical; } + .form-field__contents > .check-box, + .form-field__contents > .radio-button { display: block; - float: right; - color: #F04953; - line-height: 24px; } - html.rtl .form-field__error { - float: left; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__error { - color: #dbdbdb; } - .form-field--text { - cursor: pointer; } - .form-field--text .form-field__label { - cursor: pointer; } - @media screen and (max-width: 44.9375em) { - .form-field--hidden { - display: none; } } - @media screen and (min-width: 45em) { - .form-field--hidden { - border: none; - margin-bottom: 0px; - padding-top: 0px; - padding-bottom: 0px; - opacity: 0; - overflow: hidden; - max-height: 0px; - transition: max-height 0.2s, all 0.4s; } } - .form-field--error { - z-index: 1; - border-color: #F04953; } - .form-field--focus { - z-index: 2; - border-color: #2AD2C9; } - -.header { - height: 72px; - width: 100%; + font-size: 16px; + font-size: 1rem; + line-height: 1.5; + margin-top: 12px; + margin-bottom: 12px; + margin-left: 24px; + margin-right: 24px; } + .form-field__contents > .search-input, + .form-field__contents > .calendar { + display: block; } + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + margin-left: 0px; + margin-right: 0px; } + .form-field__contents > .search-input .search-input__control, + .form-field__contents > .search-input .calendar__control, + .form-field__contents > .calendar .search-input__control, + .form-field__contents > .calendar .calendar__control { + top: auto; + right: 6px; + transform: none; + bottom: -6px; } + html.rtl .form-field__contents > .search-input .search-input__control, html.rtl + .form-field__contents > .search-input .calendar__control, html.rtl + .form-field__contents > .calendar .search-input__control, html.rtl + .form-field__contents > .calendar .calendar__control { + right: auto; + left: 6px; } + .form-field__contents > .number-input { + display: flex; + padding-right: 6px; } + html.rtl .form-field__contents > .number-input { + padding-right: 0; + padding-left: 6px; } + .form-field__contents > .number-input input[type=number] { + display: inline-block; + flex: 1; + border: none; + padding: 0 24px; } + .form-field__contents > .number-input input[type=number]:focus { + padding: 0 24px; } + .form--compact .form-field__contents > .number-input input[type=number] { + width: 144px; } + .form-field__contents > input[type=file] { + display: inline-block; } + .form-field__contents > .table--selectable { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > .table--selectable table { + margin-bottom: 0px; } + .form-field__contents > .table--selectable table td:first-child, + .form-field__contents > .table--selectable table th:first-child { + padding-left: 24px; } + .form-field__contents > .form-field { + width: auto; + margin-top: 12px; + border: none; } + .form-field__contents > .form-field > .form-field__label { + border-top: 1px solid rgba(0, 0, 0, 0.15); + padding-top: 6px; } + +.form-field__contents--hidden { + margin-top: 0px; } + +.form-field__help { + display: block; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.84615; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__help { + color: rgba(255, 255, 255, 0.85); } + +.form-field__error { + display: block; + float: right; + color: #F04953; + line-height: 24px; } + html.rtl .form-field__error { + float: left; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__error { + color: rgba(255, 255, 255, 0.85); } + +.form-field--text { + cursor: pointer; } + .form-field--text .form-field__label { + cursor: pointer; } + +@media screen and (max-width: 44.9375em) { + .form-field--hidden { + display: none; } } + +@media screen and (min-width: 45em) { + .form-field--hidden { + border: none; + margin-bottom: 0px; + padding-top: 0px; + padding-bottom: 0px; + opacity: 0; + overflow: hidden; + max-height: 0px; + transition: max-height 0.2s, all 0.4s; } } + +.form-field--error { + z-index: 1; + border-color: #F04953; } + +.form-field--focus { + z-index: 2; + border-color: #2AD2C9; } + +.header { + min-height: 72px; + width: 100%; margin-bottom: 0px; } - .header--large { - height: 96px; } - .header--small { - height: 48px; } - .header.box > *:not(:last-child) { - margin-right: 12px; } .header a { color: inherit; text-decoration: none; } @@ -2925,37 +3085,40 @@ button:not(.button) { .header .status-icon { flex-grow: 0; flex-shrink: 0; } - .header > span { - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; } + +.header--large { + min-height: 96px; } + .header--large .header__content { + line-height: 96px; } + +.header--small { + min-height: 48px; } + .header--small .header__content { + line-height: 48px; } header.header { font-size: 24px; font-size: 1.5rem; - line-height: inherit; - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - transition: -webkit-transform 0.5s; - transition: transform 0.5s; } - *:not(.header__container--float) > header.header--float { - position: absolute; - top: 0px; - left: 0px; - right: 0px; } - header.header--primary .header__wrapper { - border-bottom: none; } + line-height: inherit; } header.header h1, header.header h2, header.header h3, header.header h4, header.header h5 { margin-bottom: 0; } - header.header.header--splash { - -webkit-transform: translate(0, 40vh); - transform: translate(0, 40vh); } - header.header.box--direction-row > * { - margin-bottom: 0px; } + +.header--splash { + -webkit-transform: translate(0, 40vh); + transform: translate(0, 40vh); } + +*:not(.header__container--float) > header.header--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; } + +header.header--primary .header__wrapper { + border-bottom: none; } .header:not(header).box--separator-top { padding-top: 6px; } @@ -2963,45 +3126,41 @@ header.header { .header:not(header).box--separator-bottom { padding-bottom: 6px; } -div.header__container { +.header__container { flex-shrink: 0; } - div.header__container--fixed { - position: relative; } - div.header__container--fixed .header__wrapper { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - z-index: 3; } - @media screen and (min-width: 45em) { - div.header__container--fixed .header__wrapper .header { - position: fixed; } - div.header__container--fixed .header__wrapper .header:not(.header--float) { - background-color: rgba(255, 255, 255, 0.9); } } - div.header__container--float { + +.header__container--fixed { + position: relative; } + .header__container--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; right: 0px; - padding-left: 24px; - padding-right: 24px; } + z-index: 3; } + @media screen and (min-width: 45em) { + .header__container--fixed .header__wrapper .header { + position: fixed; } + .header__container--fixed .header__wrapper .header:not(.header--float) { + background-color: rgba(255, 255, 255, 0.9); } } -div.header__wrapper { +.header__container--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + padding-left: 24px; + padding-right: 24px; } + +.header__wrapper { height: 72px; } -div.header--large .header__wrapper { +.header__wrapper--large { height: 96px; } -div.header--large .header__content { - line-height: 96px; } - -div.header--small .header__wrapper { +.header__wrapper--small { height: 48px; } -div.header--small .header__content { - line-height: 48px; } - -div.header--fixed .header__wrapper { +.header--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; @@ -3009,18 +3168,115 @@ div.header--fixed .header__wrapper { background-color: rgba(255, 255, 255, 0.9); z-index: 3; } -div.header--fixed.header--primary .header__wrapper { +.header--fixed.header--primary .header__wrapper { position: fixed; background-color: rgba(255, 255, 255, 0.9); } -div.header--fixed.header--primary .header__content { +.header--fixed.header--primary .header__content { position: static; background-color: transparent; } -div.header--flush .header__wrapper { +.header--flush .header__wrapper { padding-left: 0px; padding-right: 0px; } +h1.heading, +h2.heading, +h3.heading, +h4.heading, +h5.heading, +h6.heading { + margin-bottom: 12px; + line-height: 1; } + h1.heading--large, + h2.heading--large, + h3.heading--large, + h4.heading--large, + h5.heading--large, + h6.heading--large { + font-size: 125%; } + h1.heading--small, + h2.heading--small, + h3.heading--small, + h4.heading--small, + h5.heading--small, + h6.heading--small { + font-size: 75%; } + h1.heading--strong, + h2.heading--strong, + h3.heading--strong, + h4.heading--strong, + h5.heading--strong, + h6.heading--strong { + font-weight: 600; } + h1.heading--align-start, + h2.heading--align-start, + h3.heading--align-start, + h4.heading--align-start, + h5.heading--align-start, + h6.heading--align-start { + text-align: left; } + html.rtl h1.heading--align-start, html.rtl + h2.heading--align-start, html.rtl + h3.heading--align-start, html.rtl + h4.heading--align-start, html.rtl + h5.heading--align-start, html.rtl + h6.heading--align-start { + text-align: right; } + h1.heading--align-center, + h2.heading--align-center, + h3.heading--align-center, + h4.heading--align-center, + h5.heading--align-center, + h6.heading--align-center { + text-align: center; } + h1.heading--align-right, + h2.heading--align-right, + h3.heading--align-right, + h4.heading--align-right, + h5.heading--align-right, + h6.heading--align-right { + text-align: right; } + html.rtl h1.heading--align-right, html.rtl + h2.heading--align-right, html.rtl + h3.heading--align-right, html.rtl + h4.heading--align-right, html.rtl + h5.heading--align-right, html.rtl + h6.heading--align-right { + text-align: left; } + h1.heading--margin-none, + h2.heading--margin-none, + h3.heading--margin-none, + h4.heading--margin-none, + h5.heading--margin-none, + h6.heading--margin-none { + margin-top: 0; + margin-bottom: 0; } + h1.heading--margin-small, + h2.heading--margin-small, + h3.heading--margin-small, + h4.heading--margin-small, + h5.heading--margin-small, + h6.heading--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + h1.heading--margin-medium, + h2.heading--margin-medium, + h3.heading--margin-medium, + h4.heading--margin-medium, + h5.heading--margin-medium, + h6.heading--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + h1.heading--margin-large, + h2.heading--margin-large, + h3.heading--margin-large, + h4.heading--margin-large, + h5.heading--margin-large, + h6.heading--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + .headline { font-size: 48px; font-size: 3rem; @@ -3031,19 +3287,40 @@ div.header--flush .header__wrapper { .headline--large { font-size: 60px; font-size: 3.75rem; - line-height: 1.2; } + line-height: 1; } .headline--small { font-size: 30px; font-size: 1.875rem; - line-height: 1.6; } + line-height: 1; } .headline--strong { font-weight: 600; } + .headline--align-start { + text-align: left; } + html.rtl .headline--align-start { + text-align: right; } + .headline--align-center { + text-align: center; } + .headline--align-right { + text-align: right; } + html.rtl .headline--align-right { + text-align: left; } + .headline--margin-none { + margin-top: 0; + margin-bottom: 0; } + .headline--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .headline--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .headline--margin-large { + margin-top: 48px; + margin-bottom: 48px; } .control-icon { display: inline-block; width: 24px; height: 24px; - vertical-align: middle; cursor: pointer; fill: #999; stroke: #999; @@ -3090,10 +3367,12 @@ div.header--flush .header__wrapper { stroke: #434343; } .control-icon.color-index-grey-4, .control-icon.color-index-grey-8 { stroke: #666666; } - .control-icon.color-index-accent-1, .control-icon.color-index-accent-3 { + .control-icon.color-index-accent-1, .control-icon.color-index-accent-4 { stroke: #2AD2C9; } - .control-icon.color-index-accent-2, .control-icon.color-index-accent-4 { + .control-icon.color-index-accent-2, .control-icon.color-index-accent-5 { stroke: #614767; } + .control-icon.color-index-accent-3, .control-icon.color-index-accent-6 { + stroke: #ff8d6d; } .control-icon.color-index-light-1, .control-icon.color-index-light-3 { stroke: #ffffff; } .control-icon.color-index-light-2, .control-icon.color-index-light-4 { @@ -3122,10 +3401,12 @@ div.header--flush .header__wrapper { fill: #998e88; } .control-icon.color-index-graph-4, .control-icon.color-index-graph-8 { fill: #8c6694; } - .control-icon.color-index-accent-1, .control-icon.color-index-accent-3 { + .control-icon.color-index-accent-1, .control-icon.color-index-accent-4 { fill: #2AD2C9; } - .control-icon.color-index-accent-2, .control-icon.color-index-accent-4 { + .control-icon.color-index-accent-2, .control-icon.color-index-accent-5 { fill: #614767; } + .control-icon.color-index-accent-3, .control-icon.color-index-accent-6 { + fill: #ff8d6d; } .control-icon.color-index-grey-1, .control-icon.color-index-grey-5 { fill: #333333; } .control-icon.color-index-grey-2, .control-icon.color-index-grey-6 { @@ -3138,24 +3419,30 @@ div.header--flush .header__wrapper { .control-icon { transition: all 0.3s ease-in-out; } } a:hover .control-icon, - .anchor:hover:not(.anchor--disabled) .control-icon, - .button:hover:not(.anchor--disabled) .control-icon, + .anchor:hover .control-icon, + .button:hover .control-icon, .menu__control:hover .control-icon { fill: #000; stroke: #000; } + .anchor.anchor--disabled:hover .control-icon { + fill: #999; + stroke: #999; } + .button.button--disabled:hover .control-icon { + fill: #999; + stroke: #999; } .control-icon__badge circle { fill: #2AD2C9; } .control-icon__badge text { stroke: #333; fill: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .control-icon:not([class*="color-index"]), .button--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .anchor:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu__control:hover > .control-icon, + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover > .control-icon, .button--primary:hover .control-icon { fill: #fff; stroke: #fff; } @@ -3165,6 +3452,9 @@ div.header--flush .header__wrapper { .control-icon--large { width: 48px; height: 48px; } + .control-icon--huge { + width: 288px; + height: 288px; } .status-icon { width: 24px; @@ -3196,6 +3486,9 @@ div.header--flush .header__wrapper { .status-icon--large { width: 48px; height: 48px; } + .status-icon--huge { + width: 288px; + height: 288px; } .status-icon--small { width: 12px; height: 12px; @@ -3271,10 +3564,12 @@ div.header--flush .header__wrapper { stroke: #434343; } .logo-icon.color-index-grey-4, .logo-icon.color-index-grey-8 { stroke: #666666; } - .logo-icon.color-index-accent-1, .logo-icon.color-index-accent-3 { + .logo-icon.color-index-accent-1, .logo-icon.color-index-accent-4 { stroke: #2AD2C9; } - .logo-icon.color-index-accent-2, .logo-icon.color-index-accent-4 { + .logo-icon.color-index-accent-2, .logo-icon.color-index-accent-5 { stroke: #614767; } + .logo-icon.color-index-accent-3, .logo-icon.color-index-accent-6 { + stroke: #ff8d6d; } .logo-icon.color-index-light-1, .logo-icon.color-index-light-3 { stroke: #ffffff; } .logo-icon.color-index-light-2, .logo-icon.color-index-light-4 { @@ -3285,6 +3580,9 @@ div.header--flush .header__wrapper { .logo-icon--large { width: 96px; height: 96px; } + .logo-icon--huge { + width: 288px; + height: 288px; } .right-left-icon--left { display: none; } @@ -3304,6 +3602,12 @@ html.rtl .right-left-icon--right { .image--small { width: 240px; } +.image--thumb { + width: 48px; + height: 48px; + flex: 0 0 auto; + object-fit: cover; } + .image--full { width: 100%; height: 100%; } @@ -3314,146 +3618,143 @@ html.rtl .right-left-icon--right { .image--full-vertical { height: 100%; } -@media screen and (max-width: 44.9375em) { - .label__text { - display: none; } } - -@media screen and (min-width: 45em) { - .label__icon { - display: none; } } - -a.active > .label .label__icon.control-icon svg { - fill: #000; - stroke: #000; } +.label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + margin-bottom: 24px; } + .label--uppercase { + text-transform: uppercase; + letter-spacing: 0.2em; } + .label--align-start { + text-align: left; } + html.rtl .label--align-start { + text-align: right; } + .label--align-center { + text-align: center; } + .label--align-right { + text-align: right; } + html.rtl .label--align-right { + text-align: left; } + .label--margin-none { + margin-top: 0; + margin-bottom: 0; } + .label--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .label--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .label--margin-large { + margin-top: 48px; + margin-bottom: 48px; } -.layer { +.grommet.layer { position: relative; - z-index: 10; } + z-index: 10; + background-color: rgba(0, 0, 0, 0.5); + height: 100vh; } @media screen and (min-width: 45em) { - .layer { + .grommet.layer { position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; } } @media screen and (max-width: 44.9375em) { - .layer:not(.layer--hidden) + .app { + .grommet.layer:not(.layer--hidden) + .app { display: none; } } - .layer__container { + .grommet.layer .layer__container { background-color: #fff; } @media screen and (max-width: 44.9375em) { - .layer__container { + .grommet.layer .layer__container { padding: 0 24px; - border-bottom: 1px solid #ccc; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } + min-height: 100vh; + min-width: 100vw; } } @media screen and (min-width: 45em) { - .layer__container { + .grommet.layer .layer__container { position: absolute; max-height: 100%; max-width: 100%; overflow: auto; padding: 0 48px; border-radius: 0px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } - .layer__closer { + box-shadow: none; } } + .grommet.layer .layer__closer { position: absolute; top: 0px; right: 0px; z-index: 1; } - html.rtl .layer__closer { + .grommet.rtl .grommet.layer .layer__closer { right: auto; left: 0px; } - .layer--flush .layer__container { + .grommet.layer.layer--flush .layer__container { padding: 0px; } @media screen and (min-width: 45em) { - .layer--align-center:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-center:not(.layer--hidden) .layer__container { - left: 50%; - top: 50%; - max-height: calc(100vh - 48px); - max-width: calc(100vw - 48px); - transform: translate(-50%, -50%); } } - @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-center:not(.layer--hidden) .layer__container { + left: 50%; + top: 50%; + max-height: calc(100vh - 48px); + max-width: calc(100vw - 48px); + transform: translate(-50%, -50%); } } + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - left: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + left: 0px; } @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { left: auto; right: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - right: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + right: 0px; } @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { right: auto; left: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } @media screen and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-top:not(.layer--hidden) .layer__container { - left: 50%; - transform: translateX(-50%); } } - @media screen and (min-width: 45em) and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) .layer__container { - -webkit-animation: slide-down 0.2s ease-in-out forwards; - animation: slide-down 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-bottom:not(.layer--hidden) { - background-image: radial-gradient(circle at bottom, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-bottom:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + left: 50%; + transform: translateX(-50%); } } + @media screen and (min-width: 45em) and (min-width: 45em) { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + -webkit-animation: slide-down 0.2s ease-in-out forwards; + animation: slide-down 0.2s ease-in-out forwards; } } + .grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container { bottom: 0px; } - .layer--hidden { - left: -10000px; + .grommet.layer.layer--hidden { + left: -100vw; + right: 100vw; z-index: -1; } - .layer--hidden.layer--align-left { + .grommet.layer.layer--hidden.layer--align-left { right: auto; } - .layer--hidden.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--align-left .layer__container { left: -100vw; } @media screen and (max-width: 44.9375em) { - .layer--hidden { + .grommet.layer.layer--hidden { display: none; } } @media screen and (min-width: 45em) { - .layer--hidden.layer--peek { + .grommet.layer.layer--hidden.layer--peek { left: 0; z-index: 10; } - .layer--hidden.layer--peek.layer--align-left { + .grommet.layer.layer--hidden.layer--peek.layer--align-left { right: auto; } - .layer--hidden.layer--peek.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container { left: auto; right: -12px; border-right: 10px solid #01a982; @@ -3523,6 +3824,8 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; } .list .list-item { max-width: none; } + .list .list-item:focus { + outline: #2AD2C9 solid 1px; } .list .list-item__image { height: 24px; width: 24px; @@ -3542,7 +3845,7 @@ a.active > .label .label__icon.control-icon svg { .list .list-item--selectable { cursor: pointer; } .list .list-item--selectable:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .list .list-item--selected { background-color: #d0f3eb; color: #333; } @@ -3555,7 +3858,7 @@ a.active > .label .label__icon.control-icon svg { background-color: #d0f3eb; color: #333; } .list--selectable .list-item:hover:not(.list-item--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .list--small .list-item__image, .list--small .list__more__image { @@ -3571,165 +3874,186 @@ a.active > .label .label__icon.control-icon svg { list-style-type: none; white-space: normal; display: inline-block; - margin: 0px; } + margin: 0px; + line-height: 24px; } html.rtl .legend { text-align: right; } - .legend__item, .legend__total { - color: #777; } - .legend__item > *, .legend__total > * { - vertical-align: top; } - .legend__item-label, .legend__total-label { - display: inline-block; - width: 72px; } - .legend__item-value, .legend__total-value { - display: inline-block; - width: 72px; - text-align: right; } - html.rtl .legend__item-value, html.rtl .legend__total-value { - text-align: left; } - .legend__item-units, .legend__total-units { - display: inline-block; - margin-left: 6px; } - html.rtl .legend__item-units, html.rtl .legend__total-units { - margin-left: 0; - margin-right: 6px; } - .legend__item--clickable { - cursor: pointer; } - .legend__item svg.legend__item-swatch { - width: 12px; - height: 12px; - margin-top: 6px; - margin-right: 12px; - overflow: visible; } - .legend__item svg.legend__item-swatch.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .legend__item svg.legend__item-swatch.color-index-unset { - stroke: #ddd; } - .legend__item svg.legend__item-swatch.color-index-brand { - stroke: #01a982; } - .legend__item svg.legend__item-swatch.color-index-critical { - stroke: #F04953; } - .legend__item svg.legend__item-swatch.color-index-error { - stroke: #F04953; } - .legend__item svg.legend__item-swatch.color-index-warning { - stroke: #FFD144; } - .legend__item svg.legend__item-swatch.color-index-ok { - stroke: #01a982; } - .legend__item svg.legend__item-swatch.color-index-unknown { - stroke: #CCCCCC; } - .legend__item svg.legend__item-swatch.color-index-disabled { - stroke: #CCCCCC; } - .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-5 { - stroke: #617c91; } - .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-6 { - stroke: #94aba8; } - .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-7 { - stroke: #998e88; } - .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-8 { - stroke: #8c6694; } - .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-5 { - stroke: #333333; } - .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-6 { - stroke: #3B3B3B; } - .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-7 { - stroke: #434343; } - .legend__item svg.legend__item-swatch.color-index-grey-4, .legend__item svg.legend__item-swatch.color-index-grey-8 { - stroke: #666666; } - .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-3 { - stroke: #2AD2C9; } - .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-4 { - stroke: #614767; } - .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { - stroke: #ffffff; } - .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { - stroke: #f5f5f5; } - html.rtl .legend__item svg.legend__item-swatch { - margin-right: 0; - margin-left: 12px; } - .legend__item svg.legend__item-swatch path { - stroke-width: 12px; - transition-property: stroke-width; - transition-duration: 0.3s; - transition-timing-function: ease-in-out; } - .legend__item--active { - color: #333; } - .legend__item--active svg.legend__item-swatch path { - stroke-width: 12px; } - .legend__total { - margin-left: 24px; } - html.rtl .legend__total { - margin-left: 0; - margin-right: 24px; } - .legend__total > * { - margin-top: 6px; - padding-top: 6px; - border-top: 1px dotted #ccc; } - .legend--single .legend__item-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; - width: auto; } - .legend--single .legend__item-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .legend--single .legend__item-units { - margin-left: 0; - margin-right: 6px; } -.login { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - bottom: 0px; - overflow: hidden; - z-index: 100; } - .login__background { - position: absolute; - max-width: none; } - .login__background--portrait { - width: auto; - height: 100%; } - .login__background--landscape { - height: auto; - width: 100%; } - .login__container { - position: relative; - width: 384px; - margin: 96px auto; - z-index: 1; - -webkit-animation-name: fadein; - -webkit-animation-duration: 0.5s; - animation-name: fadein; - animation-duration: 0.5s; } - @media screen and (max-width: 44.9375em) { - .login__container { - margin: 48px 0px; - width: 100%; - border-radius: 0px; } } - .login__footer { - position: absolute; - left: 0px; - right: 0px; - bottom: 6px; - padding: 6px 24px; - background-color: rgba(255, 255, 255, 0.9); - text-align: center; } +.legend__item, +.legend__total { + color: #777; } + .legend__item > *, + .legend__total > * { + vertical-align: top; } + +.legend__item-label, +.legend__total-label { + display: inline-block; + min-width: 72px; + text-align: left; } + +.legend__item-value, +.legend__total-value { + display: inline-block; + width: 72px; + text-align: right; } + html.rtl .legend__item-value, html.rtl + .legend__total-value { + text-align: left; } + +.legend__item-units, +.legend__total-units { + display: inline-block; + margin-left: 6px; } + html.rtl .legend__item-units, html.rtl + .legend__total-units { + margin-left: 0; + margin-right: 6px; } + +.legend__item svg.legend__item-swatch { + width: 12px; + height: 12px; + margin-top: 6px; + margin-right: 12px; + overflow: visible; } + .legend__item svg.legend__item-swatch.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .legend__item svg.legend__item-swatch.color-index-unset { + stroke: #ddd; } + .legend__item svg.legend__item-swatch.color-index-brand { + stroke: #01a982; } + .legend__item svg.legend__item-swatch.color-index-critical { + stroke: #F04953; } + .legend__item svg.legend__item-swatch.color-index-error { + stroke: #F04953; } + .legend__item svg.legend__item-swatch.color-index-warning { + stroke: #FFD144; } + .legend__item svg.legend__item-swatch.color-index-ok { + stroke: #01a982; } + .legend__item svg.legend__item-swatch.color-index-unknown { + stroke: #CCCCCC; } + .legend__item svg.legend__item-swatch.color-index-disabled { + stroke: #CCCCCC; } + .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-5 { + stroke: #617c91; } + .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-6 { + stroke: #94aba8; } + .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-7 { + stroke: #998e88; } + .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-8 { + stroke: #8c6694; } + .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-5 { + stroke: #333333; } + .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-6 { + stroke: #3B3B3B; } + .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-7 { + stroke: #434343; } + .legend__item svg.legend__item-swatch.color-index-grey-4, .legend__item svg.legend__item-swatch.color-index-grey-8 { + stroke: #666666; } + .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-4 { + stroke: #2AD2C9; } + .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-5 { + stroke: #614767; } + .legend__item svg.legend__item-swatch.color-index-accent-3, .legend__item svg.legend__item-swatch.color-index-accent-6 { + stroke: #ff8d6d; } + .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { + stroke: #ffffff; } + .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { + stroke: #f5f5f5; } + html.rtl .legend__item svg.legend__item-swatch { + margin-right: 0; + margin-left: 12px; } + .legend__item svg.legend__item-swatch path { + stroke-width: 12px; + transition-property: stroke-width; + transition-duration: 0.3s; + transition-timing-function: ease-in-out; } + +.legend__item--clickable { + cursor: pointer; } + +.legend__item--active { + color: #333; } + .legend__item--active svg.legend__item-swatch path { + stroke-width: 12px; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .legend__item--active { + color: #fff; } + +li.legend__total { + margin-left: 24px; } + html.rtl li.legend__total { + margin-left: 0; + margin-right: 24px; } + li.legend__total > * { + margin-top: 6px; + padding-top: 6px; + border-top: 1px dotted rgba(0, 0, 0, 0.15); } + +.legend--single .legend__item-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; + width: auto; } + +.legend--single .legend__item-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .legend--single .legend__item-units { + margin-left: 0; + margin-right: 6px; } + +.login { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + overflow: hidden; + z-index: 100; } + .login__background { + position: absolute; + max-width: none; } + .login__background--portrait { + width: auto; + height: 100%; } + .login__background--landscape { + height: auto; + width: 100%; } + .login__container { + position: relative; + width: 384px; + margin: 96px auto; + z-index: 1; + -webkit-animation-name: fadein; + -webkit-animation-duration: 0.5s; + animation-name: fadein; + animation-duration: 0.5s; } + @media screen and (max-width: 44.9375em) { + .login__container { + margin: 48px 0px; + width: 100%; + border-radius: 0px; } } + .login__footer { + position: absolute; + left: 0px; + right: 0px; + bottom: 6px; + padding: 6px 24px; + background-color: rgba(255, 255, 255, 0.9); + text-align: center; } .login-form { position: relative; - width: 384px; padding: 24px; - padding-bottom: 48px; background-color: #fff; - text-align: center; z-index: 1; -webkit-animation-name: fadein; -webkit-animation-duration: 0.5s; @@ -3737,33 +4061,26 @@ a.active > .label .label__icon.control-icon svg { animation-duration: 0.5s; } @media screen and (max-width: 44.9375em) { .login-form { - width: 100%; - border-radius: 0px; } } - .login-form__secondary-text { - color: #777; } + width: 100%; } } + .login-form__header { + text-align: center; } .login-form fieldset { - text-align: left; - border: none; - margin-bottom: 0px; } - .login-form fieldset > * { - width: 100%; - display: block; } - .login-form__remember-me { - display: block; - margin-top: 24px; - text-align: left; } + margin-bottom: 0; } .login-form__submit { - margin-top: 24px; - width: 100%; } - .login-form__error { - margin-bottom: 12px; - color: #F04953; + width: 100%; + max-width: none; } + .login-form--align-start .login-form__header { text-align: left; } - .login-form__footer { - margin-top: 12px; - display: flex; - justify-content: space-between; - line-height: 36px; } + html.rtl .login-form--align-start .login-form__header { + text-align: right; } + .login-form--align-start .login-form__submit { + width: auto; } + .login-form--align-end .login-form__header { + text-align: right; } + html.rtl .login-form--align-end .login-form__header { + text-align: left; } + .login-form--align-end .login-form__submit { + width: auto; } .map { position: relative; @@ -3799,7 +4116,7 @@ a.active > .label .label__icon.control-icon svg { .map__item { display: inline-block; width: 192px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-right: 12px; margin-bottom: 12px; background-color: #fff; @@ -3813,7 +4130,7 @@ a.active > .label .label__icon.control-icon svg { .map__item > a > * { display: inline-block; } .map__item > a:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .map__item .status-icon { margin-right: 6px; } .map__item--active { @@ -3823,7 +4140,7 @@ a.active > .label .label__icon.control-icon svg { position: relative; font-size: 19px; font-size: 1.1875rem; - line-height: inherit; } + line-height: 1.26316; } .menu:focus { outline: none; } .menu:focus:not(.menu--expanded):after { @@ -3838,180 +4155,208 @@ a.active > .label .label__icon.control-icon svg { pointer-events: none; } .menu > * { flex: 0 0 auto; } - .menu a:not(.button) { + .menu a:not(.button), + .menu .anchor { text-decoration: none; } - .menu a:not(.button):hover { + .menu a:not(.button):hover, + .menu .anchor:hover { + text-decoration: none; color: #000; } - .menu a:not(.button).active { + .menu a:not(.button).active, + .menu .anchor.active { color: #017b5f; } - .menu__control .control-icon-down { - width: 12px; - height: 12px; } - .menu__control .control-icon-down path, - .menu__control .control-icon-down polyline { - stroke-width: 4px; } - .menu__drop { - font-size: 16px; - font-size: 1rem; - line-height: inherit; - max-height: 100vh; } - .menu__drop .anchor { - padding: 12px 24px; - white-space: nowrap; - display: block; } - .menu__drop .anchor:hover, .menu__drop .anchor:focus { - text-decoration: none; - background-color: rgba(0, 0, 0, 0.1); } - .menu__drop .check-box, - .menu__drop .radio-button { - margin-top: 12px; - margin-bottom: 12px; } - .menu__drop--align-right { - text-align: right; } - html.rtl .menu__drop--align-right { - text-align: left; } - .menu__drop--align-right .menu__contents { - text-align: left; } - html.rtl .menu__drop--align-right .menu__contents { - text-align: right; } - .menu__drop--large .menu__control { - line-height: 96px; } - .menu--controlled { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu a:not(.button).active, [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .menu .anchor.active { + color: #fff; } + .menu.menu--controlled { display: inline-block; cursor: pointer; } - .menu--controlled.menu--large { - line-height: 96px; } - .menu--controlled.menu--small { - height: 24px; } + +.menu__control:focus:not(.button--disabled) { + box-shadow: inset 0 0 1px 2px #2AD2C9; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover .menu__control-label { + color: #fff; } + +.menu__control .control-icon-down { + width: 12px; + height: 12px; } + .menu__control .control-icon-down path, + .menu__control .control-icon-down polyline { + stroke-width: 4px; } + +@media screen and (min-width: 45em) { + .menu__control.menu--labelled .control-icon { + transition: none; } } + +.menu__drop { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + max-height: 100vh; } + .menu__drop a:not(.anchor--disabled) { + text-decoration: none; } + .menu__drop a:not(.anchor--disabled):hover { + text-decoration: none; } + .menu__drop .anchor { + padding: 12px 24px; + white-space: nowrap; + display: block; + text-decoration: none; } + .menu__drop .anchor:hover, .menu__drop .anchor:focus { + text-decoration: none; + background-color: rgba(221, 221, 221, 0.5); } + .menu__drop .menu__control { + text-align: left; } + .grommet.rtl .menu__drop .menu__control { + text-align: right; } + .menu__drop .menu__label { + padding: 12px 24px; + font-weight: 600; } + .menu__drop.menu__drop--align-right { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__control { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__control { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__contents { + text-align: left; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__contents { + text-align: right; } + .menu__drop.menu__drop--small { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .menu__drop.menu__drop--large { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.menu--inline.menu--row { + line-height: 48px; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-left: 24px; margin-right: 0; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-right: 24px; margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-right: 0; } .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-left: 0; margin-right: 24px; } .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-right: 0; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-right: 0; margin-left: 24px; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-left: 0; } - @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--direction-row.box--responsive > * { - margin-right: 0; } - html.rtl .menu--inline.menu.box--direction-row.box--responsive > * { - margin-left: 0; } } - .menu--inline.menu.box--direction-column a:not(.button) { - margin-bottom: 6px; } - .menu--small { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .menu--small .menu__control-drop-icon { - margin-left: 6px; } - html.rtl .menu--small .menu__control-drop-icon { - margin-left: 0; - margin-right: 6px; } - .menu--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--primary > .menu { - width: 100%; } - .menu--primary > a:not(.button) { - padding: 6px 24px; - margin-bottom: 0px; - width: 100%; - border-width: 6px; - border-color: transparent; - border-right-style: solid; } - html.rtl .menu--primary > a:not(.button) { - border-right-style: none; - border-left-style: solid; } - .menu--primary > a:not(.button):hover { - text-decoration: none; } - .menu--primary > a:not(.button):hover:not(.active) { - background-color: rgba(0, 0, 0, 0.1); } - .menu--primary > a:not(.button).active { - border-color: #01a982; } - @media screen and (max-width: 44.9375em) { - .menu--primary.menu--down { - display: block; } - .menu--primary.menu--down > * { - display: block; } } -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h2, -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h3, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { - margin-top: 24px; } +@media screen and (max-width: 44.9375em) { + .menu--inline.box--direction-row.box--responsive > * { + margin-right: 0; } + .grommet.rtl .menu--inline.box--direction-row.box--responsive > * { + margin-left: 0; } } + +.menu--inline.box--direction-column a:not(.button) { + margin-bottom: 6px; } + +.menu--inline.menu--small { + font-size: 16px; + font-size: 1rem; + line-height: inherit; } + +.menu--inline.menu--large { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; } + +.menu--primary > .menu { + width: 100%; } + +.menu--primary > a:not(.button) { + padding: 6px 24px; + margin-bottom: 0px; + width: 100%; + border-width: 4px; + border-color: transparent; + border-right-style: solid; } + .grommet.rtl .menu--primary > a:not(.button) { + border-right-style: none; + border-left-style: solid; } + .menu--primary > a:not(.button):hover { + text-decoration: none; } + .menu--primary > a:not(.button):hover:not(.active) { + background-color: rgba(221, 221, 221, 0.5); } + .menu--primary > a:not(.button).active { + border-color: #01a982; } + +@media screen and (max-width: 44.9375em) { + .menu--primary.menu--down { + display: block; } + .menu--primary.menu--down > * { + display: block; } } -.menu--inline.menu > hr, +.menu--inline.menu:not(.box--direction-row) > hr, .menu__drop > hr { margin: 12px 24px 18px; height: 1px; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); border: none; } -.menu--inline.menu.box.box--separator-top, +.menu--inline.menu:not(.box--direction-row) .menu__control-label, +.menu__drop .menu__control-label { + font-size: 19px; } + +.menu--inline.menu:not(.box--direction-row) a, +.menu__drop a { + text-decoration: none; } + +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h2, +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h3, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { + margin-top: 24px; } + +.menu--inline.menu:not(.box--direction-row).box.box--separator-top, .menu__drop.box.box--separator-top { border-color: transparent; } - .menu--inline.menu.box.box--separator-top:before, + .menu--inline.menu:not(.box--direction-row).box.box--separator-top:before, .menu__drop.box.box--separator-top:before { content: ''; margin: 12px 24px 18px; height: 1px; - background-color: #ccc; } - -.menu--inline.menu--small, -.menu__drop--small { - font-size: 1em; } - .menu--inline.menu--small .menu__control-label, - .menu__drop--small .menu__control-label { - padding: 12px; } - .menu--inline.menu--small .menu__control-icon svg, - .menu__drop--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--inline.menu--small > a, - .menu__drop--small > a { - padding: 6px 12px; } - -.menu--inline.menu .menu__control-label, -.menu__drop .menu__control-label { - font-size: 19px; } + background-color: rgba(0, 0, 0, 0.15); } -.menu--inline.menu a, -.menu__drop a { - text-decoration: none; } +.menu--inline.menu:not(.box--direction-row).menu--small > a, +.menu__drop.menu--small > a { + padding: 6px 0; } -.menu--inline.menu--large > a, -.menu__drop--large > a { - padding: 24px 48px; } +.menu--inline.menu:not(.box--direction-row).menu--large > a, +.menu__drop.menu--large > a { + padding: 24px 0; } @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--responsive > *, + .menu--inline.menu:not(.box--direction-row).box--responsive > *, .menu__drop.box--responsive > * { margin-left: 0px; margin-right: 0px; } - .menu--inline.menu.box--responsive .button, + .menu--inline.menu:not(.box--direction-row).box--responsive .button, .menu__drop.box--responsive .button { width: 100%; margin-bottom: 12px; } - .menu--inline.menu.box--responsive .menu, + .menu--inline.menu:not(.box--direction-row).box--responsive .menu, .menu__drop.box--responsive .menu { margin-bottom: 36px; } } @media screen and (max-width: 44.9375em) { .menu__drop { - max-width: 100%; - width: 100vw; } } + max-width: 100%; } } @-webkit-keyframes draw-meter { 0% { @@ -4040,291 +4385,473 @@ a.active > .label .label__icon.control-icon svg { .meter { display: inline-block; position: relative; } - .meter__slice { - stroke-width: 4px; } - .meter__threshold { - stroke: rgba(51, 51, 51, 0.2); } - .meter__value-container { - position: relative; - display: inline-block; } - .meter__graphic-container { - white-space: normal; } - .meter__graphic-container > a { - text-decoration: none; } - .meter__graphic:focus { - outline: #2AD2C9 solid 1px; } - .meter__value { - white-space: normal; - pointer-events: none; } - .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter__value-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 38px; - font-weight: bold; } - .meter__value-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .meter__value-units { - margin-left: 0; - margin-right: 6px; } - .meter__value-label { - display: block; } - .meter__minmax-container { - display: block; } - .meter__minmax { - display: flex; - justify-content: space-between; - color: #777; - font-size: 14px; - font-size: 0.875rem; - line-height: 1.71429; } - .meter__label-min, .meter__label-max { - flex: 0 0 48px; } - .meter__label-max { - text-align: right; } - .meter__label { - fill: #777; } - .meter__label--active { - fill: #000; } - .meter--legend-right { - white-space: nowrap; } - .meter--legend-right .meter__legend { - vertical-align: top; - margin-left: 24px; } - html.rtl .meter--legend-right .meter__legend { - margin-left: 0; - margin-right: 24px; } - .meter--legend-right:not(.meter--tall-legend) .meter__legend { - position: relative; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); } - .meter--legend-bottom .meter__legend { - margin-top: 24px; - display: block; } - .meter:not(.meter--vertical) .meter__graphic-container { - display: inline-block; } - .meter:not(.meter--vertical) .meter__minmax-container { - display: block; - width: 192px; } - .meter:not(.meter--vertical) .meter__minmax { - width: 100%; } - .meter:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--vertical .meter__graphic-container { - display: inline-block; - white-space: nowrap; } - .meter--vertical .meter__minmax-container { - height: 192px; } - .meter--vertical .meter__minmax { - flex-direction: column; - height: 100%; } - .meter--vertical .meter__minmax-min { - order: 1; } - .meter--vertical .meter__minmax-max { - order: 0; } - .meter--vertical .meter__label-min, .meter--vertical .meter__label-max { - flex: 0 0 auto; - text-align: left; } - .meter--vertical .meter__label-min { - order: 1; } - .meter--vertical .meter__label-max { - order: 0; } - .meter--vertical .meter__value-label { - display: block; } - .meter--vertical.meter--small .meter__minmax-container { - height: 96px; } - .meter--vertical.meter--large .meter__minmax-container { - height: 288px; } - .meter--small .meter__slice { - stroke-width: 8px; } - .meter--small .meter__values .meter__slice:hover { - stroke-width: 24px; } - .meter--small .meter__value-value { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--large .meter__value-value { - font-size: 64px; - font-size: 4rem; - line-height: 1.125; } - .meter--large .meter__value-units { - font-size: 48px; - font-size: 3rem; - line-height: 1; } - .meter.meter--active .meter__values .meter__slice:hover { - stroke-width: 12px; } - .meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { - stroke-width: 12px; } - .meter--bar .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 192px 192px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--bar .meter__values .meter__slice.color-index-brand { - stroke: #01a982; } - .meter--bar .meter__values .meter__slice.color-index-critical { - stroke: #F04953; } - .meter--bar .meter__values .meter__slice.color-index-error { - stroke: #F04953; } - .meter--bar .meter__values .meter__slice.color-index-warning { - stroke: #FFD144; } - .meter--bar .meter__values .meter__slice.color-index-ok { - stroke: #01a982; } - .meter--bar .meter__values .meter__slice.color-index-unknown { - stroke: #CCCCCC; } - .meter--bar .meter__values .meter__slice.color-index-disabled { - stroke: #CCCCCC; } - .meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-5 { - stroke: #617c91; } - .meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-6 { - stroke: #94aba8; } - .meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-7 { - stroke: #998e88; } - .meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-8 { - stroke: #8c6694; } - .meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-5 { - stroke: #333333; } - .meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-6 { - stroke: #3B3B3B; } - .meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-7 { - stroke: #434343; } - .meter--bar .meter__values .meter__slice.color-index-grey-4, .meter--bar .meter__values .meter__slice.color-index-grey-8 { - stroke: #666666; } - .meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-3 { - stroke: #2AD2C9; } - .meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-4 { - stroke: #614767; } - .meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--bar .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--bar .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-meter 1.5s linear; - animation: draw-meter 1.5s linear; } } - .meter--bar .meter__thresholds .meter__slice.color-index-unset, - .meter--bar .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-brand, - .meter--bar .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(1, 169, 130, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-critical, - .meter--bar .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(240, 73, 83, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-error, - .meter--bar .meter__tracks .meter__slice.color-index-error { - stroke: rgba(240, 73, 83, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-warning, - .meter--bar .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(255, 209, 68, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-ok, - .meter--bar .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(1, 169, 130, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-unknown, - .meter--bar .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(204, 204, 204, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-disabled, - .meter--bar .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(204, 204, 204, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-5, - .meter--bar .meter__tracks .meter__slice.color-index-graph-1, - .meter--bar .meter__tracks .meter__slice.color-index-graph-5 { - stroke: rgba(97, 124, 145, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, - .meter--bar .meter__tracks .meter__slice.color-index-graph-2, - .meter--bar .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(148, 171, 168, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, - .meter--bar .meter__tracks .meter__slice.color-index-graph-3, - .meter--bar .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(153, 142, 136, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, - .meter--bar .meter__tracks .meter__slice.color-index-graph-4, - .meter--bar .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(140, 102, 148, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-3, - .meter--bar .meter__tracks .meter__slice.color-index-accent-1, - .meter--bar .meter__tracks .meter__slice.color-index-accent-3 { - stroke: rgba(42, 210, 201, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, - .meter--bar .meter__tracks .meter__slice.color-index-accent-2, - .meter--bar .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(97, 71, 103, 0.5); } - .meter--bar .meter__value { - text-align: left; } - .meter--bar .meter__value-label { - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--bar:not(.meter--vertical) .meter__minmax-container > a { - vertical-align: top; - display: block; - height: 24px; } - .meter--bar:not(.meter--vertical) .meter__graphic { - width: 192px; } - .meter--bar:not(.meter--vertical) .meter__value { - display: inline-block; + +.meter__slice { + stroke-width: 4px; } + +.meter__threshold { + stroke: rgba(51, 51, 51, 0.2); } + +.meter__value-container { + position: relative; + display: inline-block; } + +.meter__graphic-container { + white-space: normal; } + .meter__graphic-container > a { + text-decoration: none; } + +.meter__graphic:focus { + outline: #2AD2C9 solid 1px; } + +.meter__graphic text { + fill: #777; } + +.meter__value { + white-space: normal; + pointer-events: none; } + +.meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter__value-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 38px; + font-weight: bold; } + +.meter__value-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .meter__value-units { + margin-left: 0; + margin-right: 6px; } + +.meter__value-label { + display: block; } + +.meter__minmax-container { + display: block; } + +.meter__minmax { + display: flex; + justify-content: space-between; + color: #777; + font-size: 14px; + font-size: 0.875rem; + line-height: 1.71429; } + +.meter__label-min, +.meter__label-max { + flex: 0 0 48px; } + +.meter__label-max { + text-align: right; } + +.meter__label { + fill: #777; } + +.meter__label--active { + fill: #000; } + +.meter--legend-right { + white-space: nowrap; } + .meter--legend-right .meter__legend { vertical-align: top; - margin-left: 12px; } - html.rtl .meter--bar:not(.meter--vertical) .meter__value { - margin-left: 0; - margin-right: 12px; } - .meter--bar:not(.meter--vertical) .meter__value-value { - font-size: 24px; - font-size: 1.5rem; - line-height: 1; } - .meter--bar:not(.meter--vertical) .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { - display: inline-block; - margin-left: 4px; } - html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 24px; } + html.rtl .meter--legend-right .meter__legend { margin-left: 0; - margin-right: 4px; } - .meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { - min-width: 84px; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + margin-right: 24px; } + .meter--legend-right:not(.meter--tall-legend) .meter__legend { + position: relative; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); } + +.meter--legend-bottom .meter__legend { + margin-top: 24px; + display: block; } + +.meter--legend-bottom.meter--legend-align-center .meter__legend { + text-align: center; } + +.meter:not(.meter--vertical) .meter__graphic-container { + display: inline-block; } + +.meter:not(.meter--vertical) .meter__minmax-container { + display: block; + width: 192px; } + +.meter:not(.meter--vertical) .meter__minmax { + width: 100%; } + +.meter:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--vertical .meter__graphic-container { + display: inline-block; + white-space: nowrap; } + +.meter--vertical .meter__minmax-container { + height: 192px; } + +.meter--vertical .meter__minmax { + flex-direction: column; + height: 100%; } + +.meter--vertical .meter__minmax-min { + order: 1; } + +.meter--vertical .meter__minmax-max { + order: 0; } + +.meter--vertical .meter__label-min, +.meter--vertical .meter__label-max { + flex: 0 0 auto; + text-align: left; } + +.meter--vertical .meter__label-min { + order: 1; } + +.meter--vertical .meter__label-max { + order: 0; } + +.meter--vertical .meter__value-label { + display: block; } + +.meter--vertical.meter--small .meter__minmax-container { + height: 96px; } + +.meter--vertical.meter--large .meter__minmax-container { + height: 288px; } + +.meter--small .meter__slice { + stroke-width: 8px; } + +.meter--small .meter__values .meter__slice:hover { + stroke-width: 24px; } + +.meter--small .meter__value-value { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--large .meter__value-value { + font-size: 64px; + font-size: 4rem; + line-height: 1.125; } + +.meter--large .meter__value-units { + font-size: 48px; + font-size: 3rem; + line-height: 1; } + +.meter--active .meter__values .meter__slice:hover { + stroke-width: 12px; } + +.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { + stroke-width: 12px; } + +.meter--bar .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 192px 192px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--bar .meter__values .meter__slice.color-index-brand { + stroke: #01a982; } + +.meter--bar .meter__values .meter__slice.color-index-critical { + stroke: #F04953; } + +.meter--bar .meter__values .meter__slice.color-index-error { + stroke: #F04953; } + +.meter--bar .meter__values .meter__slice.color-index-warning { + stroke: #FFD144; } + +.meter--bar .meter__values .meter__slice.color-index-ok { + stroke: #01a982; } + +.meter--bar .meter__values .meter__slice.color-index-unknown { + stroke: #CCCCCC; } + +.meter--bar .meter__values .meter__slice.color-index-disabled { + stroke: #CCCCCC; } + +.meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-5 { + stroke: #617c91; } + +.meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-6 { + stroke: #94aba8; } + +.meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-7 { + stroke: #998e88; } + +.meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-8 { + stroke: #8c6694; } + +.meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-5 { + stroke: #333333; } + +.meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-6 { + stroke: #3B3B3B; } + +.meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-7 { + stroke: #434343; } + +.meter--bar .meter__values .meter__slice.color-index-grey-4, .meter--bar .meter__values .meter__slice.color-index-grey-8 { + stroke: #666666; } + +.meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-4 { + stroke: #2AD2C9; } + +.meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-5 { + stroke: #614767; } + +.meter--bar .meter__values .meter__slice.color-index-accent-3, .meter--bar .meter__values .meter__slice.color-index-accent-6 { + stroke: #ff8d6d; } + +.meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--bar .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--bar .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-meter 1.5s linear; + animation: draw-meter 1.5s linear; } } + +.meter--bar .meter__thresholds .meter__slice.color-index-unset, +.meter--bar .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-brand, +.meter--bar .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(1, 169, 130, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-critical, +.meter--bar .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(240, 73, 83, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-error, +.meter--bar .meter__tracks .meter__slice.color-index-error { + stroke: rgba(240, 73, 83, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-warning, +.meter--bar .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(255, 209, 68, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-ok, +.meter--bar .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(1, 169, 130, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-unknown, +.meter--bar .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(204, 204, 204, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-disabled, +.meter--bar .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(204, 204, 204, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-5, +.meter--bar .meter__tracks .meter__slice.color-index-graph-1, +.meter--bar .meter__tracks .meter__slice.color-index-graph-5 { + stroke: rgba(97, 124, 145, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, +.meter--bar .meter__tracks .meter__slice.color-index-graph-2, +.meter--bar .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(148, 171, 168, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, +.meter--bar .meter__tracks .meter__slice.color-index-graph-3, +.meter--bar .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(153, 142, 136, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, +.meter--bar .meter__tracks .meter__slice.color-index-graph-4, +.meter--bar .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(140, 102, 148, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, +.meter--bar .meter__tracks .meter__slice.color-index-accent-1, +.meter--bar .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(42, 210, 201, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-5, +.meter--bar .meter__tracks .meter__slice.color-index-accent-2, +.meter--bar .meter__tracks .meter__slice.color-index-accent-5 { + stroke: rgba(97, 71, 103, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-3, .meter--bar .meter__thresholds .meter__slice.color-index-accent-6, +.meter--bar .meter__tracks .meter__slice.color-index-accent-3, +.meter--bar .meter__tracks .meter__slice.color-index-accent-6 { + stroke: rgba(255, 141, 109, 0.5); } + +.meter--bar .meter__value { + text-align: left; } + +.meter--bar .meter__value-label { + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--bar.meter--vertical { + white-space: nowrap; } + .meter--bar.meter--vertical svg.meter__graphic { + height: 192px; } + .meter--bar.meter--vertical .meter__labeled-graphic { + display: inline-block; } + .meter--bar.meter--vertical .meter__value { + position: relative; + vertical-align: top; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; } + .meter--bar.meter--vertical .meter__minmax-container { + position: absolute; top: 0px; - -webkit-transform: none; - transform: none; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__value { - min-width: 48px; } - .meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; } - .meter--bar:not(.meter--vertical).meter--small .meter__value-value, - .meter--bar:not(.meter--vertical).meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + left: 24px; } + .meter--bar.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + .meter--bar.meter--vertical.meter--legend-right .meter__value { + min-width: 60px; } + .meter--bar.meter--vertical.meter--small svg.meter__graphic { + height: 96px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 24px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 36px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 48px; } + .meter--bar.meter--vertical.meter--small .meter__value { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { min-width: 42px; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { - min-width: 72px; } + .meter--bar.meter--vertical.meter--large svg.meter__graphic { + height: 288px; + width: 36px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 72px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 108px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 144px; } + .meter--bar.meter--vertical.meter--large .meter__value { + top: 144px; } + .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { + top: 144px; } + +.meter--bar:not(.meter--vertical) .meter__minmax-container > a { + vertical-align: top; + display: block; + height: 24px; } + +.meter--bar:not(.meter--vertical) .meter__graphic { + width: 192px; } + +.meter--bar:not(.meter--vertical) .meter__value { + display: inline-block; + vertical-align: top; + margin-left: 12px; } + html.rtl .meter--bar:not(.meter--vertical) .meter__value { + margin-left: 0; + margin-right: 12px; } + +.meter--bar:not(.meter--vertical) .meter__value-value { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.meter--bar:not(.meter--vertical) .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + display: inline-block; + margin-left: 4px; } + html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 0; + margin-right: 4px; } + +.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { + min-width: 84px; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + top: 0px; + -webkit-transform: none; + transform: none; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__value { + min-width: 48px; } + +.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; } + +.meter--bar:not(.meter--vertical).meter--small .meter__value-value, +.meter--bar:not(.meter--vertical).meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic, .meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic { + height: 12px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 24px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 36px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 48px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + min-width: 42px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { + min-width: 72px; } + +.meter--bar:not(.meter--vertical).meter--large { + line-height: 36px; } .meter--bar:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; } + width: 288px; + height: 36px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 72px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 108px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 144px; } .meter--bar:not(.meter--vertical).meter--large .meter__value { margin-left: 16px; } html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value { @@ -4334,361 +4861,565 @@ a.active > .label .label__icon.control-icon svg { font-size: 26px; font-size: 1.625rem; line-height: inherit; } - .meter--bar.meter--vertical { - white-space: nowrap; } - .meter--bar.meter--vertical svg.meter__graphic { - height: 192px; } - .meter--bar.meter--vertical .meter__labeled-graphic { - display: inline-block; } - .meter--bar.meter--vertical .meter__value { - position: relative; - vertical-align: top; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; } - .meter--bar.meter--vertical .meter__minmax-container { - position: absolute; - top: 0px; - left: 24px; } - .meter--bar.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--bar.meter--vertical.meter--legend-right .meter__value { - min-width: 60px; } - .meter--bar.meter--vertical.meter--small svg.meter__graphic { - height: 96px; } - .meter--bar.meter--vertical.meter--small .meter__value { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { - min-width: 42px; } - .meter--bar.meter--vertical.meter--large svg.meter__graphic { - height: 288px; } - .meter--bar.meter--vertical.meter--large .meter__value { - top: 144px; } - .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { - top: 144px; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc, .meter--spiral { - margin: 0px auto; } } - .meter--circle svg.meter__graphic, .meter--arc svg.meter__graphic, .meter--spiral svg.meter__graphic { - display: block; } - .meter--circle .meter.series-pre path, .meter--arc .meter.series-pre path, .meter--spiral .meter.series-pre path { - stroke-dashoffset: 768px; } - .meter--circle .meter__slice, .meter--arc .meter__slice, .meter--spiral .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 768px 768px; - stroke-dashoffset: 0; - fill: none; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__slice-indicator, .meter--arc .meter__slice-indicator, .meter--spiral .meter__slice-indicator { - stroke-linecap: square; - stroke-width: 4px; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__values .meter__slice.color-index-loading, .meter--arc .meter__values .meter__slice.color-index-loading, .meter--spiral .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--circle .meter__values .meter__slice.color-index-unset, .meter--arc .meter__values .meter__slice.color-index-unset, .meter--spiral .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--circle .meter__values .meter__slice.color-index-brand, .meter--arc .meter__values .meter__slice.color-index-brand, .meter--spiral .meter__values .meter__slice.color-index-brand { - stroke: #01a982; } - .meter--circle .meter__values .meter__slice.color-index-critical, .meter--arc .meter__values .meter__slice.color-index-critical, .meter--spiral .meter__values .meter__slice.color-index-critical { - stroke: #F04953; } - .meter--circle .meter__values .meter__slice.color-index-error, .meter--arc .meter__values .meter__slice.color-index-error, .meter--spiral .meter__values .meter__slice.color-index-error { - stroke: #F04953; } - .meter--circle .meter__values .meter__slice.color-index-warning, .meter--arc .meter__values .meter__slice.color-index-warning, .meter--spiral .meter__values .meter__slice.color-index-warning { - stroke: #FFD144; } - .meter--circle .meter__values .meter__slice.color-index-ok, .meter--arc .meter__values .meter__slice.color-index-ok, .meter--spiral .meter__values .meter__slice.color-index-ok { - stroke: #01a982; } - .meter--circle .meter__values .meter__slice.color-index-unknown, .meter--arc .meter__values .meter__slice.color-index-unknown, .meter--spiral .meter__values .meter__slice.color-index-unknown { - stroke: #CCCCCC; } - .meter--circle .meter__values .meter__slice.color-index-disabled, .meter--arc .meter__values .meter__slice.color-index-disabled, .meter--spiral .meter__values .meter__slice.color-index-disabled { - stroke: #CCCCCC; } - .meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--arc .meter__values .meter__slice.color-index-graph-1, .meter--arc .meter__values .meter__slice.color-index-graph-5, .meter--spiral .meter__values .meter__slice.color-index-graph-1, .meter--spiral .meter__values .meter__slice.color-index-graph-5 { - stroke: #617c91; } - .meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-6, .meter--arc .meter__values .meter__slice.color-index-graph-2, .meter--arc .meter__values .meter__slice.color-index-graph-6, .meter--spiral .meter__values .meter__slice.color-index-graph-2, .meter--spiral .meter__values .meter__slice.color-index-graph-6 { - stroke: #94aba8; } - .meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-7, .meter--arc .meter__values .meter__slice.color-index-graph-3, .meter--arc .meter__values .meter__slice.color-index-graph-7, .meter--spiral .meter__values .meter__slice.color-index-graph-3, .meter--spiral .meter__values .meter__slice.color-index-graph-7 { - stroke: #998e88; } - .meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-8, .meter--arc .meter__values .meter__slice.color-index-graph-4, .meter--arc .meter__values .meter__slice.color-index-graph-8, .meter--spiral .meter__values .meter__slice.color-index-graph-4, .meter--spiral .meter__values .meter__slice.color-index-graph-8 { - stroke: #8c6694; } - .meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-5, .meter--arc .meter__values .meter__slice.color-index-grey-1, .meter--arc .meter__values .meter__slice.color-index-grey-5, .meter--spiral .meter__values .meter__slice.color-index-grey-1, .meter--spiral .meter__values .meter__slice.color-index-grey-5 { - stroke: #333333; } - .meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-6, .meter--arc .meter__values .meter__slice.color-index-grey-2, .meter--arc .meter__values .meter__slice.color-index-grey-6, .meter--spiral .meter__values .meter__slice.color-index-grey-2, .meter--spiral .meter__values .meter__slice.color-index-grey-6 { - stroke: #3B3B3B; } - .meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-7, .meter--arc .meter__values .meter__slice.color-index-grey-3, .meter--arc .meter__values .meter__slice.color-index-grey-7, .meter--spiral .meter__values .meter__slice.color-index-grey-3, .meter--spiral .meter__values .meter__slice.color-index-grey-7 { - stroke: #434343; } - .meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--circle .meter__values .meter__slice.color-index-grey-8, .meter--arc .meter__values .meter__slice.color-index-grey-4, .meter--arc .meter__values .meter__slice.color-index-grey-8, .meter--spiral .meter__values .meter__slice.color-index-grey-4, .meter--spiral .meter__values .meter__slice.color-index-grey-8 { - stroke: #666666; } - .meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-3, .meter--arc .meter__values .meter__slice.color-index-accent-1, .meter--arc .meter__values .meter__slice.color-index-accent-3, .meter--spiral .meter__values .meter__slice.color-index-accent-1, .meter--spiral .meter__values .meter__slice.color-index-accent-3 { - stroke: #2AD2C9; } - .meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-4, .meter--arc .meter__values .meter__slice.color-index-accent-2, .meter--arc .meter__values .meter__slice.color-index-accent-4, .meter--spiral .meter__values .meter__slice.color-index-accent-2, .meter--spiral .meter__values .meter__slice.color-index-accent-4 { - stroke: #614767; } - .meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, .meter--arc .meter__values .meter__slice.color-index-light-1, .meter--arc .meter__values .meter__slice.color-index-light-3, .meter--spiral .meter__values .meter__slice.color-index-light-1, .meter--spiral .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, .meter--arc .meter__values .meter__slice.color-index-light-2, .meter--arc .meter__values .meter__slice.color-index-light-4, .meter--spiral .meter__values .meter__slice.color-index-light-2, .meter--spiral .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--circle .meter__values .meter__slice--clickable, .meter--arc .meter__values .meter__slice--clickable, .meter--spiral .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--circle .meter__values .meter__slice, .meter--arc .meter__values .meter__slice, .meter--spiral .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-arc 1.5s linear; - animation: draw-arc 1.5s linear; } } - .meter--circle .meter__thresholds .meter__slice.color-index-unset, - .meter--circle .meter__tracks .meter__slice.color-index-unset, .meter--arc .meter__thresholds .meter__slice.color-index-unset, - .meter--arc .meter__tracks .meter__slice.color-index-unset, .meter--spiral .meter__thresholds .meter__slice.color-index-unset, - .meter--spiral .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-brand, - .meter--circle .meter__tracks .meter__slice.color-index-brand, .meter--arc .meter__thresholds .meter__slice.color-index-brand, - .meter--arc .meter__tracks .meter__slice.color-index-brand, .meter--spiral .meter__thresholds .meter__slice.color-index-brand, - .meter--spiral .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(1, 169, 130, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-critical, - .meter--circle .meter__tracks .meter__slice.color-index-critical, .meter--arc .meter__thresholds .meter__slice.color-index-critical, - .meter--arc .meter__tracks .meter__slice.color-index-critical, .meter--spiral .meter__thresholds .meter__slice.color-index-critical, - .meter--spiral .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(240, 73, 83, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-error, - .meter--circle .meter__tracks .meter__slice.color-index-error, .meter--arc .meter__thresholds .meter__slice.color-index-error, - .meter--arc .meter__tracks .meter__slice.color-index-error, .meter--spiral .meter__thresholds .meter__slice.color-index-error, - .meter--spiral .meter__tracks .meter__slice.color-index-error { - stroke: rgba(240, 73, 83, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-warning, - .meter--circle .meter__tracks .meter__slice.color-index-warning, .meter--arc .meter__thresholds .meter__slice.color-index-warning, - .meter--arc .meter__tracks .meter__slice.color-index-warning, .meter--spiral .meter__thresholds .meter__slice.color-index-warning, - .meter--spiral .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(255, 209, 68, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-ok, - .meter--circle .meter__tracks .meter__slice.color-index-ok, .meter--arc .meter__thresholds .meter__slice.color-index-ok, - .meter--arc .meter__tracks .meter__slice.color-index-ok, .meter--spiral .meter__thresholds .meter__slice.color-index-ok, - .meter--spiral .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(1, 169, 130, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-unknown, - .meter--circle .meter__tracks .meter__slice.color-index-unknown, .meter--arc .meter__thresholds .meter__slice.color-index-unknown, - .meter--arc .meter__tracks .meter__slice.color-index-unknown, .meter--spiral .meter__thresholds .meter__slice.color-index-unknown, - .meter--spiral .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(204, 204, 204, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-disabled, - .meter--circle .meter__tracks .meter__slice.color-index-disabled, .meter--arc .meter__thresholds .meter__slice.color-index-disabled, - .meter--arc .meter__tracks .meter__slice.color-index-disabled, .meter--spiral .meter__thresholds .meter__slice.color-index-disabled, - .meter--spiral .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(204, 204, 204, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-5, - .meter--circle .meter__tracks .meter__slice.color-index-graph-1, - .meter--circle .meter__tracks .meter__slice.color-index-graph-5, .meter--arc .meter__thresholds .meter__slice.color-index-graph-1, .meter--arc .meter__thresholds .meter__slice.color-index-graph-5, - .meter--arc .meter__tracks .meter__slice.color-index-graph-1, - .meter--arc .meter__tracks .meter__slice.color-index-graph-5, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-1, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-5 { - stroke: rgba(97, 124, 145, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, - .meter--circle .meter__tracks .meter__slice.color-index-graph-2, - .meter--circle .meter__tracks .meter__slice.color-index-graph-6, .meter--arc .meter__thresholds .meter__slice.color-index-graph-2, .meter--arc .meter__thresholds .meter__slice.color-index-graph-6, - .meter--arc .meter__tracks .meter__slice.color-index-graph-2, - .meter--arc .meter__tracks .meter__slice.color-index-graph-6, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-2, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(148, 171, 168, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, - .meter--circle .meter__tracks .meter__slice.color-index-graph-3, - .meter--circle .meter__tracks .meter__slice.color-index-graph-7, .meter--arc .meter__thresholds .meter__slice.color-index-graph-3, .meter--arc .meter__thresholds .meter__slice.color-index-graph-7, - .meter--arc .meter__tracks .meter__slice.color-index-graph-3, - .meter--arc .meter__tracks .meter__slice.color-index-graph-7, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-3, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(153, 142, 136, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, - .meter--circle .meter__tracks .meter__slice.color-index-graph-4, - .meter--circle .meter__tracks .meter__slice.color-index-graph-8, .meter--arc .meter__thresholds .meter__slice.color-index-graph-4, .meter--arc .meter__thresholds .meter__slice.color-index-graph-8, - .meter--arc .meter__tracks .meter__slice.color-index-graph-4, - .meter--arc .meter__tracks .meter__slice.color-index-graph-8, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-4, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(140, 102, 148, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-3, - .meter--circle .meter__tracks .meter__slice.color-index-accent-1, - .meter--circle .meter__tracks .meter__slice.color-index-accent-3, .meter--arc .meter__thresholds .meter__slice.color-index-accent-1, .meter--arc .meter__thresholds .meter__slice.color-index-accent-3, - .meter--arc .meter__tracks .meter__slice.color-index-accent-1, - .meter--arc .meter__tracks .meter__slice.color-index-accent-3, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-1, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-3 { - stroke: rgba(42, 210, 201, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, - .meter--circle .meter__tracks .meter__slice.color-index-accent-2, - .meter--circle .meter__tracks .meter__slice.color-index-accent-4, .meter--arc .meter__thresholds .meter__slice.color-index-accent-2, .meter--arc .meter__thresholds .meter__slice.color-index-accent-4, - .meter--arc .meter__tracks .meter__slice.color-index-accent-2, - .meter--arc .meter__tracks .meter__slice.color-index-accent-4, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-2, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(97, 71, 103, 0.5); } - .meter--circle .meter__threshold, .meter--arc .meter__threshold, .meter--spiral .meter__threshold { - stroke-linecap: butt; } - .meter--circle .meter__value-label, .meter--arc .meter__value-label, .meter--spiral .meter__value-label { - display: block; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc { - width: 192px; } } - .meter--circle .meter__value, .meter--arc .meter__value { - white-space: normal; - pointer-events: none; - text-align: center; } - .meter--circle .meter__value--active, .meter--arc .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter--circle .meter__minmax-container, .meter--arc:not(.meter--vertical) .meter__minmax-container { - width: 192px; } - .meter--circle .meter__value, .meter--arc:not(.meter--vertical) .meter__value { - position: absolute; - left: 50%; } - .meter--circle.meter--small .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter--circle.meter--large .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--circle.meter--legend-right .meter__legend, .meter--arc.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--circle.meter--legend-right.meter--small .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { - top: 48px; } - .meter--circle.meter--legend-right.meter--large .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { - top: 144px; } - .meter--circle svg.meter__graphic { - width: 192px; - height: 192px; } - .meter--circle .meter__value { - top: 96px; - -webkit-transform: translateX(-50%) translateY(-50%); - transform: translateX(-50%) translateY(-50%); - max-width: 144px; } - .meter--circle.meter--small svg.meter__graphic { - width: 96px; - height: 96px; } - .meter--circle.meter--small .meter__value { - top: 48px; - max-width: 72px; } - .meter--circle.meter--large svg.meter__graphic { - width: 288px; - height: 288px; } - .meter--circle.meter--large .meter__value { - top: 144px; - max-width: 216px; } - .meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { - position: static; - margin: 0 auto; - -webkit-transform: none; - transform: none; } - .meter--arc:not(.meter--vertical) svg.meter__graphic { - width: 192px; - height: 144px; } - .meter--arc:not(.meter--vertical) .meter__value { - top: 108px; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - max-width: 120px; } - .meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { - top: 72px; } - .meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; - height: 72px; } - .meter--arc:not(.meter--vertical).meter--small .meter__value { - top: 60px; - max-width: 60px; } - .meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; - height: 216px; } - .meter--arc:not(.meter--vertical).meter--large .meter__value { - top: 156px; - max-width: 180px; } - .meter--arc.meter--vertical svg.meter__graphic { - display: inline; - width: 144px; - height: 192px; } - .meter--arc.meter--vertical .meter__value { - position: relative; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; - margin-left: -24px; - vertical-align: top; } - html.rtl .meter--arc.meter--vertical .meter__value { - margin-left: 0; - margin-right: -24px; } - .meter--arc.meter--vertical .meter__minmax-container { - display: inline-block; - vertical-align: top; - margin-left: 12px; - padding-top: 12px; - padding-bottom: 12px; } - html.rtl .meter--arc.meter--vertical .meter__minmax-container { - margin-left: 0; - margin-right: 12px; } - .meter--arc.meter--vertical.meter--small svg.meter__graphic { - width: 72px; - height: 96px; } - .meter--arc.meter--vertical.meter--small .meter__value { - top: 48px; - margin-left: -12px; } - html.rtl .meter--arc.meter--vertical.meter--small .meter__value { - margin-left: 0; - margin-right: -12px; } - .meter--arc.meter--vertical.meter--small .meter__minmax-container { - padding-top: 0px; - padding-bottom: 0px; } - .meter--arc.meter--vertical.meter--large svg.meter__graphic { - width: 216px; - height: 288px; } - .meter--arc.meter--vertical.meter--large .meter__value { - top: 144px; - margin-left: -48px; } - html.rtl .meter--arc.meter--vertical.meter--large .meter__value { - margin-left: 0; - margin-right: -48px; } - .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: -72px; } - html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: 0; - margin-right: -72px; } - .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: -60px; } - html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: 0; - margin-right: -60px; } - .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { - min-width: 78px; } - .meter--arc.meter--vertical.meter--legend-right .meter__value { - min-width: 120px; } - .meter--spiral .meter__value { - position: absolute; - top: 0px; - right: 0px; - white-space: normal; - text-align: right; } - .meter--spiral .meter__value-value { - display: block; - font-size: 24px; - font-size: 1.5rem; - line-height: 1; - margin-bottom: 6px; } - .meter--spiral .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; - color: #777; - margin-left: 0.2em; } - html.rtl .meter--spiral .meter__value-units { - margin-left: 0; - margin-right: 0.2em; } - .meter--spiral .meter__value-label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--loading .meter__thresholds, - .meter--loading .meter__value { - display: none; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc, + .meter--spiral { + margin: 0px auto; } } + +.meter--circle svg.meter__graphic, +.meter--arc svg.meter__graphic, +.meter--spiral svg.meter__graphic { + display: block; } + +.meter--circle .meter.series-pre path, +.meter--arc .meter.series-pre path, +.meter--spiral .meter.series-pre path { + stroke-dashoffset: 768px; } + +.meter--circle .meter__slice, +.meter--arc .meter__slice, +.meter--spiral .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 768px 768px; + stroke-dashoffset: 0; + fill: none; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__slice-indicator, +.meter--arc .meter__slice-indicator, +.meter--spiral .meter__slice-indicator { + stroke-linecap: square; + stroke-width: 4px; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__values .meter__slice.color-index-loading, +.meter--arc .meter__values .meter__slice.color-index-loading, +.meter--spiral .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--circle .meter__values .meter__slice.color-index-unset, +.meter--arc .meter__values .meter__slice.color-index-unset, +.meter--spiral .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--circle .meter__values .meter__slice.color-index-brand, +.meter--arc .meter__values .meter__slice.color-index-brand, +.meter--spiral .meter__values .meter__slice.color-index-brand { + stroke: #01a982; } + +.meter--circle .meter__values .meter__slice.color-index-critical, +.meter--arc .meter__values .meter__slice.color-index-critical, +.meter--spiral .meter__values .meter__slice.color-index-critical { + stroke: #F04953; } + +.meter--circle .meter__values .meter__slice.color-index-error, +.meter--arc .meter__values .meter__slice.color-index-error, +.meter--spiral .meter__values .meter__slice.color-index-error { + stroke: #F04953; } + +.meter--circle .meter__values .meter__slice.color-index-warning, +.meter--arc .meter__values .meter__slice.color-index-warning, +.meter--spiral .meter__values .meter__slice.color-index-warning { + stroke: #FFD144; } + +.meter--circle .meter__values .meter__slice.color-index-ok, +.meter--arc .meter__values .meter__slice.color-index-ok, +.meter--spiral .meter__values .meter__slice.color-index-ok { + stroke: #01a982; } + +.meter--circle .meter__values .meter__slice.color-index-unknown, +.meter--arc .meter__values .meter__slice.color-index-unknown, +.meter--spiral .meter__values .meter__slice.color-index-unknown { + stroke: #CCCCCC; } + +.meter--circle .meter__values .meter__slice.color-index-disabled, +.meter--arc .meter__values .meter__slice.color-index-disabled, +.meter--spiral .meter__values .meter__slice.color-index-disabled { + stroke: #CCCCCC; } + +.meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-5, +.meter--arc .meter__values .meter__slice.color-index-graph-1, +.meter--arc .meter__values .meter__slice.color-index-graph-5, +.meter--spiral .meter__values .meter__slice.color-index-graph-1, +.meter--spiral .meter__values .meter__slice.color-index-graph-5 { + stroke: #617c91; } + +.meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-6, +.meter--arc .meter__values .meter__slice.color-index-graph-2, +.meter--arc .meter__values .meter__slice.color-index-graph-6, +.meter--spiral .meter__values .meter__slice.color-index-graph-2, +.meter--spiral .meter__values .meter__slice.color-index-graph-6 { + stroke: #94aba8; } + +.meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-7, +.meter--arc .meter__values .meter__slice.color-index-graph-3, +.meter--arc .meter__values .meter__slice.color-index-graph-7, +.meter--spiral .meter__values .meter__slice.color-index-graph-3, +.meter--spiral .meter__values .meter__slice.color-index-graph-7 { + stroke: #998e88; } + +.meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-8, +.meter--arc .meter__values .meter__slice.color-index-graph-4, +.meter--arc .meter__values .meter__slice.color-index-graph-8, +.meter--spiral .meter__values .meter__slice.color-index-graph-4, +.meter--spiral .meter__values .meter__slice.color-index-graph-8 { + stroke: #8c6694; } + +.meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-5, +.meter--arc .meter__values .meter__slice.color-index-grey-1, +.meter--arc .meter__values .meter__slice.color-index-grey-5, +.meter--spiral .meter__values .meter__slice.color-index-grey-1, +.meter--spiral .meter__values .meter__slice.color-index-grey-5 { + stroke: #333333; } + +.meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-6, +.meter--arc .meter__values .meter__slice.color-index-grey-2, +.meter--arc .meter__values .meter__slice.color-index-grey-6, +.meter--spiral .meter__values .meter__slice.color-index-grey-2, +.meter--spiral .meter__values .meter__slice.color-index-grey-6 { + stroke: #3B3B3B; } + +.meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-7, +.meter--arc .meter__values .meter__slice.color-index-grey-3, +.meter--arc .meter__values .meter__slice.color-index-grey-7, +.meter--spiral .meter__values .meter__slice.color-index-grey-3, +.meter--spiral .meter__values .meter__slice.color-index-grey-7 { + stroke: #434343; } + +.meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--circle .meter__values .meter__slice.color-index-grey-8, +.meter--arc .meter__values .meter__slice.color-index-grey-4, +.meter--arc .meter__values .meter__slice.color-index-grey-8, +.meter--spiral .meter__values .meter__slice.color-index-grey-4, +.meter--spiral .meter__values .meter__slice.color-index-grey-8 { + stroke: #666666; } + +.meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-4, +.meter--arc .meter__values .meter__slice.color-index-accent-1, +.meter--arc .meter__values .meter__slice.color-index-accent-4, +.meter--spiral .meter__values .meter__slice.color-index-accent-1, +.meter--spiral .meter__values .meter__slice.color-index-accent-4 { + stroke: #2AD2C9; } + +.meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-5, +.meter--arc .meter__values .meter__slice.color-index-accent-2, +.meter--arc .meter__values .meter__slice.color-index-accent-5, +.meter--spiral .meter__values .meter__slice.color-index-accent-2, +.meter--spiral .meter__values .meter__slice.color-index-accent-5 { + stroke: #614767; } + +.meter--circle .meter__values .meter__slice.color-index-accent-3, .meter--circle .meter__values .meter__slice.color-index-accent-6, +.meter--arc .meter__values .meter__slice.color-index-accent-3, +.meter--arc .meter__values .meter__slice.color-index-accent-6, +.meter--spiral .meter__values .meter__slice.color-index-accent-3, +.meter--spiral .meter__values .meter__slice.color-index-accent-6 { + stroke: #ff8d6d; } + +.meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, +.meter--arc .meter__values .meter__slice.color-index-light-1, +.meter--arc .meter__values .meter__slice.color-index-light-3, +.meter--spiral .meter__values .meter__slice.color-index-light-1, +.meter--spiral .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, +.meter--arc .meter__values .meter__slice.color-index-light-2, +.meter--arc .meter__values .meter__slice.color-index-light-4, +.meter--spiral .meter__values .meter__slice.color-index-light-2, +.meter--spiral .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--circle .meter__values .meter__slice--clickable, +.meter--arc .meter__values .meter__slice--clickable, +.meter--spiral .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--circle .meter__values .meter__slice, + .meter--arc .meter__values .meter__slice, + .meter--spiral .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-arc 1.5s linear; + animation: draw-arc 1.5s linear; } } + +.meter--circle .meter__thresholds .meter__slice.color-index-unset, +.meter--circle .meter__tracks .meter__slice.color-index-unset, +.meter--arc .meter__thresholds .meter__slice.color-index-unset, +.meter--arc .meter__tracks .meter__slice.color-index-unset, +.meter--spiral .meter__thresholds .meter__slice.color-index-unset, +.meter--spiral .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-brand, +.meter--circle .meter__tracks .meter__slice.color-index-brand, +.meter--arc .meter__thresholds .meter__slice.color-index-brand, +.meter--arc .meter__tracks .meter__slice.color-index-brand, +.meter--spiral .meter__thresholds .meter__slice.color-index-brand, +.meter--spiral .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(1, 169, 130, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-critical, +.meter--circle .meter__tracks .meter__slice.color-index-critical, +.meter--arc .meter__thresholds .meter__slice.color-index-critical, +.meter--arc .meter__tracks .meter__slice.color-index-critical, +.meter--spiral .meter__thresholds .meter__slice.color-index-critical, +.meter--spiral .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(240, 73, 83, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-error, +.meter--circle .meter__tracks .meter__slice.color-index-error, +.meter--arc .meter__thresholds .meter__slice.color-index-error, +.meter--arc .meter__tracks .meter__slice.color-index-error, +.meter--spiral .meter__thresholds .meter__slice.color-index-error, +.meter--spiral .meter__tracks .meter__slice.color-index-error { + stroke: rgba(240, 73, 83, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-warning, +.meter--circle .meter__tracks .meter__slice.color-index-warning, +.meter--arc .meter__thresholds .meter__slice.color-index-warning, +.meter--arc .meter__tracks .meter__slice.color-index-warning, +.meter--spiral .meter__thresholds .meter__slice.color-index-warning, +.meter--spiral .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(255, 209, 68, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-ok, +.meter--circle .meter__tracks .meter__slice.color-index-ok, +.meter--arc .meter__thresholds .meter__slice.color-index-ok, +.meter--arc .meter__tracks .meter__slice.color-index-ok, +.meter--spiral .meter__thresholds .meter__slice.color-index-ok, +.meter--spiral .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(1, 169, 130, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-unknown, +.meter--circle .meter__tracks .meter__slice.color-index-unknown, +.meter--arc .meter__thresholds .meter__slice.color-index-unknown, +.meter--arc .meter__tracks .meter__slice.color-index-unknown, +.meter--spiral .meter__thresholds .meter__slice.color-index-unknown, +.meter--spiral .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(204, 204, 204, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-disabled, +.meter--circle .meter__tracks .meter__slice.color-index-disabled, +.meter--arc .meter__thresholds .meter__slice.color-index-disabled, +.meter--arc .meter__tracks .meter__slice.color-index-disabled, +.meter--spiral .meter__thresholds .meter__slice.color-index-disabled, +.meter--spiral .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(204, 204, 204, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-5, +.meter--circle .meter__tracks .meter__slice.color-index-graph-1, +.meter--circle .meter__tracks .meter__slice.color-index-graph-5, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-1, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-5, +.meter--arc .meter__tracks .meter__slice.color-index-graph-1, +.meter--arc .meter__tracks .meter__slice.color-index-graph-5, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-1, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-5 { + stroke: rgba(97, 124, 145, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, +.meter--circle .meter__tracks .meter__slice.color-index-graph-2, +.meter--circle .meter__tracks .meter__slice.color-index-graph-6, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-2, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-6, +.meter--arc .meter__tracks .meter__slice.color-index-graph-2, +.meter--arc .meter__tracks .meter__slice.color-index-graph-6, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-2, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(148, 171, 168, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, +.meter--circle .meter__tracks .meter__slice.color-index-graph-3, +.meter--circle .meter__tracks .meter__slice.color-index-graph-7, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-3, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-7, +.meter--arc .meter__tracks .meter__slice.color-index-graph-3, +.meter--arc .meter__tracks .meter__slice.color-index-graph-7, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-3, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(153, 142, 136, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, +.meter--circle .meter__tracks .meter__slice.color-index-graph-4, +.meter--circle .meter__tracks .meter__slice.color-index-graph-8, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-4, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-8, +.meter--arc .meter__tracks .meter__slice.color-index-graph-4, +.meter--arc .meter__tracks .meter__slice.color-index-graph-8, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-4, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(140, 102, 148, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, +.meter--circle .meter__tracks .meter__slice.color-index-accent-1, +.meter--circle .meter__tracks .meter__slice.color-index-accent-4, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-1, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-4, +.meter--arc .meter__tracks .meter__slice.color-index-accent-1, +.meter--arc .meter__tracks .meter__slice.color-index-accent-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-1, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(42, 210, 201, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-5, +.meter--circle .meter__tracks .meter__slice.color-index-accent-2, +.meter--circle .meter__tracks .meter__slice.color-index-accent-5, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-2, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-5, +.meter--arc .meter__tracks .meter__slice.color-index-accent-2, +.meter--arc .meter__tracks .meter__slice.color-index-accent-5, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-5, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-2, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-5 { + stroke: rgba(97, 71, 103, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-3, .meter--circle .meter__thresholds .meter__slice.color-index-accent-6, +.meter--circle .meter__tracks .meter__slice.color-index-accent-3, +.meter--circle .meter__tracks .meter__slice.color-index-accent-6, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-3, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-6, +.meter--arc .meter__tracks .meter__slice.color-index-accent-3, +.meter--arc .meter__tracks .meter__slice.color-index-accent-6, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-6, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-3, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-6 { + stroke: rgba(255, 141, 109, 0.5); } + +.meter--circle .meter__threshold, +.meter--arc .meter__threshold, +.meter--spiral .meter__threshold { + stroke-linecap: butt; } + +.meter--circle .meter__value-label, +.meter--arc .meter__value-label, +.meter--spiral .meter__value-label { + display: block; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc { + width: 192px; } } + +.meter--circle .meter__value, +.meter--arc .meter__value { + white-space: normal; + pointer-events: none; + text-align: center; } + +.meter--circle .meter__value--active, +.meter--arc .meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter--circle .meter__minmax-container, +.meter--arc:not(.meter--vertical) .meter__minmax-container { + width: 192px; } + +.meter--circle .meter__value, +.meter--arc:not(.meter--vertical) .meter__value { + position: absolute; + left: 50%; } + +.meter--circle.meter--small .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter--circle.meter--large .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--circle.meter--legend-right .meter__legend, +.meter--arc.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + +.meter--circle.meter--legend-right.meter--small .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { + top: 48px; } + +.meter--circle.meter--legend-right.meter--large .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { + top: 144px; } + +.meter--circle svg.meter__graphic { + width: 192px; + height: 192px; } + +.meter--circle .meter__value { + top: 96px; + -webkit-transform: translateX(-50%) translateY(-50%); + transform: translateX(-50%) translateY(-50%); + max-width: 144px; } + +.meter--circle.meter--small svg.meter__graphic { + width: 96px; + height: 96px; } + +.meter--circle.meter--small .meter__value { + top: 48px; + max-width: 72px; } + +.meter--circle.meter--large svg.meter__graphic { + width: 288px; + height: 288px; } + +.meter--circle.meter--large .meter__value { + top: 144px; + max-width: 216px; } + +.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { + position: static; + margin: 0 auto; + -webkit-transform: none; + transform: none; } + +.meter--arc:not(.meter--vertical) svg.meter__graphic { + width: 192px; + height: 144px; } + +.meter--arc:not(.meter--vertical) .meter__value { + top: 108px; + -webkit-transform: translateX(-50%); + transform: translateX(-50%); + max-width: 120px; } + +.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { + top: 72px; } + +.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; + height: 72px; } + +.meter--arc:not(.meter--vertical).meter--small .meter__value { + top: 60px; + max-width: 60px; } + +.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { + width: 288px; + height: 216px; } + +.meter--arc:not(.meter--vertical).meter--large .meter__value { + top: 156px; + max-width: 180px; } + +.meter--arc.meter--vertical svg.meter__graphic { + display: inline; + width: 144px; + height: 192px; } + +.meter--arc.meter--vertical .meter__value { + position: relative; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; + margin-left: -24px; + vertical-align: top; } + html.rtl .meter--arc.meter--vertical .meter__value { + margin-left: 0; + margin-right: -24px; } + +.meter--arc.meter--vertical .meter__minmax-container { + display: inline-block; + vertical-align: top; + margin-left: 12px; + padding-top: 12px; + padding-bottom: 12px; } + html.rtl .meter--arc.meter--vertical .meter__minmax-container { + margin-left: 0; + margin-right: 12px; } + +.meter--arc.meter--vertical.meter--small svg.meter__graphic { + width: 72px; + height: 96px; } + +.meter--arc.meter--vertical.meter--small .meter__value { + top: 48px; + margin-left: -12px; } + html.rtl .meter--arc.meter--vertical.meter--small .meter__value { + margin-left: 0; + margin-right: -12px; } + +.meter--arc.meter--vertical.meter--small .meter__minmax-container { + padding-top: 0px; + padding-bottom: 0px; } + +.meter--arc.meter--vertical.meter--large svg.meter__graphic { + width: 216px; + height: 288px; } + +.meter--arc.meter--vertical.meter--large .meter__value { + top: 144px; + margin-left: -48px; } + html.rtl .meter--arc.meter--vertical.meter--large .meter__value { + margin-left: 0; + margin-right: -48px; } + +.meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: -72px; } + html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: 0; + margin-right: -72px; } + +.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: -60px; } + html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: 0; + margin-right: -60px; } + +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { + min-width: 78px; } + +.meter--arc.meter--vertical.meter--legend-right .meter__value { + min-width: 120px; } + +.meter--spiral .meter__value { + position: absolute; + top: 0px; + right: 0px; + white-space: normal; + text-align: right; } + +.meter--spiral .meter__value-value { + display: block; + font-size: 24px; + font-size: 1.5rem; + line-height: 1; + margin-bottom: 6px; } + +.meter--spiral .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; + color: #777; + margin-left: 0.2em; } + html.rtl .meter--spiral .meter__value-units { + margin-left: 0; + margin-right: 0.2em; } + +.meter--spiral .meter__value-label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--loading .meter__thresholds, +.meter--loading .meter__value { + display: none; } .notification { font-size: 19px; @@ -4710,54 +5441,71 @@ a.active > .label .label__icon.control-icon svg { font-size: 19px; font-size: 1.1875rem; line-height: 24px; } - .notification--critical .notification__status .status-icon__base { + .notification:not(.notification--disabled) { + cursor: pointer; } + .notification:not(.notification--disabled):hover { + z-index: 1; + box-shadow: 0px 0px 0px 2px #01a982; } + .notification--status-critical .notification__status .status-icon__base { fill: #fff; } - .notification--critical .notification__status .status-icon__detail { + .notification--status-critical .notification__status .status-icon__detail { stroke: #F04953; fill: #F04953; } - .notification--critical .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-critical .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--error .notification__status .status-icon__base { + .notification--status-critical:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #F04953; } + .notification--status-error .notification__status .status-icon__base { fill: #fff; } - .notification--error .notification__status .status-icon__detail { + .notification--status-error .notification__status .status-icon__detail { stroke: #F04953; fill: #F04953; } - .notification--error .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-error .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--warning .notification__status .status-icon__base { + .notification--status-error:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #F04953; } + .notification--status-warning .notification__status .status-icon__base { fill: #fff; } - .notification--warning .notification__status .status-icon__detail { + .notification--status-warning .notification__status .status-icon__detail { stroke: #FFD144; fill: #FFD144; } - .notification--warning .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-warning .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--ok .notification__status .status-icon__base { + .notification--status-warning:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #FFD144; } + .notification--status-ok .notification__status .status-icon__base { fill: #fff; } - .notification--ok .notification__status .status-icon__detail { + .notification--status-ok .notification__status .status-icon__detail { stroke: #01a982; fill: #01a982; } - .notification--ok .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-ok .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--unknown .notification__status .status-icon__base { + .notification--status-ok:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #01a982; } + .notification--status-unknown .notification__status .status-icon__base { fill: #fff; } - .notification--unknown .notification__status .status-icon__detail { + .notification--status-unknown .notification__status .status-icon__detail { stroke: #CCCCCC; fill: #CCCCCC; } - .notification--unknown .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--disabled .notification__status .status-icon__base { + .notification--status-unknown:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #CCCCCC; } + .notification--status-disabled .notification__status .status-icon__base { fill: #fff; } - .notification--disabled .notification__status .status-icon__detail { + .notification--status-disabled .notification__status .status-icon__detail { stroke: #CCCCCC; fill: #CCCCCC; } - .notification--disabled .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } + .notification--status-disabled:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #CCCCCC; } .notifications-control__icon { width: 48px; @@ -4770,7 +5518,7 @@ a.active > .label .label__icon.control-icon svg { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .notifications__container { position: absolute; @@ -4780,8 +5528,8 @@ a.active > .label .label__icon.control-icon svg { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 0px; } .notifications__icon { position: absolute; @@ -4796,6 +5544,10 @@ a.active > .label .label__icon.control-icon svg { .number-input__input::-webkit-outer-spin-button, .number-input__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } + .number-input__input:invalid { + box-shadow: none; } + .number-input__input::-ms-clear { + display: none; } .object { overflow: auto; } @@ -4831,25 +5583,54 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; color: #777; } .object__attribute--array > .object__attribute-value > ol > li { - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li:last-child { - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li > ul { padding-top: 0px; padding-bottom: 0px; } -.paragraph--small { +.grommet .paragraph--align-start { + text-align: left; } + html.rtl .grommet .paragraph--align-start { + text-align: right; } + +.grommet .paragraph--align-center { + text-align: center; } + +.grommet .paragraph--align-right { + text-align: right; } + html.rtl .grommet .paragraph--align-right { + text-align: left; } + +.grommet .paragraph--margin-none { + margin-top: 0; + margin-bottom: 0; } + +.grommet .paragraph--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + +.grommet .paragraph--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + +.grommet .paragraph--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + +.grommet .paragraph.paragraph--small { font-size: 14px; font-size: 0.875rem; line-height: 1.71429; } - .paragraph--small a { + .grommet .paragraph.paragraph--small a { text-decoration: none; } -.paragraph--large { +.grommet .paragraph.paragraph--large { font-size: 24px; font-size: 1.5rem; line-height: 28px; } - .paragraph--large a { + .grommet .paragraph.paragraph--large a { color: #01a982; font-weight: 600; } @@ -4860,26 +5641,26 @@ a.active > .label .label__icon.control-icon svg { cursor: pointer; } .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #fff; } .radio-button__input { opacity: 0; position: absolute; } .radio-button__input:checked + .radio-button__control { border-color: #01a982; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #fff; } .radio-button__input:checked + .radio-button__control:after { content: ""; @@ -4891,7 +5672,7 @@ a.active > .label .label__icon.control-icon svg { height: 10px; background-color: #01a982; border-radius: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control:after { background-color: #fff; } .radio-button__input:focus + .radio-button__control { content: ""; @@ -4911,12 +5692,12 @@ a.active > .label .label__icon.control-icon svg { html.rtl .radio-button__control { margin-right: 0; margin-left: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__control { - border-color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__control { + border-color: rgba(255, 255, 255, 0.7); } .radio-button__label { color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__label { - color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__label { + color: rgba(255, 255, 255, 0.85); } .radio-button--disabled .radio-button__control { opacity: 0.5; } @@ -4927,121 +5708,193 @@ a.active > .label .label__icon.control-icon svg { margin: -1px; border: 1px solid #2AD2C9; box-shadow: 0 0 1px 1px #2AD2C9; } - .search--controlled { - cursor: pointer; } - .search__input { - margin-right: 0px; } - .header .search__input { - font-size: inherit; } - .search__drop { - font-size: 20px; - font-size: 1.25rem; + +.search--controlled { + cursor: pointer; } + +.search__input { + margin-right: 0px; } + .header .search__input { + font-size: inherit; line-height: inherit; } + .search__input::-ms-clear { + display: none; } + +.search__drop { + font-size: 20px; + font-size: 1.25rem; + line-height: inherit; } + @media screen and (max-width: 44.9375em) { + .search__drop { + max-width: 100%; + width: 100vw; } } + .search__drop input { + margin-right: 0px; + box-sizing: border-box; + width: 100%; } @media screen and (max-width: 44.9375em) { - .search__drop { - max-width: 100%; - width: 100vw; } } - .search__drop--inline { - margin-left: -1px; } - .search__drop--inline .search__drop-contents { - display: block; } - .search__drop--controlled .search__drop-contents { - display: inline-block; } - .search__drop input { - margin-right: 0px; - box-sizing: border-box; - width: 100%; } - @media screen and (max-width: 44.9375em) { - .search__drop input { - width: calc(100vw - 72px); } } - .search__drop-control { - vertical-align: top; - height: 48px; } - .search__drop .search__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search__drop--large { - line-height: 96px; } - .search--inline { - position: relative; } - .search--inline .search__input { - width: 100%; - box-sizing: border-box; - padding-right: 47px; } - .search--inline .search__input:focus { - padding-right: 46px; } - html.rtl .search--inline .search__input { - padding-right: 23px; - padding-left: 47px; } - html.rtl .search--inline .search__input:focus { - padding-right: 22px; - padding-left: 46px; } - .header .search--inline .search__input:not(:focus) { - border-color: transparent; } - .search--inline .control-icon-search { - position: absolute; - right: 12px; - top: 50%; - transform: translateY(-50%); - pointer-events: none; } - html.rtl .search--inline .control-icon-search { - right: auto; - left: 12px; } - .search--small { - line-height: 24px; } - .search--small .search__input { - font-size: 14px; - font-size: 0.875rem; - line-height: 14px; - padding: 4px 13px; - padding-right: 23px; } - .search--small .search__input:focus { - padding: 3px 12px; - padding-right: 22px; } - .search--small .control-icon-search { - height: 12px; - width: 12px; } - .search--large { - line-height: triple(24px); } - .search--large .search__input { - font-size: 36px; - font-size: 2.25rem; - line-height: 48px; - padding: -7px 35px; - padding-right: 47px; } - .search--large .control-icon-search { - right: 24px; } + .search__drop input { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion { + padding: 6px 24px; + cursor: pointer; } + @media screen and (max-width: 44.9375em) { + .search__drop .search__suggestion { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } -.search-input { - position: relative; +.search__drop-control { + vertical-align: top; + height: 48px; } + +.search__drop--controlled .search__drop-contents { display: inline-block; } - .search-input__input { + +.search__drop--large { + line-height: 96px; } + +.search--inline { + position: relative; } + .search--inline .search__input { width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .search-input__input:focus { - padding-right: 59px; } - .search-input__control { + box-sizing: border-box; + padding-left: 11px; + padding-right: 47px; + border-radius: 0; + -webkit-appearance: none; } + .search--inline .search__input:focus { + padding-left: 10px; + padding-right: 46px; } + html.rtl .search--inline .search__input { + padding-right: 11px; + padding-left: 47px; } + html.rtl .search--inline .search__input:focus { + padding-right: 11px; + padding-left: 46px; } + .header .search--inline .search__input:not(:focus) { + border-color: transparent; } + .search--inline .control-icon-search { position: absolute; + right: 12px; top: 50%; transform: translateY(-50%); - right: 12px; } - .search-input__suggestions { - border-top-left-radius: 0px; - border-top-right-radius: 0px; - margin: 0px; - list-style-type: none; } - .search-input__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search-input__suggestion:hover, .search-input__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search-input--active .search-input__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + pointer-events: none; } + html.rtl .search--inline .control-icon-search { + right: auto; + left: 12px; } + +.search--small .search__input { + font-size: 19px; + font-size: 1.1875rem; + line-height: inherit; + padding: 4px 18px; + padding-right: 23px; } + .search--small .search__input:focus { + padding: 3px 17px; + padding-right: 22px; } + +.search--large .search__input { + font-size: 54px; + font-size: 3.375rem; + line-height: normal; + padding: 12px 24px; + padding-right: 72px; } + .search--large .search__input:focus { + padding: 11px 71px; + padding-left: 23px; } + @media screen and (max-width: 44.9375em) { + .search--large .search__input:focus { + padding: 10px 22px; + padding-right: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--large .search__input { + font-size: inherit; + padding: 11px 23px; + padding-right: 47px; + line-height: 1.5; } } + +.search--large .control-icon-search { + right: 24px; + width: 48px; + height: 48px; } + @media screen and (max-width: 44.9375em) { + .search--large .control-icon-search { + right: 12px; + width: 24px; + height: 24px; } } + @media screen and (min-width: 45em) { + .search--large .control-icon-search { + transition: none; } } + +.search--icon-align-start.search--inline .search__input { + padding-left: 47px; + padding-right: 23px; } + .search--icon-align-start.search--inline .search__input:focus { + padding-left: 46px; + padding-right: 23px; } + +.search--icon-align-start.search--inline .control-icon-search { + left: 12px; } + +.search--icon-align-start.search--large .search__input { + padding-left: 72px; + padding-right: 24px; } + .search--icon-align-start.search--large .search__input:focus { + padding-left: 71px; + padding-right: 23px; } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input:focus { + padding: 10px 22px; + padding-left: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input { + padding: 11px 23px; + padding-left: 47px; } } + +.search--fill { + width: 100%; + max-width: none; + flex-grow: 1; } + +.search-input { + position: relative; + display: inline-block; } + +.grommet .search-input__input, +.search-input__input { + width: 100%; + height: 100%; + display: block; + padding-right: 48px; } + .grommet .search-input__input:focus, + .search-input__input:focus { + padding-right: 47px; } + .grommet .search-input__input::-ms-clear, + .search-input__input::-ms-clear { + display: none; } + +.search-input__control { + position: absolute; + top: 50%; + transform: translateY(-50%); + right: 6px; } + +.search-input__suggestions { + border-top-left-radius: 0px; + border-top-right-radius: 0px; + margin: 0px; + list-style-type: none; } + +.search-input__suggestion { + padding: 6px 24px; + cursor: pointer; } + .search-input__suggestion:hover, .search-input__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } + +.search-input--active .search-input__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } section:not(.section) { padding-top: 24px; @@ -5114,7 +5967,7 @@ section > dl > dd { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .session__container { position: absolute; @@ -5124,8 +5977,8 @@ section > dl > dd { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 0px; } .session .react-gravatar { position: absolute; @@ -5134,7 +5987,7 @@ section > dl > dd { .session__actions { margin-top: 24px; padding-top: 24px; - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .session a { cursor: pointer; } @@ -5159,7 +6012,7 @@ section > dl > dd { display: flex; flex-direction: column; } .sidebar--fixed > * { - flex: 1; + flex: 1 1 auto; overflow: auto; } .sidebar--fixed > *.header, .sidebar--fixed > *.footer { flex: 0 0 auto; } @@ -5215,41 +6068,62 @@ section > dl > dd { .skip-link-anchor { width: 0; height: 0; - overflow: hidden; } + overflow: hidden; + position: absolute; } .tab { - padding: 12px; } + padding: 0 12px; } + .tabs--justify-start .tab:first-of-type, + .tabs--justify-end .tab:first-of-type { + padding-left: 0; } + .tabs--justify-start .tab:last-of-type, + .tabs--justify-end .tab:last-of-type { + padding-right: 0; } + @media screen and (max-width: 44.9375em) { + .tabs--responsive .tab:first-of-type, + .tabs--responsive .tab:last-of-type { + padding-left: 12px; + padding-right: 12px; } } .tab a { + display: inline-block; text-decoration: none; } .tab a:hover, .tab a:visited, .tab a:link, .tab a:active { text-decoration: none; } - .tab a:focus .tab__label { - border-bottom: 4px solid; } + .tab a:focus:not(tab--active .tab__link) .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tab__label { + display: inline-block; cursor: pointer; - padding-bottom: 12px; - font-weight: 600; - color: #777; } - .tab--active .tab__label { + padding-bottom: 10px; + color: #777; + border-bottom: 4px solid transparent; } + .tab--active .tab__label, + .tab--active .tab__link:hover .tab__label { color: #000; - border-bottom: 4px solid #000; } - .tab:hover .tab__label, .tab:focus .tab__label { - border-bottom: 4px solid; } + border-color: #000; } + .tab:hover .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tabs { - margin: 0; + margin: 12px 0; padding: 0; display: flex; flex-wrap: wrap; - justify-content: center; align-items: center; list-style: none; - border-bottom: 1px solid #ccc; } - .tabs__content { - padding: 24px; } - @media screen and (max-width: 44.9375em) { - .tabs__content { - padding: 24px 0; } } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + .tabs--justify-center { + justify-content: center; } + .tabs--justify-start { + justify-content: flex-start; } + .tabs--justify-end { + justify-content: flex-end; } + @media screen and (max-width: 44.9375em) { + .tabs--justify-start.tabs--responsive, .tabs--justify-center.tabs--responsive, .tabs--justify-end.tabs--responsive { + flex-direction: column; + text-align: center; } } + .tabs + div:focus { + outline: none; } .table table { width: 100%; } @@ -5271,7 +6145,7 @@ section > dl > dd { font-size: 20px; font-size: 1.25rem; line-height: 1.2; - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .table__mirror { position: absolute; @@ -5281,9 +6155,6 @@ section > dl > dd { .table__mirror > thead { position: fixed; background-color: rgba(255, 255, 255, 0.9); } - @media screen and (max-width: 44.9375em) { - .table__mirror > thead { - position: static; } } .table__more { margin-top: 24px; @@ -5291,6 +6162,10 @@ section > dl > dd { .table--scrollable { position: relative; } + .table--scrollable .table__table thead { + visibility: hidden; } + .table--scrollable .table__table th { + border-bottom: none; } .table--selectable tbody tr { cursor: pointer; } @@ -5299,23 +6174,69 @@ section > dl > dd { .table--selectable tbody tr.table-row--selected td { background-color: #d0f3eb; color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr.table-row--selected td { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr.table-row--selected td { background-color: rgba(0, 0, 0, 0.2); color: #fff; } .table--selectable tbody tr:hover:not(.table-row--selected) td { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { color: #fff; } +.table--small thead { + display: none; } + +.table--small td { + display: block; } + .table--small td:before { + font-weight: 100; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + content: attr(data-th); + display: block; + padding-right: 12px; } + +.table--small tr { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.table--small td, +.table--small th { + padding-left: 24px; } + .tag { - background-color: rgba(128, 128, 128, 0.6); - padding: 3px 6px; + padding: 6px 22px; + background-color: transparent; + border: 2px solid #01a982; + border-radius: 0px; + color: #333; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + cursor: pointer; + text-align: center; + outline: none; + min-width: 120px; + max-width: 384px; + border-color: rgba(51, 51, 51, 0.6); + margin: 0 12px 12px 0; position: relative; - margin: 0 12px 12px 0; } - .tag .tag--label { - color: #fff; + opacity: 0.7; } + .tag:focus:not(.button--disabled) { + border-color: #2AD2C9; + box-shadow: 0 0 1px 1px #2AD2C9; } + @media screen and (min-width: 45em) { + .tag { + transition: 0.1s ease-in-out; } } + .tag a, + .tag a:hover, + .tag .anchor:hover:not(.anchor--disabled) { + color: #333; text-decoration: none; } + .tag:hover { + box-shadow: 0px 0px 0px 2px rgba(51, 51, 51, 0.6); + opacity: 1; } .tbd { text-align: center; @@ -5324,23 +6245,12 @@ section > dl > dd { font-size: 6rem; line-height: 1; font-style: italic; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); color: #fff; } .tiles { width: 100%; padding: 12px; } - @media screen and (min-width: 45em) { - .tiles.box--direction-row > .tile { - flex: 0 0 192px; } - .tiles.box--direction-row > .tile > * { - box-sizing: border-box; } - .tiles.box--direction-row > .tile--wide { - box-sizing: border-box; } - .tiles.box--direction-row:not(.tiles--flush) > .tile { - margin: 12px; } - .tiles.box--direction-row:not(.tiles--flush) > .tile--wide { - flex-basis: calc(100% - 24px); } } .tiles__container { display: flex; flex-direction: row; @@ -5355,6 +6265,16 @@ section > dl > dd { .tiles__container .tiles.box--direction-row { width: 100%; overflow: hidden; } + .tiles > .tile { + flex-grow: 0; + flex-shrink: 0; } + @media screen and (min-width: 45em) { + .tiles > .tile { + flex-basis: 192px; } } + .tiles:not(.tiles--flush) > .tile { + margin: 12px; } + .tiles:not(.tiles--flush) > .tile--wide { + flex-basis: calc(100% - 24px); } .tiles--fill.box--wrap { justify-content: space-around; } .tiles--fill.box--wrap > .tile { @@ -5381,16 +6301,14 @@ section > dl > dd { background-color: #d0f3eb; color: #333; } .tiles--selectable .tile:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - .tiles--small > .tile { - flex-basis: 96px; } + @media screen and (min-width: 45em) { + .tiles--small > .tile { + flex-basis: 96px; } } @media screen and (min-width: 45em) { .tiles--large > .tile { flex-basis: 384px; } } - @media screen and (max-width: 44.9375em) { - .tiles--large > .tile { - flex-basis: 100%; } } .tiles:focus { outline: #2AD2C9 solid 1px; } @@ -5410,7 +6328,7 @@ section > dl > dd { background-color: #d0f3eb; color: #333; } .tile--selectable:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .tile--eclipsed { opacity: 0.2; } @@ -5439,9 +6357,13 @@ section > dl > dd { text-decoration: none; } [class*="background-color-index-"] .title a:hover { text-decoration: underline; } + .title span { + overflow: hidden; + text-overflow: ellipsis; } .title svg, .title img { - max-width: 576px; } + max-width: 576px; + flex: 0 0 auto; } .title svg:not(:last-child), .title img:not(:last-child) { margin-right: 12px; } @@ -5453,7 +6375,7 @@ section > dl > dd { .title--interactive:hover { color: #01a982; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .title--interactive:hover { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .title--interactive:hover { color: #fff; } @media screen and (max-width: 44.9375em) { .title--responsive svg, @@ -5509,7 +6431,7 @@ section > dl > dd { .topology__part > .topology__parts .topology__part { flex: 1; } .topology__part--demarcate { - border: 1px solid #ccc; } + border: 1px solid rgba(0, 0, 0, 0.15); } .topology__part--demarcate.topology__part--empty { background-color: #f5f5f5; min-width: 24px; @@ -5578,16 +6500,13 @@ section > dl > dd { display: flex; align-items: center; text-align: left; - padding: 24px; - background-color: rgba(51, 51, 51, 0.7); - color: #dbdbdb; - border-radius: 0px; } + padding: 24px; } .video__control.button--primary { flex: 0 0 auto; width: 96px; height: 96px; border-radius: 48px; - background-color: rgba(1, 169, 130, 0.7); } + background-color: rgba(1, 169, 130, 0.8); } .video__control.button--primary:hover { background-color: #01a982; } .video__title { @@ -5598,13 +6517,13 @@ section > dl > dd { right: 0px; bottom: 0px; height: 72px; - color: #dbdbdb; + color: rgba(255, 255, 255, 0.85); background-color: rgba(51, 51, 51, 0.7); } .video__timeline-chapter { position: absolute; height: 100%; padding-left: 6px; - border-left: 2px solid #dbdbdb; + border-left: 2px solid rgba(255, 255, 255, 0.7); text-align: left; cursor: pointer; } .video__timeline-chapter:hover { @@ -5625,6 +6544,13 @@ section > dl > dd { .video__progress-meter { height: 100%; background-color: #01a982; } + .video--titled .video__summary { + background-color: rgba(51, 51, 51, 0.7); + color: rgba(255, 255, 255, 0.85); + border-radius: 0px; + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; } .video--playing:not(.video--interacting) .video__summary, .video--playing:not(.video--interacting) .video__timeline, .video--playing:not(.video--interacting) .video__progress { @@ -5645,25 +6571,25 @@ section > dl > dd { .button { letter-spacing: 0.04167em; } - .button:not(.button--disabled):not(.button--icon):not(.button--fill):hover { + .button:not(.button--disabled):not(.button--plain):not(.button--fill):hover { box-shadow: 0px 0px 0px 2px #01a982; } - .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--primary:hover { + .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--primary:hover { box-shadow: 0px 0px 0px 2px #01a982; } - .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--secondary:hover { + .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--secondary:hover { box-shadow: 0px 0px 0px 2px rgba(51, 51, 51, 0.6); } - .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--accent:hover { + .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--accent:hover { box-shadow: 0px 0px 0px 2px #ff8d6d; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled):not(.button--icon):not(.button--fill):hover { - box-shadow: 0px 0px 0px 2px #eee; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--primary:hover { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled):not(.button--plain):not(.button--fill):hover { + box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--primary:hover { box-shadow: 0px 0px 0px 2px #01a982; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--secondary:hover { - box-shadow: 0px 0px 0px 2px #eee; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--accent:hover { + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--secondary:hover { + box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent-1"]):not([class*="background-color-index-accent-3"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--accent:hover { box-shadow: 0px 0px 0px 2px #ff8d6d; } - .button--fill:not(.button--disabled):not(.button--icon):hover { + .button--fill:not(.button--disabled):not(.button--plain):hover { padding: 4px 20px; border-width: 4px; } @media screen and (min-width: 45em) { - .button--fill:not(.button--disabled):not(.button--icon) { + .button--fill:not(.button--disabled):not(.button--plain) { transition: none; } } diff --git a/css/grommet-hpe.min.css b/css/grommet-hpe.min.css index c467c8c..3055e35 100644 --- a/css/grommet-hpe.min.css +++ b/css/grommet-hpe.min.css @@ -1,4 +1,4 @@ -@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/MetricWeb-Regular.woff) format("woff")}@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/MetricWeb-Bold.woff) format("woff");font-weight:700}@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/MetricWeb-Semibold.woff) format("woff");font-weight:600}@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/MetricWeb-Light.woff) format("woff");font-weight:100} +@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Regular.woff) format("woff")}@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Bold.woff) format("woff");font-weight:700}@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Semibold.woff) format("woff");font-weight:600}@font-face{font-family:Metric;src:url(https://hpefonts.s3.amazonaws.com/web/MetricHPE-Web-Light.woff) format("woff");font-weight:100} /*! * inuitcss, by @csswizardry @@ -6,4 +6,4 @@ * github.com/inuitcss | inuitcss.com */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,html{font-family:Metric,Arial,sans-serif}body,html{font-size:16px;font-size:1rem;line-height:24px}h1{font-size:48px;font-size:3rem;line-height:1.125}h2{font-size:36px;font-size:2.25rem;line-height:1.33333}h3{font-size:24px;font-size:1.5rem;line-height:1.25}h4,h5{font-size:18px;font-size:1.125rem;line-height:1.33333}h1,h2,h3,h4,h5{font-weight:100;max-width:100%}h1.header--strong,h1>strong,h2.header--strong,h2>strong,h3.header--strong,h3>strong,h4.header--strong,h4>strong,h5.header--strong,h5>strong{font-weight:600}h1 a,h1 a.anchor,h2 a,h2 a.anchor,h3 a,h3 a.anchor,h4 a,h4 a.anchor,h5 a,h5 a.anchor{color:inherit;text-decoration:none}h1 a.anchor:hover,h1 a:hover,h2 a.anchor:hover,h2 a:hover,h3 a.anchor:hover,h3 a:hover,h4 a.anchor:hover,h4 a:hover,h5 a.anchor:hover,h5 a:hover{text-decoration:none}dd,li,p{max-width:576px;margin-left:0}dd{margin-bottom:12px}p{margin-top:24px;margin-bottom:24px}blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}b,strong{font-weight:600}code.hljs{border:1px solid #ccc}.large-number-font{font-family:Metric,Arial,sans-serif}.secondary{color:#777}.error{color:#f04953}input,select,textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid #ccc;border-radius:0;outline:none;margin-right:12px;background-color:transparent}html.rtl input,html.rtl select,html.rtl textarea{margin-right:0;margin-left:12px}input:focus,select:focus,textarea:focus{padding:10px 22px;border-width:2px;border-color:#2ad2c9}input::-moz-focus-inner,select::-moz-focus-inner,textarea::-moz-focus-inner{border:none;outline:none}input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#aaa}input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#aaa}input:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#aaa}input.error,select.error,textarea.error{border-color:#f04953}input[type=button],input[type=submit]{text-align:center;line-height:inherit}select{border-color:#ccc;padding-right:24px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right;cursor:pointer}select::-moz-focus-inner{border:none}select.plain{border:none}input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}input[type=range]:focus{outline:none}input[type=range]::-moz-focus-inner,input[type=range]::-moz-focus-outer{border:none}input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#01a982;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:before{background-color:#fff}input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #01a982;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #01a982;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-ms-fill-lower{background:#01a982;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-lower{background:#fff}input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-thumb{border-color:#fff}input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}body.rtl,html.rtl{direction:rtl}@media screen and (min-width:45em){body,html{height:100%;width:100%;overflow:visible}}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,a{text-decoration:underline;cursor:pointer}.anchor,.anchor:visited,a,a:visited{color:inherit}.anchor.active,a.active{color:#333}.anchor:hover:not(.anchor--disabled),a:hover:not(.anchor--disabled){text-decoration:underline;color:#000}.anchor__icon,a__icon{display:inline-block;padding:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) a{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor.anchor--primary,a.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;color:#049371;text-decoration:none}.anchor.anchor--primary .control-icon,a.anchor--primary .control-icon{stroke:#049371;margin-right:12px}html.rtl .anchor.anchor--primary .control-icon,html.rtl a.anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor.anchor--primary>span,a.anchor--primary>span{vertical-align:middle}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon{transform:translateX(3px);stroke:#049371}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline{stroke-width:3px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor--disabled,a--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon,a--disabled .control-icon{cursor:default}#loading{position:absolute;width:100%;height:100%;background-color:#ddd;text-align:center;padding-top:100px;font-size:48px;color:#ccc;font-style:italic}@media screen and (min-width:45em){.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.app--inline{position:relative}.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:center center;background-size:cover;background-repeat:no-repeat}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.box__container--full{max-width:100%;width:100vw}.layer__container .box__container--full{width:calc(100vw - 48px)}.box__container--full-horizontal{max-width:100%;width:100vw}.layer__container .box__container--full-horizontal{width:calc(100vw - 48px)}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box--wrap{flex-wrap:wrap}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box--full{position:relative;max-width:100%;width:100vw;min-height:100vh;height:100%}.layer__container .box--full{width:calc(100vw - 48px)}.box--full-horizontal{max-width:100%;width:100vw}.layer__container .box--full-horizontal{width:calc(100vw - 48px)}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid #ccc}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid #ccc}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid #ccc}@media screen and (max-width:44.9375em){.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:none;border-bottom:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:none;border-bottom:1px solid #ccc}}[class*=background-color-index-] .box[class*=box--separator]{border-color:#eee}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box--direction-down,.box--direction-up{flex-direction:column}.box--direction-left{justify-content:flex-end}.box--flush{padding:0}.brick{box-shadow:1px 1px 5px #eee;padding:24px;position:relative;margin:0 12px 12px 0;float:left;max-width:calc(100% - 12px)}.brick .brick--label{position:absolute;top:0;right:0;left:0;bottom:0}.brick .brick--label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.brick--content-wrapper{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}button:not(.button),input[type=button],input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #01a982;border-radius:0;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}button:not(.button):focus:not(.button--disabled),input[type=button]:focus:not(.button--disabled),input[type=submit]:focus:not(.button--disabled){border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}@media screen and (min-width:45em){button:not(.button),input[type=button],input[type=submit]{transition:.1s ease-in-out}}.button{padding:6px 22px;background-color:transparent;border:2px solid #01a982;border-radius:0;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#01a982;background-color:#01a982;color:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#ff8d6d}.button--icon{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none}.button--icon.button--primary{background-color:#01a982}.button--icon>span:not(.button__icon){vertical-align:middle}.button--icon>span:not(.button__icon):first-child{margin-left:12px}.button--icon>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary){border-color:#eee;color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary).button--accent{border-color:#ff8d6d}.button--disabled{opacity:.3;cursor:default}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:rgba(0,0,0,.1)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#01a982;color:#dbdbdb}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:#fff;stroke-width:1px}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#01a982;fill:#01a982}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#01a982;fill:#01a982}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:#ccc}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.chart__graphic:focus{outline:1px solid #2ad2c9}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#01a982}.chart__values-line.color-index-critical,.chart__values-line.color-index-error{stroke:#f04953}.chart__values-line.color-index-warning{stroke:#ffd144}.chart__values-line.color-index-ok{stroke:#01a982}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#ccc}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-5{stroke:#617c91}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-6{stroke:#94aba8}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-7{stroke:#998e88}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-8{stroke:#8c6694}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-5{stroke:#333}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-6{stroke:#3b3b3b}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-7{stroke:#434343}.chart__values-line.color-index-grey-4,.chart__values-line.color-index-grey-8{stroke:#666}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-3{stroke:#2ad2c9}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-4{stroke:#614767}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-area.color-index-error,.chart__values-bar.color-index-critical,.chart__values-bar.color-index-error{fill:rgba(240,73,83,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(255,209,68,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(1,169,130,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,80%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-5,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-5{fill:rgba(97,124,145,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-6{fill:rgba(148,171,168,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-7{fill:hsla(21,8%,57%,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-8{fill:rgba(140,102,148,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#01a982}.chart__values-area--active.color-index-critical,.chart__values-area--active.color-index-error,.chart__values-bar--active.color-index-critical,.chart__values-bar--active.color-index-error{fill:#f04953}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#ffd144}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#01a982}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#ccc}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-5{fill:#617c91}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-6{fill:#94aba8}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-7{fill:#998e88}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-8{fill:#8c6694}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-3{fill:#2ad2c9}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-4{fill:#614767}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-5{fill:#333}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-6{fill:#3b3b3b}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-7,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-7{fill:#434343}.chart__values-area--active.color-index-grey-4,.chart__values-area--active.color-index-grey-8,.chart__values-bar--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-8{fill:#666}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#01a982}.chart__values-point.color-index-critical,.chart__values-point.color-index-error{stroke:#f04953}.chart__values-point.color-index-warning{stroke:#ffd144}.chart__values-point.color-index-ok{stroke:#01a982}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#ccc}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-5{stroke:#617c91}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-6{stroke:#94aba8}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-7{stroke:#998e88}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-8{stroke:#8c6694}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-5{stroke:#333}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-6{stroke:#3b3b3b}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-7{stroke:#434343}.chart__values-point.color-index-grey-4,.chart__values-point.color-index-grey-8{stroke:#666}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-3{stroke:#2ad2c9}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-4{stroke:#614767}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#01a982}.chart__values--loading.color-index-critical,.chart__values--loading.color-index-error{stroke:#f04953}.chart__values--loading.color-index-warning{stroke:#ffd144}.chart__values--loading.color-index-ok{stroke:#01a982}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#ccc}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-5{stroke:#617c91}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-6{stroke:#94aba8}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-7{stroke:#998e88}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-8{stroke:#8c6694}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-5{stroke:#333}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-6{stroke:#3b3b3b}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-7{stroke:#434343}.chart__values--loading.color-index-grey-4,.chart__values--loading.color-index-grey-8{stroke:#666}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-3{stroke:#2ad2c9}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-4{stroke:#614767}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical,.chart__yaxis .chart__bar.color-index-error{fill:rgba(240,73,83,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(255,209,68,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(1,169,130,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,80%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-5{fill:rgba(97,124,145,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(148,171,168,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-7{fill:hsla(21,8%,57%,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(140,102,148,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#01a982}.chart__cursor-point.color-index-critical,.chart__cursor-point.color-index-error{fill:#f04953}.chart__cursor-point.color-index-warning{fill:#ffd144}.chart__cursor-point.color-index-ok{fill:#01a982}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#ccc}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-5{fill:#617c91}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-6{fill:#94aba8}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-7{fill:#998e88}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-8{fill:#8c6694}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-3{fill:#2ad2c9}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-4{fill:#614767}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-5{fill:#333}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-6{fill:#3b3b3b}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-7{fill:#434343}.chart__cursor-point.color-index-grey-4,.chart__cursor-point.color-index-grey-8{fill:#666}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#f04953}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#f04953;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#f04953;stop-opacity:0}.chart--area .chart__gradient.color-index-error .begin,.chart--bar .chart__gradient.color-index-error .begin{stop-color:#f04953}.chart--area .chart__gradient.color-index-error .mid,.chart--bar .chart__gradient.color-index-error .mid{stop-color:#f04953;stop-opacity:.5}.chart--area .chart__gradient.color-index-error .end,.chart--bar .chart__gradient.color-index-error .end{stop-color:#f04953;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#ffd144}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#ffd144;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#ffd144;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#01a982}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#01a982;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#01a982;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#ccc}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#ccc;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#ccc;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#ccc}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#ccc;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#ccc;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin{stop-color:#617c91}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid{stop-color:#617c91;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-5 .end{stop-color:#617c91;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#94aba8}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#94aba8;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#94aba8;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#998e88}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#998e88;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#998e88;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#8c6694}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#8c6694;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#8c6694;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#01a982}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-area.color-index-error,.chart--sparkline .chart__values-bar.color-index-critical,.chart--sparkline .chart__values-bar.color-index-error{fill:#f04953}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#ffd144}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#01a982}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#ccc}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-5{fill:#617c91}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#94aba8}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#998e88}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#8c6694}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-3{fill:#2ad2c9}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#614767}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#333}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#3b3b3b}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-7,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-7{fill:#434343}.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-area.color-index-grey-8,.chart--sparkline .chart__values-bar.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-8{fill:#666}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#01a982}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:0}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control{border-color:#dbdbdb}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#01a982}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__label{color:#dbdbdb}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#01a982}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#01a982;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}.background-color-index-dark{color:#fff}.background-color-index-neutral-1,.background-color-index-neutral-5{background-color:#425563;color:#fff}.background-color-index-neutral-1-a,.background-color-index-neutral-5-a{background-color:rgba(66,85,99,.8);color:#fff}.background-color-index-neutral-2,.background-color-index-neutral-6{background-color:#5f7a76;color:#fff}.background-color-index-neutral-2-a,.background-color-index-neutral-6-a{background-color:rgba(95,122,118,.8);color:#fff}.background-color-index-neutral-3,.background-color-index-neutral-7{background-color:#80746e;color:#fff}.background-color-index-neutral-3-a,.background-color-index-neutral-7-a{background-color:hsla(20,8%,47%,.8);color:#fff}.background-color-index-neutral-4,.background-color-index-neutral-8{background-color:#767676;color:#fff}.background-color-index-neutral-4-a,.background-color-index-neutral-8-a{background-color:hsla(0,0%,46%,.8);color:#fff}.background-color-index-accent-1,.background-color-index-accent-3{background-color:#2ad2c9;color:#fff}.background-color-index-accent-1-a,.background-color-index-accent-3-a{background-color:rgba(42,210,201,.8);color:#fff}.background-color-index-accent-2,.background-color-index-accent-4{background-color:#614767;color:#fff}.background-color-index-accent-2-a,.background-color-index-accent-4-a{background-color:rgba(97,71,103,.8);color:#fff}.background-color-index-grey-1,.background-color-index-grey-5{background-color:#333;color:#fff}.background-color-index-grey-1-a,.background-color-index-grey-5-a{background-color:rgba(51,51,51,.8);color:#fff}.background-color-index-grey-2,.background-color-index-grey-6{background-color:#3b3b3b;color:#fff}.background-color-index-grey-2-a,.background-color-index-grey-6-a{background-color:rgba(59,59,59,.8);color:#fff}.background-color-index-grey-3,.background-color-index-grey-7{background-color:#434343;color:#fff}.background-color-index-grey-3-a,.background-color-index-grey-7-a{background-color:rgba(67,67,67,.8);color:#fff}.background-color-index-grey-4,.background-color-index-grey-8{background-color:#666;color:#fff}.background-color-index-grey-4-a,.background-color-index-grey-8-a{background-color:hsla(0,0%,40%,.8);color:#fff}.background-color-index-graph-1,.background-color-index-graph-5{background-color:#617c91;color:#fff}.background-color-index-graph-2,.background-color-index-graph-6{background-color:#94aba8;color:#fff}.background-color-index-graph-3,.background-color-index-graph-7{background-color:#998e88;color:#fff}.background-color-index-graph-4,.background-color-index-graph-8{background-color:#8c6694;color:#fff}.background-color-index-critical,.background-color-index-error{background-color:#f04953;color:#fff}.background-color-index-warning{background-color:#ffd144}.background-color-index-ok{background-color:#01a982;color:#fff}.background-color-index-disabled,.background-color-index-unknown{background-color:#ccc}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff;color:#333}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5;color:#333}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative;display:block}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__graphic:focus{outline:1px solid #2ad2c9}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#01a982}.distribution__item-box.color-index-critical,.distribution__item-box.color-index-error{fill:#f04953}.distribution__item-box.color-index-warning{fill:#ffd144}.distribution__item-box.color-index-ok{fill:#01a982}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#ccc}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-5{fill:#617c91}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-6{fill:#94aba8}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-7{fill:#998e88}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-8{fill:#8c6694}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-3{fill:#2ad2c9}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-4{fill:#614767}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-5{fill:#333}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-6{fill:#3b3b3b}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-7{fill:#434343}.distribution__item-box.color-index-grey-4,.distribution__item-box.color-index-grey-8{fill:#666}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#01a982}.distribution__item-icons.color-index-critical,.distribution__item-icons.color-index-error{stroke:#f04953}.distribution__item-icons.color-index-warning{stroke:#ffd144}.distribution__item-icons.color-index-ok{stroke:#01a982}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#ccc}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-5{stroke:#617c91}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-6{stroke:#94aba8}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-7{stroke:#998e88}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-8{stroke:#8c6694}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-5{stroke:#333}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-6{stroke:#3b3b3b}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-7{stroke:#434343}.distribution__item-icons.color-index-grey-4,.distribution__item-icons.color-index-grey-8{stroke:#666}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-3{stroke:#2ad2c9}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-4{stroke:#614767}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;padding:6px 12px;font-family:Metric,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-accent-1,.distribution__label.color-index-accent-2,.distribution__label.color-index-accent-3,.distribution__label.color-index-accent-4,.distribution__label.color-index-brand,.distribution__label.color-index-critical,.distribution__label.color-index-error,.distribution__label.color-index-graph-1,.distribution__label.color-index-graph-2,.distribution__label.color-index-graph-3,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-5,.distribution__label.color-index-graph-6,.distribution__label.color-index-graph-7,.distribution__label.color-index-graph-8,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-2,.distribution__label.color-index-grey-3,.distribution__label.color-index-grey-4,.distribution__label.color-index-grey-5,.distribution__label.color-index-grey-6,.distribution__label.color-index-grey-7,.distribution__label.color-index-grey-8,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-neutral-7,.distribution__label.color-index-neutral-8,.distribution__label.color-index-ok{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#01a982}.distribution__loading-indicator.color-index-critical,.distribution__loading-indicator.color-index-error{stroke:#f04953}.distribution__loading-indicator.color-index-warning{stroke:#ffd144}.distribution__loading-indicator.color-index-ok{stroke:#01a982}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#ccc}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-5{stroke:#617c91}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-6{stroke:#94aba8}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-7{stroke:#998e88}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-8{stroke:#8c6694}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-5{stroke:#333}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-6{stroke:#3b3b3b}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-7{stroke:#434343}.distribution__loading-indicator.color-index-grey-4,.distribution__loading-indicator.color-index-grey-8{stroke:#666}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-3{stroke:#2ad2c9}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-4{stroke:#614767}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{height:100%;max-height:100%}.drop{position:fixed;z-index:5;background-color:hsla(0,0%,100%,.9);border:none;border-radius:0;box-shadow:0 2px 4px rgba(0,0,0,.3);overflow:auto}.footer{min-height:36px;line-height:36px;width:100%}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large .footer__content{padding-top:24px;padding-bottom:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative}@media screen and (min-width:45em){.form{width:480px;max-width:100%}.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid #ccc;margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field{background-color:transparent;color:#dbdbdb}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__label{color:#dbdbdb}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0;padding-left:24px;padding-right:24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>textarea{color:#fff}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px;padding-left:22px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents ::-ms-clear,.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid #ccc;padding-top:6px}.form-field__contents>.form-field--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__help{color:#dbdbdb}.form-field__error{display:block;float:right;color:#f04953;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__error{color:#dbdbdb}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#f04953}.form-field--focus{z-index:2;border-color:#2ad2c9}.header{height:72px;width:100%;margin-bottom:0}.header--large{height:96px}.header--small{height:48px}.header.box>:not(:last-child){margin-right:12px}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}header.header{font-size:24px;font-size:1.5rem;line-height:inherit;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .5s;transition:transform .5s}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}header.header.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}header.header.box--direction-row>*{margin-bottom:0}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}div.header__container{flex-shrink:0}div.header__container--fixed{position:relative}div.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){div.header__container--fixed .header__wrapper .header{position:fixed}div.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}div.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}div.header__wrapper{height:72px}div.header--large .header__wrapper{height:96px}div.header--large .header__content{line-height:96px}div.header--small .header__wrapper{height:48px}div.header--small .header__content{line-height:48px}div.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}div.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}div.header--fixed.header--primary .header__content{position:static;background-color:transparent}div.header--flush .header__wrapper{padding-left:0;padding-right:0}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1.2}.headline--small{font-size:30px;font-size:1.875rem;line-height:1.6}.headline--strong{font-weight:600}.control-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#01a982}.control-icon.color-index-critical,.control-icon.color-index-error{stroke:#f04953}.control-icon.color-index-warning{stroke:#ffd144}.control-icon.color-index-ok{stroke:#01a982}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#ccc}.control-icon.color-index-graph-1,.control-icon.color-index-graph-5{stroke:#617c91}.control-icon.color-index-graph-2,.control-icon.color-index-graph-6{stroke:#94aba8}.control-icon.color-index-graph-3,.control-icon.color-index-graph-7{stroke:#998e88}.control-icon.color-index-graph-4,.control-icon.color-index-graph-8{stroke:#8c6694}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{stroke:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{stroke:#3b3b3b}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{stroke:#434343}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{stroke:#666}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{stroke:#2ad2c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{stroke:#614767}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#01a982}.control-icon.color-index-critical,.control-icon.color-index-error{fill:#f04953}.control-icon.color-index-warning{fill:#ffd144}.control-icon.color-index-ok{fill:#01a982}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#ccc}.control-icon.color-index-graph-1,.control-icon.color-index-graph-5{fill:#617c91}.control-icon.color-index-graph-2,.control-icon.color-index-graph-6{fill:#94aba8}.control-icon.color-index-graph-3,.control-icon.color-index-graph-7{fill:#998e88}.control-icon.color-index-graph-4,.control-icon.color-index-graph-8{fill:#8c6694}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{fill:#2ad2c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{fill:#614767}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{fill:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{fill:#3b3b3b}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{fill:#434343}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{fill:#666}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover:not(.anchor--disabled) .control-icon,.button:hover:not(.anchor--disabled) .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.control-icon__badge circle{fill:#2ad2c9}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .control-icon{fill:#dbdbdb;stroke:#dbdbdb}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#ccc}.status-icon-critical .status-icon__base,.status-icon-error .status-icon__base{fill:#f04953}.status-icon-warning .status-icon__base{fill:#ffd144}.status-icon-ok .status-icon__base{fill:#01a982}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#ccc}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#ccc;stroke:#ccc}.status-icon--large{width:48px;height:48px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#01a982}.logo-icon.color-index-critical,.logo-icon.color-index-error{stroke:#f04953}.logo-icon.color-index-warning{stroke:#ffd144}.logo-icon.color-index-ok{stroke:#01a982}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#ccc}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-5{stroke:#617c91}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-6{stroke:#94aba8}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-7{stroke:#998e88}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-8{stroke:#8c6694}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-5{stroke:#333}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-6{stroke:#3b3b3b}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-7{stroke:#434343}.logo-icon.color-index-grey-4,.logo-icon.color-index-grey-8{stroke:#666}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-3{stroke:#2ad2c9}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-4{stroke:#614767}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}@media screen and (max-width:44.9375em){.label__text{display:none}}@media screen and (min-width:45em){.label__icon{display:none}}a.active>.label .label__icon.control-icon svg{fill:#000;stroke:#000}.layer{position:relative;z-index:4}@media screen and (min-width:45em){.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.layer:not(.layer--hidden)+.app{display:none}}.layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.layer__container{padding:0 24px;border-bottom:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.3)}}@media screen and (min-width:45em){.layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:0;box-shadow:0 2px 4px rgba(0,0,0,.3)}}.layer__closer{position:absolute;top:0;right:0;z-index:1}html.rtl .layer__closer{right:auto;left:0}.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.layer--align-center:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-top:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-bottom:not(.layer--hidden){background-image:radial-gradient(circle at bottom,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.layer--hidden{left:-10000px;z-index:-1}.layer--hidden.layer--align-left{right:auto}.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.layer--hidden{display:none}}@media screen and (min-width:45em){.layer--hidden.layer--peek{left:0;z-index:4}.layer--hidden.layer--peek.layer--align-left{right:auto}.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #01a982;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:rgba(0,0,0,.1)}.list .list-item--selected{background-color:#d0f3eb;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#d0f3eb;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:rgba(0,0,0,.1);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;width:72px}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item--clickable{cursor:pointer}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#01a982}.legend__item svg.legend__item-swatch.color-index-critical,.legend__item svg.legend__item-swatch.color-index-error{stroke:#f04953}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#ffd144}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#01a982}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#ccc}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-5{stroke:#617c91}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#94aba8}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#998e88}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#8c6694}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#333}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#3b3b3b}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-7{stroke:#434343}.legend__item svg.legend__item-swatch.color-index-grey-4,.legend__item svg.legend__item-swatch.color-index-grey-8{stroke:#666}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-3{stroke:#2ad2c9}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#614767}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}.legend__total{margin-left:24px}html.rtl .legend__total{margin-left:0;margin-right:24px}.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted #ccc}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;width:384px;padding:24px;padding-bottom:48px;background-color:#fff;text-align:center;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%;border-radius:0}}.login-form__secondary-text{color:#777}.login-form fieldset{text-align:left;border:none;margin-bottom:0}.login-form fieldset>*{width:100%;display:block}.login-form__remember-me{display:block;margin-top:24px;text-align:left}.login-form__submit{margin-top:24px;width:100%}.login-form__error{margin-bottom:12px;color:#f04953;text-align:left}.login-form__footer{margin-top:12px;display:flex;justify-content:space-between;line-height:36px}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid #ccc;margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:rgba(0,0,0,.1)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:inherit}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #2ad2c9;box-shadow:0 0 1px 1px #2ad2c9;pointer-events:none}.menu>*{flex:0 0 auto}.menu a:not(.button){text-decoration:none}.menu a:not(.button):hover{color:#000}.menu a:not(.button).active{color:#017b5f}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}.menu__drop{font-size:16px;font-size:1rem;line-height:inherit;max-height:100vh}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:rgba(0,0,0,.1)}.menu__drop .check-box,.menu__drop .radio-button{margin-top:12px;margin-bottom:12px}.menu__drop--align-right{text-align:right}.menu__drop--align-right .menu__contents,html.rtl .menu__drop--align-right{text-align:left}html.rtl .menu__drop--align-right .menu__contents{text-align:right}.menu__drop--large .menu__control{line-height:96px}.menu--controlled{display:inline-block;cursor:pointer}.menu--controlled.menu--large{line-height:96px}.menu--controlled.menu--small{height:24px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.menu.box--direction-row.box--responsive>*{margin-right:0}html.rtl .menu--inline.menu.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.menu.box--direction-column a:not(.button){margin-bottom:6px}.menu--small{font-size:16px;font-size:1rem;line-height:1.5}.menu--small .menu__control-drop-icon{margin-left:6px}html.rtl .menu--small .menu__control-drop-icon{margin-left:0;margin-right:6px}.menu--small .menu__control-icon svg{width:18px;height:18px}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:6px;border-color:transparent;border-right-style:solid}html.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:rgba(0,0,0,.1)}.menu--primary>a:not(.button).active{border-color:#01a982}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:#ccc;border:none}.menu--inline.menu.box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu.box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:#ccc}.menu--inline.menu--small,.menu__drop--small{font-size:1em}.menu--inline.menu--small .menu__control-label,.menu__drop--small .menu__control-label{padding:12px}.menu--inline.menu--small .menu__control-icon svg,.menu__drop--small .menu__control-icon svg{width:18px;height:18px}.menu--inline.menu--small>a,.menu__drop--small>a{padding:6px 12px}.menu--inline.menu .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu a,.menu__drop a{text-decoration:none}.menu--inline.menu--large>a,.menu__drop--large>a{padding:24px 48px}@media screen and (max-width:44.9375em){.menu--inline.menu.box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu.box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu.box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%;width:100vw}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #2ad2c9}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter.meter--active .meter__values .meter__slice:hover,.meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#01a982}.meter--bar .meter__values .meter__slice.color-index-critical,.meter--bar .meter__values .meter__slice.color-index-error{stroke:#f04953}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#ffd144}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#01a982}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#ccc}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-5{stroke:#617c91}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#94aba8}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#998e88}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#8c6694}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#3b3b3b}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-7{stroke:#434343}.meter--bar .meter__values .meter__slice.color-index-grey-4,.meter--bar .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-3{stroke:#2ad2c9}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#614767}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(1,169,130,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__thresholds .meter__slice.color-index-error,.meter--bar .meter__tracks .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-error{stroke:rgba(240,73,83,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,209,68,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(1,169,130,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,80%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-5{stroke:rgba(97,124,145,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(148,171,168,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:hsla(21,8%,57%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(140,102,148,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(42,210,201,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(97,71,103,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#01a982}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--arc .meter__values .meter__slice.color-index-error,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-error,.meter--spiral .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-error{stroke:#f04953}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#ffd144}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#01a982}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#ccc}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-5{stroke:#617c91}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#94aba8}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#998e88}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#8c6694}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#3b3b3b}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-7,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-7,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-7{stroke:#434343}.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--arc .meter__values .meter__slice.color-index-grey-8,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-8,.meter--spiral .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-3{stroke:#2ad2c9}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#614767}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(1,169,130,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__thresholds .meter__slice.color-index-error,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-error,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-error,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-error,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-error,.meter--spiral .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-error{stroke:rgba(240,73,83,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,209,68,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(1,169,130,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,80%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5{stroke:rgba(97,124,145,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(148,171,168,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:hsla(21,8%,57%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(140,102,148,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(42,210,201,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(97,71,103,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification--critical .notification__status .status-icon__base{fill:#fff}.notification--critical .notification__status .status-icon__detail{stroke:#f04953;fill:#f04953}.notification--critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--error .notification__status .status-icon__base{fill:#fff}.notification--error .notification__status .status-icon__detail{stroke:#f04953;fill:#f04953}.notification--error .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--warning .notification__status .status-icon__base{fill:#fff}.notification--warning .notification__status .status-icon__detail{stroke:#ffd144;fill:#ffd144}.notification--warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--ok .notification__status .status-icon__base{fill:#fff}.notification--ok .notification__status .status-icon__detail{stroke:#01a982;fill:#01a982}.notification--ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--unknown .notification__status .status-icon__base{fill:#fff}.notification--unknown .notification__status .status-icon__detail{stroke:#ccc;fill:#ccc}.notification--unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--disabled .notification__status .status-icon__base{fill:#fff}.notification--disabled .notification__status .status-icon__detail{stroke:#ccc;fill:#ccc}.notification--disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:0}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.paragraph--small a{text-decoration:none}.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.paragraph--large a{color:#01a982;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#01a982}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#01a982;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#017b5f;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__control{border-color:#dbdbdb}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__label{color:#dbdbdb}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop--inline{margin-left:-1px}.search__drop--inline .search__drop-contents{display:block}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop-control{vertical-align:top;height:48px}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:rgba(0,0,0,.1)}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-right:47px}.search--inline .search__input:focus{padding-right:46px}html.rtl .search--inline .search__input{padding-right:23px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:22px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small{line-height:24px}.search--small .search__input{font-size:14px;font-size:.875rem;line-height:14px;padding:4px 13px;padding-right:23px}.search--small .search__input:focus{padding:3px 12px;padding-right:22px}.search--small .control-icon-search{height:12px;width:12px}.search--large{line-height:triple(24px)}.search--large .search__input{font-size:36px;font-size:2.25rem;line-height:48px;padding:-7px 35px;padding-right:47px}.search--large .control-icon-search{right:24px}.search-input{position:relative;display:inline-block}.search-input__input{width:100%;height:100%;display:block;padding-right:60px}.search-input__input:focus{padding-right:59px}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:12px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:rgba(0,0,0,.1)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#01a982}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:0}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid #ccc}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden}.tab{padding:12px}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus .tab__label{border-bottom:4px solid}.tab__label{cursor:pointer;padding-bottom:12px;font-weight:600;color:#777}.tab--active .tab__label{color:#000;border-bottom:4px solid #000}.tab:focus .tab__label,.tab:hover .tab__label{border-bottom:4px solid}.tabs{margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;list-style:none;border-bottom:1px solid #ccc}.tabs__content{padding:24px}@media screen and (max-width:44.9375em){.tabs__content{padding:24px 0}}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid #ccc}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}@media screen and (max-width:44.9375em){.table__mirror>thead{position:static}}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#d0f3eb;color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:rgba(0,0,0,.1);color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.tag{background-color:hsla(0,0%,50%,.6);padding:3px 6px;position:relative;margin:0 12px 12px 0}.tag .tag--label{color:#fff;text-decoration:none}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:#ccc;color:#fff}.tiles{width:100%;padding:12px}@media screen and (min-width:45em){.tiles.box--direction-row>.tile{flex:0 0 192px}.tiles.box--direction-row>.tile--wide,.tiles.box--direction-row>.tile>*{box-sizing:border-box}.tiles.box--direction-row:not(.tiles--flush)>.tile{margin:12px}.tiles.box--direction-row:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#d0f3eb;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tiles--small>.tile{flex-basis:96px}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}@media screen and (max-width:44.9375em){.tiles--large>.tile{flex-basis:100%}}.tiles:focus{outline:1px solid #2ad2c9}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#d0f3eb;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title img,.title svg{max-width:576px}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#01a982;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid #ccc}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px;background-color:rgba(51,51,51,.7);color:#dbdbdb;border-radius:0}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(1,169,130,.7)}.video__control.button--primary:hover{background-color:#01a982}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:#dbdbdb;background-color:rgba(51,51,51,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid #dbdbdb;text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#01a982}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both}.button{letter-spacing:.04167em}.button:not(.button--disabled):not(.button--icon):not(.button--fill).button--primary:hover,.button:not(.button--disabled):not(.button--icon):not(.button--fill):hover{box-shadow:0 0 0 2px #01a982}.button:not(.button--disabled):not(.button--icon):not(.button--fill).button--secondary:hover{box-shadow:0 0 0 2px rgba(51,51,51,.6)}.button:not(.button--disabled):not(.button--icon):not(.button--fill).button--accent:hover{box-shadow:0 0 0 2px #ff8d6d}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled):not(.button--icon):not(.button--fill):hover{box-shadow:0 0 0 2px #eee}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--primary:hover{box-shadow:0 0 0 2px #01a982}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--secondary:hover{box-shadow:0 0 0 2px #eee}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled):not(.button--icon):not(.button--fill).button--accent:hover{box-shadow:0 0 0 2px #ff8d6d}.button--fill:not(.button--disabled):not(.button--icon):hover{padding:4px 20px;border-width:4px}@media screen and (min-width:45em){.button--fill:not(.button--disabled):not(.button--icon){transition:none}} \ No newline at end of file +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,.grommet{font-family:Metric,Arial,sans-serif}.grommet{font-size:16px;font-size:1rem;line-height:24px}.grommet h1{font-size:48px;font-size:3rem;line-height:1.125}.grommet h2{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet h3{font-size:24px;font-size:1.5rem;line-height:1.25}.grommet h4{font-size:18px;font-size:1.125rem;line-height:1.33333}.grommet h5{font-size:17px;font-size:1.0625rem;line-height:1.41176}.grommet h6{font-size:16px;font-size:1rem;line-height:1.5}.grommet h1,.grommet h2,.grommet h3,.grommet h4,.grommet h5,.grommet h6{font-weight:100;max-width:100%}.grommet h1.header--strong,.grommet h1>strong,.grommet h2.header--strong,.grommet h2>strong,.grommet h3.header--strong,.grommet h3>strong,.grommet h4.header--strong,.grommet h4>strong,.grommet h5.header--strong,.grommet h5>strong,.grommet h6.header--strong,.grommet h6>strong{font-weight:600}.grommet h1 a,.grommet h1 a.anchor,.grommet h2 a,.grommet h2 a.anchor,.grommet h3 a,.grommet h3 a.anchor,.grommet h4 a,.grommet h4 a.anchor,.grommet h5 a,.grommet h5 a.anchor,.grommet h6 a,.grommet h6 a.anchor{color:inherit;text-decoration:none}.grommet h1 a.anchor:hover,.grommet h1 a:hover,.grommet h2 a.anchor:hover,.grommet h2 a:hover,.grommet h3 a.anchor:hover,.grommet h3 a:hover,.grommet h4 a.anchor:hover,.grommet h4 a:hover,.grommet h5 a.anchor:hover,.grommet h5 a:hover,.grommet h6 a.anchor:hover,.grommet h6 a:hover{text-decoration:none}.grommet dd,.grommet li,.grommet p{max-width:576px;margin-left:0}.grommet dd{margin-bottom:12px}.grommet p{margin-top:24px;margin-bottom:24px}.grommet blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet b,.grommet strong{font-weight:600}.grommet code.hljs{border:1px solid rgba(0,0,0,.15)}.grommet .large-number-font{font-family:Metric,Arial,sans-serif}.grommet .secondary{color:#777}.grommet .error{color:#f04953}.grommet input,.grommet select,.grommet textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid rgba(0,0,0,.15);border-radius:0;outline:none;background-color:transparent}.grommet.rtl .grommet input,.grommet.rtl .grommet select,.grommet.rtl .grommet textarea{margin-right:0;margin-left:12px}.grommet input:focus,.grommet select:focus,.grommet textarea:focus{padding:10px 22px;border-width:2px;border-color:#2ad2c9}.grommet input::-moz-focus-inner,.grommet select::-moz-focus-inner,.grommet textarea::-moz-focus-inner{border:none;outline:none}.grommet input::-webkit-input-placeholder,.grommet select::-webkit-input-placeholder,.grommet textarea::-webkit-input-placeholder{color:#aaa}.grommet input::-moz-placeholder,.grommet select::-moz-placeholder,.grommet textarea::-moz-placeholder{color:#aaa}.grommet input:-ms-input-placeholder,.grommet select:-ms-input-placeholder,.grommet textarea:-ms-input-placeholder{color:#aaa}.grommet input.error,.grommet select.error,.grommet textarea.error{border-color:#f04953}.grommet input[type=button],.grommet input[type=submit]{text-align:center;line-height:inherit}.grommet select{border-color:rgba(0,0,0,.15);padding-right:48px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px;cursor:pointer}.grommet select::-moz-focus-inner{border:none}.grommet select.plain{border:none}.grommet input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}.grommet input[type=range]:focus{outline:none}.grommet input[type=range]::-moz-focus-inner,.grommet input[type=range]::-moz-focus-outer{border:none}.grommet input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}.grommet input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#01a982;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:before{background-color:#fff}.grommet input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #01a982;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}.grommet input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}.grommet input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #01a982;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}.grommet input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}.grommet input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-fill-lower{background:#01a982;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-lower{background:#fff}.grommet input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-thumb{border-color:#fff}.grommet input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}@media screen and (min-width:45em){html.grommet{height:100%;width:100%;overflow:visible}}.grommet{box-sizing:border-box}.grommet.rtl{direction:rtl}.grommet *{box-sizing:inherit}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,.grommet a:not(.anchor){color:inherit;text-decoration:underline;cursor:pointer}.anchor.plain .anchor.button,.anchor.plain .anchor.button:hover,.anchor.plain .grommet a:not(.anchor).button,.anchor.plain .grommet a:not(.anchor).button:hover,.grommet a:not(.anchor).plain .anchor.button,.grommet a:not(.anchor).plain .anchor.button:hover,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover{text-decoration:none}.anchor:visited,.grommet a:not(.anchor):visited{color:inherit}.anchor.active,.grommet a:not(.anchor).active{color:#333}.anchor:hover,.grommet a:not(.anchor):hover{color:#000;text-decoration:underline}.anchor--disabled:hover{color:inherit}.anchor__icon{display:inline-block;padding:12px}.anchor--icon-label,.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;text-decoration:none}.anchor--icon-label .control-icon,.anchor--primary .control-icon{vertical-align:middle;margin-right:12px}html.rtl .anchor--icon-label .control-icon,html.rtl .anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor--icon-label>span,.anchor--primary>span{vertical-align:middle}.anchor--reverse .control-icon{margin-right:0;margin-left:12px}.anchor--primary{color:#049371}.anchor--primary .control-icon{stroke:#049371}.anchor--primary:hover .control-icon{stroke:#049371;transform:translateX(3px)}.anchor--primary:hover .control-icon path,.anchor--primary:hover .control-icon polyline{stroke-width:3px}.anchor--primary.anchor--disabled .control-icon{transform:none}.anchor--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon{cursor:default}.anchor--icon{display:inline-block}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a{color:hsla(0,0%,100%,.85)}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}@media screen and (min-width:45em){.grommet.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.grommet.app--inline{position:relative}.grommet.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}.grommet article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:50%;background-size:cover;background-repeat:no-repeat}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box>.no-flex{flex:0 0 auto}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box__container--full,.box__container--full-horizontal{max-width:100%;width:100vw}.box--wrap{flex-wrap:wrap}.box--full{position:relative;min-height:100vh;height:100%}.box--full,.box--full-horizontal{max-width:100%;width:100vw}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive:not(.box--justify-center){align-items:stretch}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--align-baseline{align-items:baseline}.box--align-content-start{align-content:flex-start}.box--align-content-end{align-content:flex-end}.box--align-content-center{align-content:center}.box--align-content-between{align-content:space-between}.box--align-content-around{align-content:space-around}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid rgba(0,0,0,.15)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .box[class*=box--separator]{border-color:hsla(0,0%,100%,.5)}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box--clickable{cursor:pointer}.brick{padding:24px;position:relative;float:left;margin:0 12px 12px 0;max-width:calc(100% - 12px)}.brick__label{position:absolute;top:0;right:0;left:0;bottom:0;overflow:hidden}.brick__label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick__background{position:absolute;top:0;bottom:0;left:0;right:0}.brick__container{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}.brick--clickable:focus,.brick--clickable:hover{z-index:1;transition:transform .4s;transform:scale(1.05);outline:none}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #01a982;border-radius:0;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.grommet button:not(.button):focus:not(.button--disabled),.grommet input[type=button]:focus:not(.button--disabled),.grommet input[type=submit]:focus:not(.button--disabled){border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}@media screen and (min-width:45em){.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{transition:.1s ease-in-out}}.grommet a.button,.grommet a.button:hover{text-decoration:none}.button{padding:6px 22px;background-color:transparent;border:2px solid #01a982;border-radius:0;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#01a982;background-color:#01a982;color:#fff}.button--primary:hover:not(.button--disabled){color:#fff}.button--primary:hover:not(.button--disabled) .button__icon .control-icon{fill:#fff;stroke:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#ff8d6d}.button--plain{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none;font-weight:inherit}.button--plain.button--primary{background-color:#01a982}.button--plain>span:not(.button__icon):first-child{margin-left:12px}.button--plain>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary){border-color:hsla(0,0%,100%,.7);color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary).button--accent{border-color:#ff8d6d}.button--disabled{opacity:.3;cursor:default}.button--icon,.button:not(.button--fill){flex:0 0 auto}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__input::-ms-clear{display:none}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:hsla(0,0%,87%,.5)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#01a982;color:hsla(0,0%,100%,.85)}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel .tiles.box--direction-row>.tile.carousel__item{flex:1 1 100%;box-sizing:border-box}.carousel .tiles.box--direction-row>.tile.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:hsla(0,0%,100%,.7);stroke-width:1px}.carousel__arrow:hover .control-icon polyline{stroke:#fff}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:hsla(0,0%,100%,.7);fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#01a982;fill:#01a982}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#01a982;fill:#01a982}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:rgba(0,0,0,.15)}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#01a982}.chart__values-line.color-index-critical,.chart__values-line.color-index-error{stroke:#f04953}.chart__values-line.color-index-warning{stroke:#ffd144}.chart__values-line.color-index-ok{stroke:#01a982}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#ccc}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-5{stroke:#617c91}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-6{stroke:#94aba8}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-7{stroke:#998e88}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-8{stroke:#8c6694}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-5{stroke:#333}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-6{stroke:#3b3b3b}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-7{stroke:#434343}.chart__values-line.color-index-grey-4,.chart__values-line.color-index-grey-8{stroke:#666}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-4{stroke:#2ad2c9}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-5{stroke:#614767}.chart__values-line.color-index-accent-3,.chart__values-line.color-index-accent-6{stroke:#ff8d6d}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-area.color-index-error,.chart__values-bar.color-index-critical,.chart__values-bar.color-index-error{fill:rgba(240,73,83,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(255,209,68,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(1,169,130,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,80%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-5,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-5{fill:rgba(97,124,145,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-6{fill:rgba(148,171,168,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-7{fill:hsla(21,8%,57%,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-8{fill:rgba(140,102,148,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#01a982}.chart__values-area--active.color-index-critical,.chart__values-area--active.color-index-error,.chart__values-bar--active.color-index-critical,.chart__values-bar--active.color-index-error{fill:#f04953}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#ffd144}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#01a982}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#ccc}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-5{fill:#617c91}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-6{fill:#94aba8}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-7{fill:#998e88}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-8{fill:#8c6694}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-4{fill:#2ad2c9}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-5,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-5{fill:#614767}.chart__values-area--active.color-index-accent-3,.chart__values-area--active.color-index-accent-6,.chart__values-bar--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-6{fill:#ff8d6d}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-5{fill:#333}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-6{fill:#3b3b3b}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-7,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-7{fill:#434343}.chart__values-area--active.color-index-grey-4,.chart__values-area--active.color-index-grey-8,.chart__values-bar--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-8{fill:#666}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#01a982}.chart__values-point.color-index-critical,.chart__values-point.color-index-error{stroke:#f04953}.chart__values-point.color-index-warning{stroke:#ffd144}.chart__values-point.color-index-ok{stroke:#01a982}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#ccc}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-5{stroke:#617c91}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-6{stroke:#94aba8}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-7{stroke:#998e88}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-8{stroke:#8c6694}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-5{stroke:#333}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-6{stroke:#3b3b3b}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-7{stroke:#434343}.chart__values-point.color-index-grey-4,.chart__values-point.color-index-grey-8{stroke:#666}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-4{stroke:#2ad2c9}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-5{stroke:#614767}.chart__values-point.color-index-accent-3,.chart__values-point.color-index-accent-6{stroke:#ff8d6d}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#01a982}.chart__values--loading.color-index-critical,.chart__values--loading.color-index-error{stroke:#f04953}.chart__values--loading.color-index-warning{stroke:#ffd144}.chart__values--loading.color-index-ok{stroke:#01a982}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#ccc}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-5{stroke:#617c91}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-6{stroke:#94aba8}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-7{stroke:#998e88}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-8{stroke:#8c6694}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-5{stroke:#333}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-6{stroke:#3b3b3b}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-7{stroke:#434343}.chart__values--loading.color-index-grey-4,.chart__values--loading.color-index-grey-8{stroke:#666}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-4{stroke:#2ad2c9}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-5{stroke:#614767}.chart__values--loading.color-index-accent-3,.chart__values--loading.color-index-accent-6{stroke:#ff8d6d}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical,.chart__yaxis .chart__bar.color-index-error{fill:rgba(240,73,83,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(255,209,68,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(1,169,130,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,80%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-5{fill:rgba(97,124,145,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(148,171,168,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-7{fill:hsla(21,8%,57%,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(140,102,148,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#01a982}.chart__cursor-point.color-index-critical,.chart__cursor-point.color-index-error{fill:#f04953}.chart__cursor-point.color-index-warning{fill:#ffd144}.chart__cursor-point.color-index-ok{fill:#01a982}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#ccc}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-5{fill:#617c91}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-6{fill:#94aba8}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-7{fill:#998e88}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-8{fill:#8c6694}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-4{fill:#2ad2c9}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-5{fill:#614767}.chart__cursor-point.color-index-accent-3,.chart__cursor-point.color-index-accent-6{fill:#ff8d6d}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-5{fill:#333}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-6{fill:#3b3b3b}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-7{fill:#434343}.chart__cursor-point.color-index-grey-4,.chart__cursor-point.color-index-grey-8{fill:#666}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#f04953}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#f04953;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#f04953;stop-opacity:0}.chart--area .chart__gradient.color-index-error .begin,.chart--bar .chart__gradient.color-index-error .begin{stop-color:#f04953}.chart--area .chart__gradient.color-index-error .mid,.chart--bar .chart__gradient.color-index-error .mid{stop-color:#f04953;stop-opacity:.5}.chart--area .chart__gradient.color-index-error .end,.chart--bar .chart__gradient.color-index-error .end{stop-color:#f04953;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#ffd144}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#ffd144;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#ffd144;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#01a982}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#01a982;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#01a982;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#ccc}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#ccc;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#ccc;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#ccc}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#ccc;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#ccc;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin{stop-color:#617c91}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid{stop-color:#617c91;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-5 .end{stop-color:#617c91;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#94aba8}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#94aba8;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#94aba8;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#998e88}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#998e88;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#998e88;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#8c6694}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#8c6694;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#8c6694;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#01a982}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-area.color-index-error,.chart--sparkline .chart__values-bar.color-index-critical,.chart--sparkline .chart__values-bar.color-index-error{fill:#f04953}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#ffd144}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#01a982}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#ccc}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-5{fill:#617c91}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#94aba8}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#998e88}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#8c6694}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#2ad2c9}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-5,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-5{fill:#614767}.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-area.color-index-accent-6,.chart--sparkline .chart__values-bar.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-6{fill:#ff8d6d}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#333}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#3b3b3b}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-7,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-7{fill:#434343}.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-area.color-index-grey-8,.chart--sparkline .chart__values-bar.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-8{fill:#666}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#01a982}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:0}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control{border-color:hsla(0,0%,100%,.7)}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#01a982}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__label{color:hsla(0,0%,100%,.85)}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s;box-sizing:border-box}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#01a982}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#01a982;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]){color:#fff}.background-color-index-brand{background-color:#01a982}.background-color-index-neutral-1,.background-color-index-neutral-5{background-color:#425563}.background-color-index-neutral-1-a,.background-color-index-neutral-5-a{background-color:rgba(66,85,99,.8)}.background-color-index-neutral-2,.background-color-index-neutral-6{background-color:#5f7a76}.background-color-index-neutral-2-a,.background-color-index-neutral-6-a{background-color:rgba(95,122,118,.8)}.background-color-index-neutral-3,.background-color-index-neutral-7{background-color:#80746e}.background-color-index-neutral-3-a,.background-color-index-neutral-7-a{background-color:hsla(20,8%,47%,.8)}.background-color-index-neutral-4,.background-color-index-neutral-8{background-color:#767676}.background-color-index-neutral-4-a,.background-color-index-neutral-8-a{background-color:hsla(0,0%,46%,.8)}.background-color-index-accent-1,.background-color-index-accent-4{background-color:#2ad2c9}.background-color-index-accent-1-a,.background-color-index-accent-4-a{background-color:rgba(42,210,201,.8)}.background-color-index-accent-2,.background-color-index-accent-5{background-color:#614767}.background-color-index-accent-2-a,.background-color-index-accent-5-a{background-color:rgba(97,71,103,.8)}.background-color-index-accent-3,.background-color-index-accent-6{background-color:#ff8d6d}.background-color-index-accent-3-a,.background-color-index-accent-6-a{background-color:rgba(255,141,109,.8)}.background-color-index-grey-1,.background-color-index-grey-5{background-color:#333}.background-color-index-grey-1-a,.background-color-index-grey-5-a{background-color:rgba(51,51,51,.8)}.background-color-index-grey-2,.background-color-index-grey-6{background-color:#3b3b3b}.background-color-index-grey-2-a,.background-color-index-grey-6-a{background-color:rgba(59,59,59,.8)}.background-color-index-grey-3,.background-color-index-grey-7{background-color:#434343}.background-color-index-grey-3-a,.background-color-index-grey-7-a{background-color:rgba(67,67,67,.8)}.background-color-index-grey-4,.background-color-index-grey-8{background-color:#666}.background-color-index-grey-4-a,.background-color-index-grey-8-a{background-color:hsla(0,0%,40%,.8)}.background-color-index-graph-1,.background-color-index-graph-5{background-color:#617c91}.background-color-index-graph-2,.background-color-index-graph-6{background-color:#94aba8}.background-color-index-graph-3,.background-color-index-graph-7{background-color:#998e88}.background-color-index-graph-4,.background-color-index-graph-8{background-color:#8c6694}.background-color-index-critical,.background-color-index-error{background-color:#f04953}.background-color-index-warning{background-color:#ffd144}.background-color-index-ok{background-color:#01a982}.background-color-index-disabled,.background-color-index-unknown{background-color:#ccc}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.columns{display:flex;flex-direction:row;width:100%}.columns__column{flex:0 0 192px;display:flex;flex-direction:column}.columns--small>.columns__column{flex-basis:96px}.columns--large>.columns__column{flex-basis:384px}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#01a982}.distribution__item-box.color-index-critical,.distribution__item-box.color-index-error{fill:#f04953}.distribution__item-box.color-index-warning{fill:#ffd144}.distribution__item-box.color-index-ok{fill:#01a982}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#ccc}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-5{fill:#617c91}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-6{fill:#94aba8}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-7{fill:#998e88}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-8{fill:#8c6694}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-4{fill:#2ad2c9}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-5{fill:#614767}.distribution__item-box.color-index-accent-3,.distribution__item-box.color-index-accent-6{fill:#ff8d6d}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-5{fill:#333}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-6{fill:#3b3b3b}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-7{fill:#434343}.distribution__item-box.color-index-grey-4,.distribution__item-box.color-index-grey-8{fill:#666}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#01a982}.distribution__item-icons.color-index-critical,.distribution__item-icons.color-index-error{stroke:#f04953}.distribution__item-icons.color-index-warning{stroke:#ffd144}.distribution__item-icons.color-index-ok{stroke:#01a982}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#ccc}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-5{stroke:#617c91}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-6{stroke:#94aba8}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-7{stroke:#998e88}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-8{stroke:#8c6694}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-5{stroke:#333}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-6{stroke:#3b3b3b}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-7{stroke:#434343}.distribution__item-icons.color-index-grey-4,.distribution__item-icons.color-index-grey-8{stroke:#666}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-4{stroke:#2ad2c9}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-5{stroke:#614767}.distribution__item-icons.color-index-accent-3,.distribution__item-icons.color-index-accent-6{stroke:#ff8d6d}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;font-family:Metric,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-accent-1,.distribution__label.color-index-accent-2,.distribution__label.color-index-accent-4,.distribution__label.color-index-accent-5,.distribution__label.color-index-brand,.distribution__label.color-index-critical,.distribution__label.color-index-error,.distribution__label.color-index-graph-1,.distribution__label.color-index-graph-2,.distribution__label.color-index-graph-3,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-5,.distribution__label.color-index-graph-6,.distribution__label.color-index-graph-7,.distribution__label.color-index-graph-8,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-2,.distribution__label.color-index-grey-3,.distribution__label.color-index-grey-4,.distribution__label.color-index-grey-5,.distribution__label.color-index-grey-6,.distribution__label.color-index-grey-7,.distribution__label.color-index-grey-8,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-neutral-7,.distribution__label.color-index-neutral-8,.distribution__label.color-index-ok{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#01a982}.distribution__loading-indicator.color-index-critical,.distribution__loading-indicator.color-index-error{stroke:#f04953}.distribution__loading-indicator.color-index-warning{stroke:#ffd144}.distribution__loading-indicator.color-index-ok{stroke:#01a982}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#ccc}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-5{stroke:#617c91}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-6{stroke:#94aba8}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-7{stroke:#998e88}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-8{stroke:#8c6694}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-5{stroke:#333}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-6{stroke:#3b3b3b}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-7{stroke:#434343}.distribution__loading-indicator.color-index-grey-4,.distribution__loading-indicator.color-index-grey-8{stroke:#666}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-4{stroke:#2ad2c9}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-5{stroke:#614767}.distribution__loading-indicator.color-index-accent-3,.distribution__loading-indicator.color-index-accent-6{stroke:#ff8d6d}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{width:auto;height:auto;max-height:100%;max-width:100%}.grommet.drop{position:absolute;z-index:5;border-radius:0;overflow:auto}.grommet.drop:not([class*=background-color-index-]){background-color:hsla(0,0%,97%,.95);border:none;box-shadow:none}.footer{min-height:36px;line-height:36px;width:100%}.footer.box--direction-row>h1,.footer.box--direction-row>h2,.footer.box--direction-row>h3,.footer.box--direction-row>h4{margin-bottom:0}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large{min-height:96px;line-height:96px}.footer--small{min-height:24px;line-height:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative;width:480px;max-width:100%}@media screen and (min-width:45em){.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid rgba(0,0,0,.15);margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field{background-color:transparent;color:hsla(0,0%,100%,.85)}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__label{color:hsla(0,0%,100%,.85)}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0 24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none;padding:0 24px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>textarea{color:#fff}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select{height:24px}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none;padding:0 24px}.form-field__contents>.number-input input[type=number]:focus{padding:0 24px}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid rgba(0,0,0,.15);padding-top:6px}.form-field__contents--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__help{color:hsla(0,0%,100%,.85)}.form-field__error{display:block;float:right;color:#f04953;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__error{color:hsla(0,0%,100%,.85)}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#f04953}.form-field--focus{z-index:2;border-color:#2ad2c9}.header{min-height:72px;width:100%;margin-bottom:0}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header--large{min-height:96px}.header--large .header__content{line-height:96px}.header--small{min-height:48px}.header--small .header__content{line-height:48px}header.header{font-size:24px;font-size:1.5rem;line-height:inherit}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}.header__container{flex-shrink:0}.header__container--fixed{position:relative}.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){.header__container--fixed .header__wrapper .header{position:fixed}.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}.header__wrapper{height:72px}.header__wrapper--large{height:96px}.header__wrapper--small{height:48px}.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}.header--fixed.header--primary .header__content{position:static;background-color:transparent}.header--flush .header__wrapper{padding-left:0;padding-right:0}h1.heading,h2.heading,h3.heading,h4.heading,h5.heading,h6.heading{margin-bottom:12px;line-height:1}h1.heading--large,h2.heading--large,h3.heading--large,h4.heading--large,h5.heading--large,h6.heading--large{font-size:125%}h1.heading--small,h2.heading--small,h3.heading--small,h4.heading--small,h5.heading--small,h6.heading--small{font-size:75%}h1.heading--strong,h2.heading--strong,h3.heading--strong,h4.heading--strong,h5.heading--strong,h6.heading--strong{font-weight:600}h1.heading--align-start,h2.heading--align-start,h3.heading--align-start,h4.heading--align-start,h5.heading--align-start,h6.heading--align-start{text-align:left}html.rtl h1.heading--align-start,html.rtl h2.heading--align-start,html.rtl h3.heading--align-start,html.rtl h4.heading--align-start,html.rtl h5.heading--align-start,html.rtl h6.heading--align-start{text-align:right}h1.heading--align-center,h2.heading--align-center,h3.heading--align-center,h4.heading--align-center,h5.heading--align-center,h6.heading--align-center{text-align:center}h1.heading--align-right,h2.heading--align-right,h3.heading--align-right,h4.heading--align-right,h5.heading--align-right,h6.heading--align-right{text-align:right}html.rtl h1.heading--align-right,html.rtl h2.heading--align-right,html.rtl h3.heading--align-right,html.rtl h4.heading--align-right,html.rtl h5.heading--align-right,html.rtl h6.heading--align-right{text-align:left}h1.heading--margin-none,h2.heading--margin-none,h3.heading--margin-none,h4.heading--margin-none,h5.heading--margin-none,h6.heading--margin-none{margin-top:0;margin-bottom:0}h1.heading--margin-small,h2.heading--margin-small,h3.heading--margin-small,h4.heading--margin-small,h5.heading--margin-small,h6.heading--margin-small{margin-top:12px;margin-bottom:12px}h1.heading--margin-medium,h2.heading--margin-medium,h3.heading--margin-medium,h4.heading--margin-medium,h5.heading--margin-medium,h6.heading--margin-medium{margin-top:24px;margin-bottom:24px}h1.heading--margin-large,h2.heading--margin-large,h3.heading--margin-large,h4.heading--margin-large,h5.heading--margin-large,h6.heading--margin-large{margin-top:48px;margin-bottom:48px}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1}.headline--small{font-size:30px;font-size:1.875rem;line-height:1}.headline--strong{font-weight:600}.headline--align-start{text-align:left}html.rtl .headline--align-start{text-align:right}.headline--align-center{text-align:center}.headline--align-right{text-align:right}html.rtl .headline--align-right{text-align:left}.headline--margin-none{margin-top:0;margin-bottom:0}.headline--margin-small{margin-top:12px;margin-bottom:12px}.headline--margin-medium{margin-top:24px;margin-bottom:24px}.headline--margin-large{margin-top:48px;margin-bottom:48px}.control-icon{display:inline-block;width:24px;height:24px;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#01a982}.control-icon.color-index-critical,.control-icon.color-index-error{stroke:#f04953}.control-icon.color-index-warning{stroke:#ffd144}.control-icon.color-index-ok{stroke:#01a982}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#ccc}.control-icon.color-index-graph-1,.control-icon.color-index-graph-5{stroke:#617c91}.control-icon.color-index-graph-2,.control-icon.color-index-graph-6{stroke:#94aba8}.control-icon.color-index-graph-3,.control-icon.color-index-graph-7{stroke:#998e88}.control-icon.color-index-graph-4,.control-icon.color-index-graph-8{stroke:#8c6694}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{stroke:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{stroke:#3b3b3b}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{stroke:#434343}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{stroke:#666}.control-icon.color-index-accent-1,.control-icon.color-index-accent-4{stroke:#2ad2c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-5{stroke:#614767}.control-icon.color-index-accent-3,.control-icon.color-index-accent-6{stroke:#ff8d6d}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#01a982}.control-icon.color-index-critical,.control-icon.color-index-error{fill:#f04953}.control-icon.color-index-warning{fill:#ffd144}.control-icon.color-index-ok{fill:#01a982}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#ccc}.control-icon.color-index-graph-1,.control-icon.color-index-graph-5{fill:#617c91}.control-icon.color-index-graph-2,.control-icon.color-index-graph-6{fill:#94aba8}.control-icon.color-index-graph-3,.control-icon.color-index-graph-7{fill:#998e88}.control-icon.color-index-graph-4,.control-icon.color-index-graph-8{fill:#8c6694}.control-icon.color-index-accent-1,.control-icon.color-index-accent-4{fill:#2ad2c9}.control-icon.color-index-accent-2,.control-icon.color-index-accent-5{fill:#614767}.control-icon.color-index-accent-3,.control-icon.color-index-accent-6{fill:#ff8d6d}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{fill:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{fill:#3b3b3b}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{fill:#434343}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{fill:#666}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover .control-icon,.button:hover .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.anchor.anchor--disabled:hover .control-icon,.button.button--disabled:hover .control-icon{fill:#999;stroke:#999}.control-icon__badge circle{fill:#2ad2c9}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .control-icon:not([class*=color-index]){fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.control-icon--huge{width:288px;height:288px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#ccc}.status-icon-critical .status-icon__base,.status-icon-error .status-icon__base{fill:#f04953}.status-icon-warning .status-icon__base{fill:#ffd144}.status-icon-ok .status-icon__base{fill:#01a982}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#ccc}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#ccc;stroke:#ccc}.status-icon--large{width:48px;height:48px}.status-icon--huge{width:288px;height:288px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#01a982}.logo-icon.color-index-critical,.logo-icon.color-index-error{stroke:#f04953}.logo-icon.color-index-warning{stroke:#ffd144}.logo-icon.color-index-ok{stroke:#01a982}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#ccc}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-5{stroke:#617c91}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-6{stroke:#94aba8}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-7{stroke:#998e88}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-8{stroke:#8c6694}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-5{stroke:#333}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-6{stroke:#3b3b3b}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-7{stroke:#434343}.logo-icon.color-index-grey-4,.logo-icon.color-index-grey-8{stroke:#666}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-4{stroke:#2ad2c9}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-5{stroke:#614767}.logo-icon.color-index-accent-3,.logo-icon.color-index-accent-6{stroke:#ff8d6d}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.logo-icon--huge{width:288px;height:288px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--thumb{width:48px;height:48px;flex:0 0 auto;object-fit:cover}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}.label{font-size:19px;font-size:1.1875rem;line-height:1.26316;margin-bottom:24px}.label--uppercase{text-transform:uppercase;letter-spacing:.2em}.label--align-start{text-align:left}html.rtl .label--align-start{text-align:right}.label--align-center{text-align:center}.label--align-right{text-align:right}html.rtl .label--align-right{text-align:left}.label--margin-none{margin-top:0;margin-bottom:0}.label--margin-small{margin-top:12px;margin-bottom:12px}.label--margin-medium{margin-top:24px;margin-bottom:24px}.label--margin-large{margin-top:48px;margin-bottom:48px}.grommet.layer{position:relative;z-index:4;background-color:rgba(0,0,0,.5);height:100vh}@media screen and (min-width:45em){.grommet.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.grommet.layer:not(.layer--hidden)+.app{display:none}}.grommet.layer .layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.grommet.layer .layer__container{padding:0 24px;min-height:100vh;min-width:100vw}}@media screen and (min-width:45em){.grommet.layer .layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:0;box-shadow:none}}.grommet.layer .layer__closer{position:absolute;top:0;right:0;z-index:1}.grommet.rtl .grommet.layer .layer__closer{right:auto;left:0}.grommet.layer.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.grommet.layer.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0}@media screen and (min-width:45em){.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0}@media screen and (min-width:45em){.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}.grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.grommet.layer.layer--hidden{left:-100vw;right:100vw;z-index:-1}.grommet.layer.layer--hidden.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.grommet.layer.layer--hidden{display:none}}@media screen and (min-width:45em){.grommet.layer.layer--hidden.layer--peek{left:0;z-index:4}.grommet.layer.layer--hidden.layer--peek.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #01a982;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item:focus{outline:1px solid #2ad2c9}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:hsla(0,0%,87%,.5)}.list .list-item--selected{background-color:#d0f3eb;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#d0f3eb;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:hsla(0,0%,87%,.5);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0;line-height:24px}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;min-width:72px;text-align:left}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#01a982}.legend__item svg.legend__item-swatch.color-index-critical,.legend__item svg.legend__item-swatch.color-index-error{stroke:#f04953}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#ffd144}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#01a982}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#ccc}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-5{stroke:#617c91}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#94aba8}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#998e88}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#8c6694}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#333}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#3b3b3b}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-7{stroke:#434343}.legend__item svg.legend__item-swatch.color-index-grey-4,.legend__item svg.legend__item-swatch.color-index-grey-8{stroke:#666}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#2ad2c9}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-5{stroke:#614767}.legend__item svg.legend__item-swatch.color-index-accent-3,.legend__item svg.legend__item-swatch.color-index-accent-6{stroke:#ff8d6d}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--clickable{cursor:pointer}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .legend__item--active{color:#fff}li.legend__total{margin-left:24px}html.rtl li.legend__total{margin-left:0;margin-right:24px}li.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted rgba(0,0,0,.15)}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;padding:24px;background-color:#fff;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%}}.login-form__header{text-align:center}.login-form fieldset{margin-bottom:0}.login-form__submit{width:100%;max-width:none}.login-form--align-start .login-form__header{text-align:left}html.rtl .login-form--align-start .login-form__header{text-align:right}.login-form--align-start .login-form__submit{width:auto}.login-form--align-end .login-form__header{text-align:right}html.rtl .login-form--align-end .login-form__header{text-align:left}.login-form--align-end .login-form__submit{width:auto}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid rgba(0,0,0,.15);margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:hsla(0,0%,87%,.5)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:1.26316}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #2ad2c9;box-shadow:0 0 1px 1px #2ad2c9;pointer-events:none}.menu>*{flex:0 0 auto}.menu .anchor,.menu a:not(.button){text-decoration:none}.menu .anchor:hover,.menu a:not(.button):hover{text-decoration:none;color:#000}.menu .anchor.active,.menu a:not(.button).active{color:#017b5f}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu .anchor.active,[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu a:not(.button).active{color:#fff}.menu.menu--controlled{display:inline-block;cursor:pointer}.menu__control:focus:not(.button--disabled){box-shadow:inset 0 0 1px 2px #2ad2c9}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover .menu__control-label{color:#fff}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}@media screen and (min-width:45em){.menu__control.menu--labelled .control-icon{transition:none}}.menu__drop{font-size:19px;font-size:1.1875rem;line-height:1.26316;max-height:100vh}.menu__drop .anchor,.menu__drop a:not(.anchor--disabled),.menu__drop a:not(.anchor--disabled):hover{text-decoration:none}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:hsla(0,0%,87%,.5)}.menu__drop .menu__control{text-align:left}.grommet.rtl .menu__drop .menu__control{text-align:right}.menu__drop .menu__label{padding:12px 24px;font-weight:600}.menu__drop.menu__drop--align-right{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right{text-align:left}.menu__drop.menu__drop--align-right .menu__control{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right .menu__control,.menu__drop.menu__drop--align-right .menu__contents{text-align:left}.grommet.rtl .menu__drop.menu__drop--align-right .menu__contents{text-align:right}.menu__drop.menu__drop--small{font-size:16px;font-size:1rem;line-height:1.5}.menu__drop.menu__drop--large{font-size:24px;font-size:1.5rem;line-height:1}.menu--inline.menu--row{line-height:48px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.box--direction-row.box--responsive>*{margin-right:0}.grommet.rtl .menu--inline.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.box--direction-column a:not(.button){margin-bottom:6px}.menu--inline.menu--small{font-size:16px;font-size:1rem;line-height:inherit}.menu--inline.menu--large{font-size:24px;font-size:1.5rem;line-height:inherit}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:4px;border-color:transparent;border-right-style:solid}.grommet.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:hsla(0,0%,87%,.5)}.menu--primary>a:not(.button).active{border-color:#01a982}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu:not(.box--direction-row)>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15);border:none}.menu--inline.menu:not(.box--direction-row) .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu:not(.box--direction-row) a,.menu__drop a{text-decoration:none}.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu:not(.box--direction-row).box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu:not(.box--direction-row).box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15)}.menu--inline.menu:not(.box--direction-row).menu--small>a,.menu__drop.menu--small>a{padding:6px 0}.menu--inline.menu:not(.box--direction-row).menu--large>a,.menu__drop.menu--large>a{padding:24px 0}@media screen and (max-width:44.9375em){.menu--inline.menu:not(.box--direction-row).box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu:not(.box--direction-row).box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu:not(.box--direction-row).box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #2ad2c9}.meter__graphic text{fill:#777}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter--legend-bottom.meter--legend-align-center .meter__legend{text-align:center}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter--active .meter__values .meter__slice:hover,.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#01a982}.meter--bar .meter__values .meter__slice.color-index-critical,.meter--bar .meter__values .meter__slice.color-index-error{stroke:#f04953}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#ffd144}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#01a982}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#ccc}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-5{stroke:#617c91}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#94aba8}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#998e88}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#8c6694}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#3b3b3b}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-7{stroke:#434343}.meter--bar .meter__values .meter__slice.color-index-grey-4,.meter--bar .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#2ad2c9}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-5{stroke:#614767}.meter--bar .meter__values .meter__slice.color-index-accent-3,.meter--bar .meter__values .meter__slice.color-index-accent-6{stroke:#ff8d6d}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(1,169,130,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__thresholds .meter__slice.color-index-error,.meter--bar .meter__tracks .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-error{stroke:rgba(240,73,83,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,209,68,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(1,169,130,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,80%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-5{stroke:rgba(97,124,145,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(148,171,168,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:hsla(21,8%,57%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(140,102,148,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(42,210,201,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-5,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-5{stroke:rgba(97,71,103,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__thresholds .meter__slice.color-index-accent-6,.meter--bar .meter__tracks .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-6{stroke:rgba(255,141,109,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{width:24px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{width:36px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{width:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px;width:36px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{width:72px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{width:108px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{width:144px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic,.meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic{height:12px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{height:24px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{height:36px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{height:48px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large{line-height:36px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:36px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{height:72px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{height:108px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{height:144px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#01a982}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--arc .meter__values .meter__slice.color-index-error,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-error,.meter--spiral .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-error{stroke:#f04953}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#ffd144}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#01a982}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#ccc}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-5{stroke:#617c91}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#94aba8}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#998e88}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#8c6694}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#3b3b3b}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-7,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-7,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-7{stroke:#434343}.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--arc .meter__values .meter__slice.color-index-grey-8,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-8,.meter--spiral .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#2ad2c9}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-5,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-5,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-5{stroke:#614767}.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--arc .meter__values .meter__slice.color-index-accent-6,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-6,.meter--spiral .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-6{stroke:#ff8d6d}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(1,169,130,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__thresholds .meter__slice.color-index-error,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-error,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-error,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-error,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-error,.meter--spiral .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-error{stroke:rgba(240,73,83,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,209,68,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(1,169,130,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,80%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5{stroke:rgba(97,124,145,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(148,171,168,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:hsla(21,8%,57%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(140,102,148,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(42,210,201,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-5,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-5,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-5,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-5,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-5,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-5{stroke:rgba(97,71,103,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__thresholds .meter__slice.color-index-accent-6,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-6,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-6,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-6,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-6,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-6{stroke:rgba(255,141,109,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification:not(.notification--disabled){cursor:pointer}.notification:not(.notification--disabled):hover{z-index:1;box-shadow:0 0 0 2px #01a982}.notification--status-critical .notification__status .status-icon__base{fill:#fff}.notification--status-critical .notification__status .status-icon__detail{stroke:#f04953;fill:#f04953}.notification--status-critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-critical:not(.notification--disabled):hover{box-shadow:0 0 0 2px #f04953}.notification--status-error .notification__status .status-icon__base{fill:#fff}.notification--status-error .notification__status .status-icon__detail{stroke:#f04953;fill:#f04953}.notification--status-error .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-error:not(.notification--disabled):hover{box-shadow:0 0 0 2px #f04953}.notification--status-warning .notification__status .status-icon__base{fill:#fff}.notification--status-warning .notification__status .status-icon__detail{stroke:#ffd144;fill:#ffd144}.notification--status-warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-warning:not(.notification--disabled):hover{box-shadow:0 0 0 2px #ffd144}.notification--status-ok .notification__status .status-icon__base{fill:#fff}.notification--status-ok .notification__status .status-icon__detail{stroke:#01a982;fill:#01a982}.notification--status-ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-ok:not(.notification--disabled):hover{box-shadow:0 0 0 2px #01a982}.notification--status-unknown .notification__status .status-icon__base{fill:#fff}.notification--status-unknown .notification__status .status-icon__detail{stroke:#ccc;fill:#ccc}.notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-unknown:not(.notification--disabled):hover{box-shadow:0 0 0 2px #ccc}.notification--status-disabled .notification__status .status-icon__base{fill:#fff}.notification--status-disabled .notification__status .status-icon__detail{stroke:#ccc;fill:#ccc}.notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-disabled:not(.notification--disabled):hover{box-shadow:0 0 0 2px #ccc}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:0}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input__input:invalid{box-shadow:none}.number-input__input::-ms-clear{display:none}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.grommet .paragraph--align-start{text-align:left}html.rtl .grommet .paragraph--align-start{text-align:right}.grommet .paragraph--align-center{text-align:center}.grommet .paragraph--align-right{text-align:right}html.rtl .grommet .paragraph--align-right{text-align:left}.grommet .paragraph--margin-none{margin-top:0;margin-bottom:0}.grommet .paragraph--margin-small{margin-top:12px;margin-bottom:12px}.grommet .paragraph--margin-medium{margin-top:24px;margin-bottom:24px}.grommet .paragraph--margin-large{margin-top:48px;margin-bottom:48px}.grommet .paragraph.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.grommet .paragraph.paragraph--small a{text-decoration:none}.grommet .paragraph.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.grommet .paragraph.paragraph--large a{color:#01a982;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#01a982}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#01a982;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#017b5f;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__control{border-color:hsla(0,0%,100%,.7)}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__label{color:hsla(0,0%,100%,.85)}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit;line-height:inherit}.search__input::-ms-clear{display:none}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}@media screen and (max-width:44.9375em){.search__drop .search__suggestion{width:calc(100vw - 72px)}}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search__drop-control{vertical-align:top;height:48px}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-left:11px;padding-right:47px;border-radius:0;-webkit-appearance:none}.search--inline .search__input:focus{padding-left:10px;padding-right:46px}html.rtl .search--inline .search__input{padding-right:11px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:11px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small .search__input{font-size:19px;font-size:1.1875rem;line-height:inherit;padding:4px 18px;padding-right:23px}.search--small .search__input:focus{padding:3px 17px;padding-right:22px}.search--large .search__input{font-size:54px;font-size:3.375rem;line-height:normal;padding:12px 24px;padding-right:72px}.search--large .search__input:focus{padding:11px 71px;padding-left:23px}@media screen and (max-width:44.9375em){.search--large .search__input:focus{padding:10px 22px;padding-right:46px}}@media screen and (max-width:44.9375em){.search--large .search__input{font-size:inherit;padding:11px 23px;padding-right:47px;line-height:1.5}}.search--large .control-icon-search{right:24px;width:48px;height:48px}@media screen and (max-width:44.9375em){.search--large .control-icon-search{right:12px;width:24px;height:24px}}@media screen and (min-width:45em){.search--large .control-icon-search{transition:none}}.search--icon-align-start.search--inline .search__input{padding-left:47px;padding-right:23px}.search--icon-align-start.search--inline .search__input:focus{padding-left:46px;padding-right:23px}.search--icon-align-start.search--inline .control-icon-search{left:12px}.search--icon-align-start.search--large .search__input{padding-left:72px;padding-right:24px}.search--icon-align-start.search--large .search__input:focus{padding-left:71px;padding-right:23px}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input:focus{padding:10px 22px;padding-left:46px}}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input{padding:11px 23px;padding-left:47px}}.search--fill{width:100%;max-width:none;flex-grow:1}.search-input{position:relative;display:inline-block}.grommet .search-input__input,.search-input__input{width:100%;height:100%;display:block;padding-right:48px}.grommet .search-input__input:focus,.search-input__input:focus{padding-right:47px}.grommet .search-input__input::-ms-clear,.search-input__input::-ms-clear{display:none}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:6px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#01a982}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:0}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid rgba(0,0,0,.15)}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1 1 auto;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden;position:absolute}.tab{padding:0 12px}.tabs--justify-end .tab:first-of-type,.tabs--justify-start .tab:first-of-type{padding-left:0}.tabs--justify-end .tab:last-of-type,.tabs--justify-start .tab:last-of-type{padding-right:0}@media screen and (max-width:44.9375em){.tabs--responsive .tab:first-of-type,.tabs--responsive .tab:last-of-type{padding-left:12px;padding-right:12px}}.tab a{display:inline-block}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus:not(tab--active .tab__link) .tab__label{border-color:rgba(0,0,0,.15)}.tab__label{display:inline-block;cursor:pointer;padding-bottom:10px;color:#777;border-bottom:4px solid transparent}.tab--active .tab__label,.tab--active .tab__link:hover .tab__label{color:#000;border-color:#000}.tab:hover .tab__label{border-color:rgba(0,0,0,.15)}.tabs{margin:12px 0;padding:0;display:flex;flex-wrap:wrap;align-items:center;list-style:none;border-bottom:1px solid rgba(0,0,0,.15)}.tabs--justify-center{justify-content:center}.tabs--justify-start{justify-content:flex-start}.tabs--justify-end{justify-content:flex-end}@media screen and (max-width:44.9375em){.tabs--justify-center.tabs--responsive,.tabs--justify-end.tabs--responsive,.tabs--justify-start.tabs--responsive{flex-direction:column;text-align:center}}.tabs+div:focus{outline:none}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid rgba(0,0,0,.15)}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--scrollable .table__table thead{visibility:hidden}.table--scrollable .table__table th{border-bottom:none}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#d0f3eb;color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:hsla(0,0%,87%,.5);color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.table--small thead{display:none}.table--small td{display:block}.table--small td:before{font-weight:100;font-size:19px;font-size:1.1875rem;line-height:24px;content:attr(data-th);display:block;padding-right:12px}.table--small tr{border-bottom:1px solid rgba(0,0,0,.15)}.table--small td,.table--small th{padding-left:24px}.tag{padding:6px 22px;background-color:transparent;border:2px solid #01a982;border-radius:0;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px;border-color:rgba(51,51,51,.6);margin:0 12px 12px 0;position:relative;opacity:.7}.tag:focus:not(.button--disabled){border-color:#2ad2c9;box-shadow:0 0 1px 1px #2ad2c9}@media screen and (min-width:45em){.tag{transition:.1s ease-in-out}}.tag .anchor:hover:not(.anchor--disabled),.tag a,.tag a:hover{color:#333;text-decoration:none}.tag:hover{box-shadow:0 0 0 2px rgba(51,51,51,.6);opacity:1}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:rgba(0,0,0,.15);color:#fff}.tiles{width:100%;padding:12px}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles>.tile{flex-grow:0;flex-shrink:0}@media screen and (min-width:45em){.tiles>.tile{flex-basis:192px}}.tiles:not(.tiles--flush)>.tile{margin:12px}.tiles:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#d0f3eb;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}@media screen and (min-width:45em){.tiles--small>.tile{flex-basis:96px}}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}.tiles:focus{outline:1px solid #2ad2c9}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#d0f3eb;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title span{overflow:hidden;text-overflow:ellipsis}.title img,.title svg{max-width:576px;flex:0 0 auto}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#01a982;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid rgba(0,0,0,.15)}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(1,169,130,.8)}.video__control.button--primary:hover{background-color:#01a982}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:hsla(0,0%,100%,.85);background-color:rgba(51,51,51,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid hsla(0,0%,100%,.7);text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#01a982}.video--titled .video__summary{background-color:rgba(51,51,51,.7);color:hsla(0,0%,100%,.85);border-radius:0;font-size:19px;font-size:1.1875rem;line-height:1.26316}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both}.button{letter-spacing:.04167em}.button:not(.button--disabled):not(.button--plain):not(.button--fill).button--primary:hover,.button:not(.button--disabled):not(.button--plain):not(.button--fill):hover{box-shadow:0 0 0 2px #01a982}.button:not(.button--disabled):not(.button--plain):not(.button--fill).button--secondary:hover{box-shadow:0 0 0 2px rgba(51,51,51,.6)}.button:not(.button--disabled):not(.button--plain):not(.button--fill).button--accent:hover{box-shadow:0 0 0 2px #ff8d6d}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled):not(.button--plain):not(.button--fill):hover{box-shadow:0 0 0 2px hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--primary:hover{box-shadow:0 0 0 2px #01a982}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--secondary:hover{box-shadow:0 0 0 2px hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent-1]):not([class*=background-color-index-accent-3]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled):not(.button--plain):not(.button--fill).button--accent:hover{box-shadow:0 0 0 2px #ff8d6d}.button--fill:not(.button--disabled):not(.button--plain):hover{padding:4px 20px;border-width:4px}@media screen and (min-width:45em){.button--fill:not(.button--disabled):not(.button--plain){transition:none}} \ No newline at end of file diff --git a/css/grommet-hpinc.css b/css/grommet-hpinc.css index 505b702..b1ef7fa 100644 --- a/css/grommet-hpinc.css +++ b/css/grommet-hpinc.css @@ -434,24 +434,6 @@ ins { ins { border-bottom: 1px solid; } -/*------------------------------------* #BOX-SIZING -\*------------------------------------*/ -/** - * Set the global `box-sizing` state to `border-box`. - * - * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice - * paulirish.com/2012/box-sizing-border-box-ftw - */ -html { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -*, *:before, *:after { - -webkit-box-sizing: inherit; - -moz-box-sizing: inherit; - box-sizing: inherit; } - /*------------------------------------* #SHARED \*------------------------------------*/ /** @@ -586,116 +568,111 @@ img[height] { /* [2] */ max-width: none; } -html, +.grommet, .brand-font { font-family: "HPSimplified", Arial, sans-serif; } -html, -body { +.grommet { font-size: 16px; font-size: 1rem; line-height: 24px; } - -h1 { - font-size: 48px; - font-size: 3rem; - line-height: 1.125; } - -h2 { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -h3 { - font-size: 24px; - font-size: 1.5rem; - line-height: 1.25; } - -h4 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h5 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h1, -h2, -h3, -h4, -h5 { - font-weight: 100; - max-width: 100%; } - h1.header--strong, - h1 > strong, - h2.header--strong, - h2 > strong, - h3.header--strong, - h3 > strong, - h4.header--strong, - h4 > strong, - h5.header--strong, - h5 > strong { - font-weight: 600; } - h1 a, - h1 a.anchor, - h2 a, - h2 a.anchor, - h3 a, - h3 a.anchor, - h4 a, - h4 a.anchor, - h5 a, - h5 a.anchor { - color: inherit; - text-decoration: none; } - h1 a:hover, - h1 a.anchor:hover, - h2 a:hover, - h2 a.anchor:hover, - h3 a:hover, - h3 a.anchor:hover, - h4 a:hover, - h4 a.anchor:hover, - h5 a:hover, - h5 a.anchor:hover { + .grommet h1 { + font-size: 48px; + font-size: 3rem; + line-height: 1.125; } + .grommet h2 { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet h3 { + font-size: 24px; + font-size: 1.5rem; + line-height: 1.25; } + .grommet h4 { + font-size: 18px; + font-size: 1.125rem; + line-height: 1.33333; } + .grommet h5 { + font-size: 17px; + font-size: 1.0625rem; + line-height: 1.41176; } + .grommet h6 { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .grommet h1, + .grommet h2, + .grommet h3, + .grommet h4, + .grommet h5, + .grommet h6 { + font-weight: 100; + max-width: 100%; } + .grommet h1.header--strong, + .grommet h1 > strong, + .grommet h2.header--strong, + .grommet h2 > strong, + .grommet h3.header--strong, + .grommet h3 > strong, + .grommet h4.header--strong, + .grommet h4 > strong, + .grommet h5.header--strong, + .grommet h5 > strong, + .grommet h6.header--strong, + .grommet h6 > strong { + font-weight: 600; } + .grommet h1 a, + .grommet h1 a.anchor, + .grommet h2 a, + .grommet h2 a.anchor, + .grommet h3 a, + .grommet h3 a.anchor, + .grommet h4 a, + .grommet h4 a.anchor, + .grommet h5 a, + .grommet h5 a.anchor, + .grommet h6 a, + .grommet h6 a.anchor { + color: inherit; text-decoration: none; } - -p, -dd, -li { - max-width: 576px; - margin-left: 0px; } - -dd { - margin-bottom: 12px; } - -p { - margin-top: 24px; - margin-bottom: 24px; } - -blockquote { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -b, -strong { - font-weight: 600; } - -code.hljs { - border: 1px solid #ccc; } - -.large-number-font { - font-family: "HPSimplified", Arial, sans-serif; } - -.secondary { - color: #777; } - -.error { - color: #F04B37; } + .grommet h1 a:hover, + .grommet h1 a.anchor:hover, + .grommet h2 a:hover, + .grommet h2 a.anchor:hover, + .grommet h3 a:hover, + .grommet h3 a.anchor:hover, + .grommet h4 a:hover, + .grommet h4 a.anchor:hover, + .grommet h5 a:hover, + .grommet h5 a.anchor:hover, + .grommet h6 a:hover, + .grommet h6 a.anchor:hover { + text-decoration: none; } + .grommet p, + .grommet dd, + .grommet li { + max-width: 576px; + margin-left: 0px; } + .grommet dd { + margin-bottom: 12px; } + .grommet p { + margin-top: 24px; + margin-bottom: 24px; } + .grommet blockquote { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet b, + .grommet strong { + font-weight: 600; } + .grommet code.hljs { + border: 1px solid rgba(0, 0, 0, 0.15); } + .grommet .large-number-font { + font-family: "HPSimplified", Arial, sans-serif; } + .grommet .secondary { + color: #777; } + .grommet .error { + color: #F04B37; } @-webkit-keyframes fadein { from { @@ -709,69 +686,68 @@ code.hljs { to { opacity: 1; } } -input, -select, -textarea { +.grommet input, +.grommet select, +.grommet textarea { font-size: 16px; font-size: 1rem; line-height: 1.5; padding: 11px 23px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 0px 5px 0px 5px; outline: none; - margin-right: 12px; background-color: transparent; } - html.rtl input, html.rtl - select, html.rtl - textarea { + .grommet.rtl .grommet input, .grommet.rtl + .grommet select, .grommet.rtl + .grommet textarea { margin-right: 0; margin-left: 12px; } - input:focus, - select:focus, - textarea:focus { + .grommet input:focus, + .grommet select:focus, + .grommet textarea:focus { padding: 10px 22px; border-width: 2px; border-color: #99d5ef; } - input::-moz-focus-inner, - select::-moz-focus-inner, - textarea::-moz-focus-inner { + .grommet input::-moz-focus-inner, + .grommet select::-moz-focus-inner, + .grommet textarea::-moz-focus-inner { border: none; outline: none; } - input::-webkit-input-placeholder, - select::-webkit-input-placeholder, - textarea::-webkit-input-placeholder { + .grommet input::-webkit-input-placeholder, + .grommet select::-webkit-input-placeholder, + .grommet textarea::-webkit-input-placeholder { color: #aaa; } - input::-moz-placeholder, - select::-moz-placeholder, - textarea::-moz-placeholder { + .grommet input::-moz-placeholder, + .grommet select::-moz-placeholder, + .grommet textarea::-moz-placeholder { color: #aaa; } - input:-ms-input-placeholder, - select:-ms-input-placeholder, - textarea:-ms-input-placeholder { + .grommet input:-ms-input-placeholder, + .grommet select:-ms-input-placeholder, + .grommet textarea:-ms-input-placeholder { color: #aaa; } - input.error, - select.error, - textarea.error { + .grommet input.error, + .grommet select.error, + .grommet textarea.error { border-color: #F04B37; } -input[type="button"], -input[type="submit"] { +.grommet input[type="button"], +.grommet input[type="submit"] { text-align: center; line-height: inherit; } -select { - border-color: #ccc; - padding-right: 24px; +.grommet select { + border-color: rgba(0, 0, 0, 0.15); + padding-right: 48px; -webkit-appearance: none; -moz-appearance: none; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px; cursor: pointer; } - select::-moz-focus-inner { + .grommet select::-moz-focus-inner { border: none; } - select.plain { + .grommet select.plain { border: none; } -input[type=range] { +.grommet input[type=range] { position: relative; -webkit-appearance: none; border-color: transparent; @@ -779,26 +755,26 @@ input[type=range] { padding: 0px; cursor: pointer; overflow-x: hidden; } - input[type=range]:focus { + .grommet input[type=range]:focus { outline: none; } - input[type=range]::-moz-focus-inner { + .grommet input[type=range]::-moz-focus-inner { border: none; } - input[type=range]::-moz-focus-outer { + .grommet input[type=range]::-moz-focus-outer { border: none; } - input[type=range]::-webkit-slider-runnable-track { + .grommet input[type=range]::-webkit-slider-runnable-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-runnable-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-runnable-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-webkit-slider-thumb { + .grommet input[type=range]::-webkit-slider-thumb { position: relative; height: 24px; width: 24px; overflow: visible; -webkit-appearance: none; margin-top: -11px; } - input[type=range]::-webkit-slider-thumb:before { + .grommet input[type=range]::-webkit-slider-thumb:before { content: ""; position: absolute; left: -3000px; @@ -807,9 +783,9 @@ input[type=range] { bottom: 9px; background-color: #0096D6; pointer-events: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:before { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:before { background-color: #fff; } - input[type=range]::-webkit-slider-thumb:after { + .grommet input[type=range]::-webkit-slider-thumb:after { content: ""; position: absolute; border: 2px solid #0096D6; @@ -818,22 +794,22 @@ input[type=range] { border-radius: 24px; background-color: #fff; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:after { background-color: transparent; border-color: #fff; } - input[type=range]:hover::-webkit-slider-thumb:after { + .grommet input[type=range]:hover::-webkit-slider-thumb:after { content: ""; border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-webkit-slider-thumb:after { background-color: #fff; border-color: #fff; } - input[type=range]::-moz-range-track { + .grommet input[type=range]::-moz-range-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-moz-range-thumb { + .grommet input[type=range]::-moz-range-thumb { position: relative; height: 24px; width: 24px; @@ -843,33 +819,33 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-thumb { border-color: #fff; background-color: transparent; } - input[type=range]::hover::-moz-range-thumb { + .grommet input[type=range]::hover::-moz-range-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::hover::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::hover::-moz-range-thumb { border-color: #fff; background-color: #fff; } - input[type=range]::-ms-track { + .grommet input[type=range]::-ms-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); border-color: transparent; color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-fill-lower { + .grommet input[type=range]::-ms-fill-lower { background: #0096D6; border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-lower { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-lower { background: #fff; } - input[type=range]::-ms-fill-upper { + .grommet input[type=range]::-ms-fill-upper { background: rgba(51, 51, 51, 0.2); border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-upper { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-upper { background: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-thumb { + .grommet input[type=range]::-ms-thumb { position: relative; height: 24px; width: 24px; @@ -879,25 +855,27 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-thumb { border-color: #fff; } - input[type=range]:hover::-ms-thumb { + .grommet input[type=range]:hover::-ms-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-ms-thumb { border-color: #fff; background-color: #fff; } -html.rtl, -body.rtl { - direction: rtl; } - @media screen and (min-width: 45em) { - html, - body { + html.grommet { height: 100%; width: 100%; overflow: visible; } } +.grommet { + box-sizing: border-box; } + .grommet.rtl { + direction: rtl; } + .grommet * { + box-sizing: inherit; } + /*------------------------------------* #LIST-BARE \*------------------------------------*/ /** @@ -908,114 +886,109 @@ body.rtl { padding: 0; list-style: none; } -a, +.grommet a:not(.anchor), .anchor { color: #2883d7; text-decoration: none; cursor: pointer; } - a:visited, + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button, + .anchor.plain .grommet a:not(.anchor).button, .grommet a:not(.anchor).plain + .anchor.button, + .anchor.plain + .anchor.button { + text-decoration: none; } + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover, + .anchor.plain .grommet a:not(.anchor).button:hover, .grommet a:not(.anchor).plain + .anchor.button:hover, + .anchor.plain + .anchor.button:hover { + text-decoration: none; } + .grommet a:not(.anchor):visited, .anchor:visited { color: #2883d7; } - a.active, + .grommet a:not(.anchor).active, .anchor.active { color: #333; } - a:hover:not(.anchor--disabled), - .anchor:hover:not(.anchor--disabled) { - text-decoration: underline; - color: #0076a8; } - a__icon, - .anchor__icon { - display: inline-block; - padding: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a.anchor--primary, - .anchor.anchor--primary { - font-size: 19px; - font-size: 1.1875rem; - line-height: 24px; - font-weight: 600; - color: #0096D6; - text-decoration: none; } - a.anchor--primary .control-icon, - .anchor.anchor--primary .control-icon { - stroke: #0096D6; - margin-right: 12px; } - html.rtl a.anchor--primary .control-icon, html.rtl - .anchor.anchor--primary .control-icon { - margin-right: 0; - margin-left: 12px; } - a.anchor--primary > span, - .anchor.anchor--primary > span { - vertical-align: middle; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon { - transform: translateX(3px); - stroke: #0096D6; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline { - stroke-width: 3px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a--disabled, - .anchor--disabled { - opacity: 0.3; + .grommet a:not(.anchor):hover, + .anchor:hover { + color: #0076a8; + text-decoration: underline; } + +.anchor--disabled:hover { + color: #2883d7; } + +.anchor__icon { + display: inline-block; + padding: 12px; } + +.anchor--primary, +.anchor--icon-label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + text-decoration: none; } + .anchor--primary .control-icon, + .anchor--icon-label .control-icon { + vertical-align: middle; + margin-right: 12px; } + html.rtl .anchor--primary .control-icon, html.rtl + .anchor--icon-label .control-icon { + margin-right: 0; + margin-left: 12px; } + .anchor--primary > span, + .anchor--icon-label > span { + vertical-align: middle; } + +.anchor--reverse .control-icon { + margin-right: 0; + margin-left: 12px; } + +.anchor--primary { + color: #0096D6; } + .anchor--primary .control-icon { + stroke: #0096D6; } + .anchor--primary:hover .control-icon { + stroke: #0096D6; + transform: translateX(3px); } + .anchor--primary:hover .control-icon path, + .anchor--primary:hover .control-icon polyline { + stroke-width: 3px; } + .anchor--primary.anchor--disabled .control-icon { + transform: none; } + +.anchor--disabled { + opacity: 0.3; + cursor: default; } + .anchor--disabled .control-icon { cursor: default; } - a--disabled .control-icon, - .anchor--disabled .control-icon { - cursor: default; } -#loading { - position: absolute; - width: 100%; - height: 100%; - background-color: #ddd; - text-align: center; - padding-top: 100px; - font-size: 48px; - color: #ccc; - font-style: italic; } +.anchor--icon { + display: inline-block; } + +.grommet [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a { + color: rgba(255, 255, 255, 0.85); } + .grommet [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover { + color: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover .control-icon { + fill: #fff; + stroke: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } @media screen and (min-width: 45em) { - .app { + .grommet.app { position: absolute; top: 0px; bottom: 0px; @@ -1023,10 +996,10 @@ a, right: 0px; overflow: auto; } } -.app--inline { +.grommet.app--inline { position: relative; } -.app--centered > .split { +.grommet.app--centered > .split { width: 100%; max-width: 960px; margin-left: auto; @@ -1077,7 +1050,7 @@ a, .article > * { flex: 0 0 auto; } -article:not(.article) { +.grommet article:not(.article) { width: 100%; } .attribute { @@ -1098,38 +1071,6 @@ article:not(.article) { background-position: center center; background-size: cover; background-repeat: no-repeat; } - .box__texture { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: -1; - overflow: hidden; } - .box__container { - padding-left: 24px; - padding-right: 24px; } - .box__container--full { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full { - width: calc(100vw - 48px); } - .box__container--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full-horizontal { - width: calc(100vw - 48px); } - .app--centered .box__container > .box { - width: 100%; - max-width: 960px; - margin-left: auto; - margin-right: auto; } - @media screen and (max-width: 44.9375em) { - .app--centered .box__container > .box { - padding-left: 0px; - padding-right: 0px; } } - .box--wrap { - flex-wrap: wrap; } .box--pad-none { padding: 0px; } .box--pad-small { @@ -1162,183 +1103,258 @@ article:not(.article) { .box--pad-vertical-large { padding-top: 48px; padding-bottom: 48px; } - .box--full { - position: relative; - max-width: 100%; - width: 100vw; - min-height: 100vh; - height: 100%; } - .layer__container .box--full { - width: calc(100vw - 48px); } - .box--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box--full-horizontal { - width: calc(100vw - 48px); } - .box--full-vertical { - min-height: 100vh; } - .box--direction-row { - flex-direction: row; } - .box--direction-row.box--reverse { - flex-direction: row-reverse; } - .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 12px; } - html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 0; - margin-left: 12px; } - .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 24px; } - html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 0; - margin-left: 24px; } - .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 48px; } - html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 0; - margin-left: 48px; } - @media screen and (max-width: 44.9375em) { - .box--direction-row.box--responsive { - flex-direction: column; } - .box--direction-row.box--responsive.box--reverse { - flex-direction: column-reverse; } } - .box--direction-column { - flex-direction: column; } - .box--direction-column.box--reverse { - flex-direction: column-reverse; } - .box--direction-column > .header.box--direction-row, - .box--direction-column > .footer.box--direction-row, - .box--direction-column > .header__container--fixed { - flex: 0 0 auto; } - .box--direction-column.box--pad-between-small > *:not(:last-child) { - margin-bottom: 12px; } - .box--direction-column.box--pad-between-medium > *:not(:last-child) { - margin-bottom: 24px; } - .box--direction-column.box--pad-between-large > *:not(:last-child) { - margin-bottom: 48px; } - .box--justify-start { - justify-content: flex-start; } - .box--justify-center { - justify-content: center; } - .box--justify-between { - justify-content: space-between; } - .box--justify-end { - justify-content: flex-end; } - .box--align-start { - align-items: flex-start; } - .box--align-center { - align-items: center; } - .box--align-end { - align-items: flex-end; } - .box--separator-top, .box--separator-horizontal, .box--separator-all { - border-top: 1px solid #ccc; } - .box--separator-bottom, .box--separator-horizontal, .box--separator-all { - border-bottom: 1px solid #ccc; } - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: 1px solid #ccc; } - @media screen and (max-width: 44.9375em) { - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: none; - border-bottom: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: none; - border-bottom: 1px solid #ccc; } } - [class*="background-color-index-"] .box[class*="box--separator"] { - border-color: #eee; } - .box--text-align-left { - text-align: left; } - .box--text-align-center { - text-align: center; } - .box--text-align-right { - text-align: right; } .box > .flex-grow-1, .box > .flex { flex-grow: 1; } - .box--direction-down, .box--direction-up { - flex-direction: column; } - .box--direction-left { - justify-content: flex-end; } - .box--flush { - padding: 0px; } + .box > .no-flex { + flex: 0 0 auto; } + +.box__texture { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; + overflow: hidden; } + +.box__container { + padding-left: 24px; + padding-right: 24px; } + .app--centered .box__container > .box { + width: 100%; + max-width: 960px; + margin-left: auto; + margin-right: auto; } + @media screen and (max-width: 44.9375em) { + .app--centered .box__container > .box { + padding-left: 0px; + padding-right: 0px; } } + +.box__container--full { + max-width: 100%; + width: 100vw; } + +.box__container--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--wrap { + flex-wrap: wrap; } + +.box--full { + position: relative; + max-width: 100%; + width: 100vw; + min-height: 100vh; + height: 100%; } + +.box--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--full-vertical { + min-height: 100vh; } + +.box--direction-row { + flex-direction: row; } + .box--direction-row.box--reverse { + flex-direction: row-reverse; } + .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 12px; } + html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 0; + margin-left: 12px; } + .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 24px; } + html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 0; + margin-left: 24px; } + .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 48px; } + html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 0; + margin-left: 48px; } + @media screen and (max-width: 44.9375em) { + .box--direction-row.box--responsive { + flex-direction: column; } + .box--direction-row.box--responsive:not(.box--justify-center) { + align-items: stretch; } + .box--direction-row.box--responsive.box--reverse { + flex-direction: column-reverse; } } + +.box--direction-column { + flex-direction: column; } + .box--direction-column.box--reverse { + flex-direction: column-reverse; } + .box--direction-column > .header.box--direction-row, + .box--direction-column > .footer.box--direction-row, + .box--direction-column > .header__container--fixed { + flex: 0 0 auto; } + .box--direction-column.box--pad-between-small > *:not(:last-child) { + margin-bottom: 12px; } + .box--direction-column.box--pad-between-medium > *:not(:last-child) { + margin-bottom: 24px; } + .box--direction-column.box--pad-between-large > *:not(:last-child) { + margin-bottom: 48px; } + +.box--justify-start { + justify-content: flex-start; } + +.box--justify-center { + justify-content: center; } + +.box--justify-between { + justify-content: space-between; } + +.box--justify-end { + justify-content: flex-end; } + +.box--align-start { + align-items: flex-start; } + +.box--align-center { + align-items: center; } + +.box--align-end { + align-items: flex-end; } + +.box--align-baseline { + align-items: baseline; } + +.box--align-content-start { + align-content: flex-start; } + +.box--align-content-end { + align-content: flex-end; } + +.box--align-content-center { + align-content: center; } + +.box--align-content-between { + align-content: space-between; } + +.box--align-content-around { + align-content: space-around; } + +.box--separator-top, +.box--separator-horizontal, +.box--separator-all { + border-top: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-bottom, +.box--separator-horizontal, +.box--separator-all { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-left, +.box--separator-vertical, +.box--separator-all { + border-left: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-right, +.box--separator-vertical, +.box--separator-all { + border-right: 1px solid rgba(0, 0, 0, 0.15); } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .box[class*="box--separator"] { + border-color: rgba(255, 255, 255, 0.5); } + +.box--text-align-left { + text-align: left; } + +.box--text-align-center { + text-align: center; } + +.box--text-align-right { + text-align: right; } + +.box--clickable { + cursor: pointer; } .brick { - box-shadow: 1px 1px 5px #eee; padding: 24px; position: relative; - margin: 0 12px 12px 0; float: left; + margin: 0 12px 12px 0; max-width: calc(100% - 12px); } - .brick .brick--label { + .brick__label { position: absolute; top: 0; right: 0; left: 0; - bottom: 0; } - .brick .brick--label span { + bottom: 0; + overflow: hidden; } + .brick__label span { text-transform: uppercase; text-decoration: none; color: #333; position: absolute; left: 24px; bottom: 24px; } + .brick__background { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; } + .brick__container { + position: absolute; + top: 24px; + bottom: 24px; + left: 24px; + right: 24px; + max-width: calc(100% - 48px); } + .brick--clickable:hover, .brick--clickable:focus { + z-index: 1; + transition: transform 0.4s; + transform: scale(1.05); + outline: none; } .brick[class*="background-color-index-"] span { color: #fff; } - -.brick--1-1 { - width: calc(25% - 12px); } - .brick--1-1:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-1 { - width: calc(50% - 12px); } } - -.brick--1-2 { - width: calc(25% - 12px); } - .brick--1-2:after { - padding-top: calc(200% + 60px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-2 { - width: calc(50% - 12px); } } - -.brick--2-1 { - width: calc(50% - 12px); } - .brick--2-1:after { - padding-top: calc(50% - 30px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-1 { - width: calc(100% - 12px); } } - -.brick--2-2 { - width: calc(50% - 12px); } - .brick--2-2:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-2 { - width: calc(100% - 12px); } } - -.brick--content-wrapper { - position: absolute; - top: 24px; - bottom: 24px; - left: 24px; - right: 24px; - max-width: calc(100% - 48px); } - -input[type="button"], -input[type="submit"], -button:not(.button) { - padding: 6px 22px; - background-color: transparent; - border: 2px solid #0096D6; + .brick--1-1 { + width: calc(25% - 12px); } + .brick--1-1:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-1 { + width: calc(50% - 12px); } } + .brick--1-2 { + width: calc(25% - 12px); } + .brick--1-2:after { + padding-top: calc(200% + 60px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-2 { + width: calc(50% - 12px); } } + .brick--2-1 { + width: calc(50% - 12px); } + .brick--2-1:after { + padding-top: calc(50% - 30px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-1 { + width: calc(100% - 12px); } } + .brick--2-2 { + width: calc(50% - 12px); } + .brick--2-2:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-2 { + width: calc(100% - 12px); } } + +.grommet input[type="button"], +.grommet input[type="submit"], +.grommet button:not(.button) { + padding: 6px 22px; + background-color: transparent; + border: 2px solid #0096D6; border-radius: 0px 5px 0px 5px; color: #333; font-size: 19px; @@ -1350,17 +1366,22 @@ button:not(.button) { outline: none; min-width: 120px; max-width: 384px; } - input[type="button"]:focus:not(.button--disabled), - input[type="submit"]:focus:not(.button--disabled), - button:not(.button):focus:not(.button--disabled) { + .grommet input[type="button"]:focus:not(.button--disabled), + .grommet input[type="submit"]:focus:not(.button--disabled), + .grommet button:not(.button):focus:not(.button--disabled) { border-color: #99d5ef; box-shadow: 0 0 1px 1px #99d5ef; } @media screen and (min-width: 45em) { - input[type="button"], - input[type="submit"], - button:not(.button) { + .grommet input[type="button"], + .grommet input[type="submit"], + .grommet button:not(.button) { transition: 0.1s ease-in-out; } } +.grommet a.button { + text-decoration: none; } + .grommet a.button:hover { + text-decoration: none; } + .button { padding: 6px 22px; background-color: transparent; @@ -1382,104 +1403,131 @@ button:not(.button) { @media screen and (min-width: 45em) { .button { transition: 0.1s ease-in-out; } } - .button__icon { - display: inline-block; - padding: 12px; } - .button--primary { - border-color: #0096D6; - background-color: #0096D6; + +.button__icon { + display: inline-block; + padding: 12px; } + +.button--primary { + border-color: #0096D6; + background-color: #0096D6; + color: #fff; } + .button--primary:hover:not(.button--disabled) { color: #fff; } - .button--secondary { - border-color: rgba(51, 51, 51, 0.6); } - .button--accent { + .button--primary:hover:not(.button--disabled) .button__icon .control-icon { + fill: #fff; + stroke: #fff; } + +.button--secondary { + border-color: rgba(51, 51, 51, 0.6); } + +.button--accent { + border-color: #E6734B; } + +.button--plain { + border: none; + padding: 0; + width: auto; + height: auto; + min-width: 0; + max-width: none; + font-weight: inherit; } + .button--plain.button--primary { + background-color: #0096D6; } + .button--plain > span:not(.button__icon):first-child { + margin-left: 12px; } + .button--plain > span:not(.button__icon):last-child { + margin-right: 12px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover .control-icon { + fill: #fff; + stroke: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary) { + border-color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary).button--accent { border-color: #E6734B; } - .button--icon { - border: none; - padding: 0; - width: auto; - height: auto; - min-width: 0; - max-width: none; } - .button--icon.button--primary { - background-color: #0096D6; } - .button--icon > span:not(.button__icon) { - vertical-align: middle; } - .button--icon > span:not(.button__icon):first-child { - margin-left: 12px; } - .button--icon > span:not(.button__icon):last-child { - margin-right: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover .control-icon { - fill: #fff; - stroke: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary) { - border-color: #eee; - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary).button--accent { - border-color: #E6734B; } - .button--disabled { - opacity: 0.3; - cursor: default; } - .button--fill { - width: 100%; - max-width: none; - flex-grow: 1; } + +.button--disabled { + opacity: 0.3; + cursor: default; } + +.button--icon, +.button:not(.button--fill) { + flex: 0 0 auto; } + +.button--fill { + width: 100%; + max-width: none; + flex-grow: 1; } .calendar { position: relative; display: inline-block; min-width: 288px; } - .calendar__input { - width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .calendar__input:focus { - padding-right: 59px; } - .calendar__control { - position: absolute; - top: 50%; - right: 12px; - transform: translateY(-50%); } - .calendar__drop { - border-top-left-radius: 0px; - border-top-right-radius: 0px; } - .calendar__title { - text-align: center; } - .calendar__grid { - width: 100%; - padding: 12px; } - .calendar__grid table { - width: 100%; } - .calendar__grid th, - .calendar__grid td { - text-align: center; - padding: 6px; } - .calendar__grid th { - color: #777; - font-weight: normal; } - .calendar__day { - display: inline-block; - cursor: pointer; - width: 24px; - height: 24px; - transition: background-color 0.3s; } - .calendar__day:hover { - background-color: rgba(0, 0, 0, 0.1); } - .calendar__day--other-month { - color: #777; } - .calendar__day--active { - background-color: #0096D6; - color: #dbdbdb; } - .calendar--active .calendar__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + +.calendar__input { + width: 100%; + height: 100%; + display: block; + padding-right: 60px; } + .calendar__input:focus { + padding-right: 59px; } + .calendar__input::-ms-clear { + display: none; } + +.calendar__control { + position: absolute; + top: 50%; + right: 12px; + transform: translateY(-50%); } + +.calendar__drop { + border-top-left-radius: 0px; + border-top-right-radius: 0px; } + +.calendar__title { + text-align: center; } + +.calendar__grid { + width: 100%; + padding: 12px; } + .calendar__grid table { + width: 100%; } + .calendar__grid th, + .calendar__grid td { + text-align: center; + padding: 6px; } + .calendar__grid th { + color: #777; + font-weight: normal; } + +.calendar__day { + display: inline-block; + cursor: pointer; + width: 24px; + height: 24px; + transition: background-color 0.3s; } + .calendar__day:hover { + background-color: rgba(221, 221, 221, 0.5); } + +.calendar__day--other-month { + color: #777; } + +.calendar__day--active { + background-color: #0096D6; + color: rgba(255, 255, 255, 0.85); } + +.calendar--active .calendar__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } @-webkit-keyframes carousel-reveal { 0% { @@ -1513,8 +1561,11 @@ button:not(.button) { display: flex; max-width: none; transition: all 0.8s; } - .carousel__item > * { - width: 100%; } + .carousel .tiles.box--direction-row > .tile.carousel__item { + flex: 1 1 100%; + box-sizing: border-box; } + .carousel .tiles.box--direction-row > .tile.carousel__item > * { + width: 100%; } .carousel__arrow { -webkit-animation: carousel-reveal 1s; animation: carousel-reveal 1s; @@ -1527,8 +1578,10 @@ button:not(.button) { filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); -webkit-filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); } .carousel__arrow .control-icon polyline { - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); stroke-width: 1px; } + .carousel__arrow:hover .control-icon polyline { + stroke: #fff; } .carousel__arrow--next { right: 0; } .carousel__arrow--prev { @@ -1550,7 +1603,7 @@ button:not(.button) { display: inline-block; width: 36px; height: 36px; - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); fill: transparent; cursor: pointer; filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); @@ -1564,6 +1617,12 @@ button:not(.button) { opacity: 0; -webkit-animation: carousel-hide 1s; animation: carousel-hide 1s; } + .carousel img { + -webkit-user-drag: none; + -khtml-user-drag: none; + -moz-user-drag: none; + -o-user-drag: none; + user-drag: none; } .carousel-controls__control { width: 36px; @@ -1595,13 +1654,11 @@ button:not(.button) { position: relative; display: block; } .chart__grid { - stroke: #ccc; } + stroke: rgba(0, 0, 0, 0.15); } .chart__graphic { width: 100%; height: 192px; max-height: calc(100vh - 144px); } - .chart__graphic:focus { - outline: #99d5ef solid 1px; } @media screen and (min-width: 45em) { .chart__values g { -webkit-animation: reveal-chart 1.5s; @@ -2036,200 +2093,197 @@ button:not(.button) { cursor: pointer; } .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__label { color: #fff; } .check-box > :first-child { margin-right: 12px; } html.rtl .check-box > :first-child { margin-right: 0; margin-left: 12px; } - .check-box__input { - opacity: 0; - position: absolute; } - .check-box__input:checked + .check-box__control { - border-color: #0096D6; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control { - border-color: #fff; } - .check-box__input:checked + .check-box__control .check-box__control-check { - display: block; } - .check-box__input:checked + .check-box__control + .check-box__label { - color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control + .check-box__label { - color: #fff; } - .check-box__input:focus + .check-box__control { - border-color: #99d5ef; - box-shadow: 0 0 1px 1px #99d5ef; } - .check-box__control { - position: relative; - top: -1px; - display: inline-block; - width: 24px; - height: 24px; - vertical-align: middle; - background-color: inherit; - border: 2px solid #999; - border-radius: 0px 5px 0px 5px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control { - border-color: #dbdbdb; } - .check-box__control-check { - position: absolute; - top: -2px; - left: -2px; - display: none; - width: 24px; - height: 24px; - stroke-width: 4px; - stroke: #0096D6; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control-check { - stroke: #fff; } - .check-box__label { - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__label { - color: #dbdbdb; } - .check-box--disabled .check-box__control { - opacity: 0.5; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - background-color: #fff; + +.check-box__input { + opacity: 0; + position: absolute; } + .check-box__input:checked + .check-box__control { + border-color: #0096D6; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control { border-color: #fff; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + .check-box__input:checked + .check-box__control .check-box__control-check { + display: block; } + .check-box__input:checked + .check-box__control + .check-box__label { + color: #333; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control + .check-box__label { + color: #fff; } + .check-box__input:focus + .check-box__control { + border-color: #99d5ef; + box-shadow: 0 0 1px 1px #99d5ef; } + +.check-box__control { + position: relative; + top: -1px; + display: inline-block; + width: 24px; + height: 24px; + vertical-align: middle; + background-color: inherit; + border: 2px solid #999; + border-radius: 0px 5px 0px 5px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control { + border-color: rgba(255, 255, 255, 0.7); } + +.check-box__control-check { + position: absolute; + top: -2px; + left: -2px; + display: none; + width: 24px; + height: 24px; + stroke-width: 4px; + stroke: #0096D6; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control-check { + stroke: #fff; } + +.check-box__label { + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__label { + color: rgba(255, 255, 255, 0.85); } + +.check-box--disabled .check-box__control { + opacity: 0.5; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle .check-box__control { + width: 48px; + height: 24px; + border-radius: 24px; + background-color: rgba(51, 51, 51, 0.2); + border: none; + transition: background-color 0.3s; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + .check-box--toggle .check-box__control:after { content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { - background-color: #fff; - border-color: #fff; } - .check-box--toggle .check-box__control { - width: 48px; - height: 24px; + display: block; + position: absolute; + top: -2px; + left: 0px; + width: 28px; + height: 28px; + background-color: #fff; + border: 2px solid #999; border-radius: 24px; - background-color: rgba(51, 51, 51, 0.2); - border: none; - transition: background-color 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - .check-box--toggle .check-box__control:after { - content: ""; - display: block; - position: absolute; - top: -2px; - left: 0px; - width: 28px; - height: 28px; - background-color: #fff; - border: 2px solid #999; - border-radius: 24px; - transition: margin-left 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control:after { - background-color: transparent; - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: #0096D6; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - stroke: transparent; } - .check-box--toggle .check-box__input:checked + .check-box__control:after { - content: ""; - background-color: #fff; - border-color: #0096D6; - margin-left: 24px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - display: none; } + transition: margin-left 0.3s; + box-sizing: border-box; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control:after { + background-color: transparent; + border-color: rgba(255, 255, 255, 0.7); } + +.check-box--toggle .check-box__input:checked + .check-box__control { + background-color: #0096D6; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + stroke: transparent; } + .check-box--toggle .check-box__input:checked + .check-box__control:after { + content: ""; + background-color: #fff; + border-color: #0096D6; + margin-left: 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { + border-color: rgba(255, 255, 255, 0.7); } + .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + display: none; } -.background-color-index-dark { +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) { color: #fff; } +.background-color-index-brand { + background-color: #0096D6; } + .background-color-index-neutral-1, .background-color-index-neutral-5 { - background-color: #006996; - color: #fff; } + background-color: #006996; } .background-color-index-neutral-1-a, .background-color-index-neutral-5-a { - background-color: rgba(0, 105, 150, 0.8); - color: #fff; } + background-color: rgba(0, 105, 150, 0.8); } .background-color-index-neutral-2, .background-color-index-neutral-6 { - background-color: #A65336; - color: #fff; } + background-color: #A65336; } .background-color-index-neutral-2-a, .background-color-index-neutral-6-a { - background-color: rgba(166, 83, 54, 0.8); - color: #fff; } + background-color: rgba(166, 83, 54, 0.8); } .background-color-index-neutral-3, .background-color-index-neutral-7 { - background-color: #A69136; - color: #fff; } + background-color: #A69136; } .background-color-index-neutral-3-a, .background-color-index-neutral-7-a { - background-color: rgba(166, 145, 54, 0.8); - color: #fff; } + background-color: rgba(166, 145, 54, 0.8); } .background-color-index-neutral-4, .background-color-index-neutral-8 { - background-color: #774677; - color: #fff; } + background-color: #774677; } .background-color-index-neutral-4-a, .background-color-index-neutral-8-a { - background-color: rgba(119, 70, 119, 0.8); - color: #fff; } + background-color: rgba(119, 70, 119, 0.8); } .background-color-index-accent-1, .background-color-index-accent-4 { - background-color: #E6734B; - color: #fff; } + background-color: #E6734B; } .background-color-index-accent-1-a, .background-color-index-accent-4-a { - background-color: rgba(230, 115, 75, 0.8); - color: #fff; } + background-color: rgba(230, 115, 75, 0.8); } .background-color-index-accent-2, .background-color-index-accent-5 { - background-color: #E6C84B; - color: #fff; } + background-color: #E6C84B; } .background-color-index-accent-2-a, .background-color-index-accent-5-a { - background-color: rgba(230, 200, 75, 0.8); - color: #fff; } + background-color: rgba(230, 200, 75, 0.8); } .background-color-index-accent-3, .background-color-index-accent-6 { - background-color: #915591; - color: #fff; } + background-color: #915591; } .background-color-index-accent-3-a, .background-color-index-accent-6-a { - background-color: rgba(145, 85, 145, 0.8); - color: #fff; } + background-color: rgba(145, 85, 145, 0.8); } .background-color-index-grey-1, .background-color-index-grey-5 { - background-color: #676767; - color: #fff; } + background-color: #676767; } .background-color-index-grey-1-a, .background-color-index-grey-5-a { - background-color: rgba(103, 103, 103, 0.8); - color: #fff; } + background-color: rgba(103, 103, 103, 0.8); } .background-color-index-grey-2, .background-color-index-grey-6 { @@ -2257,8 +2311,7 @@ button:not(.button) { .background-color-index-graph-1, .background-color-index-graph-6 { - background-color: #0096D6; - color: #fff; } + background-color: #0096D6; } .background-color-index-graph-2, .background-color-index-graph-7 { @@ -2270,42 +2323,34 @@ button:not(.button) { .background-color-index-graph-4, .background-color-index-graph-9 { - background-color: #87898b; - color: #fff; } + background-color: #87898b; } .background-color-index-graph-5, .background-color-index-graph-10 { background-color: #b9b8bb; } .background-color-index-critical { - background-color: #F04B37; - color: #fff; } + background-color: #F04B37; } .background-color-index-warning { - background-color: #F0AA3C; - color: #fff; } + background-color: #F0AA3C; } .background-color-index-ok { - background-color: #509137; - color: #fff; } + background-color: #509137; } .background-color-index-unknown { - background-color: #848484; - color: #fff; } + background-color: #848484; } .background-color-index-disabled { - background-color: #848484; - color: #fff; } + background-color: #848484; } .background-color-index-light-1, .background-color-index-light-3 { - background-color: #ffffff; - color: #333; } + background-color: #ffffff; } .background-color-index-light-2, .background-color-index-light-4 { - background-color: #f5f5f5; - color: #333; } + background-color: #f5f5f5; } .center-column { padding-left: 24px; @@ -2316,6 +2361,22 @@ button:not(.button) { margin-left: auto; margin-right: auto; } +.columns { + display: flex; + flex-direction: row; + width: 100%; } + +.columns__column { + flex: 0 0 192px; + display: flex; + flex-direction: column; } + +.columns--small > .columns__column { + flex-basis: 96px; } + +.columns--large > .columns__column { + flex-basis: 384px; } + @media screen and (min-width: 45em) { .dashboard { height: calc(100vh - 96px); } } @@ -2325,251 +2386,313 @@ button:not(.button) { height: calc(100vh - 48px); } } .distribution { - position: relative; - display: block; } - .distribution__graphic { - width: 100%; - height: 192px; - max-height: calc(100vh - 144px); } - .distribution__graphic:focus { - outline: #99d5ef solid 1px; } - .distribution__background { - fill: #f5f5f5; } - .distribution__item--clickable { - cursor: pointer; } - .distribution__item-box.color-index-unset { - fill: #ddd; } - .distribution__item-box.color-index-brand { - fill: #0096D6; } - .distribution__item-box.color-index-critical { - fill: #F04B37; } - .distribution__item-box.color-index-warning { - fill: #F0AA3C; } - .distribution__item-box.color-index-ok { - fill: #509137; } - .distribution__item-box.color-index-unknown { - fill: #848484; } - .distribution__item-box.color-index-disabled { - fill: #848484; } - .distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-6 { - fill: #0096D6; } - .distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-7 { - fill: #C094bf; } - .distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-8 { - fill: #99d5ef; } - .distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-9 { - fill: #87898b; } - .distribution__item-box.color-index-graph-5, .distribution__item-box.color-index-graph-10 { - fill: #b9b8bb; } - .distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-4 { - fill: #E6734B; } - .distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-5 { - fill: #E6C84B; } - .distribution__item-box.color-index-accent-3, .distribution__item-box.color-index-accent-6 { - fill: #915591; } - .distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-5 { - fill: #676767; } - .distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-6 { - fill: #CCCCCC; } - .distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-7 { - fill: #E8E8E8; } - .distribution__item-box.color-index-grey-4, .distribution__item-box.color-index-grey-8 { - fill: #F2F2F2; } - .distribution__item-icons.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__item-icons.color-index-unset { - stroke: #ddd; } - .distribution__item-icons.color-index-brand { - stroke: #0096D6; } - .distribution__item-icons.color-index-critical { - stroke: #F04B37; } - .distribution__item-icons.color-index-warning { - stroke: #F0AA3C; } - .distribution__item-icons.color-index-ok { - stroke: #509137; } - .distribution__item-icons.color-index-unknown { + position: relative; } + +.distribution__graphic { + width: 100%; + height: 192px; + max-height: calc(100vh - 144px); } + +.distribution__background { + fill: #f5f5f5; } + +.distribution__item--clickable { + cursor: pointer; } + +.distribution__item-box.color-index-unset { + fill: #ddd; } + +.distribution__item-box.color-index-brand { + fill: #0096D6; } + +.distribution__item-box.color-index-critical { + fill: #F04B37; } + +.distribution__item-box.color-index-warning { + fill: #F0AA3C; } + +.distribution__item-box.color-index-ok { + fill: #509137; } + +.distribution__item-box.color-index-unknown { + fill: #848484; } + +.distribution__item-box.color-index-disabled { + fill: #848484; } + +.distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-6 { + fill: #0096D6; } + +.distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-7 { + fill: #C094bf; } + +.distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-8 { + fill: #99d5ef; } + +.distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-9 { + fill: #87898b; } + +.distribution__item-box.color-index-graph-5, .distribution__item-box.color-index-graph-10 { + fill: #b9b8bb; } + +.distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-4 { + fill: #E6734B; } + +.distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-5 { + fill: #E6C84B; } + +.distribution__item-box.color-index-accent-3, .distribution__item-box.color-index-accent-6 { + fill: #915591; } + +.distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-5 { + fill: #676767; } + +.distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-6 { + fill: #CCCCCC; } + +.distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-7 { + fill: #E8E8E8; } + +.distribution__item-box.color-index-grey-4, .distribution__item-box.color-index-grey-8 { + fill: #F2F2F2; } + +.distribution__item-icons.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.distribution__item-icons.color-index-unset { + stroke: #ddd; } + +.distribution__item-icons.color-index-brand { + stroke: #0096D6; } + +.distribution__item-icons.color-index-critical { + stroke: #F04B37; } + +.distribution__item-icons.color-index-warning { + stroke: #F0AA3C; } + +.distribution__item-icons.color-index-ok { + stroke: #509137; } + +.distribution__item-icons.color-index-unknown { + stroke: #848484; } + +.distribution__item-icons.color-index-disabled { + stroke: #848484; } + +.distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-6 { + stroke: #0096D6; } + +.distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-7 { + stroke: #C094bf; } + +.distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-8 { + stroke: #99d5ef; } + +.distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-9 { + stroke: #87898b; } + +.distribution__item-icons.color-index-graph-5, .distribution__item-icons.color-index-graph-10 { + stroke: #b9b8bb; } + +.distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-5 { + stroke: #676767; } + +.distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-6 { + stroke: #CCCCCC; } + +.distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-7 { + stroke: #E8E8E8; } + +.distribution__item-icons.color-index-grey-4, .distribution__item-icons.color-index-grey-8 { + stroke: #F2F2F2; } + +.distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-4 { + stroke: #E6734B; } + +.distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-5 { + stroke: #E6C84B; } + +.distribution__item-icons.color-index-accent-3, .distribution__item-icons.color-index-accent-6 { + stroke: #915591; } + +.distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + stroke: #ffffff; } + +.distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + stroke: #f5f5f5; } + +.distribution__label { + position: absolute; + font-family: "HPSimplified", Arial, sans-serif; + overflow: hidden; + text-align: left; + pointer-events: none; } + .distribution__label.color-index-brand { + color: #fff; } + .distribution__label.color-index-critical { + color: #fff; } + .distribution__label.color-index-warning { + color: #fff; } + .distribution__label.color-index-ok { + color: #fff; } + .distribution__label.color-index-unknown { + color: #fff; } + .distribution__label.color-index-disabled { + color: #fff; } + .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-5 { + color: #fff; } + .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-6 { + color: #fff; } + .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-7 { + color: #fff; } + .distribution__label.color-index-neutral-4, .distribution__label.color-index-neutral-8 { + color: #fff; } + .distribution__label.color-index-graph-1, .distribution__label.color-index-graph-6 { + color: #fff; } + .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-9 { + color: #fff; } + .distribution__label.color-index-accent-1, .distribution__label.color-index-accent-4 { + color: #fff; } + .distribution__label.color-index-accent-2, .distribution__label.color-index-accent-5 { + color: #fff; } + .distribution__label.color-index-accent-3, .distribution__label.color-index-accent-6 { + color: #fff; } + .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-5 { + color: #fff; } + +.distribution__label-value { + display: block; + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; } + +.distribution__label-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + font-weight: normal; } + +.distribution__label-label { + display: block; } + +.distribution__label--active { + color: #333; } + +.distribution__label--thin .distribution__label-value, +.distribution__label--thin .distribution__label-label { + display: inline-block; } + +.distribution__label--small .distribution__label-value, +.distribution__label--small .distribution__label-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1; + margin-right: 4px; } + +.distribution__label--icons { + padding: 0 12px 12px 0; + background-color: rgba(255, 255, 255, 0.8); + color: #333; } + .distribution__label--icons .label-value { + line-height: 1; } + .distribution__label--icons .label-units { + color: #777; } + .distribution__label--icons .label-label { + display: block; } + +.distribution__loading-indicator { + stroke-width: 24px; } + .distribution__loading-indicator.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .distribution__loading-indicator.color-index-unset { + stroke: #ddd; } + .distribution__loading-indicator.color-index-brand { + stroke: #0096D6; } + .distribution__loading-indicator.color-index-critical { + stroke: #F04B37; } + .distribution__loading-indicator.color-index-warning { + stroke: #F0AA3C; } + .distribution__loading-indicator.color-index-ok { + stroke: #509137; } + .distribution__loading-indicator.color-index-unknown { stroke: #848484; } - .distribution__item-icons.color-index-disabled { + .distribution__loading-indicator.color-index-disabled { stroke: #848484; } - .distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-6 { + .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-6 { stroke: #0096D6; } - .distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-7 { + .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-7 { stroke: #C094bf; } - .distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-8 { + .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-8 { stroke: #99d5ef; } - .distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-9 { + .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-9 { stroke: #87898b; } - .distribution__item-icons.color-index-graph-5, .distribution__item-icons.color-index-graph-10 { + .distribution__loading-indicator.color-index-graph-5, .distribution__loading-indicator.color-index-graph-10 { stroke: #b9b8bb; } - .distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-5 { + .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-5 { stroke: #676767; } - .distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-6 { + .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-6 { stroke: #CCCCCC; } - .distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-7 { + .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-7 { stroke: #E8E8E8; } - .distribution__item-icons.color-index-grey-4, .distribution__item-icons.color-index-grey-8 { + .distribution__loading-indicator.color-index-grey-4, .distribution__loading-indicator.color-index-grey-8 { stroke: #F2F2F2; } - .distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-4 { + .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-4 { stroke: #E6734B; } - .distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-5 { + .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-5 { stroke: #E6C84B; } - .distribution__item-icons.color-index-accent-3, .distribution__item-icons.color-index-accent-6 { + .distribution__loading-indicator.color-index-accent-3, .distribution__loading-indicator.color-index-accent-6 { stroke: #915591; } - .distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { stroke: #ffffff; } - .distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { stroke: #f5f5f5; } - .distribution__label { - position: absolute; - padding: 6px 12px; - font-family: "HPSimplified", Arial, sans-serif; - overflow: hidden; - text-align: left; - pointer-events: none; } - .distribution__label.color-index-brand { - color: #fff; } - .distribution__label.color-index-critical { - color: #fff; } - .distribution__label.color-index-warning { - color: #fff; } - .distribution__label.color-index-ok { - color: #fff; } - .distribution__label.color-index-unknown { - color: #fff; } - .distribution__label.color-index-disabled { - color: #fff; } - .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-5 { - color: #fff; } - .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-6 { - color: #fff; } - .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-7 { - color: #fff; } - .distribution__label.color-index-neutral-4, .distribution__label.color-index-neutral-8 { - color: #fff; } - .distribution__label.color-index-graph-1, .distribution__label.color-index-graph-6 { - color: #fff; } - .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-9 { - color: #fff; } - .distribution__label.color-index-accent-1, .distribution__label.color-index-accent-4 { - color: #fff; } - .distribution__label.color-index-accent-2, .distribution__label.color-index-accent-5 { - color: #fff; } - .distribution__label.color-index-accent-3, .distribution__label.color-index-accent-6 { - color: #fff; } - .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-5 { - color: #fff; } - .distribution__label-value { - display: block; - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; } - .distribution__label-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - font-weight: normal; } - .distribution__label-label { - display: block; } - .distribution__label--active { - color: #333; } - .distribution__label--thin .distribution__label-value, - .distribution__label--thin .distribution__label-label { - display: inline-block; } - .distribution__label--small .distribution__label-value, - .distribution__label--small .distribution__label-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1; - margin-right: 4px; } - .distribution__label--icons { - padding: 0 12px 12px 0; - background-color: rgba(255, 255, 255, 0.8); - color: #333; } - .distribution__label--icons .label-value { - line-height: 1; } - .distribution__label--icons .label-units { - color: #777; } - .distribution__label--icons .label-label { - display: block; } - .distribution__loading-indicator { - stroke-width: 24px; } - .distribution__loading-indicator.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__loading-indicator.color-index-unset { - stroke: #ddd; } - .distribution__loading-indicator.color-index-brand { - stroke: #0096D6; } - .distribution__loading-indicator.color-index-critical { - stroke: #F04B37; } - .distribution__loading-indicator.color-index-warning { - stroke: #F0AA3C; } - .distribution__loading-indicator.color-index-ok { - stroke: #509137; } - .distribution__loading-indicator.color-index-unknown { - stroke: #848484; } - .distribution__loading-indicator.color-index-disabled { - stroke: #848484; } - .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-6 { - stroke: #0096D6; } - .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-7 { - stroke: #C094bf; } - .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-8 { - stroke: #99d5ef; } - .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-9 { - stroke: #87898b; } - .distribution__loading-indicator.color-index-graph-5, .distribution__loading-indicator.color-index-graph-10 { - stroke: #b9b8bb; } - .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-5 { - stroke: #676767; } - .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-6 { - stroke: #CCCCCC; } - .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-7 { - stroke: #E8E8E8; } - .distribution__loading-indicator.color-index-grey-4, .distribution__loading-indicator.color-index-grey-8 { - stroke: #F2F2F2; } - .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-4 { - stroke: #E6734B; } - .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-5 { - stroke: #E6C84B; } - .distribution__loading-indicator.color-index-accent-3, .distribution__loading-indicator.color-index-accent-6 { - stroke: #915591; } - .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { - stroke: #ffffff; } - .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { - stroke: #f5f5f5; } - .distribution--icons .distribution__label { - padding: 0 12px 12px 0; } - .distribution--icons .distribution__label-value { - line-height: 1; } - .distribution--small .distribution__graphic { - height: 96px; } - .distribution--large .distribution__graphic { - height: 288px; } - .distribution--full { - height: 100%; } - .distribution--full .distribution__graphic { - height: 100%; - max-height: 100%; } -.drop { - position: fixed; +.distribution--icons .distribution__label { + padding: 0 12px 12px 0; } + +.distribution--icons .distribution__label-value { + line-height: 1; } + +.distribution--small .distribution__graphic { + height: 96px; } + +.distribution--large .distribution__graphic { + height: 288px; } + +.distribution--full { + height: 100%; } + .distribution--full .distribution__graphic { + width: auto; + height: auto; + max-height: 100%; + max-width: 100%; } + +.grommet.drop { + position: absolute; z-index: 20; - background-color: rgba(255, 255, 255, 0.9); - border: none; border-radius: 0px 5px 0px 5px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); overflow: auto; } + .grommet.drop:not([class*="background-color-index-"]) { + background-color: rgba(248, 248, 248, 0.95); + border: none; + box-shadow: none; } .footer { min-height: 36px; line-height: 36px; width: 100%; } + .footer.box--direction-row > h1, + .footer.box--direction-row > h2, + .footer.box--direction-row > h3, + .footer.box--direction-row > h4 { + margin-bottom: 0px; } .footer__content { display: flex; justify-content: space-between; @@ -2622,9 +2745,12 @@ button:not(.button) { .footer--flush .footer__content { padding-left: 0px; padding-right: 0px; } - .footer--large .footer__content { - padding-top: 24px; - padding-bottom: 24px; } + .footer--large { + min-height: 96px; + line-height: 96px; } + .footer--small { + min-height: 24px; + line-height: 24px; } .footer__container--float { position: absolute; bottom: 0px; @@ -2639,13 +2765,12 @@ button:not(.button) { right: 0px; } .form { - position: relative; } + position: relative; + width: 480px; + max-width: 100%; } @media screen and (min-width: 45em) { - .form { - width: 480px; - max-width: 100%; } - .form .form-field .tiles__container { - max-width: 480px; } } + .form .form-field .tiles__container { + max-width: 480px; } } .form--pad-none { padding: 0px; } .form--pad-small { @@ -2714,7 +2839,7 @@ button:not(.button) { .form-field { position: relative; padding: 6px 24px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-bottom: -1px; background-color: #fff; color: #333; @@ -2727,210 +2852,223 @@ button:not(.button) { @media screen and (max-width: 44.9375em) { .form-field { display: block; } } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field { background-color: transparent; - color: #dbdbdb; } + color: rgba(255, 255, 255, 0.85); } .form--fill .form-field { width: 100%; } .form-field:last-child { margin-bottom: 0px; } - .form-field__label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 24px; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__label { - color: #dbdbdb; } - .form-field__contents { + +.form-field__label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 24px; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__label { + color: rgba(255, 255, 255, 0.85); } + +.form-field__contents { + display: block; + margin-left: -24px; + margin-right: -24px; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input, + .form-field__contents > textarea { display: block; - margin-left: -24px; - margin-right: -24px; } - .form-field__contents > input[type=text], - .form-field__contents > input[type=range], - .form-field__contents > input[type=email], - .form-field__contents > input[type=password], - .form-field__contents > input[type=number], - .form-field__contents > input[type=file], - .form-field__contents > select, - .form-field__contents > .search-input input, - .form-field__contents > .calendar input, - .form-field__contents > textarea { - display: block; - width: 100%; + width: 100%; + border: none; + padding: 0 24px; + border-radius: 0px; + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > input[type=text]:focus, + .form-field__contents > input[type=range]:focus, + .form-field__contents > input[type=email]:focus, + .form-field__contents > input[type=password]:focus, + .form-field__contents > input[type=number]:focus, + .form-field__contents > input[type=file]:focus, + .form-field__contents > select:focus, + .form-field__contents > .search-input input:focus, + .form-field__contents > .calendar input:focus, + .form-field__contents > textarea:focus { border: none; - padding: 0px; - padding-left: 24px; - padding-right: 24px; - border-radius: 0px; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > input[type=text]:focus, - .form-field__contents > input[type=range]:focus, - .form-field__contents > input[type=email]:focus, - .form-field__contents > input[type=password]:focus, - .form-field__contents > input[type=number]:focus, - .form-field__contents > input[type=file]:focus, - .form-field__contents > select:focus, - .form-field__contents > .search-input input:focus, - .form-field__contents > .calendar input:focus, - .form-field__contents > textarea:focus { - border: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > textarea { - color: #fff; } - .form-field__contents > input[type=range] { - width: calc(100% - 48px); - margin-left: 24px; - margin-right: 24px; - padding-left: 0px; - padding-right: 0px; } - .form-field__contents > select { - display: block; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); - background-position: center right 18px; - padding-left: 22px; } - html.rtl .form-field__contents > select { - background-position: center left 18px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > select { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } - .form-field__contents > select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #000; } - .form-field__contents ::-ms-clear { - display: none; } - .form-field__contents > select::-ms-expand { - display: none; } - .form-field__contents > select::-ms-value { - background: none; - color: inherit; } + padding: 0 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > textarea { - vertical-align: top; - height: auto; - resize: vertical; } - .form-field__contents > .check-box, - .form-field__contents > .radio-button { - display: block; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; - margin-top: 12px; - margin-bottom: 12px; - margin-left: 24px; - margin-right: 24px; } - .form-field__contents > .search-input, - .form-field__contents > .calendar { - display: block; } - .form-field__contents > .search-input input, - .form-field__contents > .calendar input { - margin-left: 0px; - margin-right: 0px; } - .form-field__contents > .search-input .search-input__control, - .form-field__contents > .search-input .calendar__control, - .form-field__contents > .calendar .search-input__control, - .form-field__contents > .calendar .calendar__control { - top: auto; - right: 6px; - transform: none; - bottom: -6px; } - html.rtl .form-field__contents > .search-input .search-input__control, html.rtl - .form-field__contents > .search-input .calendar__control, html.rtl - .form-field__contents > .calendar .search-input__control, html.rtl - .form-field__contents > .calendar .calendar__control { - right: auto; - left: 6px; } - .form-field__contents > .number-input { - display: flex; - padding-right: 6px; } - html.rtl .form-field__contents > .number-input { - padding-right: 0; - padding-left: 6px; } - .form-field__contents > .number-input input[type=number] { - display: inline-block; - flex: 1; - border: none; } - .form--compact .form-field__contents > .number-input input[type=number] { - width: 144px; } - .form-field__contents > input[type=file] { - display: inline-block; } - .form-field__contents > .table--selectable { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > .table--selectable table { - margin-bottom: 0px; } - .form-field__contents > .table--selectable table td:first-child, - .form-field__contents > .table--selectable table th:first-child { - padding-left: 24px; } - .form-field__contents > .form-field { - width: auto; - margin-top: 12px; - border: none; } - .form-field__contents > .form-field > .form-field__label { - border-top: 1px solid #ccc; - padding-top: 6px; } - .form-field__contents > .form-field--hidden { - margin-top: 0px; } - .form-field__help { + color: #fff; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + height: 24px; } + .form-field__contents > input[type=range] { + width: calc(100% - 48px); + margin-left: 24px; + margin-right: 24px; + padding-left: 0px; + padding-right: 0px; } + .form-field__contents > select { display: block; - font-size: 13px; - font-size: 0.8125rem; - line-height: 1.84615; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__help { - color: #dbdbdb; } - .form-field__error { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); + background-position: center right 18px; } + html.rtl .form-field__contents > select { + background-position: center left 18px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > select { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } + .form-field__contents > select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #000; } + .form-field__contents > select::-ms-expand { + display: none; } + .form-field__contents > select::-ms-value { + background: none; + color: inherit; } + .form-field__contents > textarea { + vertical-align: top; + height: auto; + resize: vertical; } + .form-field__contents > .check-box, + .form-field__contents > .radio-button { display: block; - float: right; - color: #F04B37; - line-height: 24px; } - html.rtl .form-field__error { - float: left; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__error { - color: #dbdbdb; } - .form-field--text { - cursor: pointer; } - .form-field--text .form-field__label { - cursor: pointer; } - @media screen and (max-width: 44.9375em) { - .form-field--hidden { - display: none; } } - @media screen and (min-width: 45em) { - .form-field--hidden { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; + margin-top: 12px; + margin-bottom: 12px; + margin-left: 24px; + margin-right: 24px; } + .form-field__contents > .search-input, + .form-field__contents > .calendar { + display: block; } + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + margin-left: 0px; + margin-right: 0px; } + .form-field__contents > .search-input .search-input__control, + .form-field__contents > .search-input .calendar__control, + .form-field__contents > .calendar .search-input__control, + .form-field__contents > .calendar .calendar__control { + top: auto; + right: 6px; + transform: none; + bottom: -6px; } + html.rtl .form-field__contents > .search-input .search-input__control, html.rtl + .form-field__contents > .search-input .calendar__control, html.rtl + .form-field__contents > .calendar .search-input__control, html.rtl + .form-field__contents > .calendar .calendar__control { + right: auto; + left: 6px; } + .form-field__contents > .number-input { + display: flex; + padding-right: 6px; } + html.rtl .form-field__contents > .number-input { + padding-right: 0; + padding-left: 6px; } + .form-field__contents > .number-input input[type=number] { + display: inline-block; + flex: 1; border: none; - margin-bottom: 0px; - padding-top: 0px; - padding-bottom: 0px; - opacity: 0; - overflow: hidden; - max-height: 0px; - transition: max-height 0.2s, all 0.4s; } } - .form-field--error { - z-index: 1; - border-color: #F04B37; } - .form-field--focus { - z-index: 2; - border-color: #99d5ef; } + padding: 0 24px; } + .form-field__contents > .number-input input[type=number]:focus { + padding: 0 24px; } + .form--compact .form-field__contents > .number-input input[type=number] { + width: 144px; } + .form-field__contents > input[type=file] { + display: inline-block; } + .form-field__contents > .table--selectable { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > .table--selectable table { + margin-bottom: 0px; } + .form-field__contents > .table--selectable table td:first-child, + .form-field__contents > .table--selectable table th:first-child { + padding-left: 24px; } + .form-field__contents > .form-field { + width: auto; + margin-top: 12px; + border: none; } + .form-field__contents > .form-field > .form-field__label { + border-top: 1px solid rgba(0, 0, 0, 0.15); + padding-top: 6px; } + +.form-field__contents--hidden { + margin-top: 0px; } + +.form-field__help { + display: block; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.84615; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__help { + color: rgba(255, 255, 255, 0.85); } + +.form-field__error { + display: block; + float: right; + color: #F04B37; + line-height: 24px; } + html.rtl .form-field__error { + float: left; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__error { + color: rgba(255, 255, 255, 0.85); } + +.form-field--text { + cursor: pointer; } + .form-field--text .form-field__label { + cursor: pointer; } + +@media screen and (max-width: 44.9375em) { + .form-field--hidden { + display: none; } } + +@media screen and (min-width: 45em) { + .form-field--hidden { + border: none; + margin-bottom: 0px; + padding-top: 0px; + padding-bottom: 0px; + opacity: 0; + overflow: hidden; + max-height: 0px; + transition: max-height 0.2s, all 0.4s; } } + +.form-field--error { + z-index: 1; + border-color: #F04B37; } + +.form-field--focus { + z-index: 2; + border-color: #99d5ef; } .header { - height: 72px; + min-height: 72px; width: 100%; margin-bottom: 0px; } - .header--large { - height: 96px; } - .header--small { - height: 48px; } - .header.box > *:not(:last-child) { - margin-right: 12px; } .header a { color: inherit; text-decoration: none; } @@ -2939,37 +3077,40 @@ button:not(.button) { .header .status-icon { flex-grow: 0; flex-shrink: 0; } - .header > span { - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; } + +.header--large { + min-height: 96px; } + .header--large .header__content { + line-height: 96px; } + +.header--small { + min-height: 48px; } + .header--small .header__content { + line-height: 48px; } header.header { font-size: 24px; font-size: 1.5rem; - line-height: inherit; - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - transition: -webkit-transform 0.5s; - transition: transform 0.5s; } - *:not(.header__container--float) > header.header--float { - position: absolute; - top: 0px; - left: 0px; - right: 0px; } - header.header--primary .header__wrapper { - border-bottom: none; } + line-height: inherit; } header.header h1, header.header h2, header.header h3, header.header h4, header.header h5 { margin-bottom: 0; } - header.header.header--splash { - -webkit-transform: translate(0, 40vh); - transform: translate(0, 40vh); } - header.header.box--direction-row > * { - margin-bottom: 0px; } + +.header--splash { + -webkit-transform: translate(0, 40vh); + transform: translate(0, 40vh); } + +*:not(.header__container--float) > header.header--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; } + +header.header--primary .header__wrapper { + border-bottom: none; } .header:not(header).box--separator-top { padding-top: 6px; } @@ -2977,45 +3118,41 @@ header.header { .header:not(header).box--separator-bottom { padding-bottom: 6px; } -div.header__container { +.header__container { flex-shrink: 0; } - div.header__container--fixed { - position: relative; } - div.header__container--fixed .header__wrapper { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - z-index: 3; } - @media screen and (min-width: 45em) { - div.header__container--fixed .header__wrapper .header { - position: fixed; } - div.header__container--fixed .header__wrapper .header:not(.header--float) { - background-color: rgba(255, 255, 255, 0.9); } } - div.header__container--float { + +.header__container--fixed { + position: relative; } + .header__container--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; right: 0px; - padding-left: 24px; - padding-right: 24px; } + z-index: 3; } + @media screen and (min-width: 45em) { + .header__container--fixed .header__wrapper .header { + position: fixed; } + .header__container--fixed .header__wrapper .header:not(.header--float) { + background-color: rgba(255, 255, 255, 0.9); } } -div.header__wrapper { +.header__container--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + padding-left: 24px; + padding-right: 24px; } + +.header__wrapper { height: 72px; } -div.header--large .header__wrapper { +.header__wrapper--large { height: 96px; } -div.header--large .header__content { - line-height: 96px; } - -div.header--small .header__wrapper { +.header__wrapper--small { height: 48px; } -div.header--small .header__content { - line-height: 48px; } - -div.header--fixed .header__wrapper { +.header--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; @@ -3023,18 +3160,115 @@ div.header--fixed .header__wrapper { background-color: rgba(255, 255, 255, 0.9); z-index: 3; } -div.header--fixed.header--primary .header__wrapper { +.header--fixed.header--primary .header__wrapper { position: fixed; background-color: rgba(255, 255, 255, 0.9); } -div.header--fixed.header--primary .header__content { +.header--fixed.header--primary .header__content { position: static; background-color: transparent; } -div.header--flush .header__wrapper { +.header--flush .header__wrapper { padding-left: 0px; padding-right: 0px; } +h1.heading, +h2.heading, +h3.heading, +h4.heading, +h5.heading, +h6.heading { + margin-bottom: 12px; + line-height: 1; } + h1.heading--large, + h2.heading--large, + h3.heading--large, + h4.heading--large, + h5.heading--large, + h6.heading--large { + font-size: 125%; } + h1.heading--small, + h2.heading--small, + h3.heading--small, + h4.heading--small, + h5.heading--small, + h6.heading--small { + font-size: 75%; } + h1.heading--strong, + h2.heading--strong, + h3.heading--strong, + h4.heading--strong, + h5.heading--strong, + h6.heading--strong { + font-weight: 600; } + h1.heading--align-start, + h2.heading--align-start, + h3.heading--align-start, + h4.heading--align-start, + h5.heading--align-start, + h6.heading--align-start { + text-align: left; } + html.rtl h1.heading--align-start, html.rtl + h2.heading--align-start, html.rtl + h3.heading--align-start, html.rtl + h4.heading--align-start, html.rtl + h5.heading--align-start, html.rtl + h6.heading--align-start { + text-align: right; } + h1.heading--align-center, + h2.heading--align-center, + h3.heading--align-center, + h4.heading--align-center, + h5.heading--align-center, + h6.heading--align-center { + text-align: center; } + h1.heading--align-right, + h2.heading--align-right, + h3.heading--align-right, + h4.heading--align-right, + h5.heading--align-right, + h6.heading--align-right { + text-align: right; } + html.rtl h1.heading--align-right, html.rtl + h2.heading--align-right, html.rtl + h3.heading--align-right, html.rtl + h4.heading--align-right, html.rtl + h5.heading--align-right, html.rtl + h6.heading--align-right { + text-align: left; } + h1.heading--margin-none, + h2.heading--margin-none, + h3.heading--margin-none, + h4.heading--margin-none, + h5.heading--margin-none, + h6.heading--margin-none { + margin-top: 0; + margin-bottom: 0; } + h1.heading--margin-small, + h2.heading--margin-small, + h3.heading--margin-small, + h4.heading--margin-small, + h5.heading--margin-small, + h6.heading--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + h1.heading--margin-medium, + h2.heading--margin-medium, + h3.heading--margin-medium, + h4.heading--margin-medium, + h5.heading--margin-medium, + h6.heading--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + h1.heading--margin-large, + h2.heading--margin-large, + h3.heading--margin-large, + h4.heading--margin-large, + h5.heading--margin-large, + h6.heading--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + .headline { font-size: 48px; font-size: 3rem; @@ -3045,19 +3279,40 @@ div.header--flush .header__wrapper { .headline--large { font-size: 60px; font-size: 3.75rem; - line-height: 1.2; } + line-height: 1; } .headline--small { font-size: 30px; font-size: 1.875rem; - line-height: 1.6; } + line-height: 1; } .headline--strong { font-weight: 600; } + .headline--align-start { + text-align: left; } + html.rtl .headline--align-start { + text-align: right; } + .headline--align-center { + text-align: center; } + .headline--align-right { + text-align: right; } + html.rtl .headline--align-right { + text-align: left; } + .headline--margin-none { + margin-top: 0; + margin-bottom: 0; } + .headline--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .headline--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .headline--margin-large { + margin-top: 48px; + margin-bottom: 48px; } .control-icon { display: inline-block; width: 24px; height: 24px; - vertical-align: middle; cursor: pointer; fill: #999; stroke: #999; @@ -3156,24 +3411,30 @@ div.header--flush .header__wrapper { .control-icon { transition: all 0.3s ease-in-out; } } a:hover .control-icon, - .anchor:hover:not(.anchor--disabled) .control-icon, - .button:hover:not(.anchor--disabled) .control-icon, + .anchor:hover .control-icon, + .button:hover .control-icon, .menu__control:hover .control-icon { fill: #000; stroke: #000; } + .anchor.anchor--disabled:hover .control-icon { + fill: #999; + stroke: #999; } + .button.button--disabled:hover .control-icon { + fill: #999; + stroke: #999; } .control-icon__badge circle { fill: #E6734B; } .control-icon__badge text { stroke: #333; fill: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .control-icon:not([class*="color-index"]), .button--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .anchor:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu__control:hover > .control-icon, + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover > .control-icon, .button--primary:hover .control-icon { fill: #fff; stroke: #fff; } @@ -3183,6 +3444,9 @@ div.header--flush .header__wrapper { .control-icon--large { width: 48px; height: 48px; } + .control-icon--huge { + width: 288px; + height: 288px; } .status-icon { width: 24px; @@ -3212,6 +3476,9 @@ div.header--flush .header__wrapper { .status-icon--large { width: 48px; height: 48px; } + .status-icon--huge { + width: 288px; + height: 288px; } .status-icon--small { width: 12px; height: 12px; @@ -3303,6 +3570,9 @@ div.header--flush .header__wrapper { .logo-icon--large { width: 96px; height: 96px; } + .logo-icon--huge { + width: 288px; + height: 288px; } .right-left-icon--left { display: none; } @@ -3322,6 +3592,12 @@ html.rtl .right-left-icon--right { .image--small { width: 240px; } +.image--thumb { + width: 48px; + height: 48px; + flex: 0 0 auto; + object-fit: cover; } + .image--full { width: 100%; height: 100%; } @@ -3332,146 +3608,143 @@ html.rtl .right-left-icon--right { .image--full-vertical { height: 100%; } -@media screen and (max-width: 44.9375em) { - .label__text { - display: none; } } - -@media screen and (min-width: 45em) { - .label__icon { - display: none; } } - -a.active > .label .label__icon.control-icon svg { - fill: #000; - stroke: #000; } +.label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + margin-bottom: 24px; } + .label--uppercase { + text-transform: uppercase; + letter-spacing: 0.2em; } + .label--align-start { + text-align: left; } + html.rtl .label--align-start { + text-align: right; } + .label--align-center { + text-align: center; } + .label--align-right { + text-align: right; } + html.rtl .label--align-right { + text-align: left; } + .label--margin-none { + margin-top: 0; + margin-bottom: 0; } + .label--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .label--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .label--margin-large { + margin-top: 48px; + margin-bottom: 48px; } -.layer { +.grommet.layer { position: relative; - z-index: 10; } + z-index: 10; + background-color: rgba(0, 0, 0, 0.5); + height: 100vh; } @media screen and (min-width: 45em) { - .layer { + .grommet.layer { position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; } } @media screen and (max-width: 44.9375em) { - .layer:not(.layer--hidden) + .app { + .grommet.layer:not(.layer--hidden) + .app { display: none; } } - .layer__container { + .grommet.layer .layer__container { background-color: #fff; } @media screen and (max-width: 44.9375em) { - .layer__container { + .grommet.layer .layer__container { padding: 0 24px; - border-bottom: 1px solid #ccc; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } + min-height: 100vh; + min-width: 100vw; } } @media screen and (min-width: 45em) { - .layer__container { + .grommet.layer .layer__container { position: absolute; max-height: 100%; max-width: 100%; overflow: auto; padding: 0 48px; border-radius: 0px 5px 0px 5px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } - .layer__closer { + box-shadow: none; } } + .grommet.layer .layer__closer { position: absolute; top: 0px; right: 0px; z-index: 1; } - html.rtl .layer__closer { + .grommet.rtl .grommet.layer .layer__closer { right: auto; left: 0px; } - .layer--flush .layer__container { + .grommet.layer.layer--flush .layer__container { padding: 0px; } @media screen and (min-width: 45em) { - .layer--align-center:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-center:not(.layer--hidden) .layer__container { - left: 50%; - top: 50%; - max-height: calc(100vh - 48px); - max-width: calc(100vw - 48px); - transform: translate(-50%, -50%); } } - @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-center:not(.layer--hidden) .layer__container { + left: 50%; + top: 50%; + max-height: calc(100vh - 48px); + max-width: calc(100vw - 48px); + transform: translate(-50%, -50%); } } + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - left: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + left: 0px; } @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { left: auto; right: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - right: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + right: 0px; } @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { right: auto; left: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } @media screen and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-top:not(.layer--hidden) .layer__container { - left: 50%; - transform: translateX(-50%); } } - @media screen and (min-width: 45em) and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) .layer__container { - -webkit-animation: slide-down 0.2s ease-in-out forwards; - animation: slide-down 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-bottom:not(.layer--hidden) { - background-image: radial-gradient(circle at bottom, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-bottom:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + left: 50%; + transform: translateX(-50%); } } + @media screen and (min-width: 45em) and (min-width: 45em) { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + -webkit-animation: slide-down 0.2s ease-in-out forwards; + animation: slide-down 0.2s ease-in-out forwards; } } + .grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container { bottom: 0px; } - .layer--hidden { - left: -10000px; + .grommet.layer.layer--hidden { + left: -100vw; + right: 100vw; z-index: -1; } - .layer--hidden.layer--align-left { + .grommet.layer.layer--hidden.layer--align-left { right: auto; } - .layer--hidden.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--align-left .layer__container { left: -100vw; } @media screen and (max-width: 44.9375em) { - .layer--hidden { + .grommet.layer.layer--hidden { display: none; } } @media screen and (min-width: 45em) { - .layer--hidden.layer--peek { + .grommet.layer.layer--hidden.layer--peek { left: 0; z-index: 10; } - .layer--hidden.layer--peek.layer--align-left { + .grommet.layer.layer--hidden.layer--peek.layer--align-left { right: auto; } - .layer--hidden.layer--peek.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container { left: auto; right: -12px; border-right: 10px solid #0096D6; @@ -3541,6 +3814,8 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; } .list .list-item { max-width: none; } + .list .list-item:focus { + outline: #99d5ef solid 1px; } .list .list-item__image { height: 24px; width: 24px; @@ -3560,7 +3835,7 @@ a.active > .label .label__icon.control-icon svg { .list .list-item--selectable { cursor: pointer; } .list .list-item--selectable:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .list .list-item--selected { background-color: #daf1fb; color: #333; } @@ -3573,7 +3848,7 @@ a.active > .label .label__icon.control-icon svg { background-color: #daf1fb; color: #333; } .list--selectable .list-item:hover:not(.list-item--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .list--small .list-item__image, .list--small .list__more__image { @@ -3589,201 +3864,213 @@ a.active > .label .label__icon.control-icon svg { list-style-type: none; white-space: normal; display: inline-block; - margin: 0px; } + margin: 0px; + line-height: 24px; } html.rtl .legend { text-align: right; } - .legend__item, .legend__total { - color: #777; } - .legend__item > *, .legend__total > * { - vertical-align: top; } - .legend__item-label, .legend__total-label { - display: inline-block; - width: 72px; } - .legend__item-value, .legend__total-value { - display: inline-block; - width: 72px; - text-align: right; } - html.rtl .legend__item-value, html.rtl .legend__total-value { - text-align: left; } - .legend__item-units, .legend__total-units { - display: inline-block; - margin-left: 6px; } - html.rtl .legend__item-units, html.rtl .legend__total-units { - margin-left: 0; - margin-right: 6px; } - .legend__item--clickable { - cursor: pointer; } - .legend__item svg.legend__item-swatch { - width: 12px; - height: 12px; - margin-top: 6px; - margin-right: 12px; - overflow: visible; } - .legend__item svg.legend__item-swatch.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .legend__item svg.legend__item-swatch.color-index-unset { - stroke: #ddd; } - .legend__item svg.legend__item-swatch.color-index-brand { - stroke: #0096D6; } - .legend__item svg.legend__item-swatch.color-index-critical { - stroke: #F04B37; } - .legend__item svg.legend__item-swatch.color-index-warning { - stroke: #F0AA3C; } - .legend__item svg.legend__item-swatch.color-index-ok { - stroke: #509137; } - .legend__item svg.legend__item-swatch.color-index-unknown { - stroke: #848484; } - .legend__item svg.legend__item-swatch.color-index-disabled { - stroke: #848484; } - .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-6 { - stroke: #0096D6; } - .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-7 { - stroke: #C094bf; } - .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-8 { - stroke: #99d5ef; } - .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-9 { - stroke: #87898b; } - .legend__item svg.legend__item-swatch.color-index-graph-5, .legend__item svg.legend__item-swatch.color-index-graph-10 { - stroke: #b9b8bb; } - .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-5 { - stroke: #676767; } - .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-6 { - stroke: #CCCCCC; } - .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-7 { - stroke: #E8E8E8; } - .legend__item svg.legend__item-swatch.color-index-grey-4, .legend__item svg.legend__item-swatch.color-index-grey-8 { - stroke: #F2F2F2; } - .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-4 { - stroke: #E6734B; } - .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-5 { - stroke: #E6C84B; } - .legend__item svg.legend__item-swatch.color-index-accent-3, .legend__item svg.legend__item-swatch.color-index-accent-6 { - stroke: #915591; } - .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { - stroke: #ffffff; } - .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { - stroke: #f5f5f5; } - html.rtl .legend__item svg.legend__item-swatch { - margin-right: 0; - margin-left: 12px; } - .legend__item svg.legend__item-swatch path { - stroke-width: 12px; - transition-property: stroke-width; - transition-duration: 0.3s; - transition-timing-function: ease-in-out; } - .legend__item--active { - color: #333; } - .legend__item--active svg.legend__item-swatch path { - stroke-width: 12px; } - .legend__total { - margin-left: 24px; } - html.rtl .legend__total { - margin-left: 0; - margin-right: 24px; } - .legend__total > * { - margin-top: 6px; - padding-top: 6px; - border-top: 1px dotted #ccc; } - .legend--single .legend__item-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; - width: auto; } - .legend--single .legend__item-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .legend--single .legend__item-units { - margin-left: 0; - margin-right: 6px; } -.login { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - bottom: 0px; - overflow: hidden; - z-index: 100; } - .login__background { - position: absolute; - max-width: none; } - .login__background--portrait { - width: auto; - height: 100%; } - .login__background--landscape { - height: auto; - width: 100%; } - .login__container { - position: relative; - width: 384px; - margin: 96px auto; - z-index: 1; - -webkit-animation-name: fadein; - -webkit-animation-duration: 0.5s; - animation-name: fadein; - animation-duration: 0.5s; } - @media screen and (max-width: 44.9375em) { - .login__container { - margin: 48px 0px; - width: 100%; - border-radius: 0px; } } - .login__footer { - position: absolute; - left: 0px; - right: 0px; - bottom: 6px; - padding: 6px 24px; - background-color: rgba(255, 255, 255, 0.9); - text-align: center; } +.legend__item, +.legend__total { + color: #777; } + .legend__item > *, + .legend__total > * { + vertical-align: top; } -.login-form { - position: relative; - width: 384px; - padding: 24px; - padding-bottom: 48px; - background-color: #fff; - text-align: center; - z-index: 1; - -webkit-animation-name: fadein; - -webkit-animation-duration: 0.5s; - animation-name: fadein; - animation-duration: 0.5s; } - @media screen and (max-width: 44.9375em) { - .login-form { - width: 100%; - border-radius: 0px; } } - .login-form__secondary-text { - color: #777; } - .login-form fieldset { - text-align: left; - border: none; - margin-bottom: 0px; } - .login-form fieldset > * { - width: 100%; - display: block; } - .login-form__remember-me { - display: block; - margin-top: 24px; +.legend__item-label, +.legend__total-label { + display: inline-block; + min-width: 72px; + text-align: left; } + +.legend__item-value, +.legend__total-value { + display: inline-block; + width: 72px; + text-align: right; } + html.rtl .legend__item-value, html.rtl + .legend__total-value { text-align: left; } + +.legend__item-units, +.legend__total-units { + display: inline-block; + margin-left: 6px; } + html.rtl .legend__item-units, html.rtl + .legend__total-units { + margin-left: 0; + margin-right: 6px; } + +.legend__item svg.legend__item-swatch { + width: 12px; + height: 12px; + margin-top: 6px; + margin-right: 12px; + overflow: visible; } + .legend__item svg.legend__item-swatch.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .legend__item svg.legend__item-swatch.color-index-unset { + stroke: #ddd; } + .legend__item svg.legend__item-swatch.color-index-brand { + stroke: #0096D6; } + .legend__item svg.legend__item-swatch.color-index-critical { + stroke: #F04B37; } + .legend__item svg.legend__item-swatch.color-index-warning { + stroke: #F0AA3C; } + .legend__item svg.legend__item-swatch.color-index-ok { + stroke: #509137; } + .legend__item svg.legend__item-swatch.color-index-unknown { + stroke: #848484; } + .legend__item svg.legend__item-swatch.color-index-disabled { + stroke: #848484; } + .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-6 { + stroke: #0096D6; } + .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-7 { + stroke: #C094bf; } + .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-8 { + stroke: #99d5ef; } + .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-9 { + stroke: #87898b; } + .legend__item svg.legend__item-swatch.color-index-graph-5, .legend__item svg.legend__item-swatch.color-index-graph-10 { + stroke: #b9b8bb; } + .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-5 { + stroke: #676767; } + .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-6 { + stroke: #CCCCCC; } + .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-7 { + stroke: #E8E8E8; } + .legend__item svg.legend__item-swatch.color-index-grey-4, .legend__item svg.legend__item-swatch.color-index-grey-8 { + stroke: #F2F2F2; } + .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-4 { + stroke: #E6734B; } + .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-5 { + stroke: #E6C84B; } + .legend__item svg.legend__item-swatch.color-index-accent-3, .legend__item svg.legend__item-swatch.color-index-accent-6 { + stroke: #915591; } + .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { + stroke: #ffffff; } + .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { + stroke: #f5f5f5; } + html.rtl .legend__item svg.legend__item-swatch { + margin-right: 0; + margin-left: 12px; } + .legend__item svg.legend__item-swatch path { + stroke-width: 12px; + transition-property: stroke-width; + transition-duration: 0.3s; + transition-timing-function: ease-in-out; } + +.legend__item--clickable { + cursor: pointer; } + +.legend__item--active { + color: #333; } + .legend__item--active svg.legend__item-swatch path { + stroke-width: 12px; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .legend__item--active { + color: #fff; } + +li.legend__total { + margin-left: 24px; } + html.rtl li.legend__total { + margin-left: 0; + margin-right: 24px; } + li.legend__total > * { + margin-top: 6px; + padding-top: 6px; + border-top: 1px dotted rgba(0, 0, 0, 0.15); } + +.legend--single .legend__item-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; + width: auto; } + +.legend--single .legend__item-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .legend--single .legend__item-units { + margin-left: 0; + margin-right: 6px; } + +.login { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + overflow: hidden; + z-index: 100; } + .login__background { + position: absolute; + max-width: none; } + .login__background--portrait { + width: auto; + height: 100%; } + .login__background--landscape { + height: auto; + width: 100%; } + .login__container { + position: relative; + width: 384px; + margin: 96px auto; + z-index: 1; + -webkit-animation-name: fadein; + -webkit-animation-duration: 0.5s; + animation-name: fadein; + animation-duration: 0.5s; } + @media screen and (max-width: 44.9375em) { + .login__container { + margin: 48px 0px; + width: 100%; + border-radius: 0px; } } + .login__footer { + position: absolute; + left: 0px; + right: 0px; + bottom: 6px; + padding: 6px 24px; + background-color: rgba(255, 255, 255, 0.9); + text-align: center; } + +.login-form { + position: relative; + padding: 24px; + background-color: #fff; + z-index: 1; + -webkit-animation-name: fadein; + -webkit-animation-duration: 0.5s; + animation-name: fadein; + animation-duration: 0.5s; } + @media screen and (max-width: 44.9375em) { + .login-form { + width: 100%; } } + .login-form__header { + text-align: center; } + .login-form fieldset { + margin-bottom: 0; } .login-form__submit { - margin-top: 24px; - width: 100%; } - .login-form__error { - margin-bottom: 12px; - color: #F04B37; + width: 100%; + max-width: none; } + .login-form--align-start .login-form__header { text-align: left; } - .login-form__footer { - margin-top: 12px; - display: flex; - justify-content: space-between; - line-height: 36px; } + html.rtl .login-form--align-start .login-form__header { + text-align: right; } + .login-form--align-start .login-form__submit { + width: auto; } + .login-form--align-end .login-form__header { + text-align: right; } + html.rtl .login-form--align-end .login-form__header { + text-align: left; } + .login-form--align-end .login-form__submit { + width: auto; } .map { position: relative; @@ -3819,7 +4106,7 @@ a.active > .label .label__icon.control-icon svg { .map__item { display: inline-block; width: 192px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-right: 12px; margin-bottom: 12px; background-color: #fff; @@ -3833,7 +4120,7 @@ a.active > .label .label__icon.control-icon svg { .map__item > a > * { display: inline-block; } .map__item > a:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .map__item .status-icon { margin-right: 6px; } .map__item--active { @@ -3843,7 +4130,7 @@ a.active > .label .label__icon.control-icon svg { position: relative; font-size: 19px; font-size: 1.1875rem; - line-height: inherit; } + line-height: 1.26316; } .menu:focus { outline: none; } .menu:focus:not(.menu--expanded):after { @@ -3858,180 +4145,208 @@ a.active > .label .label__icon.control-icon svg { pointer-events: none; } .menu > * { flex: 0 0 auto; } - .menu a:not(.button) { + .menu a:not(.button), + .menu .anchor { text-decoration: none; } - .menu a:not(.button):hover { + .menu a:not(.button):hover, + .menu .anchor:hover { + text-decoration: none; color: #0076a8; } - .menu a:not(.button).active { + .menu a:not(.button).active, + .menu .anchor.active { color: #0076a8; } - .menu__control .control-icon-down { - width: 12px; - height: 12px; } - .menu__control .control-icon-down path, - .menu__control .control-icon-down polyline { - stroke-width: 4px; } - .menu__drop { - font-size: 16px; - font-size: 1rem; - line-height: inherit; - max-height: 100vh; } - .menu__drop .anchor { - padding: 12px 24px; - white-space: nowrap; - display: block; } - .menu__drop .anchor:hover, .menu__drop .anchor:focus { - text-decoration: none; - background-color: rgba(0, 0, 0, 0.1); } - .menu__drop .check-box, - .menu__drop .radio-button { - margin-top: 12px; - margin-bottom: 12px; } - .menu__drop--align-right { - text-align: right; } - html.rtl .menu__drop--align-right { - text-align: left; } - .menu__drop--align-right .menu__contents { - text-align: left; } - html.rtl .menu__drop--align-right .menu__contents { - text-align: right; } - .menu__drop--large .menu__control { - line-height: 96px; } - .menu--controlled { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu a:not(.button).active, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .menu .anchor.active { + color: #fff; } + .menu.menu--controlled { display: inline-block; cursor: pointer; } - .menu--controlled.menu--large { - line-height: 96px; } - .menu--controlled.menu--small { - height: 24px; } + +.menu__control:focus:not(.button--disabled) { + box-shadow: inset 0 0 1px 2px #99d5ef; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover .menu__control-label { + color: #fff; } + +.menu__control .control-icon-down { + width: 12px; + height: 12px; } + .menu__control .control-icon-down path, + .menu__control .control-icon-down polyline { + stroke-width: 4px; } + +@media screen and (min-width: 45em) { + .menu__control.menu--labelled .control-icon { + transition: none; } } + +.menu__drop { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + max-height: 100vh; } + .menu__drop a:not(.anchor--disabled) { + text-decoration: none; } + .menu__drop a:not(.anchor--disabled):hover { + text-decoration: none; } + .menu__drop .anchor { + padding: 12px 24px; + white-space: nowrap; + display: block; + text-decoration: none; } + .menu__drop .anchor:hover, .menu__drop .anchor:focus { + text-decoration: none; + background-color: rgba(221, 221, 221, 0.5); } + .menu__drop .menu__control { + text-align: left; } + .grommet.rtl .menu__drop .menu__control { + text-align: right; } + .menu__drop .menu__label { + padding: 12px 24px; + font-weight: 600; } + .menu__drop.menu__drop--align-right { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__control { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__control { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__contents { + text-align: left; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__contents { + text-align: right; } + .menu__drop.menu__drop--small { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .menu__drop.menu__drop--large { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.menu--inline.menu--row { + line-height: 48px; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-left: 24px; margin-right: 0; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-right: 24px; margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-right: 0; } .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-left: 0; margin-right: 24px; } .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-right: 0; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-right: 0; margin-left: 24px; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-left: 0; } - @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--direction-row.box--responsive > * { - margin-right: 0; } - html.rtl .menu--inline.menu.box--direction-row.box--responsive > * { - margin-left: 0; } } - .menu--inline.menu.box--direction-column a:not(.button) { - margin-bottom: 6px; } - .menu--small { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .menu--small .menu__control-drop-icon { - margin-left: 6px; } - html.rtl .menu--small .menu__control-drop-icon { - margin-left: 0; - margin-right: 6px; } - .menu--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--primary > .menu { - width: 100%; } - .menu--primary > a:not(.button) { - padding: 6px 24px; - margin-bottom: 0px; - width: 100%; - border-width: 6px; - border-color: transparent; - border-right-style: solid; } - html.rtl .menu--primary > a:not(.button) { - border-right-style: none; - border-left-style: solid; } - .menu--primary > a:not(.button):hover { - text-decoration: none; } - .menu--primary > a:not(.button):hover:not(.active) { - background-color: rgba(0, 0, 0, 0.1); } - .menu--primary > a:not(.button).active { - border-color: #0096D6; } - @media screen and (max-width: 44.9375em) { - .menu--primary.menu--down { - display: block; } - .menu--primary.menu--down > * { - display: block; } } -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h2, -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h3, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { - margin-top: 24px; } +@media screen and (max-width: 44.9375em) { + .menu--inline.box--direction-row.box--responsive > * { + margin-right: 0; } + .grommet.rtl .menu--inline.box--direction-row.box--responsive > * { + margin-left: 0; } } + +.menu--inline.box--direction-column a:not(.button) { + margin-bottom: 6px; } + +.menu--inline.menu--small { + font-size: 16px; + font-size: 1rem; + line-height: inherit; } + +.menu--inline.menu--large { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; } + +.menu--primary > .menu { + width: 100%; } -.menu--inline.menu > hr, +.menu--primary > a:not(.button) { + padding: 6px 24px; + margin-bottom: 0px; + width: 100%; + border-width: 4px; + border-color: transparent; + border-right-style: solid; } + .grommet.rtl .menu--primary > a:not(.button) { + border-right-style: none; + border-left-style: solid; } + .menu--primary > a:not(.button):hover { + text-decoration: none; } + .menu--primary > a:not(.button):hover:not(.active) { + background-color: rgba(221, 221, 221, 0.5); } + .menu--primary > a:not(.button).active { + border-color: #0096D6; } + +@media screen and (max-width: 44.9375em) { + .menu--primary.menu--down { + display: block; } + .menu--primary.menu--down > * { + display: block; } } + +.menu--inline.menu:not(.box--direction-row) > hr, .menu__drop > hr { margin: 12px 24px 18px; height: 1px; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); border: none; } -.menu--inline.menu.box.box--separator-top, +.menu--inline.menu:not(.box--direction-row) .menu__control-label, +.menu__drop .menu__control-label { + font-size: 19px; } + +.menu--inline.menu:not(.box--direction-row) a, +.menu__drop a { + text-decoration: none; } + +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h2, +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h3, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { + margin-top: 24px; } + +.menu--inline.menu:not(.box--direction-row).box.box--separator-top, .menu__drop.box.box--separator-top { border-color: transparent; } - .menu--inline.menu.box.box--separator-top:before, + .menu--inline.menu:not(.box--direction-row).box.box--separator-top:before, .menu__drop.box.box--separator-top:before { content: ''; margin: 12px 24px 18px; height: 1px; - background-color: #ccc; } - -.menu--inline.menu--small, -.menu__drop--small { - font-size: 1em; } - .menu--inline.menu--small .menu__control-label, - .menu__drop--small .menu__control-label { - padding: 12px; } - .menu--inline.menu--small .menu__control-icon svg, - .menu__drop--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--inline.menu--small > a, - .menu__drop--small > a { - padding: 6px 12px; } - -.menu--inline.menu .menu__control-label, -.menu__drop .menu__control-label { - font-size: 19px; } + background-color: rgba(0, 0, 0, 0.15); } -.menu--inline.menu a, -.menu__drop a { - text-decoration: none; } +.menu--inline.menu:not(.box--direction-row).menu--small > a, +.menu__drop.menu--small > a { + padding: 6px 0; } -.menu--inline.menu--large > a, -.menu__drop--large > a { - padding: 24px 48px; } +.menu--inline.menu:not(.box--direction-row).menu--large > a, +.menu__drop.menu--large > a { + padding: 24px 0; } @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--responsive > *, + .menu--inline.menu:not(.box--direction-row).box--responsive > *, .menu__drop.box--responsive > * { margin-left: 0px; margin-right: 0px; } - .menu--inline.menu.box--responsive .button, + .menu--inline.menu:not(.box--direction-row).box--responsive .button, .menu__drop.box--responsive .button { width: 100%; margin-bottom: 12px; } - .menu--inline.menu.box--responsive .menu, + .menu--inline.menu:not(.box--direction-row).box--responsive .menu, .menu__drop.box--responsive .menu { margin-bottom: 36px; } } @media screen and (max-width: 44.9375em) { .menu__drop { - max-width: 100%; - width: 100vw; } } + max-width: 100%; } } @-webkit-keyframes draw-meter { 0% { @@ -4060,298 +4375,474 @@ a.active > .label .label__icon.control-icon svg { .meter { display: inline-block; position: relative; } - .meter__slice { - stroke-width: 4px; } - .meter__threshold { - stroke: rgba(51, 51, 51, 0.2); } - .meter__value-container { - position: relative; - display: inline-block; } - .meter__graphic-container { - white-space: normal; } - .meter__graphic-container > a { - text-decoration: none; } - .meter__graphic:focus { - outline: #99d5ef solid 1px; } - .meter__value { - white-space: normal; - pointer-events: none; } - .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter__value-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 38px; - font-weight: bold; } - .meter__value-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .meter__value-units { - margin-left: 0; - margin-right: 6px; } - .meter__value-label { - display: block; } - .meter__minmax-container { - display: block; } - .meter__minmax { - display: flex; - justify-content: space-between; - color: #777; - font-size: 14px; - font-size: 0.875rem; - line-height: 1.71429; } - .meter__label-min, .meter__label-max { - flex: 0 0 48px; } - .meter__label-max { - text-align: right; } - .meter__label { - fill: #777; } - .meter__label--active { - fill: #000; } - .meter--legend-right { - white-space: nowrap; } - .meter--legend-right .meter__legend { - vertical-align: top; - margin-left: 24px; } - html.rtl .meter--legend-right .meter__legend { - margin-left: 0; - margin-right: 24px; } - .meter--legend-right:not(.meter--tall-legend) .meter__legend { - position: relative; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); } - .meter--legend-bottom .meter__legend { - margin-top: 24px; - display: block; } - .meter:not(.meter--vertical) .meter__graphic-container { - display: inline-block; } - .meter:not(.meter--vertical) .meter__minmax-container { - display: block; - width: 192px; } - .meter:not(.meter--vertical) .meter__minmax { - width: 100%; } - .meter:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--vertical .meter__graphic-container { - display: inline-block; - white-space: nowrap; } - .meter--vertical .meter__minmax-container { - height: 192px; } - .meter--vertical .meter__minmax { - flex-direction: column; - height: 100%; } - .meter--vertical .meter__minmax-min { - order: 1; } - .meter--vertical .meter__minmax-max { - order: 0; } - .meter--vertical .meter__label-min, .meter--vertical .meter__label-max { - flex: 0 0 auto; - text-align: left; } - .meter--vertical .meter__label-min { - order: 1; } - .meter--vertical .meter__label-max { - order: 0; } - .meter--vertical .meter__value-label { - display: block; } - .meter--vertical.meter--small .meter__minmax-container { - height: 96px; } - .meter--vertical.meter--large .meter__minmax-container { - height: 288px; } - .meter--small .meter__slice { - stroke-width: 8px; } - .meter--small .meter__values .meter__slice:hover { - stroke-width: 24px; } - .meter--small .meter__value-value { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--large .meter__value-value { - font-size: 64px; - font-size: 4rem; - line-height: 1.125; } - .meter--large .meter__value-units { - font-size: 48px; - font-size: 3rem; - line-height: 1; } - .meter.meter--active .meter__values .meter__slice:hover { - stroke-width: 12px; } - .meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { - stroke-width: 12px; } - .meter--bar .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 192px 192px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--bar .meter__values .meter__slice.color-index-brand { - stroke: #0096D6; } - .meter--bar .meter__values .meter__slice.color-index-critical { - stroke: #F04B37; } - .meter--bar .meter__values .meter__slice.color-index-warning { - stroke: #F0AA3C; } - .meter--bar .meter__values .meter__slice.color-index-ok { - stroke: #509137; } - .meter--bar .meter__values .meter__slice.color-index-unknown { - stroke: #848484; } - .meter--bar .meter__values .meter__slice.color-index-disabled { - stroke: #848484; } - .meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-6 { - stroke: #0096D6; } - .meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-7 { - stroke: #C094bf; } - .meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-8 { - stroke: #99d5ef; } - .meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-9 { - stroke: #87898b; } - .meter--bar .meter__values .meter__slice.color-index-graph-5, .meter--bar .meter__values .meter__slice.color-index-graph-10 { - stroke: #b9b8bb; } - .meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-5 { - stroke: #676767; } - .meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-6 { - stroke: #CCCCCC; } - .meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-7 { - stroke: #E8E8E8; } - .meter--bar .meter__values .meter__slice.color-index-grey-4, .meter--bar .meter__values .meter__slice.color-index-grey-8 { - stroke: #F2F2F2; } - .meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-4 { - stroke: #E6734B; } - .meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-5 { - stroke: #E6C84B; } - .meter--bar .meter__values .meter__slice.color-index-accent-3, .meter--bar .meter__values .meter__slice.color-index-accent-6 { - stroke: #915591; } - .meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--bar .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--bar .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-meter 1.5s linear; - animation: draw-meter 1.5s linear; } } - .meter--bar .meter__thresholds .meter__slice.color-index-unset, - .meter--bar .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-brand, - .meter--bar .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(0, 150, 214, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-critical, - .meter--bar .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(240, 75, 55, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-warning, - .meter--bar .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(240, 170, 60, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-ok, - .meter--bar .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(80, 145, 55, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-unknown, - .meter--bar .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(132, 132, 132, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-disabled, - .meter--bar .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(132, 132, 132, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, - .meter--bar .meter__tracks .meter__slice.color-index-graph-1, - .meter--bar .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(0, 150, 214, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, - .meter--bar .meter__tracks .meter__slice.color-index-graph-2, - .meter--bar .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(192, 148, 191, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, - .meter--bar .meter__tracks .meter__slice.color-index-graph-3, - .meter--bar .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(153, 213, 239, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-9, - .meter--bar .meter__tracks .meter__slice.color-index-graph-4, - .meter--bar .meter__tracks .meter__slice.color-index-graph-9 { - stroke: rgba(135, 137, 139, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-5, .meter--bar .meter__thresholds .meter__slice.color-index-graph-10, - .meter--bar .meter__tracks .meter__slice.color-index-graph-5, - .meter--bar .meter__tracks .meter__slice.color-index-graph-10 { - stroke: rgba(185, 184, 187, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, - .meter--bar .meter__tracks .meter__slice.color-index-accent-1, - .meter--bar .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(230, 115, 75, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-5, - .meter--bar .meter__tracks .meter__slice.color-index-accent-2, - .meter--bar .meter__tracks .meter__slice.color-index-accent-5 { - stroke: rgba(230, 200, 75, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-3, .meter--bar .meter__thresholds .meter__slice.color-index-accent-6, - .meter--bar .meter__tracks .meter__slice.color-index-accent-3, - .meter--bar .meter__tracks .meter__slice.color-index-accent-6 { - stroke: rgba(145, 85, 145, 0.5); } - .meter--bar .meter__value { - text-align: left; } - .meter--bar .meter__value-label { - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--bar:not(.meter--vertical) .meter__minmax-container > a { - vertical-align: top; - display: block; - height: 24px; } - .meter--bar:not(.meter--vertical) .meter__graphic { - width: 192px; } - .meter--bar:not(.meter--vertical) .meter__value { - display: inline-block; + +.meter__slice { + stroke-width: 4px; } + +.meter__threshold { + stroke: rgba(51, 51, 51, 0.2); } + +.meter__value-container { + position: relative; + display: inline-block; } + +.meter__graphic-container { + white-space: normal; } + .meter__graphic-container > a { + text-decoration: none; } + +.meter__graphic:focus { + outline: #99d5ef solid 1px; } + +.meter__graphic text { + fill: #777; } + +.meter__value { + white-space: normal; + pointer-events: none; } + +.meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter__value-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 38px; + font-weight: bold; } + +.meter__value-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .meter__value-units { + margin-left: 0; + margin-right: 6px; } + +.meter__value-label { + display: block; } + +.meter__minmax-container { + display: block; } + +.meter__minmax { + display: flex; + justify-content: space-between; + color: #777; + font-size: 14px; + font-size: 0.875rem; + line-height: 1.71429; } + +.meter__label-min, +.meter__label-max { + flex: 0 0 48px; } + +.meter__label-max { + text-align: right; } + +.meter__label { + fill: #777; } + +.meter__label--active { + fill: #000; } + +.meter--legend-right { + white-space: nowrap; } + .meter--legend-right .meter__legend { vertical-align: top; - margin-left: 12px; } - html.rtl .meter--bar:not(.meter--vertical) .meter__value { - margin-left: 0; - margin-right: 12px; } - .meter--bar:not(.meter--vertical) .meter__value-value { - font-size: 24px; - font-size: 1.5rem; - line-height: 1; } - .meter--bar:not(.meter--vertical) .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { - display: inline-block; - margin-left: 4px; } - html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 24px; } + html.rtl .meter--legend-right .meter__legend { margin-left: 0; - margin-right: 4px; } - .meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { - min-width: 84px; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + margin-right: 24px; } + .meter--legend-right:not(.meter--tall-legend) .meter__legend { + position: relative; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); } + +.meter--legend-bottom .meter__legend { + margin-top: 24px; + display: block; } + +.meter--legend-bottom.meter--legend-align-center .meter__legend { + text-align: center; } + +.meter:not(.meter--vertical) .meter__graphic-container { + display: inline-block; } + +.meter:not(.meter--vertical) .meter__minmax-container { + display: block; + width: 192px; } + +.meter:not(.meter--vertical) .meter__minmax { + width: 100%; } + +.meter:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--vertical .meter__graphic-container { + display: inline-block; + white-space: nowrap; } + +.meter--vertical .meter__minmax-container { + height: 192px; } + +.meter--vertical .meter__minmax { + flex-direction: column; + height: 100%; } + +.meter--vertical .meter__minmax-min { + order: 1; } + +.meter--vertical .meter__minmax-max { + order: 0; } + +.meter--vertical .meter__label-min, +.meter--vertical .meter__label-max { + flex: 0 0 auto; + text-align: left; } + +.meter--vertical .meter__label-min { + order: 1; } + +.meter--vertical .meter__label-max { + order: 0; } + +.meter--vertical .meter__value-label { + display: block; } + +.meter--vertical.meter--small .meter__minmax-container { + height: 96px; } + +.meter--vertical.meter--large .meter__minmax-container { + height: 288px; } + +.meter--small .meter__slice { + stroke-width: 8px; } + +.meter--small .meter__values .meter__slice:hover { + stroke-width: 24px; } + +.meter--small .meter__value-value { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--large .meter__value-value { + font-size: 64px; + font-size: 4rem; + line-height: 1.125; } + +.meter--large .meter__value-units { + font-size: 48px; + font-size: 3rem; + line-height: 1; } + +.meter--active .meter__values .meter__slice:hover { + stroke-width: 12px; } + +.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { + stroke-width: 12px; } + +.meter--bar .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 192px 192px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--bar .meter__values .meter__slice.color-index-brand { + stroke: #0096D6; } + +.meter--bar .meter__values .meter__slice.color-index-critical { + stroke: #F04B37; } + +.meter--bar .meter__values .meter__slice.color-index-warning { + stroke: #F0AA3C; } + +.meter--bar .meter__values .meter__slice.color-index-ok { + stroke: #509137; } + +.meter--bar .meter__values .meter__slice.color-index-unknown { + stroke: #848484; } + +.meter--bar .meter__values .meter__slice.color-index-disabled { + stroke: #848484; } + +.meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-6 { + stroke: #0096D6; } + +.meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-7 { + stroke: #C094bf; } + +.meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-8 { + stroke: #99d5ef; } + +.meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-9 { + stroke: #87898b; } + +.meter--bar .meter__values .meter__slice.color-index-graph-5, .meter--bar .meter__values .meter__slice.color-index-graph-10 { + stroke: #b9b8bb; } + +.meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-5 { + stroke: #676767; } + +.meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-6 { + stroke: #CCCCCC; } + +.meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-7 { + stroke: #E8E8E8; } + +.meter--bar .meter__values .meter__slice.color-index-grey-4, .meter--bar .meter__values .meter__slice.color-index-grey-8 { + stroke: #F2F2F2; } + +.meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-4 { + stroke: #E6734B; } + +.meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-5 { + stroke: #E6C84B; } + +.meter--bar .meter__values .meter__slice.color-index-accent-3, .meter--bar .meter__values .meter__slice.color-index-accent-6 { + stroke: #915591; } + +.meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--bar .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--bar .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-meter 1.5s linear; + animation: draw-meter 1.5s linear; } } + +.meter--bar .meter__thresholds .meter__slice.color-index-unset, +.meter--bar .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-brand, +.meter--bar .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(0, 150, 214, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-critical, +.meter--bar .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(240, 75, 55, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-warning, +.meter--bar .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(240, 170, 60, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-ok, +.meter--bar .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(80, 145, 55, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-unknown, +.meter--bar .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(132, 132, 132, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-disabled, +.meter--bar .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(132, 132, 132, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, +.meter--bar .meter__tracks .meter__slice.color-index-graph-1, +.meter--bar .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(0, 150, 214, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, +.meter--bar .meter__tracks .meter__slice.color-index-graph-2, +.meter--bar .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(192, 148, 191, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, +.meter--bar .meter__tracks .meter__slice.color-index-graph-3, +.meter--bar .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(153, 213, 239, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-9, +.meter--bar .meter__tracks .meter__slice.color-index-graph-4, +.meter--bar .meter__tracks .meter__slice.color-index-graph-9 { + stroke: rgba(135, 137, 139, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-5, .meter--bar .meter__thresholds .meter__slice.color-index-graph-10, +.meter--bar .meter__tracks .meter__slice.color-index-graph-5, +.meter--bar .meter__tracks .meter__slice.color-index-graph-10 { + stroke: rgba(185, 184, 187, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, +.meter--bar .meter__tracks .meter__slice.color-index-accent-1, +.meter--bar .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(230, 115, 75, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-5, +.meter--bar .meter__tracks .meter__slice.color-index-accent-2, +.meter--bar .meter__tracks .meter__slice.color-index-accent-5 { + stroke: rgba(230, 200, 75, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-3, .meter--bar .meter__thresholds .meter__slice.color-index-accent-6, +.meter--bar .meter__tracks .meter__slice.color-index-accent-3, +.meter--bar .meter__tracks .meter__slice.color-index-accent-6 { + stroke: rgba(145, 85, 145, 0.5); } + +.meter--bar .meter__value { + text-align: left; } + +.meter--bar .meter__value-label { + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--bar.meter--vertical { + white-space: nowrap; } + .meter--bar.meter--vertical svg.meter__graphic { + height: 192px; } + .meter--bar.meter--vertical .meter__labeled-graphic { + display: inline-block; } + .meter--bar.meter--vertical .meter__value { + position: relative; + vertical-align: top; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; } + .meter--bar.meter--vertical .meter__minmax-container { + position: absolute; top: 0px; - -webkit-transform: none; - transform: none; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__value { - min-width: 48px; } - .meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; } - .meter--bar:not(.meter--vertical).meter--small .meter__value-value, - .meter--bar:not(.meter--vertical).meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + left: 24px; } + .meter--bar.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + .meter--bar.meter--vertical.meter--legend-right .meter__value { + min-width: 60px; } + .meter--bar.meter--vertical.meter--small svg.meter__graphic { + height: 96px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 24px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 36px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 48px; } + .meter--bar.meter--vertical.meter--small .meter__value { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { min-width: 42px; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { - min-width: 72px; } + .meter--bar.meter--vertical.meter--large svg.meter__graphic { + height: 288px; + width: 36px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 72px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 108px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 144px; } + .meter--bar.meter--vertical.meter--large .meter__value { + top: 144px; } + .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { + top: 144px; } + +.meter--bar:not(.meter--vertical) .meter__minmax-container > a { + vertical-align: top; + display: block; + height: 24px; } + +.meter--bar:not(.meter--vertical) .meter__graphic { + width: 192px; } + +.meter--bar:not(.meter--vertical) .meter__value { + display: inline-block; + vertical-align: top; + margin-left: 12px; } + html.rtl .meter--bar:not(.meter--vertical) .meter__value { + margin-left: 0; + margin-right: 12px; } + +.meter--bar:not(.meter--vertical) .meter__value-value { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.meter--bar:not(.meter--vertical) .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + display: inline-block; + margin-left: 4px; } + html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 0; + margin-right: 4px; } + +.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { + min-width: 84px; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + top: 0px; + -webkit-transform: none; + transform: none; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__value { + min-width: 48px; } + +.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; } + +.meter--bar:not(.meter--vertical).meter--small .meter__value-value, +.meter--bar:not(.meter--vertical).meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic, .meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic { + height: 12px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 24px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 36px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 48px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + min-width: 42px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { + min-width: 72px; } + +.meter--bar:not(.meter--vertical).meter--large { + line-height: 36px; } .meter--bar:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; } + width: 288px; + height: 36px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 72px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 108px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 144px; } .meter--bar:not(.meter--vertical).meter--large .meter__value { margin-left: 16px; } html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value { @@ -4361,374 +4852,572 @@ a.active > .label .label__icon.control-icon svg { font-size: 26px; font-size: 1.625rem; line-height: inherit; } - .meter--bar.meter--vertical { - white-space: nowrap; } - .meter--bar.meter--vertical svg.meter__graphic { - height: 192px; } - .meter--bar.meter--vertical .meter__labeled-graphic { - display: inline-block; } - .meter--bar.meter--vertical .meter__value { - position: relative; - vertical-align: top; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; } - .meter--bar.meter--vertical .meter__minmax-container { - position: absolute; - top: 0px; - left: 24px; } - .meter--bar.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--bar.meter--vertical.meter--legend-right .meter__value { - min-width: 60px; } - .meter--bar.meter--vertical.meter--small svg.meter__graphic { - height: 96px; } - .meter--bar.meter--vertical.meter--small .meter__value { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { - min-width: 42px; } - .meter--bar.meter--vertical.meter--large svg.meter__graphic { - height: 288px; } - .meter--bar.meter--vertical.meter--large .meter__value { - top: 144px; } - .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { - top: 144px; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc, .meter--spiral { - margin: 0px auto; } } - .meter--circle svg.meter__graphic, .meter--arc svg.meter__graphic, .meter--spiral svg.meter__graphic { - display: block; } - .meter--circle .meter.series-pre path, .meter--arc .meter.series-pre path, .meter--spiral .meter.series-pre path { - stroke-dashoffset: 768px; } - .meter--circle .meter__slice, .meter--arc .meter__slice, .meter--spiral .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 768px 768px; - stroke-dashoffset: 0; - fill: none; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__slice-indicator, .meter--arc .meter__slice-indicator, .meter--spiral .meter__slice-indicator { - stroke-linecap: square; - stroke-width: 4px; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__values .meter__slice.color-index-loading, .meter--arc .meter__values .meter__slice.color-index-loading, .meter--spiral .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--circle .meter__values .meter__slice.color-index-unset, .meter--arc .meter__values .meter__slice.color-index-unset, .meter--spiral .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--circle .meter__values .meter__slice.color-index-brand, .meter--arc .meter__values .meter__slice.color-index-brand, .meter--spiral .meter__values .meter__slice.color-index-brand { - stroke: #0096D6; } - .meter--circle .meter__values .meter__slice.color-index-critical, .meter--arc .meter__values .meter__slice.color-index-critical, .meter--spiral .meter__values .meter__slice.color-index-critical { - stroke: #F04B37; } - .meter--circle .meter__values .meter__slice.color-index-warning, .meter--arc .meter__values .meter__slice.color-index-warning, .meter--spiral .meter__values .meter__slice.color-index-warning { - stroke: #F0AA3C; } - .meter--circle .meter__values .meter__slice.color-index-ok, .meter--arc .meter__values .meter__slice.color-index-ok, .meter--spiral .meter__values .meter__slice.color-index-ok { - stroke: #509137; } - .meter--circle .meter__values .meter__slice.color-index-unknown, .meter--arc .meter__values .meter__slice.color-index-unknown, .meter--spiral .meter__values .meter__slice.color-index-unknown { - stroke: #848484; } - .meter--circle .meter__values .meter__slice.color-index-disabled, .meter--arc .meter__values .meter__slice.color-index-disabled, .meter--spiral .meter__values .meter__slice.color-index-disabled { - stroke: #848484; } - .meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-6, .meter--arc .meter__values .meter__slice.color-index-graph-1, .meter--arc .meter__values .meter__slice.color-index-graph-6, .meter--spiral .meter__values .meter__slice.color-index-graph-1, .meter--spiral .meter__values .meter__slice.color-index-graph-6 { - stroke: #0096D6; } - .meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-7, .meter--arc .meter__values .meter__slice.color-index-graph-2, .meter--arc .meter__values .meter__slice.color-index-graph-7, .meter--spiral .meter__values .meter__slice.color-index-graph-2, .meter--spiral .meter__values .meter__slice.color-index-graph-7 { - stroke: #C094bf; } - .meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-8, .meter--arc .meter__values .meter__slice.color-index-graph-3, .meter--arc .meter__values .meter__slice.color-index-graph-8, .meter--spiral .meter__values .meter__slice.color-index-graph-3, .meter--spiral .meter__values .meter__slice.color-index-graph-8 { - stroke: #99d5ef; } - .meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-9, .meter--arc .meter__values .meter__slice.color-index-graph-4, .meter--arc .meter__values .meter__slice.color-index-graph-9, .meter--spiral .meter__values .meter__slice.color-index-graph-4, .meter--spiral .meter__values .meter__slice.color-index-graph-9 { - stroke: #87898b; } - .meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--circle .meter__values .meter__slice.color-index-graph-10, .meter--arc .meter__values .meter__slice.color-index-graph-5, .meter--arc .meter__values .meter__slice.color-index-graph-10, .meter--spiral .meter__values .meter__slice.color-index-graph-5, .meter--spiral .meter__values .meter__slice.color-index-graph-10 { - stroke: #b9b8bb; } - .meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-5, .meter--arc .meter__values .meter__slice.color-index-grey-1, .meter--arc .meter__values .meter__slice.color-index-grey-5, .meter--spiral .meter__values .meter__slice.color-index-grey-1, .meter--spiral .meter__values .meter__slice.color-index-grey-5 { - stroke: #676767; } - .meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-6, .meter--arc .meter__values .meter__slice.color-index-grey-2, .meter--arc .meter__values .meter__slice.color-index-grey-6, .meter--spiral .meter__values .meter__slice.color-index-grey-2, .meter--spiral .meter__values .meter__slice.color-index-grey-6 { - stroke: #CCCCCC; } - .meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-7, .meter--arc .meter__values .meter__slice.color-index-grey-3, .meter--arc .meter__values .meter__slice.color-index-grey-7, .meter--spiral .meter__values .meter__slice.color-index-grey-3, .meter--spiral .meter__values .meter__slice.color-index-grey-7 { - stroke: #E8E8E8; } - .meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--circle .meter__values .meter__slice.color-index-grey-8, .meter--arc .meter__values .meter__slice.color-index-grey-4, .meter--arc .meter__values .meter__slice.color-index-grey-8, .meter--spiral .meter__values .meter__slice.color-index-grey-4, .meter--spiral .meter__values .meter__slice.color-index-grey-8 { - stroke: #F2F2F2; } - .meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-4, .meter--arc .meter__values .meter__slice.color-index-accent-1, .meter--arc .meter__values .meter__slice.color-index-accent-4, .meter--spiral .meter__values .meter__slice.color-index-accent-1, .meter--spiral .meter__values .meter__slice.color-index-accent-4 { - stroke: #E6734B; } - .meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-5, .meter--arc .meter__values .meter__slice.color-index-accent-2, .meter--arc .meter__values .meter__slice.color-index-accent-5, .meter--spiral .meter__values .meter__slice.color-index-accent-2, .meter--spiral .meter__values .meter__slice.color-index-accent-5 { - stroke: #E6C84B; } - .meter--circle .meter__values .meter__slice.color-index-accent-3, .meter--circle .meter__values .meter__slice.color-index-accent-6, .meter--arc .meter__values .meter__slice.color-index-accent-3, .meter--arc .meter__values .meter__slice.color-index-accent-6, .meter--spiral .meter__values .meter__slice.color-index-accent-3, .meter--spiral .meter__values .meter__slice.color-index-accent-6 { - stroke: #915591; } - .meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, .meter--arc .meter__values .meter__slice.color-index-light-1, .meter--arc .meter__values .meter__slice.color-index-light-3, .meter--spiral .meter__values .meter__slice.color-index-light-1, .meter--spiral .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, .meter--arc .meter__values .meter__slice.color-index-light-2, .meter--arc .meter__values .meter__slice.color-index-light-4, .meter--spiral .meter__values .meter__slice.color-index-light-2, .meter--spiral .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--circle .meter__values .meter__slice--clickable, .meter--arc .meter__values .meter__slice--clickable, .meter--spiral .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--circle .meter__values .meter__slice, .meter--arc .meter__values .meter__slice, .meter--spiral .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-arc 1.5s linear; - animation: draw-arc 1.5s linear; } } - .meter--circle .meter__thresholds .meter__slice.color-index-unset, - .meter--circle .meter__tracks .meter__slice.color-index-unset, .meter--arc .meter__thresholds .meter__slice.color-index-unset, - .meter--arc .meter__tracks .meter__slice.color-index-unset, .meter--spiral .meter__thresholds .meter__slice.color-index-unset, - .meter--spiral .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-brand, - .meter--circle .meter__tracks .meter__slice.color-index-brand, .meter--arc .meter__thresholds .meter__slice.color-index-brand, - .meter--arc .meter__tracks .meter__slice.color-index-brand, .meter--spiral .meter__thresholds .meter__slice.color-index-brand, - .meter--spiral .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(0, 150, 214, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-critical, - .meter--circle .meter__tracks .meter__slice.color-index-critical, .meter--arc .meter__thresholds .meter__slice.color-index-critical, - .meter--arc .meter__tracks .meter__slice.color-index-critical, .meter--spiral .meter__thresholds .meter__slice.color-index-critical, - .meter--spiral .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(240, 75, 55, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-warning, - .meter--circle .meter__tracks .meter__slice.color-index-warning, .meter--arc .meter__thresholds .meter__slice.color-index-warning, - .meter--arc .meter__tracks .meter__slice.color-index-warning, .meter--spiral .meter__thresholds .meter__slice.color-index-warning, - .meter--spiral .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(240, 170, 60, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-ok, - .meter--circle .meter__tracks .meter__slice.color-index-ok, .meter--arc .meter__thresholds .meter__slice.color-index-ok, - .meter--arc .meter__tracks .meter__slice.color-index-ok, .meter--spiral .meter__thresholds .meter__slice.color-index-ok, - .meter--spiral .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(80, 145, 55, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-unknown, - .meter--circle .meter__tracks .meter__slice.color-index-unknown, .meter--arc .meter__thresholds .meter__slice.color-index-unknown, - .meter--arc .meter__tracks .meter__slice.color-index-unknown, .meter--spiral .meter__thresholds .meter__slice.color-index-unknown, - .meter--spiral .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(132, 132, 132, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-disabled, - .meter--circle .meter__tracks .meter__slice.color-index-disabled, .meter--arc .meter__thresholds .meter__slice.color-index-disabled, - .meter--arc .meter__tracks .meter__slice.color-index-disabled, .meter--spiral .meter__thresholds .meter__slice.color-index-disabled, - .meter--spiral .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(132, 132, 132, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, - .meter--circle .meter__tracks .meter__slice.color-index-graph-1, - .meter--circle .meter__tracks .meter__slice.color-index-graph-6, .meter--arc .meter__thresholds .meter__slice.color-index-graph-1, .meter--arc .meter__thresholds .meter__slice.color-index-graph-6, - .meter--arc .meter__tracks .meter__slice.color-index-graph-1, - .meter--arc .meter__tracks .meter__slice.color-index-graph-6, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-1, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(0, 150, 214, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, - .meter--circle .meter__tracks .meter__slice.color-index-graph-2, - .meter--circle .meter__tracks .meter__slice.color-index-graph-7, .meter--arc .meter__thresholds .meter__slice.color-index-graph-2, .meter--arc .meter__thresholds .meter__slice.color-index-graph-7, - .meter--arc .meter__tracks .meter__slice.color-index-graph-2, - .meter--arc .meter__tracks .meter__slice.color-index-graph-7, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-2, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(192, 148, 191, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, - .meter--circle .meter__tracks .meter__slice.color-index-graph-3, - .meter--circle .meter__tracks .meter__slice.color-index-graph-8, .meter--arc .meter__thresholds .meter__slice.color-index-graph-3, .meter--arc .meter__thresholds .meter__slice.color-index-graph-8, - .meter--arc .meter__tracks .meter__slice.color-index-graph-3, - .meter--arc .meter__tracks .meter__slice.color-index-graph-8, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-3, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(153, 213, 239, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-9, - .meter--circle .meter__tracks .meter__slice.color-index-graph-4, - .meter--circle .meter__tracks .meter__slice.color-index-graph-9, .meter--arc .meter__thresholds .meter__slice.color-index-graph-4, .meter--arc .meter__thresholds .meter__slice.color-index-graph-9, - .meter--arc .meter__tracks .meter__slice.color-index-graph-4, - .meter--arc .meter__tracks .meter__slice.color-index-graph-9, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-9, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-4, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-9 { - stroke: rgba(135, 137, 139, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-5, .meter--circle .meter__thresholds .meter__slice.color-index-graph-10, - .meter--circle .meter__tracks .meter__slice.color-index-graph-5, - .meter--circle .meter__tracks .meter__slice.color-index-graph-10, .meter--arc .meter__thresholds .meter__slice.color-index-graph-5, .meter--arc .meter__thresholds .meter__slice.color-index-graph-10, - .meter--arc .meter__tracks .meter__slice.color-index-graph-5, - .meter--arc .meter__tracks .meter__slice.color-index-graph-10, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-10, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-5, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-10 { - stroke: rgba(185, 184, 187, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, - .meter--circle .meter__tracks .meter__slice.color-index-accent-1, - .meter--circle .meter__tracks .meter__slice.color-index-accent-4, .meter--arc .meter__thresholds .meter__slice.color-index-accent-1, .meter--arc .meter__thresholds .meter__slice.color-index-accent-4, - .meter--arc .meter__tracks .meter__slice.color-index-accent-1, - .meter--arc .meter__tracks .meter__slice.color-index-accent-4, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-1, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(230, 115, 75, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-5, - .meter--circle .meter__tracks .meter__slice.color-index-accent-2, - .meter--circle .meter__tracks .meter__slice.color-index-accent-5, .meter--arc .meter__thresholds .meter__slice.color-index-accent-2, .meter--arc .meter__thresholds .meter__slice.color-index-accent-5, - .meter--arc .meter__tracks .meter__slice.color-index-accent-2, - .meter--arc .meter__tracks .meter__slice.color-index-accent-5, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-5, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-2, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-5 { - stroke: rgba(230, 200, 75, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-3, .meter--circle .meter__thresholds .meter__slice.color-index-accent-6, - .meter--circle .meter__tracks .meter__slice.color-index-accent-3, - .meter--circle .meter__tracks .meter__slice.color-index-accent-6, .meter--arc .meter__thresholds .meter__slice.color-index-accent-3, .meter--arc .meter__thresholds .meter__slice.color-index-accent-6, - .meter--arc .meter__tracks .meter__slice.color-index-accent-3, - .meter--arc .meter__tracks .meter__slice.color-index-accent-6, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-6, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-3, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-6 { - stroke: rgba(145, 85, 145, 0.5); } - .meter--circle .meter__threshold, .meter--arc .meter__threshold, .meter--spiral .meter__threshold { - stroke-linecap: butt; } - .meter--circle .meter__value-label, .meter--arc .meter__value-label, .meter--spiral .meter__value-label { - display: block; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc { - width: 192px; } } - .meter--circle .meter__value, .meter--arc .meter__value { - white-space: normal; - pointer-events: none; - text-align: center; } - .meter--circle .meter__value--active, .meter--arc .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter--circle .meter__minmax-container, .meter--arc:not(.meter--vertical) .meter__minmax-container { - width: 192px; } - .meter--circle .meter__value, .meter--arc:not(.meter--vertical) .meter__value { - position: absolute; - left: 50%; } - .meter--circle.meter--small .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter--circle.meter--large .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--circle.meter--legend-right .meter__legend, .meter--arc.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--circle.meter--legend-right.meter--small .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { - top: 48px; } - .meter--circle.meter--legend-right.meter--large .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { - top: 144px; } - .meter--circle svg.meter__graphic { - width: 192px; - height: 192px; } - .meter--circle .meter__value { - top: 96px; - -webkit-transform: translateX(-50%) translateY(-50%); - transform: translateX(-50%) translateY(-50%); - max-width: 144px; } - .meter--circle.meter--small svg.meter__graphic { - width: 96px; - height: 96px; } - .meter--circle.meter--small .meter__value { - top: 48px; - max-width: 72px; } - .meter--circle.meter--large svg.meter__graphic { - width: 288px; - height: 288px; } - .meter--circle.meter--large .meter__value { - top: 144px; - max-width: 216px; } - .meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { - position: static; - margin: 0 auto; - -webkit-transform: none; - transform: none; } - .meter--arc:not(.meter--vertical) svg.meter__graphic { - width: 192px; - height: 144px; } - .meter--arc:not(.meter--vertical) .meter__value { - top: 108px; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - max-width: 120px; } - .meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { - top: 72px; } - .meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; - height: 72px; } - .meter--arc:not(.meter--vertical).meter--small .meter__value { - top: 60px; - max-width: 60px; } - .meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; - height: 216px; } - .meter--arc:not(.meter--vertical).meter--large .meter__value { - top: 156px; - max-width: 180px; } - .meter--arc.meter--vertical svg.meter__graphic { - display: inline; - width: 144px; - height: 192px; } - .meter--arc.meter--vertical .meter__value { - position: relative; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; - margin-left: -24px; - vertical-align: top; } - html.rtl .meter--arc.meter--vertical .meter__value { - margin-left: 0; - margin-right: -24px; } - .meter--arc.meter--vertical .meter__minmax-container { - display: inline-block; - vertical-align: top; - margin-left: 12px; - padding-top: 12px; - padding-bottom: 12px; } - html.rtl .meter--arc.meter--vertical .meter__minmax-container { - margin-left: 0; - margin-right: 12px; } - .meter--arc.meter--vertical.meter--small svg.meter__graphic { - width: 72px; - height: 96px; } - .meter--arc.meter--vertical.meter--small .meter__value { - top: 48px; - margin-left: -12px; } - html.rtl .meter--arc.meter--vertical.meter--small .meter__value { - margin-left: 0; - margin-right: -12px; } - .meter--arc.meter--vertical.meter--small .meter__minmax-container { - padding-top: 0px; - padding-bottom: 0px; } - .meter--arc.meter--vertical.meter--large svg.meter__graphic { - width: 216px; - height: 288px; } - .meter--arc.meter--vertical.meter--large .meter__value { - top: 144px; - margin-left: -48px; } - html.rtl .meter--arc.meter--vertical.meter--large .meter__value { - margin-left: 0; - margin-right: -48px; } - .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: -72px; } - html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: 0; - margin-right: -72px; } - .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: -60px; } - html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: 0; - margin-right: -60px; } - .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { - min-width: 78px; } - .meter--arc.meter--vertical.meter--legend-right .meter__value { - min-width: 120px; } - .meter--spiral .meter__value { - position: absolute; - top: 0px; - right: 0px; - white-space: normal; - text-align: right; } - .meter--spiral .meter__value-value { - display: block; - font-size: 24px; - font-size: 1.5rem; - line-height: 1; - margin-bottom: 6px; } - .meter--spiral .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; - color: #777; - margin-left: 0.2em; } - html.rtl .meter--spiral .meter__value-units { - margin-left: 0; - margin-right: 0.2em; } - .meter--spiral .meter__value-label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--loading .meter__thresholds, - .meter--loading .meter__value { - display: none; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc, + .meter--spiral { + margin: 0px auto; } } + +.meter--circle svg.meter__graphic, +.meter--arc svg.meter__graphic, +.meter--spiral svg.meter__graphic { + display: block; } + +.meter--circle .meter.series-pre path, +.meter--arc .meter.series-pre path, +.meter--spiral .meter.series-pre path { + stroke-dashoffset: 768px; } + +.meter--circle .meter__slice, +.meter--arc .meter__slice, +.meter--spiral .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 768px 768px; + stroke-dashoffset: 0; + fill: none; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__slice-indicator, +.meter--arc .meter__slice-indicator, +.meter--spiral .meter__slice-indicator { + stroke-linecap: square; + stroke-width: 4px; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__values .meter__slice.color-index-loading, +.meter--arc .meter__values .meter__slice.color-index-loading, +.meter--spiral .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--circle .meter__values .meter__slice.color-index-unset, +.meter--arc .meter__values .meter__slice.color-index-unset, +.meter--spiral .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--circle .meter__values .meter__slice.color-index-brand, +.meter--arc .meter__values .meter__slice.color-index-brand, +.meter--spiral .meter__values .meter__slice.color-index-brand { + stroke: #0096D6; } + +.meter--circle .meter__values .meter__slice.color-index-critical, +.meter--arc .meter__values .meter__slice.color-index-critical, +.meter--spiral .meter__values .meter__slice.color-index-critical { + stroke: #F04B37; } + +.meter--circle .meter__values .meter__slice.color-index-warning, +.meter--arc .meter__values .meter__slice.color-index-warning, +.meter--spiral .meter__values .meter__slice.color-index-warning { + stroke: #F0AA3C; } + +.meter--circle .meter__values .meter__slice.color-index-ok, +.meter--arc .meter__values .meter__slice.color-index-ok, +.meter--spiral .meter__values .meter__slice.color-index-ok { + stroke: #509137; } + +.meter--circle .meter__values .meter__slice.color-index-unknown, +.meter--arc .meter__values .meter__slice.color-index-unknown, +.meter--spiral .meter__values .meter__slice.color-index-unknown { + stroke: #848484; } + +.meter--circle .meter__values .meter__slice.color-index-disabled, +.meter--arc .meter__values .meter__slice.color-index-disabled, +.meter--spiral .meter__values .meter__slice.color-index-disabled { + stroke: #848484; } + +.meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-6, +.meter--arc .meter__values .meter__slice.color-index-graph-1, +.meter--arc .meter__values .meter__slice.color-index-graph-6, +.meter--spiral .meter__values .meter__slice.color-index-graph-1, +.meter--spiral .meter__values .meter__slice.color-index-graph-6 { + stroke: #0096D6; } + +.meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-7, +.meter--arc .meter__values .meter__slice.color-index-graph-2, +.meter--arc .meter__values .meter__slice.color-index-graph-7, +.meter--spiral .meter__values .meter__slice.color-index-graph-2, +.meter--spiral .meter__values .meter__slice.color-index-graph-7 { + stroke: #C094bf; } + +.meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-8, +.meter--arc .meter__values .meter__slice.color-index-graph-3, +.meter--arc .meter__values .meter__slice.color-index-graph-8, +.meter--spiral .meter__values .meter__slice.color-index-graph-3, +.meter--spiral .meter__values .meter__slice.color-index-graph-8 { + stroke: #99d5ef; } + +.meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-9, +.meter--arc .meter__values .meter__slice.color-index-graph-4, +.meter--arc .meter__values .meter__slice.color-index-graph-9, +.meter--spiral .meter__values .meter__slice.color-index-graph-4, +.meter--spiral .meter__values .meter__slice.color-index-graph-9 { + stroke: #87898b; } + +.meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--circle .meter__values .meter__slice.color-index-graph-10, +.meter--arc .meter__values .meter__slice.color-index-graph-5, +.meter--arc .meter__values .meter__slice.color-index-graph-10, +.meter--spiral .meter__values .meter__slice.color-index-graph-5, +.meter--spiral .meter__values .meter__slice.color-index-graph-10 { + stroke: #b9b8bb; } + +.meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-5, +.meter--arc .meter__values .meter__slice.color-index-grey-1, +.meter--arc .meter__values .meter__slice.color-index-grey-5, +.meter--spiral .meter__values .meter__slice.color-index-grey-1, +.meter--spiral .meter__values .meter__slice.color-index-grey-5 { + stroke: #676767; } + +.meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-6, +.meter--arc .meter__values .meter__slice.color-index-grey-2, +.meter--arc .meter__values .meter__slice.color-index-grey-6, +.meter--spiral .meter__values .meter__slice.color-index-grey-2, +.meter--spiral .meter__values .meter__slice.color-index-grey-6 { + stroke: #CCCCCC; } + +.meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-7, +.meter--arc .meter__values .meter__slice.color-index-grey-3, +.meter--arc .meter__values .meter__slice.color-index-grey-7, +.meter--spiral .meter__values .meter__slice.color-index-grey-3, +.meter--spiral .meter__values .meter__slice.color-index-grey-7 { + stroke: #E8E8E8; } + +.meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--circle .meter__values .meter__slice.color-index-grey-8, +.meter--arc .meter__values .meter__slice.color-index-grey-4, +.meter--arc .meter__values .meter__slice.color-index-grey-8, +.meter--spiral .meter__values .meter__slice.color-index-grey-4, +.meter--spiral .meter__values .meter__slice.color-index-grey-8 { + stroke: #F2F2F2; } + +.meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-4, +.meter--arc .meter__values .meter__slice.color-index-accent-1, +.meter--arc .meter__values .meter__slice.color-index-accent-4, +.meter--spiral .meter__values .meter__slice.color-index-accent-1, +.meter--spiral .meter__values .meter__slice.color-index-accent-4 { + stroke: #E6734B; } + +.meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-5, +.meter--arc .meter__values .meter__slice.color-index-accent-2, +.meter--arc .meter__values .meter__slice.color-index-accent-5, +.meter--spiral .meter__values .meter__slice.color-index-accent-2, +.meter--spiral .meter__values .meter__slice.color-index-accent-5 { + stroke: #E6C84B; } + +.meter--circle .meter__values .meter__slice.color-index-accent-3, .meter--circle .meter__values .meter__slice.color-index-accent-6, +.meter--arc .meter__values .meter__slice.color-index-accent-3, +.meter--arc .meter__values .meter__slice.color-index-accent-6, +.meter--spiral .meter__values .meter__slice.color-index-accent-3, +.meter--spiral .meter__values .meter__slice.color-index-accent-6 { + stroke: #915591; } + +.meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, +.meter--arc .meter__values .meter__slice.color-index-light-1, +.meter--arc .meter__values .meter__slice.color-index-light-3, +.meter--spiral .meter__values .meter__slice.color-index-light-1, +.meter--spiral .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, +.meter--arc .meter__values .meter__slice.color-index-light-2, +.meter--arc .meter__values .meter__slice.color-index-light-4, +.meter--spiral .meter__values .meter__slice.color-index-light-2, +.meter--spiral .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--circle .meter__values .meter__slice--clickable, +.meter--arc .meter__values .meter__slice--clickable, +.meter--spiral .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--circle .meter__values .meter__slice, + .meter--arc .meter__values .meter__slice, + .meter--spiral .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-arc 1.5s linear; + animation: draw-arc 1.5s linear; } } + +.meter--circle .meter__thresholds .meter__slice.color-index-unset, +.meter--circle .meter__tracks .meter__slice.color-index-unset, +.meter--arc .meter__thresholds .meter__slice.color-index-unset, +.meter--arc .meter__tracks .meter__slice.color-index-unset, +.meter--spiral .meter__thresholds .meter__slice.color-index-unset, +.meter--spiral .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-brand, +.meter--circle .meter__tracks .meter__slice.color-index-brand, +.meter--arc .meter__thresholds .meter__slice.color-index-brand, +.meter--arc .meter__tracks .meter__slice.color-index-brand, +.meter--spiral .meter__thresholds .meter__slice.color-index-brand, +.meter--spiral .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(0, 150, 214, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-critical, +.meter--circle .meter__tracks .meter__slice.color-index-critical, +.meter--arc .meter__thresholds .meter__slice.color-index-critical, +.meter--arc .meter__tracks .meter__slice.color-index-critical, +.meter--spiral .meter__thresholds .meter__slice.color-index-critical, +.meter--spiral .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(240, 75, 55, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-warning, +.meter--circle .meter__tracks .meter__slice.color-index-warning, +.meter--arc .meter__thresholds .meter__slice.color-index-warning, +.meter--arc .meter__tracks .meter__slice.color-index-warning, +.meter--spiral .meter__thresholds .meter__slice.color-index-warning, +.meter--spiral .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(240, 170, 60, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-ok, +.meter--circle .meter__tracks .meter__slice.color-index-ok, +.meter--arc .meter__thresholds .meter__slice.color-index-ok, +.meter--arc .meter__tracks .meter__slice.color-index-ok, +.meter--spiral .meter__thresholds .meter__slice.color-index-ok, +.meter--spiral .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(80, 145, 55, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-unknown, +.meter--circle .meter__tracks .meter__slice.color-index-unknown, +.meter--arc .meter__thresholds .meter__slice.color-index-unknown, +.meter--arc .meter__tracks .meter__slice.color-index-unknown, +.meter--spiral .meter__thresholds .meter__slice.color-index-unknown, +.meter--spiral .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(132, 132, 132, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-disabled, +.meter--circle .meter__tracks .meter__slice.color-index-disabled, +.meter--arc .meter__thresholds .meter__slice.color-index-disabled, +.meter--arc .meter__tracks .meter__slice.color-index-disabled, +.meter--spiral .meter__thresholds .meter__slice.color-index-disabled, +.meter--spiral .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(132, 132, 132, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, +.meter--circle .meter__tracks .meter__slice.color-index-graph-1, +.meter--circle .meter__tracks .meter__slice.color-index-graph-6, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-1, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-6, +.meter--arc .meter__tracks .meter__slice.color-index-graph-1, +.meter--arc .meter__tracks .meter__slice.color-index-graph-6, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-1, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(0, 150, 214, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, +.meter--circle .meter__tracks .meter__slice.color-index-graph-2, +.meter--circle .meter__tracks .meter__slice.color-index-graph-7, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-2, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-7, +.meter--arc .meter__tracks .meter__slice.color-index-graph-2, +.meter--arc .meter__tracks .meter__slice.color-index-graph-7, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-2, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(192, 148, 191, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, +.meter--circle .meter__tracks .meter__slice.color-index-graph-3, +.meter--circle .meter__tracks .meter__slice.color-index-graph-8, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-3, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-8, +.meter--arc .meter__tracks .meter__slice.color-index-graph-3, +.meter--arc .meter__tracks .meter__slice.color-index-graph-8, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-3, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(153, 213, 239, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-9, +.meter--circle .meter__tracks .meter__slice.color-index-graph-4, +.meter--circle .meter__tracks .meter__slice.color-index-graph-9, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-4, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-9, +.meter--arc .meter__tracks .meter__slice.color-index-graph-4, +.meter--arc .meter__tracks .meter__slice.color-index-graph-9, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-4, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-9 { + stroke: rgba(135, 137, 139, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-5, .meter--circle .meter__thresholds .meter__slice.color-index-graph-10, +.meter--circle .meter__tracks .meter__slice.color-index-graph-5, +.meter--circle .meter__tracks .meter__slice.color-index-graph-10, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-5, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-10, +.meter--arc .meter__tracks .meter__slice.color-index-graph-5, +.meter--arc .meter__tracks .meter__slice.color-index-graph-10, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-5, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-10 { + stroke: rgba(185, 184, 187, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, +.meter--circle .meter__tracks .meter__slice.color-index-accent-1, +.meter--circle .meter__tracks .meter__slice.color-index-accent-4, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-1, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-4, +.meter--arc .meter__tracks .meter__slice.color-index-accent-1, +.meter--arc .meter__tracks .meter__slice.color-index-accent-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-1, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(230, 115, 75, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-5, +.meter--circle .meter__tracks .meter__slice.color-index-accent-2, +.meter--circle .meter__tracks .meter__slice.color-index-accent-5, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-2, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-5, +.meter--arc .meter__tracks .meter__slice.color-index-accent-2, +.meter--arc .meter__tracks .meter__slice.color-index-accent-5, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-5, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-2, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-5 { + stroke: rgba(230, 200, 75, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-3, .meter--circle .meter__thresholds .meter__slice.color-index-accent-6, +.meter--circle .meter__tracks .meter__slice.color-index-accent-3, +.meter--circle .meter__tracks .meter__slice.color-index-accent-6, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-3, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-6, +.meter--arc .meter__tracks .meter__slice.color-index-accent-3, +.meter--arc .meter__tracks .meter__slice.color-index-accent-6, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-6, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-3, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-6 { + stroke: rgba(145, 85, 145, 0.5); } + +.meter--circle .meter__threshold, +.meter--arc .meter__threshold, +.meter--spiral .meter__threshold { + stroke-linecap: butt; } + +.meter--circle .meter__value-label, +.meter--arc .meter__value-label, +.meter--spiral .meter__value-label { + display: block; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc { + width: 192px; } } + +.meter--circle .meter__value, +.meter--arc .meter__value { + white-space: normal; + pointer-events: none; + text-align: center; } + +.meter--circle .meter__value--active, +.meter--arc .meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter--circle .meter__minmax-container, +.meter--arc:not(.meter--vertical) .meter__minmax-container { + width: 192px; } + +.meter--circle .meter__value, +.meter--arc:not(.meter--vertical) .meter__value { + position: absolute; + left: 50%; } + +.meter--circle.meter--small .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter--circle.meter--large .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--circle.meter--legend-right .meter__legend, +.meter--arc.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + +.meter--circle.meter--legend-right.meter--small .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { + top: 48px; } + +.meter--circle.meter--legend-right.meter--large .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { + top: 144px; } + +.meter--circle svg.meter__graphic { + width: 192px; + height: 192px; } + +.meter--circle .meter__value { + top: 96px; + -webkit-transform: translateX(-50%) translateY(-50%); + transform: translateX(-50%) translateY(-50%); + max-width: 144px; } + +.meter--circle.meter--small svg.meter__graphic { + width: 96px; + height: 96px; } + +.meter--circle.meter--small .meter__value { + top: 48px; + max-width: 72px; } + +.meter--circle.meter--large svg.meter__graphic { + width: 288px; + height: 288px; } + +.meter--circle.meter--large .meter__value { + top: 144px; + max-width: 216px; } + +.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { + position: static; + margin: 0 auto; + -webkit-transform: none; + transform: none; } + +.meter--arc:not(.meter--vertical) svg.meter__graphic { + width: 192px; + height: 144px; } + +.meter--arc:not(.meter--vertical) .meter__value { + top: 108px; + -webkit-transform: translateX(-50%); + transform: translateX(-50%); + max-width: 120px; } + +.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { + top: 72px; } + +.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; + height: 72px; } + +.meter--arc:not(.meter--vertical).meter--small .meter__value { + top: 60px; + max-width: 60px; } + +.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { + width: 288px; + height: 216px; } + +.meter--arc:not(.meter--vertical).meter--large .meter__value { + top: 156px; + max-width: 180px; } + +.meter--arc.meter--vertical svg.meter__graphic { + display: inline; + width: 144px; + height: 192px; } + +.meter--arc.meter--vertical .meter__value { + position: relative; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; + margin-left: -24px; + vertical-align: top; } + html.rtl .meter--arc.meter--vertical .meter__value { + margin-left: 0; + margin-right: -24px; } + +.meter--arc.meter--vertical .meter__minmax-container { + display: inline-block; + vertical-align: top; + margin-left: 12px; + padding-top: 12px; + padding-bottom: 12px; } + html.rtl .meter--arc.meter--vertical .meter__minmax-container { + margin-left: 0; + margin-right: 12px; } + +.meter--arc.meter--vertical.meter--small svg.meter__graphic { + width: 72px; + height: 96px; } + +.meter--arc.meter--vertical.meter--small .meter__value { + top: 48px; + margin-left: -12px; } + html.rtl .meter--arc.meter--vertical.meter--small .meter__value { + margin-left: 0; + margin-right: -12px; } + +.meter--arc.meter--vertical.meter--small .meter__minmax-container { + padding-top: 0px; + padding-bottom: 0px; } + +.meter--arc.meter--vertical.meter--large svg.meter__graphic { + width: 216px; + height: 288px; } + +.meter--arc.meter--vertical.meter--large .meter__value { + top: 144px; + margin-left: -48px; } + html.rtl .meter--arc.meter--vertical.meter--large .meter__value { + margin-left: 0; + margin-right: -48px; } + +.meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: -72px; } + html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: 0; + margin-right: -72px; } + +.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: -60px; } + html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: 0; + margin-right: -60px; } + +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { + min-width: 78px; } + +.meter--arc.meter--vertical.meter--legend-right .meter__value { + min-width: 120px; } + +.meter--spiral .meter__value { + position: absolute; + top: 0px; + right: 0px; + white-space: normal; + text-align: right; } + +.meter--spiral .meter__value-value { + display: block; + font-size: 24px; + font-size: 1.5rem; + line-height: 1; + margin-bottom: 6px; } + +.meter--spiral .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; + color: #777; + margin-left: 0.2em; } + html.rtl .meter--spiral .meter__value-units { + margin-left: 0; + margin-right: 0.2em; } + +.meter--spiral .meter__value-label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--loading .meter__thresholds, +.meter--loading .meter__value { + display: none; } .notification { font-size: 19px; @@ -4750,46 +5439,61 @@ a.active > .label .label__icon.control-icon svg { font-size: 19px; font-size: 1.1875rem; line-height: 24px; } - .notification--critical .notification__status .status-icon__base { + .notification:not(.notification--disabled) { + cursor: pointer; } + .notification:not(.notification--disabled):hover { + z-index: 1; + box-shadow: 0px 0px 0px 2px #0096D6; } + .notification--status-critical .notification__status .status-icon__base { fill: #fff; } - .notification--critical .notification__status .status-icon__detail { + .notification--status-critical .notification__status .status-icon__detail { stroke: #F04B37; fill: #F04B37; } - .notification--critical .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-critical .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--warning .notification__status .status-icon__base { + .notification--status-critical:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #F04B37; } + .notification--status-warning .notification__status .status-icon__base { fill: #fff; } - .notification--warning .notification__status .status-icon__detail { + .notification--status-warning .notification__status .status-icon__detail { stroke: #F0AA3C; fill: #F0AA3C; } - .notification--warning .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-warning .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--ok .notification__status .status-icon__base { + .notification--status-warning:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #F0AA3C; } + .notification--status-ok .notification__status .status-icon__base { fill: #fff; } - .notification--ok .notification__status .status-icon__detail { + .notification--status-ok .notification__status .status-icon__detail { stroke: #509137; fill: #509137; } - .notification--ok .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-ok .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--unknown .notification__status .status-icon__base { + .notification--status-ok:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #509137; } + .notification--status-unknown .notification__status .status-icon__base { fill: #fff; } - .notification--unknown .notification__status .status-icon__detail { + .notification--status-unknown .notification__status .status-icon__detail { stroke: #848484; fill: #848484; } - .notification--unknown .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--disabled .notification__status .status-icon__base { + .notification--status-unknown:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #848484; } + .notification--status-disabled .notification__status .status-icon__base { fill: #fff; } - .notification--disabled .notification__status .status-icon__detail { + .notification--status-disabled .notification__status .status-icon__detail { stroke: #848484; fill: #848484; } - .notification--disabled .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } + .notification--status-disabled:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #848484; } .notifications-control__icon { width: 48px; @@ -4802,7 +5506,7 @@ a.active > .label .label__icon.control-icon svg { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .notifications__container { position: absolute; @@ -4812,8 +5516,8 @@ a.active > .label .label__icon.control-icon svg { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 0px 5px 0px 5px; } .notifications__icon { position: absolute; @@ -4828,6 +5532,10 @@ a.active > .label .label__icon.control-icon svg { .number-input__input::-webkit-outer-spin-button, .number-input__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } + .number-input__input:invalid { + box-shadow: none; } + .number-input__input::-ms-clear { + display: none; } .object { overflow: auto; } @@ -4863,25 +5571,54 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; color: #777; } .object__attribute--array > .object__attribute-value > ol > li { - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li:last-child { - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li > ul { padding-top: 0px; padding-bottom: 0px; } -.paragraph--small { +.grommet .paragraph--align-start { + text-align: left; } + html.rtl .grommet .paragraph--align-start { + text-align: right; } + +.grommet .paragraph--align-center { + text-align: center; } + +.grommet .paragraph--align-right { + text-align: right; } + html.rtl .grommet .paragraph--align-right { + text-align: left; } + +.grommet .paragraph--margin-none { + margin-top: 0; + margin-bottom: 0; } + +.grommet .paragraph--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + +.grommet .paragraph--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + +.grommet .paragraph--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + +.grommet .paragraph.paragraph--small { font-size: 14px; font-size: 0.875rem; line-height: 1.71429; } - .paragraph--small a { + .grommet .paragraph.paragraph--small a { text-decoration: none; } -.paragraph--large { +.grommet .paragraph.paragraph--large { font-size: 24px; font-size: 1.5rem; line-height: 28px; } - .paragraph--large a { + .grommet .paragraph.paragraph--large a { color: #0096D6; font-weight: 600; } @@ -4892,26 +5629,26 @@ a.active > .label .label__icon.control-icon svg { cursor: pointer; } .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #fff; } .radio-button__input { opacity: 0; position: absolute; } .radio-button__input:checked + .radio-button__control { border-color: #0096D6; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #fff; } .radio-button__input:checked + .radio-button__control:after { content: ""; @@ -4923,7 +5660,7 @@ a.active > .label .label__icon.control-icon svg { height: 10px; background-color: #0096D6; border-radius: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control:after { background-color: #fff; } .radio-button__input:focus + .radio-button__control { content: ""; @@ -4943,12 +5680,12 @@ a.active > .label .label__icon.control-icon svg { html.rtl .radio-button__control { margin-right: 0; margin-left: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__control { - border-color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__control { + border-color: rgba(255, 255, 255, 0.7); } .radio-button__label { color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__label { - color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__label { + color: rgba(255, 255, 255, 0.85); } .radio-button--disabled .radio-button__control { opacity: 0.5; } @@ -4959,121 +5696,193 @@ a.active > .label .label__icon.control-icon svg { margin: -1px; border: 1px solid #99d5ef; box-shadow: 0 0 1px 1px #99d5ef; } - .search--controlled { - cursor: pointer; } - .search__input { - margin-right: 0px; } - .header .search__input { - font-size: inherit; } - .search__drop { - font-size: 20px; - font-size: 1.25rem; + +.search--controlled { + cursor: pointer; } + +.search__input { + margin-right: 0px; } + .header .search__input { + font-size: inherit; line-height: inherit; } + .search__input::-ms-clear { + display: none; } + +.search__drop { + font-size: 20px; + font-size: 1.25rem; + line-height: inherit; } + @media screen and (max-width: 44.9375em) { + .search__drop { + max-width: 100%; + width: 100vw; } } + .search__drop input { + margin-right: 0px; + box-sizing: border-box; + width: 100%; } @media screen and (max-width: 44.9375em) { - .search__drop { - max-width: 100%; - width: 100vw; } } - .search__drop--inline { - margin-left: -1px; } - .search__drop--inline .search__drop-contents { - display: block; } - .search__drop--controlled .search__drop-contents { - display: inline-block; } - .search__drop input { - margin-right: 0px; - box-sizing: border-box; - width: 100%; } - @media screen and (max-width: 44.9375em) { - .search__drop input { - width: calc(100vw - 72px); } } - .search__drop-control { - vertical-align: top; - height: 48px; } - .search__drop .search__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search__drop--large { - line-height: 96px; } - .search--inline { - position: relative; } - .search--inline .search__input { - width: 100%; - box-sizing: border-box; - padding-right: 47px; } - .search--inline .search__input:focus { - padding-right: 46px; } - html.rtl .search--inline .search__input { - padding-right: 23px; - padding-left: 47px; } - html.rtl .search--inline .search__input:focus { - padding-right: 22px; - padding-left: 46px; } - .header .search--inline .search__input:not(:focus) { - border-color: transparent; } - .search--inline .control-icon-search { - position: absolute; - right: 12px; - top: 50%; - transform: translateY(-50%); - pointer-events: none; } - html.rtl .search--inline .control-icon-search { - right: auto; - left: 12px; } - .search--small { - line-height: 24px; } - .search--small .search__input { - font-size: 14px; - font-size: 0.875rem; - line-height: 14px; - padding: 4px 13px; - padding-right: 23px; } - .search--small .search__input:focus { - padding: 3px 12px; - padding-right: 22px; } - .search--small .control-icon-search { - height: 12px; - width: 12px; } - .search--large { - line-height: triple(24px); } - .search--large .search__input { - font-size: 36px; - font-size: 2.25rem; - line-height: 48px; - padding: -7px 35px; - padding-right: 47px; } - .search--large .control-icon-search { - right: 24px; } + .search__drop input { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion { + padding: 6px 24px; + cursor: pointer; } + @media screen and (max-width: 44.9375em) { + .search__drop .search__suggestion { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } -.search-input { - position: relative; +.search__drop-control { + vertical-align: top; + height: 48px; } + +.search__drop--controlled .search__drop-contents { display: inline-block; } - .search-input__input { + +.search__drop--large { + line-height: 96px; } + +.search--inline { + position: relative; } + .search--inline .search__input { width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .search-input__input:focus { - padding-right: 59px; } - .search-input__control { + box-sizing: border-box; + padding-left: 11px; + padding-right: 47px; + border-radius: 0; + -webkit-appearance: none; } + .search--inline .search__input:focus { + padding-left: 10px; + padding-right: 46px; } + html.rtl .search--inline .search__input { + padding-right: 11px; + padding-left: 47px; } + html.rtl .search--inline .search__input:focus { + padding-right: 11px; + padding-left: 46px; } + .header .search--inline .search__input:not(:focus) { + border-color: transparent; } + .search--inline .control-icon-search { position: absolute; + right: 12px; top: 50%; transform: translateY(-50%); - right: 12px; } - .search-input__suggestions { - border-top-left-radius: 0px; - border-top-right-radius: 0px; - margin: 0px; - list-style-type: none; } - .search-input__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search-input__suggestion:hover, .search-input__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search-input--active .search-input__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + pointer-events: none; } + html.rtl .search--inline .control-icon-search { + right: auto; + left: 12px; } + +.search--small .search__input { + font-size: 19px; + font-size: 1.1875rem; + line-height: inherit; + padding: 4px 18px; + padding-right: 23px; } + .search--small .search__input:focus { + padding: 3px 17px; + padding-right: 22px; } + +.search--large .search__input { + font-size: 54px; + font-size: 3.375rem; + line-height: normal; + padding: 12px 24px; + padding-right: 72px; } + .search--large .search__input:focus { + padding: 11px 71px; + padding-left: 23px; } + @media screen and (max-width: 44.9375em) { + .search--large .search__input:focus { + padding: 10px 22px; + padding-right: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--large .search__input { + font-size: inherit; + padding: 11px 23px; + padding-right: 47px; + line-height: 1.5; } } + +.search--large .control-icon-search { + right: 24px; + width: 48px; + height: 48px; } + @media screen and (max-width: 44.9375em) { + .search--large .control-icon-search { + right: 12px; + width: 24px; + height: 24px; } } + @media screen and (min-width: 45em) { + .search--large .control-icon-search { + transition: none; } } + +.search--icon-align-start.search--inline .search__input { + padding-left: 47px; + padding-right: 23px; } + .search--icon-align-start.search--inline .search__input:focus { + padding-left: 46px; + padding-right: 23px; } + +.search--icon-align-start.search--inline .control-icon-search { + left: 12px; } + +.search--icon-align-start.search--large .search__input { + padding-left: 72px; + padding-right: 24px; } + .search--icon-align-start.search--large .search__input:focus { + padding-left: 71px; + padding-right: 23px; } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input:focus { + padding: 10px 22px; + padding-left: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input { + padding: 11px 23px; + padding-left: 47px; } } + +.search--fill { + width: 100%; + max-width: none; + flex-grow: 1; } + +.search-input { + position: relative; + display: inline-block; } + +.grommet .search-input__input, +.search-input__input { + width: 100%; + height: 100%; + display: block; + padding-right: 48px; } + .grommet .search-input__input:focus, + .search-input__input:focus { + padding-right: 47px; } + .grommet .search-input__input::-ms-clear, + .search-input__input::-ms-clear { + display: none; } + +.search-input__control { + position: absolute; + top: 50%; + transform: translateY(-50%); + right: 6px; } + +.search-input__suggestions { + border-top-left-radius: 0px; + border-top-right-radius: 0px; + margin: 0px; + list-style-type: none; } + +.search-input__suggestion { + padding: 6px 24px; + cursor: pointer; } + .search-input__suggestion:hover, .search-input__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } + +.search-input--active .search-input__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } section:not(.section) { padding-top: 24px; @@ -5146,7 +5955,7 @@ section > dl > dd { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .session__container { position: absolute; @@ -5156,8 +5965,8 @@ section > dl > dd { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 0px 5px 0px 5px; } .session .react-gravatar { position: absolute; @@ -5166,7 +5975,7 @@ section > dl > dd { .session__actions { margin-top: 24px; padding-top: 24px; - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .session a { cursor: pointer; } @@ -5191,7 +6000,7 @@ section > dl > dd { display: flex; flex-direction: column; } .sidebar--fixed > * { - flex: 1; + flex: 1 1 auto; overflow: auto; } .sidebar--fixed > *.header, .sidebar--fixed > *.footer { flex: 0 0 auto; } @@ -5247,41 +6056,62 @@ section > dl > dd { .skip-link-anchor { width: 0; height: 0; - overflow: hidden; } + overflow: hidden; + position: absolute; } .tab { - padding: 12px; } + padding: 0 12px; } + .tabs--justify-start .tab:first-of-type, + .tabs--justify-end .tab:first-of-type { + padding-left: 0; } + .tabs--justify-start .tab:last-of-type, + .tabs--justify-end .tab:last-of-type { + padding-right: 0; } + @media screen and (max-width: 44.9375em) { + .tabs--responsive .tab:first-of-type, + .tabs--responsive .tab:last-of-type { + padding-left: 12px; + padding-right: 12px; } } .tab a { + display: inline-block; text-decoration: none; } .tab a:hover, .tab a:visited, .tab a:link, .tab a:active { text-decoration: none; } - .tab a:focus .tab__label { - border-bottom: 4px solid; } + .tab a:focus:not(tab--active .tab__link) .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tab__label { + display: inline-block; cursor: pointer; - padding-bottom: 12px; - font-weight: 600; - color: #777; } - .tab--active .tab__label { + padding-bottom: 10px; + color: #777; + border-bottom: 4px solid transparent; } + .tab--active .tab__label, + .tab--active .tab__link:hover .tab__label { color: #000; - border-bottom: 4px solid #000; } - .tab:hover .tab__label, .tab:focus .tab__label { - border-bottom: 4px solid; } + border-color: #000; } + .tab:hover .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tabs { - margin: 0; + margin: 12px 0; padding: 0; display: flex; flex-wrap: wrap; - justify-content: center; align-items: center; list-style: none; - border-bottom: 1px solid #ccc; } - .tabs__content { - padding: 24px; } - @media screen and (max-width: 44.9375em) { - .tabs__content { - padding: 24px 0; } } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + .tabs--justify-center { + justify-content: center; } + .tabs--justify-start { + justify-content: flex-start; } + .tabs--justify-end { + justify-content: flex-end; } + @media screen and (max-width: 44.9375em) { + .tabs--justify-start.tabs--responsive, .tabs--justify-center.tabs--responsive, .tabs--justify-end.tabs--responsive { + flex-direction: column; + text-align: center; } } + .tabs + div:focus { + outline: none; } .table table { width: 100%; } @@ -5303,7 +6133,7 @@ section > dl > dd { font-size: 20px; font-size: 1.25rem; line-height: 1.2; - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .table__mirror { position: absolute; @@ -5313,9 +6143,6 @@ section > dl > dd { .table__mirror > thead { position: fixed; background-color: rgba(255, 255, 255, 0.9); } - @media screen and (max-width: 44.9375em) { - .table__mirror > thead { - position: static; } } .table__more { margin-top: 24px; @@ -5323,6 +6150,10 @@ section > dl > dd { .table--scrollable { position: relative; } + .table--scrollable .table__table thead { + visibility: hidden; } + .table--scrollable .table__table th { + border-bottom: none; } .table--selectable tbody tr { cursor: pointer; } @@ -5331,23 +6162,69 @@ section > dl > dd { .table--selectable tbody tr.table-row--selected td { background-color: #daf1fb; color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr.table-row--selected td { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr.table-row--selected td { background-color: rgba(0, 0, 0, 0.2); color: #fff; } .table--selectable tbody tr:hover:not(.table-row--selected) td { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { color: #fff; } +.table--small thead { + display: none; } + +.table--small td { + display: block; } + .table--small td:before { + font-weight: 100; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + content: attr(data-th); + display: block; + padding-right: 12px; } + +.table--small tr { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.table--small td, +.table--small th { + padding-left: 24px; } + .tag { - background-color: rgba(128, 128, 128, 0.6); - padding: 3px 6px; + padding: 6px 22px; + background-color: transparent; + border: 2px solid #0096D6; + border-radius: 0px 5px 0px 5px; + color: #333; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + cursor: pointer; + text-align: center; + outline: none; + min-width: 120px; + max-width: 384px; + border-color: rgba(51, 51, 51, 0.6); + margin: 0 12px 12px 0; position: relative; - margin: 0 12px 12px 0; } - .tag .tag--label { - color: #fff; + opacity: 0.7; } + .tag:focus:not(.button--disabled) { + border-color: #99d5ef; + box-shadow: 0 0 1px 1px #99d5ef; } + @media screen and (min-width: 45em) { + .tag { + transition: 0.1s ease-in-out; } } + .tag a, + .tag a:hover, + .tag .anchor:hover:not(.anchor--disabled) { + color: #333; text-decoration: none; } + .tag:hover { + box-shadow: 0px 0px 0px 2px rgba(51, 51, 51, 0.6); + opacity: 1; } .tbd { text-align: center; @@ -5356,23 +6233,12 @@ section > dl > dd { font-size: 6rem; line-height: 1; font-style: italic; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); color: #fff; } .tiles { width: 100%; padding: 12px; } - @media screen and (min-width: 45em) { - .tiles.box--direction-row > .tile { - flex: 0 0 192px; } - .tiles.box--direction-row > .tile > * { - box-sizing: border-box; } - .tiles.box--direction-row > .tile--wide { - box-sizing: border-box; } - .tiles.box--direction-row:not(.tiles--flush) > .tile { - margin: 12px; } - .tiles.box--direction-row:not(.tiles--flush) > .tile--wide { - flex-basis: calc(100% - 24px); } } .tiles__container { display: flex; flex-direction: row; @@ -5387,6 +6253,16 @@ section > dl > dd { .tiles__container .tiles.box--direction-row { width: 100%; overflow: hidden; } + .tiles > .tile { + flex-grow: 0; + flex-shrink: 0; } + @media screen and (min-width: 45em) { + .tiles > .tile { + flex-basis: 192px; } } + .tiles:not(.tiles--flush) > .tile { + margin: 12px; } + .tiles:not(.tiles--flush) > .tile--wide { + flex-basis: calc(100% - 24px); } .tiles--fill.box--wrap { justify-content: space-around; } .tiles--fill.box--wrap > .tile { @@ -5413,16 +6289,14 @@ section > dl > dd { background-color: #daf1fb; color: #333; } .tiles--selectable .tile:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - .tiles--small > .tile { - flex-basis: 96px; } + @media screen and (min-width: 45em) { + .tiles--small > .tile { + flex-basis: 96px; } } @media screen and (min-width: 45em) { .tiles--large > .tile { flex-basis: 384px; } } - @media screen and (max-width: 44.9375em) { - .tiles--large > .tile { - flex-basis: 100%; } } .tiles:focus { outline: #99d5ef solid 1px; } @@ -5442,7 +6316,7 @@ section > dl > dd { background-color: #daf1fb; color: #333; } .tile--selectable:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .tile--eclipsed { opacity: 0.2; } @@ -5471,9 +6345,13 @@ section > dl > dd { text-decoration: none; } [class*="background-color-index-"] .title a:hover { text-decoration: underline; } + .title span { + overflow: hidden; + text-overflow: ellipsis; } .title svg, .title img { - max-width: 576px; } + max-width: 576px; + flex: 0 0 auto; } .title svg:not(:last-child), .title img:not(:last-child) { margin-right: 12px; } @@ -5485,7 +6363,7 @@ section > dl > dd { .title--interactive:hover { color: #0096D6; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .title--interactive:hover { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .title--interactive:hover { color: #fff; } @media screen and (max-width: 44.9375em) { .title--responsive svg, @@ -5541,7 +6419,7 @@ section > dl > dd { .topology__part > .topology__parts .topology__part { flex: 1; } .topology__part--demarcate { - border: 1px solid #ccc; } + border: 1px solid rgba(0, 0, 0, 0.15); } .topology__part--demarcate.topology__part--empty { background-color: #f5f5f5; min-width: 24px; @@ -5610,16 +6488,13 @@ section > dl > dd { display: flex; align-items: center; text-align: left; - padding: 24px; - background-color: rgba(103, 103, 103, 0.7); - color: #dbdbdb; - border-radius: 0px 5px 0px 5px; } + padding: 24px; } .video__control.button--primary { flex: 0 0 auto; width: 96px; height: 96px; border-radius: 48px; - background-color: rgba(0, 150, 214, 0.7); } + background-color: rgba(0, 150, 214, 0.8); } .video__control.button--primary:hover { background-color: #0096D6; } .video__title { @@ -5630,13 +6505,13 @@ section > dl > dd { right: 0px; bottom: 0px; height: 72px; - color: #dbdbdb; + color: rgba(255, 255, 255, 0.85); background-color: rgba(103, 103, 103, 0.7); } .video__timeline-chapter { position: absolute; height: 100%; padding-left: 6px; - border-left: 2px solid #dbdbdb; + border-left: 2px solid rgba(255, 255, 255, 0.7); text-align: left; cursor: pointer; } .video__timeline-chapter:hover { @@ -5657,6 +6532,13 @@ section > dl > dd { .video__progress-meter { height: 100%; background-color: #0096D6; } + .video--titled .video__summary { + background-color: rgba(103, 103, 103, 0.7); + color: rgba(255, 255, 255, 0.85); + border-radius: 0px 5px 0px 5px; + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; } .video--playing:not(.video--interacting) .video__summary, .video--playing:not(.video--interacting) .video__timeline, .video--playing:not(.video--interacting) .video__progress { @@ -5677,7 +6559,7 @@ section > dl > dd { .button--accent { background-color: #E6734B; - color: #dbdbdb; } + color: rgba(255, 255, 255, 0.85); } .button:not(.button--disabled):hover { border-color: #00608a; } @@ -5707,12 +6589,12 @@ section > dl > dd { border-color: #b24019; background-color: #b24019; } -[class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled):hover { - border-color: #c8c8c8; } +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled):hover { + border-color: rgba(217, 217, 217, 0.7); } -[class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled).button--primary:hover { +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled).button--primary:hover { border-color: #00608a; background-color: #00608a; } -[class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--disabled).button--accent:hover { +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--disabled).button--accent:hover { border-color: #c9481c; } diff --git a/css/grommet-hpinc.min.css b/css/grommet-hpinc.min.css index ae5d4a7..594bfc9 100644 --- a/css/grommet-hpinc.min.css +++ b/css/grommet-hpinc.min.css @@ -6,4 +6,4 @@ * github.com/inuitcss | inuitcss.com */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,html{font-family:HPSimplified,Arial,sans-serif}body,html{font-size:16px;font-size:1rem;line-height:24px}h1{font-size:48px;font-size:3rem;line-height:1.125}h2{font-size:36px;font-size:2.25rem;line-height:1.33333}h3{font-size:24px;font-size:1.5rem;line-height:1.25}h4,h5{font-size:18px;font-size:1.125rem;line-height:1.33333}h1,h2,h3,h4,h5{font-weight:100;max-width:100%}h1.header--strong,h1>strong,h2.header--strong,h2>strong,h3.header--strong,h3>strong,h4.header--strong,h4>strong,h5.header--strong,h5>strong{font-weight:600}h1 a,h1 a.anchor,h2 a,h2 a.anchor,h3 a,h3 a.anchor,h4 a,h4 a.anchor,h5 a,h5 a.anchor{color:inherit;text-decoration:none}h1 a.anchor:hover,h1 a:hover,h2 a.anchor:hover,h2 a:hover,h3 a.anchor:hover,h3 a:hover,h4 a.anchor:hover,h4 a:hover,h5 a.anchor:hover,h5 a:hover{text-decoration:none}dd,li,p{max-width:576px;margin-left:0}dd{margin-bottom:12px}p{margin-top:24px;margin-bottom:24px}blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}b,strong{font-weight:600}code.hljs{border:1px solid #ccc}.large-number-font{font-family:HPSimplified,Arial,sans-serif}.secondary{color:#777}.error{color:#f04b37}input,select,textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid #ccc;border-radius:0 5px 0 5px;outline:none;margin-right:12px;background-color:transparent}html.rtl input,html.rtl select,html.rtl textarea{margin-right:0;margin-left:12px}input:focus,select:focus,textarea:focus{padding:10px 22px;border-width:2px;border-color:#99d5ef}input::-moz-focus-inner,select::-moz-focus-inner,textarea::-moz-focus-inner{border:none;outline:none}input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#aaa}input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#aaa}input:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#aaa}input.error,select.error,textarea.error{border-color:#f04b37}input[type=button],input[type=submit]{text-align:center;line-height:inherit}select{border-color:#ccc;padding-right:24px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right;cursor:pointer}select::-moz-focus-inner{border:none}select.plain{border:none}input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}input[type=range]:focus{outline:none}input[type=range]::-moz-focus-inner,input[type=range]::-moz-focus-outer{border:none}input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#0096d6;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:before{background-color:#fff}input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #0096d6;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #0096d6;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-ms-fill-lower{background:#0096d6;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-lower{background:#fff}input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-thumb{border-color:#fff}input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}body.rtl,html.rtl{direction:rtl}@media screen and (min-width:45em){body,html{height:100%;width:100%;overflow:visible}}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,a{text-decoration:none;cursor:pointer}.anchor,.anchor:visited,a,a:visited{color:#2883d7}.anchor.active,a.active{color:#333}.anchor:hover:not(.anchor--disabled),a:hover:not(.anchor--disabled){text-decoration:underline;color:#0076a8}.anchor__icon,a__icon{display:inline-block;padding:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) a{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor.anchor--primary,a.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;color:#0096d6;text-decoration:none}.anchor.anchor--primary .control-icon,a.anchor--primary .control-icon{stroke:#0096d6;margin-right:12px}html.rtl .anchor.anchor--primary .control-icon,html.rtl a.anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor.anchor--primary>span,a.anchor--primary>span{vertical-align:middle}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon{transform:translateX(3px);stroke:#0096d6}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline{stroke-width:3px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor--disabled,a--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon,a--disabled .control-icon{cursor:default}#loading{position:absolute;width:100%;height:100%;background-color:#ddd;text-align:center;padding-top:100px;font-size:48px;color:#ccc;font-style:italic}@media screen and (min-width:45em){.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.app--inline{position:relative}.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:center center;background-size:cover;background-repeat:no-repeat}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.box__container--full{max-width:100%;width:100vw}.layer__container .box__container--full{width:calc(100vw - 48px)}.box__container--full-horizontal{max-width:100%;width:100vw}.layer__container .box__container--full-horizontal{width:calc(100vw - 48px)}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box--wrap{flex-wrap:wrap}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box--full{position:relative;max-width:100%;width:100vw;min-height:100vh;height:100%}.layer__container .box--full{width:calc(100vw - 48px)}.box--full-horizontal{max-width:100%;width:100vw}.layer__container .box--full-horizontal{width:calc(100vw - 48px)}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid #ccc}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid #ccc}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid #ccc}@media screen and (max-width:44.9375em){.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:none;border-bottom:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:none;border-bottom:1px solid #ccc}}[class*=background-color-index-] .box[class*=box--separator]{border-color:#eee}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box--direction-down,.box--direction-up{flex-direction:column}.box--direction-left{justify-content:flex-end}.box--flush{padding:0}.brick{box-shadow:1px 1px 5px #eee;padding:24px;position:relative;margin:0 12px 12px 0;float:left;max-width:calc(100% - 12px)}.brick .brick--label{position:absolute;top:0;right:0;left:0;bottom:0}.brick .brick--label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.brick--content-wrapper{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}button:not(.button),input[type=button],input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #0096d6;border-radius:0 5px 0 5px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}button:not(.button):focus:not(.button--disabled),input[type=button]:focus:not(.button--disabled),input[type=submit]:focus:not(.button--disabled){border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}@media screen and (min-width:45em){button:not(.button),input[type=button],input[type=submit]{transition:.1s ease-in-out}}.button{padding:6px 22px;background-color:transparent;border:2px solid #0096d6;border-radius:0 5px 0 5px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#0096d6;background-color:#0096d6;color:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#e6734b}.button--icon{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none}.button--icon.button--primary{background-color:#0096d6}.button--icon>span:not(.button__icon){vertical-align:middle}.button--icon>span:not(.button__icon):first-child{margin-left:12px}.button--icon>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary){border-color:#eee;color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary).button--accent{border-color:#e6734b}.button--disabled{opacity:.3;cursor:default}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:rgba(0,0,0,.1)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#0096d6;color:#dbdbdb}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:#fff;stroke-width:1px}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#0096d6;fill:#0096d6}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#0096d6;fill:#0096d6}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:#ccc}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.chart__graphic:focus{outline:1px solid #99d5ef}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#0096d6}.chart__values-line.color-index-critical{stroke:#f04b37}.chart__values-line.color-index-warning{stroke:#f0aa3c}.chart__values-line.color-index-ok{stroke:#509137}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#848484}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-6{stroke:#0096d6}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-7{stroke:#c094bf}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-8{stroke:#99d5ef}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-9{stroke:#87898b}.chart__values-line.color-index-graph-5,.chart__values-line.color-index-graph-10{stroke:#b9b8bb}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-5{stroke:#676767}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-6{stroke:#ccc}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-7{stroke:#e8e8e8}.chart__values-line.color-index-grey-4,.chart__values-line.color-index-grey-8{stroke:#f2f2f2}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-4{stroke:#e6734b}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-5{stroke:#e6c84b}.chart__values-line.color-index-accent-3,.chart__values-line.color-index-accent-6{stroke:#915591}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-bar.color-index-critical{fill:rgba(240,75,55,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(240,170,60,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(80,145,55,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,52%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-6{fill:rgba(0,150,214,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-7{fill:rgba(192,148,191,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-8{fill:rgba(153,213,239,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-9,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-9{fill:hsla(210,2%,54%,.7)}.chart__values-area.color-index-graph-5,.chart__values-area.color-index-graph-10,.chart__values-bar.color-index-graph-5,.chart__values-bar.color-index-graph-10{fill:hsla(260,2%,73%,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#0096d6}.chart__values-area--active.color-index-critical,.chart__values-bar--active.color-index-critical{fill:#f04b37}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#f0aa3c}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#509137}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#848484}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-6{fill:#0096d6}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-7{fill:#c094bf}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-8{fill:#99d5ef}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-9,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-9{fill:#87898b}.chart__values-area--active.color-index-graph-5,.chart__values-area--active.color-index-graph-10,.chart__values-bar--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-10{fill:#b9b8bb}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-4{fill:#e6734b}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-5,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-5{fill:#e6c84b}.chart__values-area--active.color-index-accent-3,.chart__values-area--active.color-index-accent-6,.chart__values-bar--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-6{fill:#915591}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-5{fill:#676767}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-6{fill:#ccc}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-7,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-7{fill:#e8e8e8}.chart__values-area--active.color-index-grey-4,.chart__values-area--active.color-index-grey-8,.chart__values-bar--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-8{fill:#f2f2f2}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#0096d6}.chart__values-point.color-index-critical{stroke:#f04b37}.chart__values-point.color-index-warning{stroke:#f0aa3c}.chart__values-point.color-index-ok{stroke:#509137}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#848484}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-6{stroke:#0096d6}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-7{stroke:#c094bf}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-8{stroke:#99d5ef}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-9{stroke:#87898b}.chart__values-point.color-index-graph-5,.chart__values-point.color-index-graph-10{stroke:#b9b8bb}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-5{stroke:#676767}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-6{stroke:#ccc}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-7{stroke:#e8e8e8}.chart__values-point.color-index-grey-4,.chart__values-point.color-index-grey-8{stroke:#f2f2f2}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-4{stroke:#e6734b}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-5{stroke:#e6c84b}.chart__values-point.color-index-accent-3,.chart__values-point.color-index-accent-6{stroke:#915591}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#0096d6}.chart__values--loading.color-index-critical{stroke:#f04b37}.chart__values--loading.color-index-warning{stroke:#f0aa3c}.chart__values--loading.color-index-ok{stroke:#509137}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#848484}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-6{stroke:#0096d6}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-7{stroke:#c094bf}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-8{stroke:#99d5ef}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-9{stroke:#87898b}.chart__values--loading.color-index-graph-5,.chart__values--loading.color-index-graph-10{stroke:#b9b8bb}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-5{stroke:#676767}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-6{stroke:#ccc}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-7{stroke:#e8e8e8}.chart__values--loading.color-index-grey-4,.chart__values--loading.color-index-grey-8{stroke:#f2f2f2}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-4{stroke:#e6734b}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-5{stroke:#e6c84b}.chart__values--loading.color-index-accent-3,.chart__values--loading.color-index-accent-6{stroke:#915591}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical{fill:rgba(240,75,55,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(240,170,60,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(80,145,55,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,52%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(0,150,214,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-7{fill:rgba(192,148,191,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(153,213,239,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-9{fill:hsla(210,2%,54%,.5)}.chart__yaxis .chart__bar.color-index-graph-5,.chart__yaxis .chart__bar.color-index-graph-10{fill:hsla(260,2%,73%,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#0096d6}.chart__cursor-point.color-index-critical{fill:#f04b37}.chart__cursor-point.color-index-warning{fill:#f0aa3c}.chart__cursor-point.color-index-ok{fill:#509137}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#848484}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-6{fill:#0096d6}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-7{fill:#c094bf}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-8{fill:#99d5ef}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-9{fill:#87898b}.chart__cursor-point.color-index-graph-5,.chart__cursor-point.color-index-graph-10{fill:#b9b8bb}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-4{fill:#e6734b}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-5{fill:#e6c84b}.chart__cursor-point.color-index-accent-3,.chart__cursor-point.color-index-accent-6{fill:#915591}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-5{fill:#676767}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-6{fill:#ccc}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-7{fill:#e8e8e8}.chart__cursor-point.color-index-grey-4,.chart__cursor-point.color-index-grey-8{fill:#f2f2f2}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#f04b37}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#f04b37;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#f04b37;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#f0aa3c}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#f0aa3c;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#f0aa3c;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#509137}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#509137;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#509137;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#848484}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#848484;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#848484;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#848484}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#848484;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#848484;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#0096d6}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#0096d6;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#0096d6;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#c094bf}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#c094bf;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#c094bf;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#99d5ef}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#99d5ef;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#99d5ef;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-9 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-9 .begin{stop-color:#87898b}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-9 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-9 .mid{stop-color:#87898b;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-9 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-9 .end{stop-color:#87898b;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--area .chart__gradient.color-index-graph-10 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-10 .begin{stop-color:#b9b8bb}.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--area .chart__gradient.color-index-graph-10 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-10 .mid{stop-color:#b9b8bb;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-5 .end,.chart--area .chart__gradient.color-index-graph-10 .end,.chart--bar .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-10 .end{stop-color:#b9b8bb;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#0096d6}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-bar.color-index-critical{fill:#f04b37}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#f0aa3c}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#509137}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#848484}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#0096d6}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#c094bf}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#99d5ef}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-9,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-9{fill:#87898b}.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-area.color-index-graph-10,.chart--sparkline .chart__values-bar.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-10{fill:#b9b8bb}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#e6734b}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-5,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-5{fill:#e6c84b}.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-area.color-index-accent-6,.chart--sparkline .chart__values-bar.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-6{fill:#915591}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#676767}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#ccc}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-7,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-7{fill:#e8e8e8}.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-area.color-index-grey-8,.chart--sparkline .chart__values-bar.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-8{fill:#f2f2f2}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:0 5px 0 5px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control{border-color:#dbdbdb}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__label{color:#dbdbdb}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#0096d6;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}.background-color-index-dark{color:#fff}.background-color-index-neutral-1,.background-color-index-neutral-5{background-color:#006996;color:#fff}.background-color-index-neutral-1-a,.background-color-index-neutral-5-a{background-color:rgba(0,105,150,.8);color:#fff}.background-color-index-neutral-2,.background-color-index-neutral-6{background-color:#a65336;color:#fff}.background-color-index-neutral-2-a,.background-color-index-neutral-6-a{background-color:rgba(166,83,54,.8);color:#fff}.background-color-index-neutral-3,.background-color-index-neutral-7{background-color:#a69136;color:#fff}.background-color-index-neutral-3-a,.background-color-index-neutral-7-a{background-color:rgba(166,145,54,.8);color:#fff}.background-color-index-neutral-4,.background-color-index-neutral-8{background-color:#774677;color:#fff}.background-color-index-neutral-4-a,.background-color-index-neutral-8-a{background-color:rgba(119,70,119,.8);color:#fff}.background-color-index-accent-1,.background-color-index-accent-4{background-color:#e6734b;color:#fff}.background-color-index-accent-1-a,.background-color-index-accent-4-a{background-color:rgba(230,115,75,.8);color:#fff}.background-color-index-accent-2,.background-color-index-accent-5{background-color:#e6c84b;color:#fff}.background-color-index-accent-2-a,.background-color-index-accent-5-a{background-color:rgba(230,200,75,.8);color:#fff}.background-color-index-accent-3,.background-color-index-accent-6{background-color:#915591;color:#fff}.background-color-index-accent-3-a,.background-color-index-accent-6-a{background-color:rgba(145,85,145,.8);color:#fff}.background-color-index-grey-1,.background-color-index-grey-5{background-color:#676767;color:#fff}.background-color-index-grey-1-a,.background-color-index-grey-5-a{background-color:hsla(0,0%,40%,.8);color:#fff}.background-color-index-grey-2,.background-color-index-grey-6{background-color:#ccc}.background-color-index-grey-2-a,.background-color-index-grey-6-a{background-color:hsla(0,0%,80%,.8)}.background-color-index-grey-3,.background-color-index-grey-7{background-color:#e8e8e8}.background-color-index-grey-3-a,.background-color-index-grey-7-a{background-color:hsla(0,0%,91%,.8)}.background-color-index-grey-4,.background-color-index-grey-8{background-color:#f2f2f2}.background-color-index-grey-4-a,.background-color-index-grey-8-a{background-color:hsla(0,0%,95%,.8)}.background-color-index-graph-1,.background-color-index-graph-6{background-color:#0096d6;color:#fff}.background-color-index-graph-2,.background-color-index-graph-7{background-color:#c094bf}.background-color-index-graph-3,.background-color-index-graph-8{background-color:#99d5ef}.background-color-index-graph-4,.background-color-index-graph-9{background-color:#87898b;color:#fff}.background-color-index-graph-5,.background-color-index-graph-10{background-color:#b9b8bb}.background-color-index-critical{background-color:#f04b37;color:#fff}.background-color-index-warning{background-color:#f0aa3c;color:#fff}.background-color-index-ok{background-color:#509137;color:#fff}.background-color-index-disabled,.background-color-index-unknown{background-color:#848484;color:#fff}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff;color:#333}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5;color:#333}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative;display:block}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__graphic:focus{outline:1px solid #99d5ef}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#0096d6}.distribution__item-box.color-index-critical{fill:#f04b37}.distribution__item-box.color-index-warning{fill:#f0aa3c}.distribution__item-box.color-index-ok{fill:#509137}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#848484}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-6{fill:#0096d6}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-7{fill:#c094bf}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-8{fill:#99d5ef}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-9{fill:#87898b}.distribution__item-box.color-index-graph-5,.distribution__item-box.color-index-graph-10{fill:#b9b8bb}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-4{fill:#e6734b}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-5{fill:#e6c84b}.distribution__item-box.color-index-accent-3,.distribution__item-box.color-index-accent-6{fill:#915591}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-5{fill:#676767}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-6{fill:#ccc}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-7{fill:#e8e8e8}.distribution__item-box.color-index-grey-4,.distribution__item-box.color-index-grey-8{fill:#f2f2f2}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#0096d6}.distribution__item-icons.color-index-critical{stroke:#f04b37}.distribution__item-icons.color-index-warning{stroke:#f0aa3c}.distribution__item-icons.color-index-ok{stroke:#509137}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#848484}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-6{stroke:#0096d6}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-7{stroke:#c094bf}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-8{stroke:#99d5ef}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-9{stroke:#87898b}.distribution__item-icons.color-index-graph-5,.distribution__item-icons.color-index-graph-10{stroke:#b9b8bb}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-5{stroke:#676767}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-6{stroke:#ccc}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-7{stroke:#e8e8e8}.distribution__item-icons.color-index-grey-4,.distribution__item-icons.color-index-grey-8{stroke:#f2f2f2}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-4{stroke:#e6734b}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-5{stroke:#e6c84b}.distribution__item-icons.color-index-accent-3,.distribution__item-icons.color-index-accent-6{stroke:#915591}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;padding:6px 12px;font-family:HPSimplified,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-accent-1,.distribution__label.color-index-accent-2,.distribution__label.color-index-accent-3,.distribution__label.color-index-accent-4,.distribution__label.color-index-accent-5,.distribution__label.color-index-accent-6,.distribution__label.color-index-brand,.distribution__label.color-index-critical,.distribution__label.color-index-disabled,.distribution__label.color-index-graph-1,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-6,.distribution__label.color-index-graph-9,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-5,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-neutral-7,.distribution__label.color-index-neutral-8,.distribution__label.color-index-ok,.distribution__label.color-index-unknown,.distribution__label.color-index-warning{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#0096d6}.distribution__loading-indicator.color-index-critical{stroke:#f04b37}.distribution__loading-indicator.color-index-warning{stroke:#f0aa3c}.distribution__loading-indicator.color-index-ok{stroke:#509137}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#848484}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-6{stroke:#0096d6}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-7{stroke:#c094bf}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-8{stroke:#99d5ef}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-9{stroke:#87898b}.distribution__loading-indicator.color-index-graph-5,.distribution__loading-indicator.color-index-graph-10{stroke:#b9b8bb}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-5{stroke:#676767}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-6{stroke:#ccc}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-7{stroke:#e8e8e8}.distribution__loading-indicator.color-index-grey-4,.distribution__loading-indicator.color-index-grey-8{stroke:#f2f2f2}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-4{stroke:#e6734b}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-5{stroke:#e6c84b}.distribution__loading-indicator.color-index-accent-3,.distribution__loading-indicator.color-index-accent-6{stroke:#915591}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{height:100%;max-height:100%}.drop{position:fixed;z-index:5;background-color:hsla(0,0%,100%,.9);border:none;border-radius:0 5px 0 5px;box-shadow:0 2px 4px rgba(0,0,0,.3);overflow:auto}.footer{min-height:36px;line-height:36px;width:100%}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large .footer__content{padding-top:24px;padding-bottom:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative}@media screen and (min-width:45em){.form{width:480px;max-width:100%}.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid #ccc;margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field{background-color:transparent;color:#dbdbdb}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__label{color:#dbdbdb}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0;padding-left:24px;padding-right:24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>textarea{color:#fff}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px;padding-left:22px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents ::-ms-clear,.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid #ccc;padding-top:6px}.form-field__contents>.form-field--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__help{color:#dbdbdb}.form-field__error{display:block;float:right;color:#f04b37;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__error{color:#dbdbdb}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#f04b37}.form-field--focus{z-index:2;border-color:#99d5ef}.header{height:72px;width:100%;margin-bottom:0}.header--large{height:96px}.header--small{height:48px}.header.box>:not(:last-child){margin-right:12px}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}header.header{font-size:24px;font-size:1.5rem;line-height:inherit;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .5s;transition:transform .5s}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}header.header.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}header.header.box--direction-row>*{margin-bottom:0}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}div.header__container{flex-shrink:0}div.header__container--fixed{position:relative}div.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){div.header__container--fixed .header__wrapper .header{position:fixed}div.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}div.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}div.header__wrapper{height:72px}div.header--large .header__wrapper{height:96px}div.header--large .header__content{line-height:96px}div.header--small .header__wrapper{height:48px}div.header--small .header__content{line-height:48px}div.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}div.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}div.header--fixed.header--primary .header__content{position:static;background-color:transparent}div.header--flush .header__wrapper{padding-left:0;padding-right:0}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1.2}.headline--small{font-size:30px;font-size:1.875rem;line-height:1.6}.headline--strong{font-weight:600}.control-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#0096d6}.control-icon.color-index-critical{stroke:#f04b37}.control-icon.color-index-warning{stroke:#f0aa3c}.control-icon.color-index-ok{stroke:#509137}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#848484}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{stroke:#0096d6}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{stroke:#c094bf}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{stroke:#99d5ef}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{stroke:#87898b}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{stroke:#b9b8bb}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{stroke:#676767}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{stroke:#ccc}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{stroke:#e8e8e8}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{stroke:#f2f2f2}.control-icon.color-index-accent-1,.control-icon.color-index-accent-4{stroke:#e6734b}.control-icon.color-index-accent-2,.control-icon.color-index-accent-5{stroke:#e6c84b}.control-icon.color-index-accent-3,.control-icon.color-index-accent-6{stroke:#915591}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#0096d6}.control-icon.color-index-critical{fill:#f04b37}.control-icon.color-index-warning{fill:#f0aa3c}.control-icon.color-index-ok{fill:#509137}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#848484}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{fill:#0096d6}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{fill:#c094bf}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{fill:#99d5ef}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{fill:#87898b}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{fill:#b9b8bb}.control-icon.color-index-accent-1,.control-icon.color-index-accent-4{fill:#e6734b}.control-icon.color-index-accent-2,.control-icon.color-index-accent-5{fill:#e6c84b}.control-icon.color-index-accent-3,.control-icon.color-index-accent-6{fill:#915591}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{fill:#676767}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{fill:#ccc}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{fill:#e8e8e8}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{fill:#f2f2f2}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover:not(.anchor--disabled) .control-icon,.button:hover:not(.anchor--disabled) .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.control-icon__badge circle{fill:#e6734b}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .control-icon{fill:#dbdbdb;stroke:#dbdbdb}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#848484}.status-icon-critical .status-icon__base{fill:#f04b37}.status-icon-warning .status-icon__base{fill:#f0aa3c}.status-icon-ok .status-icon__base{fill:#509137}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#848484}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#848484;stroke:#848484}.status-icon--large{width:48px;height:48px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#0096d6}.logo-icon.color-index-critical{stroke:#f04b37}.logo-icon.color-index-warning{stroke:#f0aa3c}.logo-icon.color-index-ok{stroke:#509137}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#848484}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-6{stroke:#0096d6}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-7{stroke:#c094bf}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-8{stroke:#99d5ef}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-9{stroke:#87898b}.logo-icon.color-index-graph-5,.logo-icon.color-index-graph-10{stroke:#b9b8bb}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-5{stroke:#676767}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-6{stroke:#ccc}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-7{stroke:#e8e8e8}.logo-icon.color-index-grey-4,.logo-icon.color-index-grey-8{stroke:#f2f2f2}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-4{stroke:#e6734b}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-5{stroke:#e6c84b}.logo-icon.color-index-accent-3,.logo-icon.color-index-accent-6{stroke:#915591}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}@media screen and (max-width:44.9375em){.label__text{display:none}}@media screen and (min-width:45em){.label__icon{display:none}}a.active>.label .label__icon.control-icon svg{fill:#000;stroke:#000}.layer{position:relative;z-index:4}@media screen and (min-width:45em){.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.layer:not(.layer--hidden)+.app{display:none}}.layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.layer__container{padding:0 24px;border-bottom:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.3)}}@media screen and (min-width:45em){.layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:0 5px 0 5px;box-shadow:0 2px 4px rgba(0,0,0,.3)}}.layer__closer{position:absolute;top:0;right:0;z-index:1}html.rtl .layer__closer{right:auto;left:0}.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.layer--align-center:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-top:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-bottom:not(.layer--hidden){background-image:radial-gradient(circle at bottom,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.layer--hidden{left:-10000px;z-index:-1}.layer--hidden.layer--align-left{right:auto}.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.layer--hidden{display:none}}@media screen and (min-width:45em){.layer--hidden.layer--peek{left:0;z-index:4}.layer--hidden.layer--peek.layer--align-left{right:auto}.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #0096d6;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:rgba(0,0,0,.1)}.list .list-item--selected{background-color:#daf1fb;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#daf1fb;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:rgba(0,0,0,.1);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;width:72px}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item--clickable{cursor:pointer}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#0096d6}.legend__item svg.legend__item-swatch.color-index-critical{stroke:#f04b37}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#f0aa3c}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#509137}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#848484}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#0096d6}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#c094bf}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#99d5ef}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-9{stroke:#87898b}.legend__item svg.legend__item-swatch.color-index-graph-5,.legend__item svg.legend__item-swatch.color-index-graph-10{stroke:#b9b8bb}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#676767}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#ccc}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-7{stroke:#e8e8e8}.legend__item svg.legend__item-swatch.color-index-grey-4,.legend__item svg.legend__item-swatch.color-index-grey-8{stroke:#f2f2f2}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#e6734b}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-5{stroke:#e6c84b}.legend__item svg.legend__item-swatch.color-index-accent-3,.legend__item svg.legend__item-swatch.color-index-accent-6{stroke:#915591}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}.legend__total{margin-left:24px}html.rtl .legend__total{margin-left:0;margin-right:24px}.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted #ccc}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;width:384px;padding:24px;padding-bottom:48px;background-color:#fff;text-align:center;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%;border-radius:0}}.login-form__secondary-text{color:#777}.login-form fieldset{text-align:left;border:none;margin-bottom:0}.login-form fieldset>*{width:100%;display:block}.login-form__remember-me{display:block;margin-top:24px;text-align:left}.login-form__submit{margin-top:24px;width:100%}.login-form__error{margin-bottom:12px;color:#f04b37;text-align:left}.login-form__footer{margin-top:12px;display:flex;justify-content:space-between;line-height:36px}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid #ccc;margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:rgba(0,0,0,.1)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:inherit}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #99d5ef;box-shadow:0 0 1px 1px #99d5ef;pointer-events:none}.menu>*{flex:0 0 auto}.menu a:not(.button){text-decoration:none}.menu a:not(.button).active,.menu a:not(.button):hover{color:#0076a8}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}.menu__drop{font-size:16px;font-size:1rem;line-height:inherit;max-height:100vh}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:rgba(0,0,0,.1)}.menu__drop .check-box,.menu__drop .radio-button{margin-top:12px;margin-bottom:12px}.menu__drop--align-right{text-align:right}.menu__drop--align-right .menu__contents,html.rtl .menu__drop--align-right{text-align:left}html.rtl .menu__drop--align-right .menu__contents{text-align:right}.menu__drop--large .menu__control{line-height:96px}.menu--controlled{display:inline-block;cursor:pointer}.menu--controlled.menu--large{line-height:96px}.menu--controlled.menu--small{height:24px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.menu.box--direction-row.box--responsive>*{margin-right:0}html.rtl .menu--inline.menu.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.menu.box--direction-column a:not(.button){margin-bottom:6px}.menu--small{font-size:16px;font-size:1rem;line-height:1.5}.menu--small .menu__control-drop-icon{margin-left:6px}html.rtl .menu--small .menu__control-drop-icon{margin-left:0;margin-right:6px}.menu--small .menu__control-icon svg{width:18px;height:18px}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:6px;border-color:transparent;border-right-style:solid}html.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:rgba(0,0,0,.1)}.menu--primary>a:not(.button).active{border-color:#0096d6}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:#ccc;border:none}.menu--inline.menu.box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu.box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:#ccc}.menu--inline.menu--small,.menu__drop--small{font-size:1em}.menu--inline.menu--small .menu__control-label,.menu__drop--small .menu__control-label{padding:12px}.menu--inline.menu--small .menu__control-icon svg,.menu__drop--small .menu__control-icon svg{width:18px;height:18px}.menu--inline.menu--small>a,.menu__drop--small>a{padding:6px 12px}.menu--inline.menu .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu a,.menu__drop a{text-decoration:none}.menu--inline.menu--large>a,.menu__drop--large>a{padding:24px 48px}@media screen and (max-width:44.9375em){.menu--inline.menu.box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu.box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu.box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%;width:100vw}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #99d5ef}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter.meter--active .meter__values .meter__slice:hover,.meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#0096d6}.meter--bar .meter__values .meter__slice.color-index-critical{stroke:#f04b37}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#f0aa3c}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#509137}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#848484}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#0096d6}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#c094bf}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#99d5ef}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-9{stroke:#87898b}.meter--bar .meter__values .meter__slice.color-index-graph-5,.meter--bar .meter__values .meter__slice.color-index-graph-10{stroke:#b9b8bb}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#676767}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#ccc}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-7{stroke:#e8e8e8}.meter--bar .meter__values .meter__slice.color-index-grey-4,.meter--bar .meter__values .meter__slice.color-index-grey-8{stroke:#f2f2f2}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#e6734b}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-5{stroke:#e6c84b}.meter--bar .meter__values .meter__slice.color-index-accent-3,.meter--bar .meter__values .meter__slice.color-index-accent-6{stroke:#915591}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(0,150,214,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-critical{stroke:rgba(240,75,55,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(240,170,60,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(80,145,55,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,52%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(0,150,214,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(192,148,191,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(153,213,239,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-9,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-9{stroke:hsla(210,2%,54%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__thresholds .meter__slice.color-index-graph-10,.meter--bar .meter__tracks .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(260,2%,73%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(230,115,75,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-5,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-5{stroke:rgba(230,200,75,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__thresholds .meter__slice.color-index-accent-6,.meter--bar .meter__tracks .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-6{stroke:rgba(145,85,145,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#0096d6}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-critical{stroke:#f04b37}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#f0aa3c}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#509137}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#848484}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#0096d6}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#c094bf}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#99d5ef}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-9,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-9,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-9{stroke:#87898b}.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--arc .meter__values .meter__slice.color-index-graph-10,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-10,.meter--spiral .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-10{stroke:#b9b8bb}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#676767}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#ccc}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-7,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-7,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-7{stroke:#e8e8e8}.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--arc .meter__values .meter__slice.color-index-grey-8,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-8,.meter--spiral .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-8{stroke:#f2f2f2}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#e6734b}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-5,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-5,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-5{stroke:#e6c84b}.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--arc .meter__values .meter__slice.color-index-accent-6,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-6,.meter--spiral .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-6{stroke:#915591}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(0,150,214,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-critical{stroke:rgba(240,75,55,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(240,170,60,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(80,145,55,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,52%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(0,150,214,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(192,148,191,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(153,213,239,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-9,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-9,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-9,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-9,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-9{stroke:hsla(210,2%,54%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__thresholds .meter__slice.color-index-graph-10,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-10,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-10,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-10,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(260,2%,73%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(230,115,75,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-5,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-5,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-5,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-5,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-5,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-5{stroke:rgba(230,200,75,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__thresholds .meter__slice.color-index-accent-6,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-6,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-6,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-6,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-6,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-6{stroke:rgba(145,85,145,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification--critical .notification__status .status-icon__base{fill:#fff}.notification--critical .notification__status .status-icon__detail{stroke:#f04b37;fill:#f04b37}.notification--critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--warning .notification__status .status-icon__base{fill:#fff}.notification--warning .notification__status .status-icon__detail{stroke:#f0aa3c;fill:#f0aa3c}.notification--warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--ok .notification__status .status-icon__base{fill:#fff}.notification--ok .notification__status .status-icon__detail{stroke:#509137;fill:#509137}.notification--ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--unknown .notification__status .status-icon__base{fill:#fff}.notification--unknown .notification__status .status-icon__detail{stroke:#848484;fill:#848484}.notification--unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--disabled .notification__status .status-icon__base{fill:#fff}.notification--disabled .notification__status .status-icon__detail{stroke:#848484;fill:#848484}.notification--disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:0 5px 0 5px}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.paragraph--small a{text-decoration:none}.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.paragraph--large a{color:#0096d6;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#0096d6;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#0076a8;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__control{border-color:#dbdbdb}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__label{color:#dbdbdb}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #99d5ef;box-shadow:0 0 1px 1px #99d5ef}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop--inline{margin-left:-1px}.search__drop--inline .search__drop-contents{display:block}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop-control{vertical-align:top;height:48px}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:rgba(0,0,0,.1)}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-right:47px}.search--inline .search__input:focus{padding-right:46px}html.rtl .search--inline .search__input{padding-right:23px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:22px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small{line-height:24px}.search--small .search__input{font-size:14px;font-size:.875rem;line-height:14px;padding:4px 13px;padding-right:23px}.search--small .search__input:focus{padding:3px 12px;padding-right:22px}.search--small .control-icon-search{height:12px;width:12px}.search--large{line-height:triple(24px)}.search--large .search__input{font-size:36px;font-size:2.25rem;line-height:48px;padding:-7px 35px;padding-right:47px}.search--large .control-icon-search{right:24px}.search-input{position:relative;display:inline-block}.search-input__input{width:100%;height:100%;display:block;padding-right:60px}.search-input__input:focus{padding-right:59px}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:12px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:rgba(0,0,0,.1)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#0096d6}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:0 5px 0 5px}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid #ccc}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden}.tab{padding:12px}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus .tab__label{border-bottom:4px solid}.tab__label{cursor:pointer;padding-bottom:12px;font-weight:600;color:#777}.tab--active .tab__label{color:#000;border-bottom:4px solid #000}.tab:focus .tab__label,.tab:hover .tab__label{border-bottom:4px solid}.tabs{margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;list-style:none;border-bottom:1px solid #ccc}.tabs__content{padding:24px}@media screen and (max-width:44.9375em){.tabs__content{padding:24px 0}}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid #ccc}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}@media screen and (max-width:44.9375em){.table__mirror>thead{position:static}}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#daf1fb;color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:rgba(0,0,0,.1);color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.tag{background-color:hsla(0,0%,50%,.6);padding:3px 6px;position:relative;margin:0 12px 12px 0}.tag .tag--label{color:#fff;text-decoration:none}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:#ccc;color:#fff}.tiles{width:100%;padding:12px}@media screen and (min-width:45em){.tiles.box--direction-row>.tile{flex:0 0 192px}.tiles.box--direction-row>.tile--wide,.tiles.box--direction-row>.tile>*{box-sizing:border-box}.tiles.box--direction-row:not(.tiles--flush)>.tile{margin:12px}.tiles.box--direction-row:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#daf1fb;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tiles--small>.tile{flex-basis:96px}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}@media screen and (max-width:44.9375em){.tiles--large>.tile{flex-basis:100%}}.tiles:focus{outline:1px solid #99d5ef}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#daf1fb;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title img,.title svg{max-width:576px}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#0096d6;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid #ccc}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px;background-color:hsla(0,0%,40%,.7);color:#dbdbdb;border-radius:0 5px 0 5px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(0,150,214,.7)}.video__control.button--primary:hover{background-color:#0096d6}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:#dbdbdb;background-color:hsla(0,0%,40%,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid #dbdbdb;text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#0096d6}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both}.button--accent{background-color:#e6734b;color:#dbdbdb}.button:not(.button--disabled):hover{border-color:#00608a}.button:not(.button--disabled):active{border-color:#004f70}.button:not(.button--disabled).button--primary:hover{border-color:#00608a;background-color:#00608a}.button:not(.button--disabled).button--primary:active{border-color:#004f70;background-color:#004f70}.button:not(.button--disabled).button--secondary:hover{border-color:hsla(0,0%,5%,.6)}.button:not(.button--disabled).button--secondary:active{border-color:rgba(0,0,0,.6)}.button:not(.button--disabled).button--accent:hover{border-color:#c9481c;background-color:#c9481c}.button:not(.button--disabled).button--accent:active{border-color:#b24019;background-color:#b24019}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled):hover{border-color:#c8c8c8}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled).button--primary:hover{border-color:#00608a;background-color:#00608a}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--disabled).button--accent:hover{border-color:#c9481c} \ No newline at end of file +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,.grommet{font-family:HPSimplified,Arial,sans-serif}.grommet{font-size:16px;font-size:1rem;line-height:24px}.grommet h1{font-size:48px;font-size:3rem;line-height:1.125}.grommet h2{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet h3{font-size:24px;font-size:1.5rem;line-height:1.25}.grommet h4{font-size:18px;font-size:1.125rem;line-height:1.33333}.grommet h5{font-size:17px;font-size:1.0625rem;line-height:1.41176}.grommet h6{font-size:16px;font-size:1rem;line-height:1.5}.grommet h1,.grommet h2,.grommet h3,.grommet h4,.grommet h5,.grommet h6{font-weight:100;max-width:100%}.grommet h1.header--strong,.grommet h1>strong,.grommet h2.header--strong,.grommet h2>strong,.grommet h3.header--strong,.grommet h3>strong,.grommet h4.header--strong,.grommet h4>strong,.grommet h5.header--strong,.grommet h5>strong,.grommet h6.header--strong,.grommet h6>strong{font-weight:600}.grommet h1 a,.grommet h1 a.anchor,.grommet h2 a,.grommet h2 a.anchor,.grommet h3 a,.grommet h3 a.anchor,.grommet h4 a,.grommet h4 a.anchor,.grommet h5 a,.grommet h5 a.anchor,.grommet h6 a,.grommet h6 a.anchor{color:inherit;text-decoration:none}.grommet h1 a.anchor:hover,.grommet h1 a:hover,.grommet h2 a.anchor:hover,.grommet h2 a:hover,.grommet h3 a.anchor:hover,.grommet h3 a:hover,.grommet h4 a.anchor:hover,.grommet h4 a:hover,.grommet h5 a.anchor:hover,.grommet h5 a:hover,.grommet h6 a.anchor:hover,.grommet h6 a:hover{text-decoration:none}.grommet dd,.grommet li,.grommet p{max-width:576px;margin-left:0}.grommet dd{margin-bottom:12px}.grommet p{margin-top:24px;margin-bottom:24px}.grommet blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet b,.grommet strong{font-weight:600}.grommet code.hljs{border:1px solid rgba(0,0,0,.15)}.grommet .large-number-font{font-family:HPSimplified,Arial,sans-serif}.grommet .secondary{color:#777}.grommet .error{color:#f04b37}.grommet input,.grommet select,.grommet textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid rgba(0,0,0,.15);border-radius:0 5px 0 5px;outline:none;background-color:transparent}.grommet.rtl .grommet input,.grommet.rtl .grommet select,.grommet.rtl .grommet textarea{margin-right:0;margin-left:12px}.grommet input:focus,.grommet select:focus,.grommet textarea:focus{padding:10px 22px;border-width:2px;border-color:#99d5ef}.grommet input::-moz-focus-inner,.grommet select::-moz-focus-inner,.grommet textarea::-moz-focus-inner{border:none;outline:none}.grommet input::-webkit-input-placeholder,.grommet select::-webkit-input-placeholder,.grommet textarea::-webkit-input-placeholder{color:#aaa}.grommet input::-moz-placeholder,.grommet select::-moz-placeholder,.grommet textarea::-moz-placeholder{color:#aaa}.grommet input:-ms-input-placeholder,.grommet select:-ms-input-placeholder,.grommet textarea:-ms-input-placeholder{color:#aaa}.grommet input.error,.grommet select.error,.grommet textarea.error{border-color:#f04b37}.grommet input[type=button],.grommet input[type=submit]{text-align:center;line-height:inherit}.grommet select{border-color:rgba(0,0,0,.15);padding-right:48px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px;cursor:pointer}.grommet select::-moz-focus-inner{border:none}.grommet select.plain{border:none}.grommet input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}.grommet input[type=range]:focus{outline:none}.grommet input[type=range]::-moz-focus-inner,.grommet input[type=range]::-moz-focus-outer{border:none}.grommet input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}.grommet input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#0096d6;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:before{background-color:#fff}.grommet input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #0096d6;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}.grommet input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}.grommet input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #0096d6;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}.grommet input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}.grommet input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-fill-lower{background:#0096d6;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-lower{background:#fff}.grommet input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-thumb{border-color:#fff}.grommet input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}@media screen and (min-width:45em){html.grommet{height:100%;width:100%;overflow:visible}}.grommet{box-sizing:border-box}.grommet.rtl{direction:rtl}.grommet *{box-sizing:inherit}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,.grommet a:not(.anchor){color:#2883d7;text-decoration:none;cursor:pointer}.anchor.plain .anchor.button,.anchor.plain .anchor.button:hover,.anchor.plain .grommet a:not(.anchor).button,.anchor.plain .grommet a:not(.anchor).button:hover,.grommet a:not(.anchor).plain .anchor.button,.grommet a:not(.anchor).plain .anchor.button:hover,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover{text-decoration:none}.anchor:visited,.grommet a:not(.anchor):visited{color:#2883d7}.anchor.active,.grommet a:not(.anchor).active{color:#333}.anchor:hover,.grommet a:not(.anchor):hover{color:#0076a8;text-decoration:underline}.anchor--disabled:hover{color:#2883d7}.anchor__icon{display:inline-block;padding:12px}.anchor--icon-label,.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;text-decoration:none}.anchor--icon-label .control-icon,.anchor--primary .control-icon{vertical-align:middle;margin-right:12px}html.rtl .anchor--icon-label .control-icon,html.rtl .anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor--icon-label>span,.anchor--primary>span{vertical-align:middle}.anchor--reverse .control-icon{margin-right:0;margin-left:12px}.anchor--primary{color:#0096d6}.anchor--primary .control-icon{stroke:#0096d6}.anchor--primary:hover .control-icon{stroke:#0096d6;transform:translateX(3px)}.anchor--primary:hover .control-icon path,.anchor--primary:hover .control-icon polyline{stroke-width:3px}.anchor--primary.anchor--disabled .control-icon{transform:none}.anchor--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon{cursor:default}.anchor--icon{display:inline-block}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a{color:hsla(0,0%,100%,.85)}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}@media screen and (min-width:45em){.grommet.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.grommet.app--inline{position:relative}.grommet.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}.grommet article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:50%;background-size:cover;background-repeat:no-repeat}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box>.no-flex{flex:0 0 auto}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box__container--full,.box__container--full-horizontal{max-width:100%;width:100vw}.box--wrap{flex-wrap:wrap}.box--full{position:relative;min-height:100vh;height:100%}.box--full,.box--full-horizontal{max-width:100%;width:100vw}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive:not(.box--justify-center){align-items:stretch}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--align-baseline{align-items:baseline}.box--align-content-start{align-content:flex-start}.box--align-content-end{align-content:flex-end}.box--align-content-center{align-content:center}.box--align-content-between{align-content:space-between}.box--align-content-around{align-content:space-around}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid rgba(0,0,0,.15)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .box[class*=box--separator]{border-color:hsla(0,0%,100%,.5)}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box--clickable{cursor:pointer}.brick{padding:24px;position:relative;float:left;margin:0 12px 12px 0;max-width:calc(100% - 12px)}.brick__label{position:absolute;top:0;right:0;left:0;bottom:0;overflow:hidden}.brick__label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick__background{position:absolute;top:0;bottom:0;left:0;right:0}.brick__container{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}.brick--clickable:focus,.brick--clickable:hover{z-index:1;transition:transform .4s;transform:scale(1.05);outline:none}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #0096d6;border-radius:0 5px 0 5px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.grommet button:not(.button):focus:not(.button--disabled),.grommet input[type=button]:focus:not(.button--disabled),.grommet input[type=submit]:focus:not(.button--disabled){border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}@media screen and (min-width:45em){.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{transition:.1s ease-in-out}}.grommet a.button,.grommet a.button:hover{text-decoration:none}.button{padding:6px 22px;background-color:transparent;border:2px solid #0096d6;border-radius:0 5px 0 5px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#0096d6;background-color:#0096d6;color:#fff}.button--primary:hover:not(.button--disabled){color:#fff}.button--primary:hover:not(.button--disabled) .button__icon .control-icon{fill:#fff;stroke:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#e6734b}.button--plain{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none;font-weight:inherit}.button--plain.button--primary{background-color:#0096d6}.button--plain>span:not(.button__icon):first-child{margin-left:12px}.button--plain>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary){border-color:hsla(0,0%,100%,.7);color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary).button--accent{border-color:#e6734b}.button--disabled{opacity:.3;cursor:default}.button--icon,.button:not(.button--fill){flex:0 0 auto}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__input::-ms-clear{display:none}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:hsla(0,0%,87%,.5)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#0096d6;color:hsla(0,0%,100%,.85)}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel .tiles.box--direction-row>.tile.carousel__item{flex:1 1 100%;box-sizing:border-box}.carousel .tiles.box--direction-row>.tile.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:hsla(0,0%,100%,.7);stroke-width:1px}.carousel__arrow:hover .control-icon polyline{stroke:#fff}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:hsla(0,0%,100%,.7);fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#0096d6;fill:#0096d6}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#0096d6;fill:#0096d6}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:rgba(0,0,0,.15)}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#0096d6}.chart__values-line.color-index-critical{stroke:#f04b37}.chart__values-line.color-index-warning{stroke:#f0aa3c}.chart__values-line.color-index-ok{stroke:#509137}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#848484}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-6{stroke:#0096d6}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-7{stroke:#c094bf}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-8{stroke:#99d5ef}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-9{stroke:#87898b}.chart__values-line.color-index-graph-5,.chart__values-line.color-index-graph-10{stroke:#b9b8bb}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-5{stroke:#676767}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-6{stroke:#ccc}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-7{stroke:#e8e8e8}.chart__values-line.color-index-grey-4,.chart__values-line.color-index-grey-8{stroke:#f2f2f2}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-4{stroke:#e6734b}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-5{stroke:#e6c84b}.chart__values-line.color-index-accent-3,.chart__values-line.color-index-accent-6{stroke:#915591}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-bar.color-index-critical{fill:rgba(240,75,55,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(240,170,60,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(80,145,55,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,52%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-6{fill:rgba(0,150,214,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-7{fill:rgba(192,148,191,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-8{fill:rgba(153,213,239,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-9,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-9{fill:hsla(210,2%,54%,.7)}.chart__values-area.color-index-graph-5,.chart__values-area.color-index-graph-10,.chart__values-bar.color-index-graph-5,.chart__values-bar.color-index-graph-10{fill:hsla(260,2%,73%,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#0096d6}.chart__values-area--active.color-index-critical,.chart__values-bar--active.color-index-critical{fill:#f04b37}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#f0aa3c}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#509137}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#848484}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-6{fill:#0096d6}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-7{fill:#c094bf}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-8{fill:#99d5ef}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-9,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-9{fill:#87898b}.chart__values-area--active.color-index-graph-5,.chart__values-area--active.color-index-graph-10,.chart__values-bar--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-10{fill:#b9b8bb}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-4{fill:#e6734b}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-5,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-5{fill:#e6c84b}.chart__values-area--active.color-index-accent-3,.chart__values-area--active.color-index-accent-6,.chart__values-bar--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-6{fill:#915591}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-5{fill:#676767}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-6{fill:#ccc}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-7,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-7{fill:#e8e8e8}.chart__values-area--active.color-index-grey-4,.chart__values-area--active.color-index-grey-8,.chart__values-bar--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-8{fill:#f2f2f2}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#0096d6}.chart__values-point.color-index-critical{stroke:#f04b37}.chart__values-point.color-index-warning{stroke:#f0aa3c}.chart__values-point.color-index-ok{stroke:#509137}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#848484}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-6{stroke:#0096d6}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-7{stroke:#c094bf}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-8{stroke:#99d5ef}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-9{stroke:#87898b}.chart__values-point.color-index-graph-5,.chart__values-point.color-index-graph-10{stroke:#b9b8bb}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-5{stroke:#676767}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-6{stroke:#ccc}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-7{stroke:#e8e8e8}.chart__values-point.color-index-grey-4,.chart__values-point.color-index-grey-8{stroke:#f2f2f2}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-4{stroke:#e6734b}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-5{stroke:#e6c84b}.chart__values-point.color-index-accent-3,.chart__values-point.color-index-accent-6{stroke:#915591}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#0096d6}.chart__values--loading.color-index-critical{stroke:#f04b37}.chart__values--loading.color-index-warning{stroke:#f0aa3c}.chart__values--loading.color-index-ok{stroke:#509137}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#848484}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-6{stroke:#0096d6}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-7{stroke:#c094bf}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-8{stroke:#99d5ef}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-9{stroke:#87898b}.chart__values--loading.color-index-graph-5,.chart__values--loading.color-index-graph-10{stroke:#b9b8bb}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-5{stroke:#676767}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-6{stroke:#ccc}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-7{stroke:#e8e8e8}.chart__values--loading.color-index-grey-4,.chart__values--loading.color-index-grey-8{stroke:#f2f2f2}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-4{stroke:#e6734b}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-5{stroke:#e6c84b}.chart__values--loading.color-index-accent-3,.chart__values--loading.color-index-accent-6{stroke:#915591}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical{fill:rgba(240,75,55,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(240,170,60,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(80,145,55,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,52%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(0,150,214,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-7{fill:rgba(192,148,191,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(153,213,239,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-9{fill:hsla(210,2%,54%,.5)}.chart__yaxis .chart__bar.color-index-graph-5,.chart__yaxis .chart__bar.color-index-graph-10{fill:hsla(260,2%,73%,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#0096d6}.chart__cursor-point.color-index-critical{fill:#f04b37}.chart__cursor-point.color-index-warning{fill:#f0aa3c}.chart__cursor-point.color-index-ok{fill:#509137}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#848484}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-6{fill:#0096d6}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-7{fill:#c094bf}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-8{fill:#99d5ef}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-9{fill:#87898b}.chart__cursor-point.color-index-graph-5,.chart__cursor-point.color-index-graph-10{fill:#b9b8bb}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-4{fill:#e6734b}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-5{fill:#e6c84b}.chart__cursor-point.color-index-accent-3,.chart__cursor-point.color-index-accent-6{fill:#915591}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-5{fill:#676767}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-6{fill:#ccc}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-7{fill:#e8e8e8}.chart__cursor-point.color-index-grey-4,.chart__cursor-point.color-index-grey-8{fill:#f2f2f2}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#f04b37}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#f04b37;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#f04b37;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#f0aa3c}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#f0aa3c;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#f0aa3c;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#509137}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#509137;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#509137;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#848484}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#848484;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#848484;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#848484}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#848484;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#848484;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#0096d6}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#0096d6;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#0096d6;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#c094bf}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#c094bf;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#c094bf;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#99d5ef}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#99d5ef;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#99d5ef;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-9 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-9 .begin{stop-color:#87898b}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-9 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-9 .mid{stop-color:#87898b;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-9 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-9 .end{stop-color:#87898b;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--area .chart__gradient.color-index-graph-10 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-10 .begin{stop-color:#b9b8bb}.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--area .chart__gradient.color-index-graph-10 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-10 .mid{stop-color:#b9b8bb;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-5 .end,.chart--area .chart__gradient.color-index-graph-10 .end,.chart--bar .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-10 .end{stop-color:#b9b8bb;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#0096d6}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-bar.color-index-critical{fill:#f04b37}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#f0aa3c}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#509137}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#848484}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#0096d6}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#c094bf}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#99d5ef}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-9,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-9{fill:#87898b}.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-area.color-index-graph-10,.chart--sparkline .chart__values-bar.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-10{fill:#b9b8bb}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#e6734b}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-5,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-5{fill:#e6c84b}.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-area.color-index-accent-6,.chart--sparkline .chart__values-bar.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-6{fill:#915591}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#676767}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#ccc}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-7,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-7{fill:#e8e8e8}.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-area.color-index-grey-8,.chart--sparkline .chart__values-bar.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-8{fill:#f2f2f2}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:0 5px 0 5px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control{border-color:hsla(0,0%,100%,.7)}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__label{color:hsla(0,0%,100%,.85)}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s;box-sizing:border-box}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#0096d6;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]){color:#fff}.background-color-index-brand{background-color:#0096d6}.background-color-index-neutral-1,.background-color-index-neutral-5{background-color:#006996}.background-color-index-neutral-1-a,.background-color-index-neutral-5-a{background-color:rgba(0,105,150,.8)}.background-color-index-neutral-2,.background-color-index-neutral-6{background-color:#a65336}.background-color-index-neutral-2-a,.background-color-index-neutral-6-a{background-color:rgba(166,83,54,.8)}.background-color-index-neutral-3,.background-color-index-neutral-7{background-color:#a69136}.background-color-index-neutral-3-a,.background-color-index-neutral-7-a{background-color:rgba(166,145,54,.8)}.background-color-index-neutral-4,.background-color-index-neutral-8{background-color:#774677}.background-color-index-neutral-4-a,.background-color-index-neutral-8-a{background-color:rgba(119,70,119,.8)}.background-color-index-accent-1,.background-color-index-accent-4{background-color:#e6734b}.background-color-index-accent-1-a,.background-color-index-accent-4-a{background-color:rgba(230,115,75,.8)}.background-color-index-accent-2,.background-color-index-accent-5{background-color:#e6c84b}.background-color-index-accent-2-a,.background-color-index-accent-5-a{background-color:rgba(230,200,75,.8)}.background-color-index-accent-3,.background-color-index-accent-6{background-color:#915591}.background-color-index-accent-3-a,.background-color-index-accent-6-a{background-color:rgba(145,85,145,.8)}.background-color-index-grey-1,.background-color-index-grey-5{background-color:#676767}.background-color-index-grey-1-a,.background-color-index-grey-5-a{background-color:hsla(0,0%,40%,.8)}.background-color-index-grey-2,.background-color-index-grey-6{background-color:#ccc}.background-color-index-grey-2-a,.background-color-index-grey-6-a{background-color:hsla(0,0%,80%,.8)}.background-color-index-grey-3,.background-color-index-grey-7{background-color:#e8e8e8}.background-color-index-grey-3-a,.background-color-index-grey-7-a{background-color:hsla(0,0%,91%,.8)}.background-color-index-grey-4,.background-color-index-grey-8{background-color:#f2f2f2}.background-color-index-grey-4-a,.background-color-index-grey-8-a{background-color:hsla(0,0%,95%,.8)}.background-color-index-graph-1,.background-color-index-graph-6{background-color:#0096d6}.background-color-index-graph-2,.background-color-index-graph-7{background-color:#c094bf}.background-color-index-graph-3,.background-color-index-graph-8{background-color:#99d5ef}.background-color-index-graph-4,.background-color-index-graph-9{background-color:#87898b}.background-color-index-graph-5,.background-color-index-graph-10{background-color:#b9b8bb}.background-color-index-critical{background-color:#f04b37}.background-color-index-warning{background-color:#f0aa3c}.background-color-index-ok{background-color:#509137}.background-color-index-disabled,.background-color-index-unknown{background-color:#848484}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.columns{display:flex;flex-direction:row;width:100%}.columns__column{flex:0 0 192px;display:flex;flex-direction:column}.columns--small>.columns__column{flex-basis:96px}.columns--large>.columns__column{flex-basis:384px}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#0096d6}.distribution__item-box.color-index-critical{fill:#f04b37}.distribution__item-box.color-index-warning{fill:#f0aa3c}.distribution__item-box.color-index-ok{fill:#509137}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#848484}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-6{fill:#0096d6}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-7{fill:#c094bf}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-8{fill:#99d5ef}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-9{fill:#87898b}.distribution__item-box.color-index-graph-5,.distribution__item-box.color-index-graph-10{fill:#b9b8bb}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-4{fill:#e6734b}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-5{fill:#e6c84b}.distribution__item-box.color-index-accent-3,.distribution__item-box.color-index-accent-6{fill:#915591}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-5{fill:#676767}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-6{fill:#ccc}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-7{fill:#e8e8e8}.distribution__item-box.color-index-grey-4,.distribution__item-box.color-index-grey-8{fill:#f2f2f2}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#0096d6}.distribution__item-icons.color-index-critical{stroke:#f04b37}.distribution__item-icons.color-index-warning{stroke:#f0aa3c}.distribution__item-icons.color-index-ok{stroke:#509137}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#848484}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-6{stroke:#0096d6}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-7{stroke:#c094bf}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-8{stroke:#99d5ef}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-9{stroke:#87898b}.distribution__item-icons.color-index-graph-5,.distribution__item-icons.color-index-graph-10{stroke:#b9b8bb}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-5{stroke:#676767}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-6{stroke:#ccc}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-7{stroke:#e8e8e8}.distribution__item-icons.color-index-grey-4,.distribution__item-icons.color-index-grey-8{stroke:#f2f2f2}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-4{stroke:#e6734b}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-5{stroke:#e6c84b}.distribution__item-icons.color-index-accent-3,.distribution__item-icons.color-index-accent-6{stroke:#915591}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;font-family:HPSimplified,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-accent-1,.distribution__label.color-index-accent-2,.distribution__label.color-index-accent-3,.distribution__label.color-index-accent-4,.distribution__label.color-index-accent-5,.distribution__label.color-index-accent-6,.distribution__label.color-index-brand,.distribution__label.color-index-critical,.distribution__label.color-index-disabled,.distribution__label.color-index-graph-1,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-6,.distribution__label.color-index-graph-9,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-5,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-neutral-7,.distribution__label.color-index-neutral-8,.distribution__label.color-index-ok,.distribution__label.color-index-unknown,.distribution__label.color-index-warning{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#0096d6}.distribution__loading-indicator.color-index-critical{stroke:#f04b37}.distribution__loading-indicator.color-index-warning{stroke:#f0aa3c}.distribution__loading-indicator.color-index-ok{stroke:#509137}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#848484}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-6{stroke:#0096d6}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-7{stroke:#c094bf}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-8{stroke:#99d5ef}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-9{stroke:#87898b}.distribution__loading-indicator.color-index-graph-5,.distribution__loading-indicator.color-index-graph-10{stroke:#b9b8bb}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-5{stroke:#676767}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-6{stroke:#ccc}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-7{stroke:#e8e8e8}.distribution__loading-indicator.color-index-grey-4,.distribution__loading-indicator.color-index-grey-8{stroke:#f2f2f2}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-4{stroke:#e6734b}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-5{stroke:#e6c84b}.distribution__loading-indicator.color-index-accent-3,.distribution__loading-indicator.color-index-accent-6{stroke:#915591}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{width:auto;height:auto;max-height:100%;max-width:100%}.grommet.drop{position:absolute;z-index:5;border-radius:0 5px 0 5px;overflow:auto}.grommet.drop:not([class*=background-color-index-]){background-color:hsla(0,0%,97%,.95);border:none;box-shadow:none}.footer{min-height:36px;line-height:36px;width:100%}.footer.box--direction-row>h1,.footer.box--direction-row>h2,.footer.box--direction-row>h3,.footer.box--direction-row>h4{margin-bottom:0}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large{min-height:96px;line-height:96px}.footer--small{min-height:24px;line-height:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative;width:480px;max-width:100%}@media screen and (min-width:45em){.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid rgba(0,0,0,.15);margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field{background-color:transparent;color:hsla(0,0%,100%,.85)}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__label{color:hsla(0,0%,100%,.85)}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0 24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none;padding:0 24px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>textarea{color:#fff}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select{height:24px}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none;padding:0 24px}.form-field__contents>.number-input input[type=number]:focus{padding:0 24px}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid rgba(0,0,0,.15);padding-top:6px}.form-field__contents--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__help{color:hsla(0,0%,100%,.85)}.form-field__error{display:block;float:right;color:#f04b37;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__error{color:hsla(0,0%,100%,.85)}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#f04b37}.form-field--focus{z-index:2;border-color:#99d5ef}.header{min-height:72px;width:100%;margin-bottom:0}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header--large{min-height:96px}.header--large .header__content{line-height:96px}.header--small{min-height:48px}.header--small .header__content{line-height:48px}header.header{font-size:24px;font-size:1.5rem;line-height:inherit}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}.header__container{flex-shrink:0}.header__container--fixed{position:relative}.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){.header__container--fixed .header__wrapper .header{position:fixed}.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}.header__wrapper{height:72px}.header__wrapper--large{height:96px}.header__wrapper--small{height:48px}.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}.header--fixed.header--primary .header__content{position:static;background-color:transparent}.header--flush .header__wrapper{padding-left:0;padding-right:0}h1.heading,h2.heading,h3.heading,h4.heading,h5.heading,h6.heading{margin-bottom:12px;line-height:1}h1.heading--large,h2.heading--large,h3.heading--large,h4.heading--large,h5.heading--large,h6.heading--large{font-size:125%}h1.heading--small,h2.heading--small,h3.heading--small,h4.heading--small,h5.heading--small,h6.heading--small{font-size:75%}h1.heading--strong,h2.heading--strong,h3.heading--strong,h4.heading--strong,h5.heading--strong,h6.heading--strong{font-weight:600}h1.heading--align-start,h2.heading--align-start,h3.heading--align-start,h4.heading--align-start,h5.heading--align-start,h6.heading--align-start{text-align:left}html.rtl h1.heading--align-start,html.rtl h2.heading--align-start,html.rtl h3.heading--align-start,html.rtl h4.heading--align-start,html.rtl h5.heading--align-start,html.rtl h6.heading--align-start{text-align:right}h1.heading--align-center,h2.heading--align-center,h3.heading--align-center,h4.heading--align-center,h5.heading--align-center,h6.heading--align-center{text-align:center}h1.heading--align-right,h2.heading--align-right,h3.heading--align-right,h4.heading--align-right,h5.heading--align-right,h6.heading--align-right{text-align:right}html.rtl h1.heading--align-right,html.rtl h2.heading--align-right,html.rtl h3.heading--align-right,html.rtl h4.heading--align-right,html.rtl h5.heading--align-right,html.rtl h6.heading--align-right{text-align:left}h1.heading--margin-none,h2.heading--margin-none,h3.heading--margin-none,h4.heading--margin-none,h5.heading--margin-none,h6.heading--margin-none{margin-top:0;margin-bottom:0}h1.heading--margin-small,h2.heading--margin-small,h3.heading--margin-small,h4.heading--margin-small,h5.heading--margin-small,h6.heading--margin-small{margin-top:12px;margin-bottom:12px}h1.heading--margin-medium,h2.heading--margin-medium,h3.heading--margin-medium,h4.heading--margin-medium,h5.heading--margin-medium,h6.heading--margin-medium{margin-top:24px;margin-bottom:24px}h1.heading--margin-large,h2.heading--margin-large,h3.heading--margin-large,h4.heading--margin-large,h5.heading--margin-large,h6.heading--margin-large{margin-top:48px;margin-bottom:48px}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1}.headline--small{font-size:30px;font-size:1.875rem;line-height:1}.headline--strong{font-weight:600}.headline--align-start{text-align:left}html.rtl .headline--align-start{text-align:right}.headline--align-center{text-align:center}.headline--align-right{text-align:right}html.rtl .headline--align-right{text-align:left}.headline--margin-none{margin-top:0;margin-bottom:0}.headline--margin-small{margin-top:12px;margin-bottom:12px}.headline--margin-medium{margin-top:24px;margin-bottom:24px}.headline--margin-large{margin-top:48px;margin-bottom:48px}.control-icon{display:inline-block;width:24px;height:24px;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#0096d6}.control-icon.color-index-critical{stroke:#f04b37}.control-icon.color-index-warning{stroke:#f0aa3c}.control-icon.color-index-ok{stroke:#509137}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#848484}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{stroke:#0096d6}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{stroke:#c094bf}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{stroke:#99d5ef}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{stroke:#87898b}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{stroke:#b9b8bb}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{stroke:#676767}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{stroke:#ccc}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{stroke:#e8e8e8}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{stroke:#f2f2f2}.control-icon.color-index-accent-1,.control-icon.color-index-accent-4{stroke:#e6734b}.control-icon.color-index-accent-2,.control-icon.color-index-accent-5{stroke:#e6c84b}.control-icon.color-index-accent-3,.control-icon.color-index-accent-6{stroke:#915591}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#0096d6}.control-icon.color-index-critical{fill:#f04b37}.control-icon.color-index-warning{fill:#f0aa3c}.control-icon.color-index-ok{fill:#509137}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#848484}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{fill:#0096d6}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{fill:#c094bf}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{fill:#99d5ef}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{fill:#87898b}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{fill:#b9b8bb}.control-icon.color-index-accent-1,.control-icon.color-index-accent-4{fill:#e6734b}.control-icon.color-index-accent-2,.control-icon.color-index-accent-5{fill:#e6c84b}.control-icon.color-index-accent-3,.control-icon.color-index-accent-6{fill:#915591}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{fill:#676767}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{fill:#ccc}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{fill:#e8e8e8}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{fill:#f2f2f2}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover .control-icon,.button:hover .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.anchor.anchor--disabled:hover .control-icon,.button.button--disabled:hover .control-icon{fill:#999;stroke:#999}.control-icon__badge circle{fill:#e6734b}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .control-icon:not([class*=color-index]){fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.control-icon--huge{width:288px;height:288px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#848484}.status-icon-critical .status-icon__base{fill:#f04b37}.status-icon-warning .status-icon__base{fill:#f0aa3c}.status-icon-ok .status-icon__base{fill:#509137}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#848484}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#848484;stroke:#848484}.status-icon--large{width:48px;height:48px}.status-icon--huge{width:288px;height:288px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#0096d6}.logo-icon.color-index-critical{stroke:#f04b37}.logo-icon.color-index-warning{stroke:#f0aa3c}.logo-icon.color-index-ok{stroke:#509137}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#848484}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-6{stroke:#0096d6}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-7{stroke:#c094bf}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-8{stroke:#99d5ef}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-9{stroke:#87898b}.logo-icon.color-index-graph-5,.logo-icon.color-index-graph-10{stroke:#b9b8bb}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-5{stroke:#676767}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-6{stroke:#ccc}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-7{stroke:#e8e8e8}.logo-icon.color-index-grey-4,.logo-icon.color-index-grey-8{stroke:#f2f2f2}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-4{stroke:#e6734b}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-5{stroke:#e6c84b}.logo-icon.color-index-accent-3,.logo-icon.color-index-accent-6{stroke:#915591}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.logo-icon--huge{width:288px;height:288px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--thumb{width:48px;height:48px;flex:0 0 auto;object-fit:cover}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}.label{font-size:19px;font-size:1.1875rem;line-height:1.26316;margin-bottom:24px}.label--uppercase{text-transform:uppercase;letter-spacing:.2em}.label--align-start{text-align:left}html.rtl .label--align-start{text-align:right}.label--align-center{text-align:center}.label--align-right{text-align:right}html.rtl .label--align-right{text-align:left}.label--margin-none{margin-top:0;margin-bottom:0}.label--margin-small{margin-top:12px;margin-bottom:12px}.label--margin-medium{margin-top:24px;margin-bottom:24px}.label--margin-large{margin-top:48px;margin-bottom:48px}.grommet.layer{position:relative;z-index:4;background-color:rgba(0,0,0,.5);height:100vh}@media screen and (min-width:45em){.grommet.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.grommet.layer:not(.layer--hidden)+.app{display:none}}.grommet.layer .layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.grommet.layer .layer__container{padding:0 24px;min-height:100vh;min-width:100vw}}@media screen and (min-width:45em){.grommet.layer .layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:0 5px 0 5px;box-shadow:none}}.grommet.layer .layer__closer{position:absolute;top:0;right:0;z-index:1}.grommet.rtl .grommet.layer .layer__closer{right:auto;left:0}.grommet.layer.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.grommet.layer.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0}@media screen and (min-width:45em){.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0}@media screen and (min-width:45em){.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}.grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.grommet.layer.layer--hidden{left:-100vw;right:100vw;z-index:-1}.grommet.layer.layer--hidden.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.grommet.layer.layer--hidden{display:none}}@media screen and (min-width:45em){.grommet.layer.layer--hidden.layer--peek{left:0;z-index:4}.grommet.layer.layer--hidden.layer--peek.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #0096d6;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item:focus{outline:1px solid #99d5ef}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:hsla(0,0%,87%,.5)}.list .list-item--selected{background-color:#daf1fb;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#daf1fb;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:hsla(0,0%,87%,.5);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0;line-height:24px}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;min-width:72px;text-align:left}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#0096d6}.legend__item svg.legend__item-swatch.color-index-critical{stroke:#f04b37}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#f0aa3c}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#509137}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#848484}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#0096d6}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#c094bf}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#99d5ef}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-9{stroke:#87898b}.legend__item svg.legend__item-swatch.color-index-graph-5,.legend__item svg.legend__item-swatch.color-index-graph-10{stroke:#b9b8bb}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#676767}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#ccc}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-7{stroke:#e8e8e8}.legend__item svg.legend__item-swatch.color-index-grey-4,.legend__item svg.legend__item-swatch.color-index-grey-8{stroke:#f2f2f2}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#e6734b}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-5{stroke:#e6c84b}.legend__item svg.legend__item-swatch.color-index-accent-3,.legend__item svg.legend__item-swatch.color-index-accent-6{stroke:#915591}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--clickable{cursor:pointer}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .legend__item--active{color:#fff}li.legend__total{margin-left:24px}html.rtl li.legend__total{margin-left:0;margin-right:24px}li.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted rgba(0,0,0,.15)}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;padding:24px;background-color:#fff;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%}}.login-form__header{text-align:center}.login-form fieldset{margin-bottom:0}.login-form__submit{width:100%;max-width:none}.login-form--align-start .login-form__header{text-align:left}html.rtl .login-form--align-start .login-form__header{text-align:right}.login-form--align-start .login-form__submit{width:auto}.login-form--align-end .login-form__header{text-align:right}html.rtl .login-form--align-end .login-form__header{text-align:left}.login-form--align-end .login-form__submit{width:auto}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid rgba(0,0,0,.15);margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:hsla(0,0%,87%,.5)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:1.26316}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #99d5ef;box-shadow:0 0 1px 1px #99d5ef;pointer-events:none}.menu>*{flex:0 0 auto}.menu .anchor,.menu a:not(.button){text-decoration:none}.menu .anchor:hover,.menu a:not(.button):hover{text-decoration:none;color:#0076a8}.menu .anchor.active,.menu a:not(.button).active{color:#0076a8}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu .anchor.active,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu a:not(.button).active{color:#fff}.menu.menu--controlled{display:inline-block;cursor:pointer}.menu__control:focus:not(.button--disabled){box-shadow:inset 0 0 1px 2px #99d5ef}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover .menu__control-label{color:#fff}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}@media screen and (min-width:45em){.menu__control.menu--labelled .control-icon{transition:none}}.menu__drop{font-size:19px;font-size:1.1875rem;line-height:1.26316;max-height:100vh}.menu__drop .anchor,.menu__drop a:not(.anchor--disabled),.menu__drop a:not(.anchor--disabled):hover{text-decoration:none}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:hsla(0,0%,87%,.5)}.menu__drop .menu__control{text-align:left}.grommet.rtl .menu__drop .menu__control{text-align:right}.menu__drop .menu__label{padding:12px 24px;font-weight:600}.menu__drop.menu__drop--align-right{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right{text-align:left}.menu__drop.menu__drop--align-right .menu__control{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right .menu__control,.menu__drop.menu__drop--align-right .menu__contents{text-align:left}.grommet.rtl .menu__drop.menu__drop--align-right .menu__contents{text-align:right}.menu__drop.menu__drop--small{font-size:16px;font-size:1rem;line-height:1.5}.menu__drop.menu__drop--large{font-size:24px;font-size:1.5rem;line-height:1}.menu--inline.menu--row{line-height:48px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.box--direction-row.box--responsive>*{margin-right:0}.grommet.rtl .menu--inline.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.box--direction-column a:not(.button){margin-bottom:6px}.menu--inline.menu--small{font-size:16px;font-size:1rem;line-height:inherit}.menu--inline.menu--large{font-size:24px;font-size:1.5rem;line-height:inherit}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:4px;border-color:transparent;border-right-style:solid}.grommet.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:hsla(0,0%,87%,.5)}.menu--primary>a:not(.button).active{border-color:#0096d6}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu:not(.box--direction-row)>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15);border:none}.menu--inline.menu:not(.box--direction-row) .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu:not(.box--direction-row) a,.menu__drop a{text-decoration:none}.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu:not(.box--direction-row).box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu:not(.box--direction-row).box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15)}.menu--inline.menu:not(.box--direction-row).menu--small>a,.menu__drop.menu--small>a{padding:6px 0}.menu--inline.menu:not(.box--direction-row).menu--large>a,.menu__drop.menu--large>a{padding:24px 0}@media screen and (max-width:44.9375em){.menu--inline.menu:not(.box--direction-row).box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu:not(.box--direction-row).box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu:not(.box--direction-row).box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #99d5ef}.meter__graphic text{fill:#777}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter--legend-bottom.meter--legend-align-center .meter__legend{text-align:center}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter--active .meter__values .meter__slice:hover,.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#0096d6}.meter--bar .meter__values .meter__slice.color-index-critical{stroke:#f04b37}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#f0aa3c}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#509137}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#848484}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#0096d6}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#c094bf}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#99d5ef}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-9{stroke:#87898b}.meter--bar .meter__values .meter__slice.color-index-graph-5,.meter--bar .meter__values .meter__slice.color-index-graph-10{stroke:#b9b8bb}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#676767}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#ccc}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-7{stroke:#e8e8e8}.meter--bar .meter__values .meter__slice.color-index-grey-4,.meter--bar .meter__values .meter__slice.color-index-grey-8{stroke:#f2f2f2}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#e6734b}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-5{stroke:#e6c84b}.meter--bar .meter__values .meter__slice.color-index-accent-3,.meter--bar .meter__values .meter__slice.color-index-accent-6{stroke:#915591}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(0,150,214,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-critical{stroke:rgba(240,75,55,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(240,170,60,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(80,145,55,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,52%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(0,150,214,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(192,148,191,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(153,213,239,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-9,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-9{stroke:hsla(210,2%,54%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__thresholds .meter__slice.color-index-graph-10,.meter--bar .meter__tracks .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(260,2%,73%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(230,115,75,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-5,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-5{stroke:rgba(230,200,75,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__thresholds .meter__slice.color-index-accent-6,.meter--bar .meter__tracks .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-6{stroke:rgba(145,85,145,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{width:24px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{width:36px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{width:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px;width:36px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{width:72px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{width:108px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{width:144px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic,.meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic{height:12px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{height:24px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{height:36px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{height:48px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large{line-height:36px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:36px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{height:72px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{height:108px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{height:144px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#0096d6}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-critical{stroke:#f04b37}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#f0aa3c}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#509137}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#848484}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#0096d6}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#c094bf}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#99d5ef}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-9,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-9,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-9{stroke:#87898b}.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--arc .meter__values .meter__slice.color-index-graph-10,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-10,.meter--spiral .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-10{stroke:#b9b8bb}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#676767}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#ccc}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-7,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-7,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-7{stroke:#e8e8e8}.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--arc .meter__values .meter__slice.color-index-grey-8,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-8,.meter--spiral .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-8{stroke:#f2f2f2}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#e6734b}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-5,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-5,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-5{stroke:#e6c84b}.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--arc .meter__values .meter__slice.color-index-accent-6,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-6,.meter--spiral .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-6{stroke:#915591}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(0,150,214,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-critical{stroke:rgba(240,75,55,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(240,170,60,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(80,145,55,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,52%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(0,150,214,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(192,148,191,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(153,213,239,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-9,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-9,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-9,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-9,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-9{stroke:hsla(210,2%,54%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__thresholds .meter__slice.color-index-graph-10,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-10,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-10,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-10,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(260,2%,73%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(230,115,75,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-5,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-5,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-5,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-5,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-5,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-5{stroke:rgba(230,200,75,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__thresholds .meter__slice.color-index-accent-6,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-6,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-6,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-6,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-6,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-6{stroke:rgba(145,85,145,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification:not(.notification--disabled){cursor:pointer}.notification:not(.notification--disabled):hover{z-index:1;box-shadow:0 0 0 2px #0096d6}.notification--status-critical .notification__status .status-icon__base{fill:#fff}.notification--status-critical .notification__status .status-icon__detail{stroke:#f04b37;fill:#f04b37}.notification--status-critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-critical:not(.notification--disabled):hover{box-shadow:0 0 0 2px #f04b37}.notification--status-warning .notification__status .status-icon__base{fill:#fff}.notification--status-warning .notification__status .status-icon__detail{stroke:#f0aa3c;fill:#f0aa3c}.notification--status-warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-warning:not(.notification--disabled):hover{box-shadow:0 0 0 2px #f0aa3c}.notification--status-ok .notification__status .status-icon__base{fill:#fff}.notification--status-ok .notification__status .status-icon__detail{stroke:#509137;fill:#509137}.notification--status-ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-ok:not(.notification--disabled):hover{box-shadow:0 0 0 2px #509137}.notification--status-unknown .notification__status .status-icon__base{fill:#fff}.notification--status-unknown .notification__status .status-icon__detail{stroke:#848484;fill:#848484}.notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-unknown:not(.notification--disabled):hover{box-shadow:0 0 0 2px #848484}.notification--status-disabled .notification__status .status-icon__base{fill:#fff}.notification--status-disabled .notification__status .status-icon__detail{stroke:#848484;fill:#848484}.notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-disabled:not(.notification--disabled):hover{box-shadow:0 0 0 2px #848484}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:0 5px 0 5px}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input__input:invalid{box-shadow:none}.number-input__input::-ms-clear{display:none}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.grommet .paragraph--align-start{text-align:left}html.rtl .grommet .paragraph--align-start{text-align:right}.grommet .paragraph--align-center{text-align:center}.grommet .paragraph--align-right{text-align:right}html.rtl .grommet .paragraph--align-right{text-align:left}.grommet .paragraph--margin-none{margin-top:0;margin-bottom:0}.grommet .paragraph--margin-small{margin-top:12px;margin-bottom:12px}.grommet .paragraph--margin-medium{margin-top:24px;margin-bottom:24px}.grommet .paragraph--margin-large{margin-top:48px;margin-bottom:48px}.grommet .paragraph.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.grommet .paragraph.paragraph--small a{text-decoration:none}.grommet .paragraph.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.grommet .paragraph.paragraph--large a{color:#0096d6;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#0096d6}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#0096d6;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#0076a8;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__control{border-color:hsla(0,0%,100%,.7)}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__label{color:hsla(0,0%,100%,.85)}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #99d5ef;box-shadow:0 0 1px 1px #99d5ef}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit;line-height:inherit}.search__input::-ms-clear{display:none}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}@media screen and (max-width:44.9375em){.search__drop .search__suggestion{width:calc(100vw - 72px)}}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search__drop-control{vertical-align:top;height:48px}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-left:11px;padding-right:47px;border-radius:0;-webkit-appearance:none}.search--inline .search__input:focus{padding-left:10px;padding-right:46px}html.rtl .search--inline .search__input{padding-right:11px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:11px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small .search__input{font-size:19px;font-size:1.1875rem;line-height:inherit;padding:4px 18px;padding-right:23px}.search--small .search__input:focus{padding:3px 17px;padding-right:22px}.search--large .search__input{font-size:54px;font-size:3.375rem;line-height:normal;padding:12px 24px;padding-right:72px}.search--large .search__input:focus{padding:11px 71px;padding-left:23px}@media screen and (max-width:44.9375em){.search--large .search__input:focus{padding:10px 22px;padding-right:46px}}@media screen and (max-width:44.9375em){.search--large .search__input{font-size:inherit;padding:11px 23px;padding-right:47px;line-height:1.5}}.search--large .control-icon-search{right:24px;width:48px;height:48px}@media screen and (max-width:44.9375em){.search--large .control-icon-search{right:12px;width:24px;height:24px}}@media screen and (min-width:45em){.search--large .control-icon-search{transition:none}}.search--icon-align-start.search--inline .search__input{padding-left:47px;padding-right:23px}.search--icon-align-start.search--inline .search__input:focus{padding-left:46px;padding-right:23px}.search--icon-align-start.search--inline .control-icon-search{left:12px}.search--icon-align-start.search--large .search__input{padding-left:72px;padding-right:24px}.search--icon-align-start.search--large .search__input:focus{padding-left:71px;padding-right:23px}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input:focus{padding:10px 22px;padding-left:46px}}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input{padding:11px 23px;padding-left:47px}}.search--fill{width:100%;max-width:none;flex-grow:1}.search-input{position:relative;display:inline-block}.grommet .search-input__input,.search-input__input{width:100%;height:100%;display:block;padding-right:48px}.grommet .search-input__input:focus,.search-input__input:focus{padding-right:47px}.grommet .search-input__input::-ms-clear,.search-input__input::-ms-clear{display:none}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:6px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#0096d6}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:0 5px 0 5px}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid rgba(0,0,0,.15)}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1 1 auto;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden;position:absolute}.tab{padding:0 12px}.tabs--justify-end .tab:first-of-type,.tabs--justify-start .tab:first-of-type{padding-left:0}.tabs--justify-end .tab:last-of-type,.tabs--justify-start .tab:last-of-type{padding-right:0}@media screen and (max-width:44.9375em){.tabs--responsive .tab:first-of-type,.tabs--responsive .tab:last-of-type{padding-left:12px;padding-right:12px}}.tab a{display:inline-block}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus:not(tab--active .tab__link) .tab__label{border-color:rgba(0,0,0,.15)}.tab__label{display:inline-block;cursor:pointer;padding-bottom:10px;color:#777;border-bottom:4px solid transparent}.tab--active .tab__label,.tab--active .tab__link:hover .tab__label{color:#000;border-color:#000}.tab:hover .tab__label{border-color:rgba(0,0,0,.15)}.tabs{margin:12px 0;padding:0;display:flex;flex-wrap:wrap;align-items:center;list-style:none;border-bottom:1px solid rgba(0,0,0,.15)}.tabs--justify-center{justify-content:center}.tabs--justify-start{justify-content:flex-start}.tabs--justify-end{justify-content:flex-end}@media screen and (max-width:44.9375em){.tabs--justify-center.tabs--responsive,.tabs--justify-end.tabs--responsive,.tabs--justify-start.tabs--responsive{flex-direction:column;text-align:center}}.tabs+div:focus{outline:none}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid rgba(0,0,0,.15)}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--scrollable .table__table thead{visibility:hidden}.table--scrollable .table__table th{border-bottom:none}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#daf1fb;color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:hsla(0,0%,87%,.5);color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.table--small thead{display:none}.table--small td{display:block}.table--small td:before{font-weight:100;font-size:19px;font-size:1.1875rem;line-height:24px;content:attr(data-th);display:block;padding-right:12px}.table--small tr{border-bottom:1px solid rgba(0,0,0,.15)}.table--small td,.table--small th{padding-left:24px}.tag{padding:6px 22px;background-color:transparent;border:2px solid #0096d6;border-radius:0 5px 0 5px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px;border-color:rgba(51,51,51,.6);margin:0 12px 12px 0;position:relative;opacity:.7}.tag:focus:not(.button--disabled){border-color:#99d5ef;box-shadow:0 0 1px 1px #99d5ef}@media screen and (min-width:45em){.tag{transition:.1s ease-in-out}}.tag .anchor:hover:not(.anchor--disabled),.tag a,.tag a:hover{color:#333;text-decoration:none}.tag:hover{box-shadow:0 0 0 2px rgba(51,51,51,.6);opacity:1}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:rgba(0,0,0,.15);color:#fff}.tiles{width:100%;padding:12px}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles>.tile{flex-grow:0;flex-shrink:0}@media screen and (min-width:45em){.tiles>.tile{flex-basis:192px}}.tiles:not(.tiles--flush)>.tile{margin:12px}.tiles:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#daf1fb;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}@media screen and (min-width:45em){.tiles--small>.tile{flex-basis:96px}}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}.tiles:focus{outline:1px solid #99d5ef}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#daf1fb;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title span{overflow:hidden;text-overflow:ellipsis}.title img,.title svg{max-width:576px;flex:0 0 auto}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#0096d6;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid rgba(0,0,0,.15)}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(0,150,214,.8)}.video__control.button--primary:hover{background-color:#0096d6}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:hsla(0,0%,100%,.85);background-color:hsla(0,0%,40%,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid hsla(0,0%,100%,.7);text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#0096d6}.video--titled .video__summary{background-color:hsla(0,0%,40%,.7);color:hsla(0,0%,100%,.85);border-radius:0 5px 0 5px;font-size:19px;font-size:1.1875rem;line-height:1.26316}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both}.button--accent{background-color:#e6734b;color:hsla(0,0%,100%,.85)}.button:not(.button--disabled):hover{border-color:#00608a}.button:not(.button--disabled):active{border-color:#004f70}.button:not(.button--disabled).button--primary:hover{border-color:#00608a;background-color:#00608a}.button:not(.button--disabled).button--primary:active{border-color:#004f70;background-color:#004f70}.button:not(.button--disabled).button--secondary:hover{border-color:hsla(0,0%,5%,.6)}.button:not(.button--disabled).button--secondary:active{border-color:rgba(0,0,0,.6)}.button:not(.button--disabled).button--accent:hover{border-color:#c9481c;background-color:#c9481c}.button:not(.button--disabled).button--accent:active{border-color:#b24019;background-color:#b24019}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled):hover{border-color:hsla(0,0%,85%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled).button--primary:hover{border-color:#00608a;background-color:#00608a}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--disabled).button--accent:hover{border-color:#c9481c} \ No newline at end of file diff --git a/css/grommet.css b/css/grommet.css index 6a01b9f..bcf14e3 100644 --- a/css/grommet.css +++ b/css/grommet.css @@ -420,24 +420,6 @@ ins { ins { border-bottom: 1px solid; } -/*------------------------------------* #BOX-SIZING -\*------------------------------------*/ -/** - * Set the global `box-sizing` state to `border-box`. - * - * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice - * paulirish.com/2012/box-sizing-border-box-ftw - */ -html { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } - -*, *:before, *:after { - -webkit-box-sizing: inherit; - -moz-box-sizing: inherit; - box-sizing: inherit; } - /*------------------------------------* #SHARED \*------------------------------------*/ /** @@ -572,116 +554,111 @@ img[height] { /* [2] */ max-width: none; } -html, +.grommet, .brand-font { font-family: "Source Sans Pro", Arial, sans-serif; } -html, -body { +.grommet { font-size: 16px; font-size: 1rem; line-height: 24px; } - -h1 { - font-size: 48px; - font-size: 3rem; - line-height: 1.125; } - -h2 { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -h3 { - font-size: 24px; - font-size: 1.5rem; - line-height: 1.25; } - -h4 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h5 { - font-size: 18px; - font-size: 1.125rem; - line-height: 1.33333; } - -h1, -h2, -h3, -h4, -h5 { - font-weight: 100; - max-width: 100%; } - h1.header--strong, - h1 > strong, - h2.header--strong, - h2 > strong, - h3.header--strong, - h3 > strong, - h4.header--strong, - h4 > strong, - h5.header--strong, - h5 > strong { - font-weight: 600; } - h1 a, - h1 a.anchor, - h2 a, - h2 a.anchor, - h3 a, - h3 a.anchor, - h4 a, - h4 a.anchor, - h5 a, - h5 a.anchor { - color: inherit; - text-decoration: none; } - h1 a:hover, - h1 a.anchor:hover, - h2 a:hover, - h2 a.anchor:hover, - h3 a:hover, - h3 a.anchor:hover, - h4 a:hover, - h4 a.anchor:hover, - h5 a:hover, - h5 a.anchor:hover { + .grommet h1 { + font-size: 48px; + font-size: 3rem; + line-height: 1.125; } + .grommet h2 { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet h3 { + font-size: 24px; + font-size: 1.5rem; + line-height: 1.25; } + .grommet h4 { + font-size: 18px; + font-size: 1.125rem; + line-height: 1.33333; } + .grommet h5 { + font-size: 17px; + font-size: 1.0625rem; + line-height: 1.41176; } + .grommet h6 { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .grommet h1, + .grommet h2, + .grommet h3, + .grommet h4, + .grommet h5, + .grommet h6 { + font-weight: 100; + max-width: 100%; } + .grommet h1.header--strong, + .grommet h1 > strong, + .grommet h2.header--strong, + .grommet h2 > strong, + .grommet h3.header--strong, + .grommet h3 > strong, + .grommet h4.header--strong, + .grommet h4 > strong, + .grommet h5.header--strong, + .grommet h5 > strong, + .grommet h6.header--strong, + .grommet h6 > strong { + font-weight: 600; } + .grommet h1 a, + .grommet h1 a.anchor, + .grommet h2 a, + .grommet h2 a.anchor, + .grommet h3 a, + .grommet h3 a.anchor, + .grommet h4 a, + .grommet h4 a.anchor, + .grommet h5 a, + .grommet h5 a.anchor, + .grommet h6 a, + .grommet h6 a.anchor { + color: inherit; text-decoration: none; } - -p, -dd, -li { - max-width: 576px; - margin-left: 0px; } - -dd { - margin-bottom: 12px; } - -p { - margin-top: 24px; - margin-bottom: 24px; } - -blockquote { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; } - -b, -strong { - font-weight: 600; } - -code.hljs { - border: 1px solid #ccc; } - -.large-number-font { - font-family: "Source Sans Pro", Arial, sans-serif; } - -.secondary { - color: #777; } - -.error { - color: #FF856B; } + .grommet h1 a:hover, + .grommet h1 a.anchor:hover, + .grommet h2 a:hover, + .grommet h2 a.anchor:hover, + .grommet h3 a:hover, + .grommet h3 a.anchor:hover, + .grommet h4 a:hover, + .grommet h4 a.anchor:hover, + .grommet h5 a:hover, + .grommet h5 a.anchor:hover, + .grommet h6 a:hover, + .grommet h6 a.anchor:hover { + text-decoration: none; } + .grommet p, + .grommet dd, + .grommet li { + max-width: 576px; + margin-left: 0px; } + .grommet dd { + margin-bottom: 12px; } + .grommet p { + margin-top: 24px; + margin-bottom: 24px; } + .grommet blockquote { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; } + .grommet b, + .grommet strong { + font-weight: 600; } + .grommet code.hljs { + border: 1px solid rgba(0, 0, 0, 0.15); } + .grommet .large-number-font { + font-family: "Source Sans Pro", Arial, sans-serif; } + .grommet .secondary { + color: #777; } + .grommet .error { + color: #FF856B; } @-webkit-keyframes fadein { from { @@ -695,69 +672,68 @@ code.hljs { to { opacity: 1; } } -input, -select, -textarea { +.grommet input, +.grommet select, +.grommet textarea { font-size: 16px; font-size: 1rem; line-height: 1.5; padding: 11px 23px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 4px; outline: none; - margin-right: 12px; background-color: transparent; } - html.rtl input, html.rtl - select, html.rtl - textarea { + .grommet.rtl .grommet input, .grommet.rtl + .grommet select, .grommet.rtl + .grommet textarea { margin-right: 0; margin-left: 12px; } - input:focus, - select:focus, - textarea:focus { + .grommet input:focus, + .grommet select:focus, + .grommet textarea:focus { padding: 10px 22px; border-width: 2px; border-color: #c3a4fe; } - input::-moz-focus-inner, - select::-moz-focus-inner, - textarea::-moz-focus-inner { + .grommet input::-moz-focus-inner, + .grommet select::-moz-focus-inner, + .grommet textarea::-moz-focus-inner { border: none; outline: none; } - input::-webkit-input-placeholder, - select::-webkit-input-placeholder, - textarea::-webkit-input-placeholder { + .grommet input::-webkit-input-placeholder, + .grommet select::-webkit-input-placeholder, + .grommet textarea::-webkit-input-placeholder { color: #aaa; } - input::-moz-placeholder, - select::-moz-placeholder, - textarea::-moz-placeholder { + .grommet input::-moz-placeholder, + .grommet select::-moz-placeholder, + .grommet textarea::-moz-placeholder { color: #aaa; } - input:-ms-input-placeholder, - select:-ms-input-placeholder, - textarea:-ms-input-placeholder { + .grommet input:-ms-input-placeholder, + .grommet select:-ms-input-placeholder, + .grommet textarea:-ms-input-placeholder { color: #aaa; } - input.error, - select.error, - textarea.error { + .grommet input.error, + .grommet select.error, + .grommet textarea.error { border-color: #FF856B; } -input[type="button"], -input[type="submit"] { +.grommet input[type="button"], +.grommet input[type="submit"] { text-align: center; line-height: inherit; } -select { - border-color: #ccc; - padding-right: 24px; +.grommet select { + border-color: rgba(0, 0, 0, 0.15); + padding-right: 48px; -webkit-appearance: none; -moz-appearance: none; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px; cursor: pointer; } - select::-moz-focus-inner { + .grommet select::-moz-focus-inner { border: none; } - select.plain { + .grommet select.plain { border: none; } -input[type=range] { +.grommet input[type=range] { position: relative; -webkit-appearance: none; border-color: transparent; @@ -765,26 +741,26 @@ input[type=range] { padding: 0px; cursor: pointer; overflow-x: hidden; } - input[type=range]:focus { + .grommet input[type=range]:focus { outline: none; } - input[type=range]::-moz-focus-inner { + .grommet input[type=range]::-moz-focus-inner { border: none; } - input[type=range]::-moz-focus-outer { + .grommet input[type=range]::-moz-focus-outer { border: none; } - input[type=range]::-webkit-slider-runnable-track { + .grommet input[type=range]::-webkit-slider-runnable-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-runnable-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-runnable-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-webkit-slider-thumb { + .grommet input[type=range]::-webkit-slider-thumb { position: relative; height: 24px; width: 24px; overflow: visible; -webkit-appearance: none; margin-top: -11px; } - input[type=range]::-webkit-slider-thumb:before { + .grommet input[type=range]::-webkit-slider-thumb:before { content: ""; position: absolute; left: -3000px; @@ -793,9 +769,9 @@ input[type=range] { bottom: 9px; background-color: #8C50FF; pointer-events: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:before { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:before { background-color: #fff; } - input[type=range]::-webkit-slider-thumb:after { + .grommet input[type=range]::-webkit-slider-thumb:after { content: ""; position: absolute; border: 2px solid #8C50FF; @@ -804,22 +780,22 @@ input[type=range] { border-radius: 24px; background-color: #fff; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-webkit-slider-thumb:after { background-color: transparent; border-color: #fff; } - input[type=range]:hover::-webkit-slider-thumb:after { + .grommet input[type=range]:hover::-webkit-slider-thumb:after { content: ""; border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-webkit-slider-thumb:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-webkit-slider-thumb:after { background-color: #fff; border-color: #fff; } - input[type=range]::-moz-range-track { + .grommet input[type=range]::-moz-range-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-moz-range-thumb { + .grommet input[type=range]::-moz-range-thumb { position: relative; height: 24px; width: 24px; @@ -829,33 +805,33 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-moz-range-thumb { border-color: #fff; background-color: transparent; } - input[type=range]::hover::-moz-range-thumb { + .grommet input[type=range]::hover::-moz-range-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::hover::-moz-range-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::hover::-moz-range-thumb { border-color: #fff; background-color: #fff; } - input[type=range]::-ms-track { + .grommet input[type=range]::-ms-track { width: 100%; height: 2px; background-color: rgba(51, 51, 51, 0.2); border-color: transparent; color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-track { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-track { background-color: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-fill-lower { + .grommet input[type=range]::-ms-fill-lower { background: #8C50FF; border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-lower { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-lower { background: #fff; } - input[type=range]::-ms-fill-upper { + .grommet input[type=range]::-ms-fill-upper { background: rgba(51, 51, 51, 0.2); border-color: transparent; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-fill-upper { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-fill-upper { background: rgba(255, 255, 255, 0.1); } - input[type=range]::-ms-thumb { + .grommet input[type=range]::-ms-thumb { position: relative; height: 24px; width: 24px; @@ -865,25 +841,27 @@ input[type=range] { width: 20px; border-radius: 24px; background-color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]::-ms-thumb { border-color: #fff; } - input[type=range]:hover::-ms-thumb { + .grommet input[type=range]:hover::-ms-thumb { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) input[type=range]:hover::-ms-thumb { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .grommet input[type=range]:hover::-ms-thumb { border-color: #fff; background-color: #fff; } -html.rtl, -body.rtl { - direction: rtl; } - @media screen and (min-width: 45em) { - html, - body { + html.grommet { height: 100%; width: 100%; overflow: visible; } } +.grommet { + box-sizing: border-box; } + .grommet.rtl { + direction: rtl; } + .grommet * { + box-sizing: inherit; } + /*------------------------------------* #LIST-BARE \*------------------------------------*/ /** @@ -894,114 +872,109 @@ body.rtl { padding: 0; list-style: none; } -a, +.grommet a:not(.anchor), .anchor { color: #8C50FF; text-decoration: none; cursor: pointer; } - a:visited, + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button, + .anchor.plain .grommet a:not(.anchor).button, .grommet a:not(.anchor).plain + .anchor.button, + .anchor.plain + .anchor.button { + text-decoration: none; } + .grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover, + .anchor.plain .grommet a:not(.anchor).button:hover, .grommet a:not(.anchor).plain + .anchor.button:hover, + .anchor.plain + .anchor.button:hover { + text-decoration: none; } + .grommet a:not(.anchor):visited, .anchor:visited { color: #8C50FF; } - a.active, + .grommet a:not(.anchor).active, .anchor.active { color: #333; } - a:hover:not(.anchor--disabled), - .anchor:hover:not(.anchor--disabled) { - text-decoration: underline; - color: #6e22ff; } - a__icon, - .anchor__icon { - display: inline-block; - padding: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button) .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled), - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor:hover:not(.anchor--disabled) .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu - .anchor:not(.button):hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a.anchor--primary, - .anchor.anchor--primary { - font-size: 19px; - font-size: 1.1875rem; - line-height: 24px; - font-weight: 600; - color: #8C50FF; - text-decoration: none; } - a.anchor--primary .control-icon, - .anchor.anchor--primary .control-icon { - stroke: #8C50FF; - margin-right: 12px; } - html.rtl a.anchor--primary .control-icon, html.rtl - .anchor.anchor--primary .control-icon { - margin-right: 0; - margin-left: 12px; } - a.anchor--primary > span, - .anchor.anchor--primary > span { - vertical-align: middle; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon { - transform: translateX(3px); - stroke: #8C50FF; } - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - a.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon path, - .anchor.anchor--primary:hover:not(.anchor--disabled) > .control-icon polyline { - stroke-width: 3px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled), [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon { - fill: #fff; - stroke: #fff; } - a--disabled, - .anchor--disabled { - opacity: 0.3; + .grommet a:not(.anchor):hover, + .anchor:hover { + color: #6e22ff; + text-decoration: underline; } + +.anchor--disabled:hover { + color: #8C50FF; } + +.anchor__icon { + display: inline-block; + padding: 12px; } + +.anchor--primary, +.anchor--icon-label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + text-decoration: none; } + .anchor--primary .control-icon, + .anchor--icon-label .control-icon { + vertical-align: middle; + margin-right: 12px; } + html.rtl .anchor--primary .control-icon, html.rtl + .anchor--icon-label .control-icon { + margin-right: 0; + margin-left: 12px; } + .anchor--primary > span, + .anchor--icon-label > span { + vertical-align: middle; } + +.anchor--reverse .control-icon { + margin-right: 0; + margin-left: 12px; } + +.anchor--primary { + color: #8C50FF; } + .anchor--primary .control-icon { + stroke: #8C50FF; } + .anchor--primary:hover .control-icon { + stroke: #8C50FF; + transform: translateX(3px); } + .anchor--primary:hover .control-icon path, + .anchor--primary:hover .control-icon polyline { + stroke-width: 3px; } + .anchor--primary.anchor--disabled .control-icon { + transform: none; } + +.anchor--disabled { + opacity: 0.3; + cursor: default; } + .anchor--disabled .control-icon { cursor: default; } - a--disabled .control-icon, - .anchor--disabled .control-icon { - cursor: default; } -#loading { - position: absolute; - width: 100%; - height: 100%; - background-color: #ddd; - text-align: center; - padding-top: 100px; - font-size: 48px; - color: #ccc; - font-style: italic; } +.anchor--icon { + display: inline-block; } + +.grommet [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a { + color: rgba(255, 255, 255, 0.85); } + .grommet [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover { + color: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover .control-icon { + fill: #fff; + stroke: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor.anchor--disabled:hover .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } @media screen and (min-width: 45em) { - .app { + .grommet.app { position: absolute; top: 0px; bottom: 0px; @@ -1009,10 +982,10 @@ a, right: 0px; overflow: auto; } } -.app--inline { +.grommet.app--inline { position: relative; } -.app--centered > .split { +.grommet.app--centered > .split { width: 100%; max-width: 960px; margin-left: auto; @@ -1063,7 +1036,7 @@ a, .article > * { flex: 0 0 auto; } -article:not(.article) { +.grommet article:not(.article) { width: 100%; } .attribute { @@ -1084,38 +1057,6 @@ article:not(.article) { background-position: center center; background-size: cover; background-repeat: no-repeat; } - .box__texture { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: -1; - overflow: hidden; } - .box__container { - padding-left: 24px; - padding-right: 24px; } - .box__container--full { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full { - width: calc(100vw - 48px); } - .box__container--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box__container--full-horizontal { - width: calc(100vw - 48px); } - .app--centered .box__container > .box { - width: 100%; - max-width: 960px; - margin-left: auto; - margin-right: auto; } - @media screen and (max-width: 44.9375em) { - .app--centered .box__container > .box { - padding-left: 0px; - padding-right: 0px; } } - .box--wrap { - flex-wrap: wrap; } .box--pad-none { padding: 0px; } .box--pad-small { @@ -1148,183 +1089,258 @@ article:not(.article) { .box--pad-vertical-large { padding-top: 48px; padding-bottom: 48px; } - .box--full { - position: relative; - max-width: 100%; - width: 100vw; - min-height: 100vh; - height: 100%; } - .layer__container .box--full { - width: calc(100vw - 48px); } - .box--full-horizontal { - max-width: 100%; - width: 100vw; } - .layer__container .box--full-horizontal { - width: calc(100vw - 48px); } - .box--full-vertical { - min-height: 100vh; } - .box--direction-row { - flex-direction: row; } - .box--direction-row.box--reverse { - flex-direction: row-reverse; } - .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 12px; } - html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { - margin-right: 0; - margin-left: 12px; } - .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 24px; } - html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { - margin-right: 0; - margin-left: 24px; } - .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 48px; } - html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { - margin-right: 0; - margin-left: 48px; } - @media screen and (max-width: 44.9375em) { - .box--direction-row.box--responsive { - flex-direction: column; } - .box--direction-row.box--responsive.box--reverse { - flex-direction: column-reverse; } } - .box--direction-column { - flex-direction: column; } - .box--direction-column.box--reverse { - flex-direction: column-reverse; } - .box--direction-column > .header.box--direction-row, - .box--direction-column > .footer.box--direction-row, - .box--direction-column > .header__container--fixed { - flex: 0 0 auto; } - .box--direction-column.box--pad-between-small > *:not(:last-child) { - margin-bottom: 12px; } - .box--direction-column.box--pad-between-medium > *:not(:last-child) { - margin-bottom: 24px; } - .box--direction-column.box--pad-between-large > *:not(:last-child) { - margin-bottom: 48px; } - .box--justify-start { - justify-content: flex-start; } - .box--justify-center { - justify-content: center; } - .box--justify-between { - justify-content: space-between; } - .box--justify-end { - justify-content: flex-end; } - .box--align-start { - align-items: flex-start; } - .box--align-center { - align-items: center; } - .box--align-end { - align-items: flex-end; } - .box--separator-top, .box--separator-horizontal, .box--separator-all { - border-top: 1px solid #ccc; } - .box--separator-bottom, .box--separator-horizontal, .box--separator-all { - border-bottom: 1px solid #ccc; } - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: 1px solid #ccc; } - @media screen and (max-width: 44.9375em) { - .box--separator-left, .box--separator-vertical, .box--separator-all { - border-left: none; - border-bottom: 1px solid #ccc; } - .box--separator-right, .box--separator-vertical, .box--separator-all { - border-right: none; - border-bottom: 1px solid #ccc; } } - [class*="background-color-index-"] .box[class*="box--separator"] { - border-color: #eee; } - .box--text-align-left { - text-align: left; } - .box--text-align-center { - text-align: center; } - .box--text-align-right { - text-align: right; } .box > .flex-grow-1, .box > .flex { flex-grow: 1; } - .box--direction-down, .box--direction-up { - flex-direction: column; } - .box--direction-left { - justify-content: flex-end; } - .box--flush { - padding: 0px; } + .box > .no-flex { + flex: 0 0 auto; } + +.box__texture { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; + overflow: hidden; } + +.box__container { + padding-left: 24px; + padding-right: 24px; } + .app--centered .box__container > .box { + width: 100%; + max-width: 960px; + margin-left: auto; + margin-right: auto; } + @media screen and (max-width: 44.9375em) { + .app--centered .box__container > .box { + padding-left: 0px; + padding-right: 0px; } } + +.box__container--full { + max-width: 100%; + width: 100vw; } + +.box__container--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--wrap { + flex-wrap: wrap; } + +.box--full { + position: relative; + max-width: 100%; + width: 100vw; + min-height: 100vh; + height: 100%; } + +.box--full-horizontal { + max-width: 100%; + width: 100vw; } + +.box--full-vertical { + min-height: 100vh; } + +.box--direction-row { + flex-direction: row; } + .box--direction-row.box--reverse { + flex-direction: row-reverse; } + .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 12px; } + html.rtl .box--direction-row.box--pad-between-small > *:not(:last-child) { + margin-right: 0; + margin-left: 12px; } + .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 24px; } + html.rtl .box--direction-row.box--pad-between-medium > *:not(:last-child) { + margin-right: 0; + margin-left: 24px; } + .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 48px; } + html.rtl .box--direction-row.box--pad-between-large > *:not(:last-child) { + margin-right: 0; + margin-left: 48px; } + @media screen and (max-width: 44.9375em) { + .box--direction-row.box--responsive { + flex-direction: column; } + .box--direction-row.box--responsive:not(.box--justify-center) { + align-items: stretch; } + .box--direction-row.box--responsive.box--reverse { + flex-direction: column-reverse; } } + +.box--direction-column { + flex-direction: column; } + .box--direction-column.box--reverse { + flex-direction: column-reverse; } + .box--direction-column > .header.box--direction-row, + .box--direction-column > .footer.box--direction-row, + .box--direction-column > .header__container--fixed { + flex: 0 0 auto; } + .box--direction-column.box--pad-between-small > *:not(:last-child) { + margin-bottom: 12px; } + .box--direction-column.box--pad-between-medium > *:not(:last-child) { + margin-bottom: 24px; } + .box--direction-column.box--pad-between-large > *:not(:last-child) { + margin-bottom: 48px; } + +.box--justify-start { + justify-content: flex-start; } + +.box--justify-center { + justify-content: center; } + +.box--justify-between { + justify-content: space-between; } + +.box--justify-end { + justify-content: flex-end; } + +.box--align-start { + align-items: flex-start; } + +.box--align-center { + align-items: center; } + +.box--align-end { + align-items: flex-end; } + +.box--align-baseline { + align-items: baseline; } + +.box--align-content-start { + align-content: flex-start; } + +.box--align-content-end { + align-content: flex-end; } + +.box--align-content-center { + align-content: center; } + +.box--align-content-between { + align-content: space-between; } + +.box--align-content-around { + align-content: space-around; } + +.box--separator-top, +.box--separator-horizontal, +.box--separator-all { + border-top: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-bottom, +.box--separator-horizontal, +.box--separator-all { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-left, +.box--separator-vertical, +.box--separator-all { + border-left: 1px solid rgba(0, 0, 0, 0.15); } + +.box--separator-right, +.box--separator-vertical, +.box--separator-all { + border-right: 1px solid rgba(0, 0, 0, 0.15); } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .box[class*="box--separator"] { + border-color: rgba(255, 255, 255, 0.5); } + +.box--text-align-left { + text-align: left; } + +.box--text-align-center { + text-align: center; } + +.box--text-align-right { + text-align: right; } + +.box--clickable { + cursor: pointer; } .brick { - box-shadow: 1px 1px 5px #eee; padding: 24px; position: relative; - margin: 0 12px 12px 0; float: left; + margin: 0 12px 12px 0; max-width: calc(100% - 12px); } - .brick .brick--label { + .brick__label { position: absolute; top: 0; right: 0; left: 0; - bottom: 0; } - .brick .brick--label span { + bottom: 0; + overflow: hidden; } + .brick__label span { text-transform: uppercase; text-decoration: none; color: #333; position: absolute; left: 24px; bottom: 24px; } + .brick__background { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; } + .brick__container { + position: absolute; + top: 24px; + bottom: 24px; + left: 24px; + right: 24px; + max-width: calc(100% - 48px); } + .brick--clickable:hover, .brick--clickable:focus { + z-index: 1; + transition: transform 0.4s; + transform: scale(1.05); + outline: none; } .brick[class*="background-color-index-"] span { color: #fff; } - -.brick--1-1 { - width: calc(25% - 12px); } - .brick--1-1:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-1 { - width: calc(50% - 12px); } } - -.brick--1-2 { - width: calc(25% - 12px); } - .brick--1-2:after { - padding-top: calc(200% + 60px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--1-2 { - width: calc(50% - 12px); } } - -.brick--2-1 { - width: calc(50% - 12px); } - .brick--2-1:after { - padding-top: calc(50% - 30px); - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-1 { - width: calc(100% - 12px); } } - -.brick--2-2 { - width: calc(50% - 12px); } - .brick--2-2:after { - padding-top: 100%; - display: block; - content: ''; } - @media screen and (max-width: 63.9375em) { - .brick--2-2 { - width: calc(100% - 12px); } } - -.brick--content-wrapper { - position: absolute; - top: 24px; - bottom: 24px; - left: 24px; - right: 24px; - max-width: calc(100% - 48px); } - -input[type="button"], -input[type="submit"], -button:not(.button) { - padding: 6px 22px; - background-color: transparent; - border: 2px solid #8C50FF; + .brick--1-1 { + width: calc(25% - 12px); } + .brick--1-1:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-1 { + width: calc(50% - 12px); } } + .brick--1-2 { + width: calc(25% - 12px); } + .brick--1-2:after { + padding-top: calc(200% + 60px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--1-2 { + width: calc(50% - 12px); } } + .brick--2-1 { + width: calc(50% - 12px); } + .brick--2-1:after { + padding-top: calc(50% - 30px); + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-1 { + width: calc(100% - 12px); } } + .brick--2-2 { + width: calc(50% - 12px); } + .brick--2-2:after { + padding-top: 100%; + display: block; + content: ''; } + @media screen and (max-width: 63.9375em) { + .brick--2-2 { + width: calc(100% - 12px); } } + +.grommet input[type="button"], +.grommet input[type="submit"], +.grommet button:not(.button) { + padding: 6px 22px; + background-color: transparent; + border: 2px solid #8C50FF; border-radius: 4px; color: #333; font-size: 19px; @@ -1336,17 +1352,22 @@ button:not(.button) { outline: none; min-width: 120px; max-width: 384px; } - input[type="button"]:focus:not(.button--disabled), - input[type="submit"]:focus:not(.button--disabled), - button:not(.button):focus:not(.button--disabled) { + .grommet input[type="button"]:focus:not(.button--disabled), + .grommet input[type="submit"]:focus:not(.button--disabled), + .grommet button:not(.button):focus:not(.button--disabled) { border-color: #c3a4fe; box-shadow: 0 0 1px 1px #c3a4fe; } @media screen and (min-width: 45em) { - input[type="button"], - input[type="submit"], - button:not(.button) { + .grommet input[type="button"], + .grommet input[type="submit"], + .grommet button:not(.button) { transition: 0.1s ease-in-out; } } +.grommet a.button { + text-decoration: none; } + .grommet a.button:hover { + text-decoration: none; } + .button { padding: 6px 22px; background-color: transparent; @@ -1368,104 +1389,131 @@ button:not(.button) { @media screen and (min-width: 45em) { .button { transition: 0.1s ease-in-out; } } - .button__icon { - display: inline-block; - padding: 12px; } - .button--primary { - border-color: #8C50FF; - background-color: #8C50FF; + +.button__icon { + display: inline-block; + padding: 12px; } + +.button--primary { + border-color: #8C50FF; + background-color: #8C50FF; + color: #fff; } + .button--primary:hover:not(.button--disabled) { color: #fff; } - .button--secondary { - border-color: rgba(51, 51, 51, 0.6); } - .button--accent { + .button--primary:hover:not(.button--disabled) .button__icon .control-icon { + fill: #fff; + stroke: #fff; } + +.button--secondary { + border-color: rgba(51, 51, 51, 0.6); } + +.button--accent { + border-color: #c3a4fe; } + +.button--plain { + border: none; + padding: 0; + width: auto; + height: auto; + min-width: 0; + max-width: none; + font-weight: inherit; } + .button--plain.button--primary { + background-color: #8C50FF; } + .button--plain > span:not(.button__icon):first-child { + margin-left: 12px; } + .button--plain > span:not(.button__icon):last-child { + margin-right: 12px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain { + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain .control-icon { + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover { + color: #fff; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button--plain:hover .control-icon { + fill: #fff; + stroke: #fff; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary) { + border-color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.85); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:not(.button--primary).button--accent { border-color: #c3a4fe; } - .button--icon { - border: none; - padding: 0; - width: auto; - height: auto; - min-width: 0; - max-width: none; } - .button--icon.button--primary { - background-color: #8C50FF; } - .button--icon > span:not(.button__icon) { - vertical-align: middle; } - .button--icon > span:not(.button__icon):first-child { - margin-left: 12px; } - .button--icon > span:not(.button__icon):last-child { - margin-right: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon { - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover { - color: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button--icon:hover .control-icon { - fill: #fff; - stroke: #fff; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary) { - border-color: #eee; - color: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:not(.button--primary).button--accent { - border-color: #c3a4fe; } - .button--disabled { - opacity: 0.3; - cursor: default; } - .button--fill { - width: 100%; - max-width: none; - flex-grow: 1; } + +.button--disabled { + opacity: 0.3; + cursor: default; } + +.button--icon, +.button:not(.button--fill) { + flex: 0 0 auto; } + +.button--fill { + width: 100%; + max-width: none; + flex-grow: 1; } .calendar { position: relative; display: inline-block; min-width: 288px; } - .calendar__input { - width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .calendar__input:focus { - padding-right: 59px; } - .calendar__control { - position: absolute; - top: 50%; - right: 12px; - transform: translateY(-50%); } - .calendar__drop { - border-top-left-radius: 0px; - border-top-right-radius: 0px; } - .calendar__title { - text-align: center; } - .calendar__grid { - width: 100%; - padding: 12px; } - .calendar__grid table { - width: 100%; } - .calendar__grid th, - .calendar__grid td { - text-align: center; - padding: 6px; } - .calendar__grid th { - color: #777; - font-weight: normal; } - .calendar__day { - display: inline-block; - cursor: pointer; - width: 24px; - height: 24px; - transition: background-color 0.3s; } - .calendar__day:hover { - background-color: rgba(0, 0, 0, 0.1); } - .calendar__day--other-month { - color: #777; } - .calendar__day--active { - background-color: #8C50FF; - color: #dbdbdb; } - .calendar--active .calendar__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + +.calendar__input { + width: 100%; + height: 100%; + display: block; + padding-right: 60px; } + .calendar__input:focus { + padding-right: 59px; } + .calendar__input::-ms-clear { + display: none; } + +.calendar__control { + position: absolute; + top: 50%; + right: 12px; + transform: translateY(-50%); } + +.calendar__drop { + border-top-left-radius: 0px; + border-top-right-radius: 0px; } + +.calendar__title { + text-align: center; } + +.calendar__grid { + width: 100%; + padding: 12px; } + .calendar__grid table { + width: 100%; } + .calendar__grid th, + .calendar__grid td { + text-align: center; + padding: 6px; } + .calendar__grid th { + color: #777; + font-weight: normal; } + +.calendar__day { + display: inline-block; + cursor: pointer; + width: 24px; + height: 24px; + transition: background-color 0.3s; } + .calendar__day:hover { + background-color: rgba(221, 221, 221, 0.5); } + +.calendar__day--other-month { + color: #777; } + +.calendar__day--active { + background-color: #8C50FF; + color: rgba(255, 255, 255, 0.85); } + +.calendar--active .calendar__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } @-webkit-keyframes carousel-reveal { 0% { @@ -1499,8 +1547,11 @@ button:not(.button) { display: flex; max-width: none; transition: all 0.8s; } - .carousel__item > * { - width: 100%; } + .carousel .tiles.box--direction-row > .tile.carousel__item { + flex: 1 1 100%; + box-sizing: border-box; } + .carousel .tiles.box--direction-row > .tile.carousel__item > * { + width: 100%; } .carousel__arrow { -webkit-animation: carousel-reveal 1s; animation: carousel-reveal 1s; @@ -1513,8 +1564,10 @@ button:not(.button) { filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); -webkit-filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); } .carousel__arrow .control-icon polyline { - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); stroke-width: 1px; } + .carousel__arrow:hover .control-icon polyline { + stroke: #fff; } .carousel__arrow--next { right: 0; } .carousel__arrow--prev { @@ -1536,7 +1589,7 @@ button:not(.button) { display: inline-block; width: 36px; height: 36px; - stroke: #fff; + stroke: rgba(255, 255, 255, 0.7); fill: transparent; cursor: pointer; filter: drop-shadow(1px 1px 1px rgba(170, 170, 170, 0.5)); @@ -1550,6 +1603,12 @@ button:not(.button) { opacity: 0; -webkit-animation: carousel-hide 1s; animation: carousel-hide 1s; } + .carousel img { + -webkit-user-drag: none; + -khtml-user-drag: none; + -moz-user-drag: none; + -o-user-drag: none; + user-drag: none; } .carousel-controls__control { width: 36px; @@ -1581,13 +1640,11 @@ button:not(.button) { position: relative; display: block; } .chart__grid { - stroke: #ccc; } + stroke: rgba(0, 0, 0, 0.15); } .chart__graphic { width: 100%; height: 192px; max-height: calc(100vh - 144px); } - .chart__graphic:focus { - outline: #c3a4fe solid 1px; } @media screen and (min-width: 45em) { .chart__values g { -webkit-animation: reveal-chart 1.5s; @@ -2034,150 +2091,157 @@ button:not(.button) { cursor: pointer; } .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control { border-color: #fff; } .check-box:hover:not(.check-box--disabled) .check-box__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box:hover:not(.check-box--disabled) .check-box__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box:hover:not(.check-box--disabled) .check-box__label { color: #fff; } .check-box > :first-child { margin-right: 12px; } html.rtl .check-box > :first-child { margin-right: 0; margin-left: 12px; } - .check-box__input { - opacity: 0; - position: absolute; } - .check-box__input:checked + .check-box__control { - border-color: #8C50FF; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control { - border-color: #fff; } - .check-box__input:checked + .check-box__control .check-box__control-check { - display: block; } - .check-box__input:checked + .check-box__control + .check-box__label { - color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__input:checked + .check-box__control + .check-box__label { - color: #fff; } - .check-box__input:focus + .check-box__control { - border-color: #c3a4fe; - box-shadow: 0 0 1px 1px #c3a4fe; } - .check-box__control { - position: relative; - top: -1px; - display: inline-block; - width: 24px; - height: 24px; - vertical-align: middle; - background-color: inherit; - border: 2px solid #999; - border-radius: 4px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control { - border-color: #dbdbdb; } - .check-box__control-check { - position: absolute; - top: -2px; - left: -2px; - display: none; - width: 24px; - height: 24px; - stroke-width: 4px; - stroke: #8C50FF; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__control-check { - stroke: #fff; } - .check-box__label { - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box__label { - color: #dbdbdb; } - .check-box--disabled .check-box__control { - opacity: 0.5; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { - background-color: #fff; + +.check-box__input { + opacity: 0; + position: absolute; } + .check-box__input:checked + .check-box__control { + border-color: #8C50FF; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control { border-color: #fff; } - .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + .check-box__input:checked + .check-box__control .check-box__control-check { + display: block; } + .check-box__input:checked + .check-box__control + .check-box__label { + color: #333; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__input:checked + .check-box__control + .check-box__label { + color: #fff; } + .check-box__input:focus + .check-box__control { + border-color: #c3a4fe; + box-shadow: 0 0 1px 1px #c3a4fe; } + +.check-box__control { + position: relative; + top: -1px; + display: inline-block; + width: 24px; + height: 24px; + vertical-align: middle; + background-color: inherit; + border: 2px solid #999; + border-radius: 4px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control { + border-color: rgba(255, 255, 255, 0.7); } + +.check-box__control-check { + position: absolute; + top: -2px; + left: -2px; + display: none; + width: 24px; + height: 24px; + stroke-width: 4px; + stroke: #8C50FF; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__control-check { + stroke: #fff; } + +.check-box__label { + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box__label { + color: rgba(255, 255, 255, 0.85); } + +.check-box--disabled .check-box__control { + opacity: 0.5; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + content: ""; + border-color: #000; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { + background-color: #fff; + border-color: #fff; } + +.check-box--toggle .check-box__control { + width: 48px; + height: 24px; + border-radius: 24px; + background-color: rgba(51, 51, 51, 0.2); + border: none; + transition: background-color 0.3s; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + .check-box--toggle .check-box__control:after { content: ""; - border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked + .check-box__control:after { - background-color: #fff; - border-color: #fff; } - .check-box--toggle .check-box__control { - width: 48px; - height: 24px; + display: block; + position: absolute; + top: -2px; + left: 0px; + width: 28px; + height: 28px; + background-color: #fff; + border: 2px solid #999; border-radius: 24px; - background-color: rgba(51, 51, 51, 0.2); - border: none; - transition: background-color 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - .check-box--toggle .check-box__control:after { - content: ""; - display: block; - position: absolute; - top: -2px; - left: 0px; - width: 28px; - height: 28px; - background-color: #fff; - border: 2px solid #999; - border-radius: 24px; - transition: margin-left 0.3s; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__control:after { - background-color: transparent; - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: #8C50FF; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control { - background-color: rgba(255, 255, 255, 0.1); } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - stroke: transparent; } - .check-box--toggle .check-box__input:checked + .check-box__control:after { - content: ""; - background-color: #fff; - border-color: #8C50FF; - margin-left: 24px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { - border-color: #dbdbdb; } - .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { - display: none; } + transition: margin-left 0.3s; + box-sizing: border-box; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__control:after { + background-color: transparent; + border-color: rgba(255, 255, 255, 0.7); } + +.check-box--toggle .check-box__input:checked + .check-box__control { + background-color: #8C50FF; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control { + background-color: rgba(255, 255, 255, 0.1); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + stroke: transparent; } + .check-box--toggle .check-box__input:checked + .check-box__control:after { + content: ""; + background-color: #fff; + border-color: #8C50FF; + margin-left: 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .check-box--toggle .check-box__input:checked + .check-box__control:after { + border-color: rgba(255, 255, 255, 0.7); } + .check-box--toggle .check-box__input:checked + .check-box__control .check-box__control-check { + display: none; } -.background-color-index-dark { +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) { color: #fff; } +.background-color-index-brand { + background-color: #8C50FF; } + .background-color-index-neutral-1, .background-color-index-neutral-4 { - background-color: #5d0cfb; - color: #fff; } + background-color: #5d0cfb; } .background-color-index-neutral-1-a, .background-color-index-neutral-4-a { - background-color: rgba(93, 12, 251, 0.8); - color: #fff; } + background-color: rgba(93, 12, 251, 0.8); } .background-color-index-neutral-2, .background-color-index-neutral-5 { - background-color: #7026ff; - color: #fff; } + background-color: #7026ff; } .background-color-index-neutral-2-a, .background-color-index-neutral-5-a { - background-color: rgba(112, 38, 255, 0.8); - color: #fff; } + background-color: rgba(112, 38, 255, 0.8); } .background-color-index-neutral-3, .background-color-index-neutral-6 { - background-color: #767676; - color: #fff; } + background-color: #767676; } .background-color-index-neutral-3-a, .background-color-index-neutral-6-a { - background-color: rgba(118, 118, 118, 0.8); - color: #fff; } + background-color: rgba(118, 118, 118, 0.8); } .background-color-index-accent-1, .background-color-index-accent-3 { @@ -2197,43 +2261,35 @@ button:not(.button) { .background-color-index-grey-1, .background-color-index-grey-5 { - background-color: #333333; - color: #fff; } + background-color: #333333; } .background-color-index-grey-1-a, .background-color-index-grey-5-a { - background-color: rgba(51, 51, 51, 0.8); - color: #fff; } + background-color: rgba(51, 51, 51, 0.8); } .background-color-index-grey-2, .background-color-index-grey-6 { - background-color: #444444; - color: #fff; } + background-color: #444444; } .background-color-index-grey-2-a, .background-color-index-grey-6-a { - background-color: rgba(68, 68, 68, 0.8); - color: #fff; } + background-color: rgba(68, 68, 68, 0.8); } .background-color-index-grey-3, .background-color-index-grey-7 { - background-color: #555555; - color: #fff; } + background-color: #555555; } .background-color-index-grey-3-a, .background-color-index-grey-7-a { - background-color: rgba(85, 85, 85, 0.8); - color: #fff; } + background-color: rgba(85, 85, 85, 0.8); } .background-color-index-grey-4, .background-color-index-grey-8 { - background-color: #666666; - color: #fff; } + background-color: #666666; } .background-color-index-grey-4-a, .background-color-index-grey-8-a { - background-color: rgba(102, 102, 102, 0.8); - color: #fff; } + background-color: rgba(102, 102, 102, 0.8); } .background-color-index-graph-1, .background-color-index-graph-6 { @@ -2245,18 +2301,15 @@ button:not(.button) { .background-color-index-graph-3, .background-color-index-graph-8 { - background-color: #5d0cfb; - color: #fff; } + background-color: #5d0cfb; } .background-color-index-graph-4, .background-color-index-graph-9 { - background-color: #7026ff; - color: #fff; } + background-color: #7026ff; } .background-color-index-graph-5, .background-color-index-graph-10 { - background-color: #767676; - color: #fff; } + background-color: #767676; } .background-color-index-critical { background-color: #FF856B; } @@ -2268,8 +2321,7 @@ button:not(.button) { background-color: #FFB86B; } .background-color-index-ok { - background-color: #4EB976; - color: #fff; } + background-color: #4EB976; } .background-color-index-unknown { background-color: #a8a8a8; } @@ -2279,13 +2331,11 @@ button:not(.button) { .background-color-index-light-1, .background-color-index-light-3 { - background-color: #ffffff; - color: #333; } + background-color: #ffffff; } .background-color-index-light-2, .background-color-index-light-4 { - background-color: #f5f5f5; - color: #333; } + background-color: #f5f5f5; } .center-column { padding-left: 24px; @@ -2296,6 +2346,22 @@ button:not(.button) { margin-left: auto; margin-right: auto; } +.columns { + display: flex; + flex-direction: row; + width: 100%; } + +.columns__column { + flex: 0 0 192px; + display: flex; + flex-direction: column; } + +.columns--small > .columns__column { + flex-basis: 96px; } + +.columns--large > .columns__column { + flex-basis: 384px; } + @media screen and (min-width: 45em) { .dashboard { height: calc(100vh - 96px); } } @@ -2305,241 +2371,303 @@ button:not(.button) { height: calc(100vh - 48px); } } .distribution { - position: relative; - display: block; } - .distribution__graphic { - width: 100%; - height: 192px; - max-height: calc(100vh - 144px); } - .distribution__graphic:focus { - outline: #c3a4fe solid 1px; } - .distribution__background { - fill: #f5f5f5; } - .distribution__item--clickable { - cursor: pointer; } - .distribution__item-box.color-index-unset { - fill: #ddd; } - .distribution__item-box.color-index-brand { - fill: #8C50FF; } - .distribution__item-box.color-index-critical { - fill: #FF856B; } - .distribution__item-box.color-index-error { - fill: #FF856B; } - .distribution__item-box.color-index-warning { - fill: #FFB86B; } - .distribution__item-box.color-index-ok { - fill: #4EB976; } - .distribution__item-box.color-index-unknown { - fill: #a8a8a8; } - .distribution__item-box.color-index-disabled { - fill: #a8a8a8; } - .distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-6 { - fill: #c3a4fe; } - .distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-7 { - fill: #a577ff; } - .distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-8 { - fill: #5d0cfb; } - .distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-9 { - fill: #7026ff; } - .distribution__item-box.color-index-graph-5, .distribution__item-box.color-index-graph-10 { - fill: #767676; } - .distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-3 { - fill: #c3a4fe; } - .distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-4 { - fill: #a577ff; } - .distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-5 { - fill: #333333; } - .distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-6 { - fill: #444444; } - .distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-7 { - fill: #555555; } - .distribution__item-box.color-index-grey-4, .distribution__item-box.color-index-grey-8 { - fill: #666666; } - .distribution__item-icons.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__item-icons.color-index-unset { - stroke: #ddd; } - .distribution__item-icons.color-index-brand { - stroke: #8C50FF; } - .distribution__item-icons.color-index-critical { - stroke: #FF856B; } - .distribution__item-icons.color-index-error { - stroke: #FF856B; } - .distribution__item-icons.color-index-warning { - stroke: #FFB86B; } - .distribution__item-icons.color-index-ok { - stroke: #4EB976; } - .distribution__item-icons.color-index-unknown { - stroke: #a8a8a8; } - .distribution__item-icons.color-index-disabled { - stroke: #a8a8a8; } - .distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-6 { - stroke: #c3a4fe; } - .distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-7 { - stroke: #a577ff; } - .distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-8 { - stroke: #5d0cfb; } - .distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-9 { - stroke: #7026ff; } - .distribution__item-icons.color-index-graph-5, .distribution__item-icons.color-index-graph-10 { - stroke: #767676; } - .distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-5 { - stroke: #333333; } - .distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-6 { - stroke: #444444; } - .distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-7 { - stroke: #555555; } - .distribution__item-icons.color-index-grey-4, .distribution__item-icons.color-index-grey-8 { + position: relative; } + +.distribution__graphic { + width: 100%; + height: 192px; + max-height: calc(100vh - 144px); } + +.distribution__background { + fill: #f5f5f5; } + +.distribution__item--clickable { + cursor: pointer; } + +.distribution__item-box.color-index-unset { + fill: #ddd; } + +.distribution__item-box.color-index-brand { + fill: #8C50FF; } + +.distribution__item-box.color-index-critical { + fill: #FF856B; } + +.distribution__item-box.color-index-error { + fill: #FF856B; } + +.distribution__item-box.color-index-warning { + fill: #FFB86B; } + +.distribution__item-box.color-index-ok { + fill: #4EB976; } + +.distribution__item-box.color-index-unknown { + fill: #a8a8a8; } + +.distribution__item-box.color-index-disabled { + fill: #a8a8a8; } + +.distribution__item-box.color-index-graph-1, .distribution__item-box.color-index-graph-6 { + fill: #c3a4fe; } + +.distribution__item-box.color-index-graph-2, .distribution__item-box.color-index-graph-7 { + fill: #a577ff; } + +.distribution__item-box.color-index-graph-3, .distribution__item-box.color-index-graph-8 { + fill: #5d0cfb; } + +.distribution__item-box.color-index-graph-4, .distribution__item-box.color-index-graph-9 { + fill: #7026ff; } + +.distribution__item-box.color-index-graph-5, .distribution__item-box.color-index-graph-10 { + fill: #767676; } + +.distribution__item-box.color-index-accent-1, .distribution__item-box.color-index-accent-3 { + fill: #c3a4fe; } + +.distribution__item-box.color-index-accent-2, .distribution__item-box.color-index-accent-4 { + fill: #a577ff; } + +.distribution__item-box.color-index-grey-1, .distribution__item-box.color-index-grey-5 { + fill: #333333; } + +.distribution__item-box.color-index-grey-2, .distribution__item-box.color-index-grey-6 { + fill: #444444; } + +.distribution__item-box.color-index-grey-3, .distribution__item-box.color-index-grey-7 { + fill: #555555; } + +.distribution__item-box.color-index-grey-4, .distribution__item-box.color-index-grey-8 { + fill: #666666; } + +.distribution__item-icons.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.distribution__item-icons.color-index-unset { + stroke: #ddd; } + +.distribution__item-icons.color-index-brand { + stroke: #8C50FF; } + +.distribution__item-icons.color-index-critical { + stroke: #FF856B; } + +.distribution__item-icons.color-index-error { + stroke: #FF856B; } + +.distribution__item-icons.color-index-warning { + stroke: #FFB86B; } + +.distribution__item-icons.color-index-ok { + stroke: #4EB976; } + +.distribution__item-icons.color-index-unknown { + stroke: #a8a8a8; } + +.distribution__item-icons.color-index-disabled { + stroke: #a8a8a8; } + +.distribution__item-icons.color-index-graph-1, .distribution__item-icons.color-index-graph-6 { + stroke: #c3a4fe; } + +.distribution__item-icons.color-index-graph-2, .distribution__item-icons.color-index-graph-7 { + stroke: #a577ff; } + +.distribution__item-icons.color-index-graph-3, .distribution__item-icons.color-index-graph-8 { + stroke: #5d0cfb; } + +.distribution__item-icons.color-index-graph-4, .distribution__item-icons.color-index-graph-9 { + stroke: #7026ff; } + +.distribution__item-icons.color-index-graph-5, .distribution__item-icons.color-index-graph-10 { + stroke: #767676; } + +.distribution__item-icons.color-index-grey-1, .distribution__item-icons.color-index-grey-5 { + stroke: #333333; } + +.distribution__item-icons.color-index-grey-2, .distribution__item-icons.color-index-grey-6 { + stroke: #444444; } + +.distribution__item-icons.color-index-grey-3, .distribution__item-icons.color-index-grey-7 { + stroke: #555555; } + +.distribution__item-icons.color-index-grey-4, .distribution__item-icons.color-index-grey-8 { + stroke: #666666; } + +.distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-3 { + stroke: #c3a4fe; } + +.distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-4 { + stroke: #a577ff; } + +.distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + stroke: #ffffff; } + +.distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + stroke: #f5f5f5; } + +.distribution__label { + position: absolute; + font-family: "Source Sans Pro", Arial, sans-serif; + overflow: hidden; + text-align: left; + pointer-events: none; } + .distribution__label.color-index-ok { + color: #fff; } + .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-4 { + color: #fff; } + .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-5 { + color: #fff; } + .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-6 { + color: #fff; } + .distribution__label.color-index-graph-3, .distribution__label.color-index-graph-8 { + color: #fff; } + .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-9 { + color: #fff; } + .distribution__label.color-index-graph-5, .distribution__label.color-index-graph-10 { + color: #fff; } + .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-5 { + color: #fff; } + .distribution__label.color-index-grey-2, .distribution__label.color-index-grey-6 { + color: #fff; } + .distribution__label.color-index-grey-3, .distribution__label.color-index-grey-7 { + color: #fff; } + .distribution__label.color-index-grey-4, .distribution__label.color-index-grey-8 { + color: #fff; } + +.distribution__label-value { + display: block; + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; } + +.distribution__label-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + font-weight: normal; } + +.distribution__label-label { + display: block; } + +.distribution__label--active { + color: #333; } + +.distribution__label--thin .distribution__label-value, +.distribution__label--thin .distribution__label-label { + display: inline-block; } + +.distribution__label--small .distribution__label-value, +.distribution__label--small .distribution__label-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1; + margin-right: 4px; } + +.distribution__label--icons { + padding: 0 12px 12px 0; + background-color: rgba(255, 255, 255, 0.8); + color: #333; } + .distribution__label--icons .label-value { + line-height: 1; } + .distribution__label--icons .label-units { + color: #777; } + .distribution__label--icons .label-label { + display: block; } + +.distribution__loading-indicator { + stroke-width: 24px; } + .distribution__loading-indicator.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .distribution__loading-indicator.color-index-unset { + stroke: #ddd; } + .distribution__loading-indicator.color-index-brand { + stroke: #8C50FF; } + .distribution__loading-indicator.color-index-critical { + stroke: #FF856B; } + .distribution__loading-indicator.color-index-error { + stroke: #FF856B; } + .distribution__loading-indicator.color-index-warning { + stroke: #FFB86B; } + .distribution__loading-indicator.color-index-ok { + stroke: #4EB976; } + .distribution__loading-indicator.color-index-unknown { + stroke: #a8a8a8; } + .distribution__loading-indicator.color-index-disabled { + stroke: #a8a8a8; } + .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-6 { + stroke: #c3a4fe; } + .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-7 { + stroke: #a577ff; } + .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-8 { + stroke: #5d0cfb; } + .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-9 { + stroke: #7026ff; } + .distribution__loading-indicator.color-index-graph-5, .distribution__loading-indicator.color-index-graph-10 { + stroke: #767676; } + .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-5 { + stroke: #333333; } + .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-6 { + stroke: #444444; } + .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-7 { + stroke: #555555; } + .distribution__loading-indicator.color-index-grey-4, .distribution__loading-indicator.color-index-grey-8 { stroke: #666666; } - .distribution__item-icons.color-index-accent-1, .distribution__item-icons.color-index-accent-3 { + .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-3 { stroke: #c3a4fe; } - .distribution__item-icons.color-index-accent-2, .distribution__item-icons.color-index-accent-4 { + .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-4 { stroke: #a577ff; } - .distribution__item-icons.color-index-light-1, .distribution__item-icons.color-index-light-3 { + .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { stroke: #ffffff; } - .distribution__item-icons.color-index-light-2, .distribution__item-icons.color-index-light-4 { + .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { stroke: #f5f5f5; } - .distribution__label { - position: absolute; - padding: 6px 12px; - font-family: "Source Sans Pro", Arial, sans-serif; - overflow: hidden; - text-align: left; - pointer-events: none; } - .distribution__label.color-index-ok { - color: #fff; } - .distribution__label.color-index-neutral-1, .distribution__label.color-index-neutral-4 { - color: #fff; } - .distribution__label.color-index-neutral-2, .distribution__label.color-index-neutral-5 { - color: #fff; } - .distribution__label.color-index-neutral-3, .distribution__label.color-index-neutral-6 { - color: #fff; } - .distribution__label.color-index-graph-3, .distribution__label.color-index-graph-8 { - color: #fff; } - .distribution__label.color-index-graph-4, .distribution__label.color-index-graph-9 { - color: #fff; } - .distribution__label.color-index-graph-5, .distribution__label.color-index-graph-10 { - color: #fff; } - .distribution__label.color-index-grey-1, .distribution__label.color-index-grey-5 { - color: #fff; } - .distribution__label.color-index-grey-2, .distribution__label.color-index-grey-6 { - color: #fff; } - .distribution__label.color-index-grey-3, .distribution__label.color-index-grey-7 { - color: #fff; } - .distribution__label.color-index-grey-4, .distribution__label.color-index-grey-8 { - color: #fff; } - .distribution__label-value { - display: block; - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; } - .distribution__label-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - font-weight: normal; } - .distribution__label-label { - display: block; } - .distribution__label--active { - color: #333; } - .distribution__label--thin .distribution__label-value, - .distribution__label--thin .distribution__label-label { - display: inline-block; } - .distribution__label--small .distribution__label-value, - .distribution__label--small .distribution__label-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1; - margin-right: 4px; } - .distribution__label--icons { - padding: 0 12px 12px 0; - background-color: rgba(255, 255, 255, 0.8); - color: #333; } - .distribution__label--icons .label-value { - line-height: 1; } - .distribution__label--icons .label-units { - color: #777; } - .distribution__label--icons .label-label { - display: block; } - .distribution__loading-indicator { - stroke-width: 24px; } - .distribution__loading-indicator.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .distribution__loading-indicator.color-index-unset { - stroke: #ddd; } - .distribution__loading-indicator.color-index-brand { - stroke: #8C50FF; } - .distribution__loading-indicator.color-index-critical { - stroke: #FF856B; } - .distribution__loading-indicator.color-index-error { - stroke: #FF856B; } - .distribution__loading-indicator.color-index-warning { - stroke: #FFB86B; } - .distribution__loading-indicator.color-index-ok { - stroke: #4EB976; } - .distribution__loading-indicator.color-index-unknown { - stroke: #a8a8a8; } - .distribution__loading-indicator.color-index-disabled { - stroke: #a8a8a8; } - .distribution__loading-indicator.color-index-graph-1, .distribution__loading-indicator.color-index-graph-6 { - stroke: #c3a4fe; } - .distribution__loading-indicator.color-index-graph-2, .distribution__loading-indicator.color-index-graph-7 { - stroke: #a577ff; } - .distribution__loading-indicator.color-index-graph-3, .distribution__loading-indicator.color-index-graph-8 { - stroke: #5d0cfb; } - .distribution__loading-indicator.color-index-graph-4, .distribution__loading-indicator.color-index-graph-9 { - stroke: #7026ff; } - .distribution__loading-indicator.color-index-graph-5, .distribution__loading-indicator.color-index-graph-10 { - stroke: #767676; } - .distribution__loading-indicator.color-index-grey-1, .distribution__loading-indicator.color-index-grey-5 { - stroke: #333333; } - .distribution__loading-indicator.color-index-grey-2, .distribution__loading-indicator.color-index-grey-6 { - stroke: #444444; } - .distribution__loading-indicator.color-index-grey-3, .distribution__loading-indicator.color-index-grey-7 { - stroke: #555555; } - .distribution__loading-indicator.color-index-grey-4, .distribution__loading-indicator.color-index-grey-8 { - stroke: #666666; } - .distribution__loading-indicator.color-index-accent-1, .distribution__loading-indicator.color-index-accent-3 { - stroke: #c3a4fe; } - .distribution__loading-indicator.color-index-accent-2, .distribution__loading-indicator.color-index-accent-4 { - stroke: #a577ff; } - .distribution__loading-indicator.color-index-light-1, .distribution__loading-indicator.color-index-light-3 { - stroke: #ffffff; } - .distribution__loading-indicator.color-index-light-2, .distribution__loading-indicator.color-index-light-4 { - stroke: #f5f5f5; } - .distribution--icons .distribution__label { - padding: 0 12px 12px 0; } - .distribution--icons .distribution__label-value { - line-height: 1; } - .distribution--small .distribution__graphic { - height: 96px; } - .distribution--large .distribution__graphic { - height: 288px; } - .distribution--full { - height: 100%; } - .distribution--full .distribution__graphic { - height: 100%; - max-height: 100%; } -.drop { - position: fixed; +.distribution--icons .distribution__label { + padding: 0 12px 12px 0; } + +.distribution--icons .distribution__label-value { + line-height: 1; } + +.distribution--small .distribution__graphic { + height: 96px; } + +.distribution--large .distribution__graphic { + height: 288px; } + +.distribution--full { + height: 100%; } + .distribution--full .distribution__graphic { + width: auto; + height: auto; + max-height: 100%; + max-width: 100%; } + +.grommet.drop { + position: absolute; z-index: 20; - background-color: rgba(255, 255, 255, 0.9); - border: none; border-radius: 4px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); overflow: auto; } + .grommet.drop:not([class*="background-color-index-"]) { + background-color: rgba(248, 248, 248, 0.95); + border: none; + box-shadow: none; } .footer { min-height: 36px; line-height: 36px; width: 100%; } + .footer.box--direction-row > h1, + .footer.box--direction-row > h2, + .footer.box--direction-row > h3, + .footer.box--direction-row > h4 { + margin-bottom: 0px; } .footer__content { display: flex; justify-content: space-between; @@ -2592,9 +2720,12 @@ button:not(.button) { .footer--flush .footer__content { padding-left: 0px; padding-right: 0px; } - .footer--large .footer__content { - padding-top: 24px; - padding-bottom: 24px; } + .footer--large { + min-height: 96px; + line-height: 96px; } + .footer--small { + min-height: 24px; + line-height: 24px; } .footer__container--float { position: absolute; bottom: 0px; @@ -2609,13 +2740,12 @@ button:not(.button) { right: 0px; } .form { - position: relative; } + position: relative; + width: 480px; + max-width: 100%; } @media screen and (min-width: 45em) { - .form { - width: 480px; - max-width: 100%; } - .form .form-field .tiles__container { - max-width: 480px; } } + .form .form-field .tiles__container { + max-width: 480px; } } .form--pad-none { padding: 0px; } .form--pad-small { @@ -2684,7 +2814,7 @@ button:not(.button) { .form-field { position: relative; padding: 6px 24px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-bottom: -1px; background-color: #fff; color: #333; @@ -2697,210 +2827,223 @@ button:not(.button) { @media screen and (max-width: 44.9375em) { .form-field { display: block; } } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field { background-color: transparent; - color: #dbdbdb; } + color: rgba(255, 255, 255, 0.85); } .form--fill .form-field { width: 100%; } .form-field:last-child { margin-bottom: 0px; } - .form-field__label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 24px; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__label { - color: #dbdbdb; } - .form-field__contents { + +.form-field__label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 24px; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__label { + color: rgba(255, 255, 255, 0.85); } + +.form-field__contents { + display: block; + margin-left: -24px; + margin-right: -24px; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input, + .form-field__contents > textarea { display: block; - margin-left: -24px; - margin-right: -24px; } - .form-field__contents > input[type=text], - .form-field__contents > input[type=range], - .form-field__contents > input[type=email], - .form-field__contents > input[type=password], - .form-field__contents > input[type=number], - .form-field__contents > input[type=file], - .form-field__contents > select, - .form-field__contents > .search-input input, - .form-field__contents > .calendar input, - .form-field__contents > textarea { - display: block; - width: 100%; + width: 100%; + border: none; + padding: 0 24px; + border-radius: 0px; + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > input[type=text]:focus, + .form-field__contents > input[type=range]:focus, + .form-field__contents > input[type=email]:focus, + .form-field__contents > input[type=password]:focus, + .form-field__contents > input[type=number]:focus, + .form-field__contents > input[type=file]:focus, + .form-field__contents > select:focus, + .form-field__contents > .search-input input:focus, + .form-field__contents > .calendar input:focus, + .form-field__contents > textarea:focus { border: none; - padding: 0px; - padding-left: 24px; - padding-right: 24px; - border-radius: 0px; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > input[type=text]:focus, - .form-field__contents > input[type=range]:focus, - .form-field__contents > input[type=email]:focus, - .form-field__contents > input[type=password]:focus, - .form-field__contents > input[type=number]:focus, - .form-field__contents > input[type=file]:focus, - .form-field__contents > select:focus, - .form-field__contents > .search-input input:focus, - .form-field__contents > .calendar input:focus, - .form-field__contents > textarea:focus { - border: none; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-light"]) - .form-field__contents > textarea { - color: #fff; } - .form-field__contents > input[type=range] { - width: calc(100% - 48px); - margin-left: 24px; - margin-right: 24px; - padding-left: 0px; - padding-right: 0px; } - .form-field__contents > select { - display: block; - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); - background-position: center right 18px; - padding-left: 22px; } - html.rtl .form-field__contents > select { - background-position: center left 18px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__contents > select { - background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } - .form-field__contents > select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #000; } - .form-field__contents ::-ms-clear { - display: none; } - .form-field__contents > select::-ms-expand { - display: none; } - .form-field__contents > select::-ms-value { - background: none; - color: inherit; } + padding: 0 24px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > input[type=text], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=range], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=email], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=password], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=number], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > input[type=file], [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > select, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .search-input input, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .form-field__contents > .calendar input, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > textarea { - vertical-align: top; - height: auto; - resize: vertical; } - .form-field__contents > .check-box, - .form-field__contents > .radio-button { - display: block; - font-size: 16px; - font-size: 1rem; - line-height: 1.5; - margin-top: 12px; - margin-bottom: 12px; - margin-left: 24px; - margin-right: 24px; } - .form-field__contents > .search-input, - .form-field__contents > .calendar { - display: block; } - .form-field__contents > .search-input input, - .form-field__contents > .calendar input { - margin-left: 0px; - margin-right: 0px; } - .form-field__contents > .search-input .search-input__control, - .form-field__contents > .search-input .calendar__control, - .form-field__contents > .calendar .search-input__control, - .form-field__contents > .calendar .calendar__control { - top: auto; - right: 6px; - transform: none; - bottom: -6px; } - html.rtl .form-field__contents > .search-input .search-input__control, html.rtl - .form-field__contents > .search-input .calendar__control, html.rtl - .form-field__contents > .calendar .search-input__control, html.rtl - .form-field__contents > .calendar .calendar__control { - right: auto; - left: 6px; } - .form-field__contents > .number-input { - display: flex; - padding-right: 6px; } - html.rtl .form-field__contents > .number-input { - padding-right: 0; - padding-left: 6px; } - .form-field__contents > .number-input input[type=number] { - display: inline-block; - flex: 1; - border: none; } - .form--compact .form-field__contents > .number-input input[type=number] { - width: 144px; } - .form-field__contents > input[type=file] { - display: inline-block; } - .form-field__contents > .table--selectable { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .form-field__contents > .table--selectable table { - margin-bottom: 0px; } - .form-field__contents > .table--selectable table td:first-child, - .form-field__contents > .table--selectable table th:first-child { - padding-left: 24px; } - .form-field__contents > .form-field { - width: auto; - margin-top: 12px; - border: none; } - .form-field__contents > .form-field > .form-field__label { - border-top: 1px solid #ccc; - padding-top: 6px; } - .form-field__contents > .form-field--hidden { - margin-top: 0px; } - .form-field__help { + color: #fff; } + .form-field__contents > input[type=text], + .form-field__contents > input[type=range], + .form-field__contents > input[type=email], + .form-field__contents > input[type=password], + .form-field__contents > input[type=number], + .form-field__contents > input[type=file], + .form-field__contents > select, + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + height: 24px; } + .form-field__contents > input[type=range] { + width: calc(100% - 48px); + margin-left: 24px; + margin-right: 24px; + padding-left: 0px; + padding-right: 0px; } + .form-field__contents > select { display: block; - font-size: 13px; - font-size: 0.8125rem; - line-height: 1.84615; - color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__help { - color: #dbdbdb; } - .form-field__error { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC); + background-position: center right 18px; } + html.rtl .form-field__contents > select { + background-position: center left 18px; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__contents > select { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==); } + .form-field__contents > select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #000; } + .form-field__contents > select::-ms-expand { + display: none; } + .form-field__contents > select::-ms-value { + background: none; + color: inherit; } + .form-field__contents > textarea { + vertical-align: top; + height: auto; + resize: vertical; } + .form-field__contents > .check-box, + .form-field__contents > .radio-button { display: block; - float: right; - color: #FF856B; - line-height: 24px; } - html.rtl .form-field__error { - float: left; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .form-field__error { - color: #dbdbdb; } - .form-field--text { - cursor: pointer; } - .form-field--text .form-field__label { - cursor: pointer; } - @media screen and (max-width: 44.9375em) { - .form-field--hidden { - display: none; } } - @media screen and (min-width: 45em) { - .form-field--hidden { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; + margin-top: 12px; + margin-bottom: 12px; + margin-left: 24px; + margin-right: 24px; } + .form-field__contents > .search-input, + .form-field__contents > .calendar { + display: block; } + .form-field__contents > .search-input input, + .form-field__contents > .calendar input { + margin-left: 0px; + margin-right: 0px; } + .form-field__contents > .search-input .search-input__control, + .form-field__contents > .search-input .calendar__control, + .form-field__contents > .calendar .search-input__control, + .form-field__contents > .calendar .calendar__control { + top: auto; + right: 6px; + transform: none; + bottom: -6px; } + html.rtl .form-field__contents > .search-input .search-input__control, html.rtl + .form-field__contents > .search-input .calendar__control, html.rtl + .form-field__contents > .calendar .search-input__control, html.rtl + .form-field__contents > .calendar .calendar__control { + right: auto; + left: 6px; } + .form-field__contents > .number-input { + display: flex; + padding-right: 6px; } + html.rtl .form-field__contents > .number-input { + padding-right: 0; + padding-left: 6px; } + .form-field__contents > .number-input input[type=number] { + display: inline-block; + flex: 1; border: none; - margin-bottom: 0px; - padding-top: 0px; - padding-bottom: 0px; - opacity: 0; - overflow: hidden; - max-height: 0px; - transition: max-height 0.2s, all 0.4s; } } - .form-field--error { - z-index: 1; - border-color: #FF856B; } - .form-field--focus { - z-index: 2; - border-color: #c3a4fe; } + padding: 0 24px; } + .form-field__contents > .number-input input[type=number]:focus { + padding: 0 24px; } + .form--compact .form-field__contents > .number-input input[type=number] { + width: 144px; } + .form-field__contents > input[type=file] { + display: inline-block; } + .form-field__contents > .table--selectable { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .form-field__contents > .table--selectable table { + margin-bottom: 0px; } + .form-field__contents > .table--selectable table td:first-child, + .form-field__contents > .table--selectable table th:first-child { + padding-left: 24px; } + .form-field__contents > .form-field { + width: auto; + margin-top: 12px; + border: none; } + .form-field__contents > .form-field > .form-field__label { + border-top: 1px solid rgba(0, 0, 0, 0.15); + padding-top: 6px; } + +.form-field__contents--hidden { + margin-top: 0px; } + +.form-field__help { + display: block; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.84615; + color: #777; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__help { + color: rgba(255, 255, 255, 0.85); } + +.form-field__error { + display: block; + float: right; + color: #FF856B; + line-height: 24px; } + html.rtl .form-field__error { + float: left; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .form-field__error { + color: rgba(255, 255, 255, 0.85); } + +.form-field--text { + cursor: pointer; } + .form-field--text .form-field__label { + cursor: pointer; } + +@media screen and (max-width: 44.9375em) { + .form-field--hidden { + display: none; } } + +@media screen and (min-width: 45em) { + .form-field--hidden { + border: none; + margin-bottom: 0px; + padding-top: 0px; + padding-bottom: 0px; + opacity: 0; + overflow: hidden; + max-height: 0px; + transition: max-height 0.2s, all 0.4s; } } + +.form-field--error { + z-index: 1; + border-color: #FF856B; } + +.form-field--focus { + z-index: 2; + border-color: #c3a4fe; } .header { - height: 72px; + min-height: 72px; width: 100%; margin-bottom: 0px; } - .header--large { - height: 96px; } - .header--small { - height: 48px; } - .header.box > *:not(:last-child) { - margin-right: 12px; } .header a { color: inherit; text-decoration: none; } @@ -2909,37 +3052,40 @@ button:not(.button) { .header .status-icon { flex-grow: 0; flex-shrink: 0; } - .header > span { - white-space: nowrap; - text-overflow: ellipsis; - overflow: hidden; } + +.header--large { + min-height: 96px; } + .header--large .header__content { + line-height: 96px; } + +.header--small { + min-height: 48px; } + .header--small .header__content { + line-height: 48px; } header.header { font-size: 24px; font-size: 1.5rem; - line-height: inherit; - -webkit-transform: translate(0, 0); - transform: translate(0, 0); - transition: -webkit-transform 0.5s; - transition: transform 0.5s; } - *:not(.header__container--float) > header.header--float { - position: absolute; - top: 0px; - left: 0px; - right: 0px; } - header.header--primary .header__wrapper { - border-bottom: none; } + line-height: inherit; } header.header h1, header.header h2, header.header h3, header.header h4, header.header h5 { margin-bottom: 0; } - header.header.header--splash { - -webkit-transform: translate(0, 40vh); - transform: translate(0, 40vh); } - header.header.box--direction-row > * { - margin-bottom: 0px; } + +.header--splash { + -webkit-transform: translate(0, 40vh); + transform: translate(0, 40vh); } + +*:not(.header__container--float) > header.header--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; } + +header.header--primary .header__wrapper { + border-bottom: none; } .header:not(header).box--separator-top { padding-top: 6px; } @@ -2947,45 +3093,41 @@ header.header { .header:not(header).box--separator-bottom { padding-bottom: 6px; } -div.header__container { +.header__container { flex-shrink: 0; } - div.header__container--fixed { - position: relative; } - div.header__container--fixed .header__wrapper { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - z-index: 3; } - @media screen and (min-width: 45em) { - div.header__container--fixed .header__wrapper .header { - position: fixed; } - div.header__container--fixed .header__wrapper .header:not(.header--float) { - background-color: rgba(255, 255, 255, 0.9); } } - div.header__container--float { + +.header__container--fixed { + position: relative; } + .header__container--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; right: 0px; - padding-left: 24px; - padding-right: 24px; } + z-index: 3; } + @media screen and (min-width: 45em) { + .header__container--fixed .header__wrapper .header { + position: fixed; } + .header__container--fixed .header__wrapper .header:not(.header--float) { + background-color: rgba(255, 255, 255, 0.9); } } + +.header__container--float { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + padding-left: 24px; + padding-right: 24px; } -div.header__wrapper { +.header__wrapper { height: 72px; } -div.header--large .header__wrapper { +.header__wrapper--large { height: 96px; } -div.header--large .header__content { - line-height: 96px; } - -div.header--small .header__wrapper { +.header__wrapper--small { height: 48px; } -div.header--small .header__content { - line-height: 48px; } - -div.header--fixed .header__wrapper { +.header--fixed .header__wrapper { position: absolute; top: 0px; left: 0px; @@ -2993,18 +3135,115 @@ div.header--fixed .header__wrapper { background-color: rgba(255, 255, 255, 0.9); z-index: 3; } -div.header--fixed.header--primary .header__wrapper { +.header--fixed.header--primary .header__wrapper { position: fixed; background-color: rgba(255, 255, 255, 0.9); } -div.header--fixed.header--primary .header__content { +.header--fixed.header--primary .header__content { position: static; background-color: transparent; } -div.header--flush .header__wrapper { +.header--flush .header__wrapper { padding-left: 0px; padding-right: 0px; } +h1.heading, +h2.heading, +h3.heading, +h4.heading, +h5.heading, +h6.heading { + margin-bottom: 12px; + line-height: 1; } + h1.heading--large, + h2.heading--large, + h3.heading--large, + h4.heading--large, + h5.heading--large, + h6.heading--large { + font-size: 125%; } + h1.heading--small, + h2.heading--small, + h3.heading--small, + h4.heading--small, + h5.heading--small, + h6.heading--small { + font-size: 75%; } + h1.heading--strong, + h2.heading--strong, + h3.heading--strong, + h4.heading--strong, + h5.heading--strong, + h6.heading--strong { + font-weight: 600; } + h1.heading--align-start, + h2.heading--align-start, + h3.heading--align-start, + h4.heading--align-start, + h5.heading--align-start, + h6.heading--align-start { + text-align: left; } + html.rtl h1.heading--align-start, html.rtl + h2.heading--align-start, html.rtl + h3.heading--align-start, html.rtl + h4.heading--align-start, html.rtl + h5.heading--align-start, html.rtl + h6.heading--align-start { + text-align: right; } + h1.heading--align-center, + h2.heading--align-center, + h3.heading--align-center, + h4.heading--align-center, + h5.heading--align-center, + h6.heading--align-center { + text-align: center; } + h1.heading--align-right, + h2.heading--align-right, + h3.heading--align-right, + h4.heading--align-right, + h5.heading--align-right, + h6.heading--align-right { + text-align: right; } + html.rtl h1.heading--align-right, html.rtl + h2.heading--align-right, html.rtl + h3.heading--align-right, html.rtl + h4.heading--align-right, html.rtl + h5.heading--align-right, html.rtl + h6.heading--align-right { + text-align: left; } + h1.heading--margin-none, + h2.heading--margin-none, + h3.heading--margin-none, + h4.heading--margin-none, + h5.heading--margin-none, + h6.heading--margin-none { + margin-top: 0; + margin-bottom: 0; } + h1.heading--margin-small, + h2.heading--margin-small, + h3.heading--margin-small, + h4.heading--margin-small, + h5.heading--margin-small, + h6.heading--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + h1.heading--margin-medium, + h2.heading--margin-medium, + h3.heading--margin-medium, + h4.heading--margin-medium, + h5.heading--margin-medium, + h6.heading--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + h1.heading--margin-large, + h2.heading--margin-large, + h3.heading--margin-large, + h4.heading--margin-large, + h5.heading--margin-large, + h6.heading--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + .headline { font-size: 48px; font-size: 3rem; @@ -3015,19 +3254,40 @@ div.header--flush .header__wrapper { .headline--large { font-size: 60px; font-size: 3.75rem; - line-height: 1.2; } + line-height: 1; } .headline--small { font-size: 30px; font-size: 1.875rem; - line-height: 1.6; } + line-height: 1; } .headline--strong { font-weight: 600; } + .headline--align-start { + text-align: left; } + html.rtl .headline--align-start { + text-align: right; } + .headline--align-center { + text-align: center; } + .headline--align-right { + text-align: right; } + html.rtl .headline--align-right { + text-align: left; } + .headline--margin-none { + margin-top: 0; + margin-bottom: 0; } + .headline--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .headline--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .headline--margin-large { + margin-top: 48px; + margin-bottom: 48px; } .control-icon { display: inline-block; width: 24px; height: 24px; - vertical-align: middle; cursor: pointer; fill: #999; stroke: #999; @@ -3126,24 +3386,30 @@ div.header--flush .header__wrapper { .control-icon { transition: all 0.3s ease-in-out; } } a:hover .control-icon, - .anchor:hover:not(.anchor--disabled) .control-icon, - .button:hover:not(.anchor--disabled) .control-icon, + .anchor:hover .control-icon, + .button:hover .control-icon, .menu__control:hover .control-icon { fill: #000; stroke: #000; } + .anchor.anchor--disabled:hover .control-icon { + fill: #999; + stroke: #999; } + .button.button--disabled:hover .control-icon { + fill: #999; + stroke: #999; } .control-icon__badge circle { fill: #c3a4fe; } .control-icon__badge text { stroke: #333; fill: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .control-icon:not([class*="color-index"]), .button--primary .control-icon { - fill: #dbdbdb; - stroke: #dbdbdb; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) a:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .anchor:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .button:hover > .control-icon, - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .menu__control:hover > .control-icon, + fill: rgba(255, 255, 255, 0.7); + stroke: rgba(255, 255, 255, 0.7); } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) a:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .anchor:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .button:hover > .control-icon, + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover > .control-icon, .button--primary:hover .control-icon { fill: #fff; stroke: #fff; } @@ -3153,6 +3419,9 @@ div.header--flush .header__wrapper { .control-icon--large { width: 48px; height: 48px; } + .control-icon--huge { + width: 288px; + height: 288px; } .status-icon { width: 24px; @@ -3184,6 +3453,9 @@ div.header--flush .header__wrapper { .status-icon--large { width: 48px; height: 48px; } + .status-icon--huge { + width: 288px; + height: 288px; } .status-icon--small { width: 12px; height: 12px; @@ -3275,6 +3547,9 @@ div.header--flush .header__wrapper { .logo-icon--large { width: 96px; height: 96px; } + .logo-icon--huge { + width: 288px; + height: 288px; } .right-left-icon--left { display: none; } @@ -3294,6 +3569,12 @@ html.rtl .right-left-icon--right { .image--small { width: 240px; } +.image--thumb { + width: 48px; + height: 48px; + flex: 0 0 auto; + object-fit: cover; } + .image--full { width: 100%; height: 100%; } @@ -3304,146 +3585,143 @@ html.rtl .right-left-icon--right { .image--full-vertical { height: 100%; } -@media screen and (max-width: 44.9375em) { - .label__text { - display: none; } } - -@media screen and (min-width: 45em) { - .label__icon { - display: none; } } - -a.active > .label .label__icon.control-icon svg { - fill: #000; - stroke: #000; } +.label { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + margin-bottom: 24px; } + .label--uppercase { + text-transform: uppercase; + letter-spacing: 0.2em; } + .label--align-start { + text-align: left; } + html.rtl .label--align-start { + text-align: right; } + .label--align-center { + text-align: center; } + .label--align-right { + text-align: right; } + html.rtl .label--align-right { + text-align: left; } + .label--margin-none { + margin-top: 0; + margin-bottom: 0; } + .label--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + .label--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + .label--margin-large { + margin-top: 48px; + margin-bottom: 48px; } -.layer { +.grommet.layer { position: relative; - z-index: 10; } + z-index: 10; + background-color: rgba(0, 0, 0, 0.5); + height: 100vh; } @media screen and (min-width: 45em) { - .layer { + .grommet.layer { position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; } } @media screen and (max-width: 44.9375em) { - .layer:not(.layer--hidden) + .app { + .grommet.layer:not(.layer--hidden) + .app { display: none; } } - .layer__container { + .grommet.layer .layer__container { background-color: #fff; } @media screen and (max-width: 44.9375em) { - .layer__container { + .grommet.layer .layer__container { padding: 0 24px; - border-bottom: 1px solid #ccc; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } + min-height: 100vh; + min-width: 100vw; } } @media screen and (min-width: 45em) { - .layer__container { + .grommet.layer .layer__container { position: absolute; max-height: 100%; max-width: 100%; overflow: auto; padding: 0 48px; border-radius: 4px; - box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3); } } - .layer__closer { + box-shadow: none; } } + .grommet.layer .layer__closer { position: absolute; top: 0px; right: 0px; z-index: 1; } - html.rtl .layer__closer { + .grommet.rtl .grommet.layer .layer__closer { right: auto; left: 0px; } - .layer--flush .layer__container { + .grommet.layer.layer--flush .layer__container { padding: 0px; } @media screen and (min-width: 45em) { - .layer--align-center:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-center:not(.layer--hidden) .layer__container { - left: 50%; - top: 50%; - max-height: calc(100vh - 48px); - max-width: calc(100vw - 48px); - transform: translate(-50%, -50%); } } - @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-center:not(.layer--hidden) .layer__container { + left: 50%; + top: 50%; + max-height: calc(100vh - 48px); + max-width: calc(100vw - 48px); + transform: translate(-50%, -50%); } } + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - left: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + left: 0px; } @media screen and (min-width: 45em) { - .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { left: auto; right: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-left:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at right, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { top: 0px; bottom: 0px; - right: 0px; - display: flex; - flex-direction: column; - justify-content: center; } + right: 0px; } @media screen and (min-width: 45em) { - .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-left 0.2s ease-in-out forwards; animation: slide-left 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) { - background-image: radial-gradient(circle at left, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { right: auto; left: 0px; } @media screen and (min-width: 45em) { - html.rtl .layer--align-right:not(.layer--hidden) .layer__container { + .grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container { -webkit-animation: slide-right 0.2s ease-in-out forwards; animation: slide-right 0.2s ease-in-out forwards; } } @media screen and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) { - background-image: radial-gradient(circle at top, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } - .layer--align-top:not(.layer--hidden) .layer__container { - left: 50%; - transform: translateX(-50%); } } - @media screen and (min-width: 45em) and (min-width: 45em) { - .layer--align-top:not(.layer--hidden) .layer__container { - -webkit-animation: slide-down 0.2s ease-in-out forwards; - animation: slide-down 0.2s ease-in-out forwards; } } - @media screen and (min-width: 45em) { - .layer--align-bottom:not(.layer--hidden) { - background-image: radial-gradient(circle at bottom, #fff, #fff 20%, rgba(128, 128, 128, 0.6)); } } - .layer--align-bottom:not(.layer--hidden) .layer__container { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + left: 50%; + transform: translateX(-50%); } } + @media screen and (min-width: 45em) and (min-width: 45em) { + .grommet.layer.layer--align-top:not(.layer--hidden) .layer__container { + -webkit-animation: slide-down 0.2s ease-in-out forwards; + animation: slide-down 0.2s ease-in-out forwards; } } + .grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container { bottom: 0px; } - .layer--hidden { - left: -10000px; + .grommet.layer.layer--hidden { + left: -100vw; + right: 100vw; z-index: -1; } - .layer--hidden.layer--align-left { + .grommet.layer.layer--hidden.layer--align-left { right: auto; } - .layer--hidden.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--align-left .layer__container { left: -100vw; } @media screen and (max-width: 44.9375em) { - .layer--hidden { + .grommet.layer.layer--hidden { display: none; } } @media screen and (min-width: 45em) { - .layer--hidden.layer--peek { + .grommet.layer.layer--hidden.layer--peek { left: 0; z-index: 10; } - .layer--hidden.layer--peek.layer--align-left { + .grommet.layer.layer--hidden.layer--peek.layer--align-left { right: auto; } - .layer--hidden.layer--peek.layer--align-left .layer__container { + .grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container { left: auto; right: -12px; border-right: 10px solid #8C50FF; @@ -3513,6 +3791,8 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; } .list .list-item { max-width: none; } + .list .list-item:focus { + outline: #c3a4fe solid 1px; } .list .list-item__image { height: 24px; width: 24px; @@ -3532,7 +3812,7 @@ a.active > .label .label__icon.control-icon svg { .list .list-item--selectable { cursor: pointer; } .list .list-item--selectable:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .list .list-item--selected { background-color: #d9c5ff; color: #333; } @@ -3545,7 +3825,7 @@ a.active > .label .label__icon.control-icon svg { background-color: #d9c5ff; color: #333; } .list--selectable .list-item:hover:not(.list-item--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .list--small .list-item__image, .list--small .list__more__image { @@ -3561,201 +3841,213 @@ a.active > .label .label__icon.control-icon svg { list-style-type: none; white-space: normal; display: inline-block; - margin: 0px; } + margin: 0px; + line-height: 24px; } html.rtl .legend { text-align: right; } - .legend__item, .legend__total { - color: #777; } - .legend__item > *, .legend__total > * { - vertical-align: top; } - .legend__item-label, .legend__total-label { - display: inline-block; - width: 72px; } - .legend__item-value, .legend__total-value { - display: inline-block; - width: 72px; - text-align: right; } - html.rtl .legend__item-value, html.rtl .legend__total-value { - text-align: left; } - .legend__item-units, .legend__total-units { - display: inline-block; - margin-left: 6px; } - html.rtl .legend__item-units, html.rtl .legend__total-units { - margin-left: 0; - margin-right: 6px; } - .legend__item--clickable { - cursor: pointer; } - .legend__item svg.legend__item-swatch { - width: 12px; - height: 12px; - margin-top: 6px; - margin-right: 12px; - overflow: visible; } - .legend__item svg.legend__item-swatch.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .legend__item svg.legend__item-swatch.color-index-unset { - stroke: #ddd; } - .legend__item svg.legend__item-swatch.color-index-brand { - stroke: #8C50FF; } - .legend__item svg.legend__item-swatch.color-index-critical { - stroke: #FF856B; } - .legend__item svg.legend__item-swatch.color-index-error { - stroke: #FF856B; } - .legend__item svg.legend__item-swatch.color-index-warning { - stroke: #FFB86B; } - .legend__item svg.legend__item-swatch.color-index-ok { - stroke: #4EB976; } - .legend__item svg.legend__item-swatch.color-index-unknown { - stroke: #a8a8a8; } - .legend__item svg.legend__item-swatch.color-index-disabled { - stroke: #a8a8a8; } - .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-6 { - stroke: #c3a4fe; } - .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-7 { - stroke: #a577ff; } - .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-8 { - stroke: #5d0cfb; } - .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-9 { - stroke: #7026ff; } - .legend__item svg.legend__item-swatch.color-index-graph-5, .legend__item svg.legend__item-swatch.color-index-graph-10 { - stroke: #767676; } - .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-5 { - stroke: #333333; } - .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-6 { - stroke: #444444; } - .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-7 { - stroke: #555555; } - .legend__item svg.legend__item-swatch.color-index-grey-4, .legend__item svg.legend__item-swatch.color-index-grey-8 { - stroke: #666666; } - .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-3 { - stroke: #c3a4fe; } - .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-4 { - stroke: #a577ff; } - .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { - stroke: #ffffff; } - .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { - stroke: #f5f5f5; } - html.rtl .legend__item svg.legend__item-swatch { - margin-right: 0; - margin-left: 12px; } - .legend__item svg.legend__item-swatch path { - stroke-width: 12px; - transition-property: stroke-width; - transition-duration: 0.3s; - transition-timing-function: ease-in-out; } - .legend__item--active { - color: #333; } - .legend__item--active svg.legend__item-swatch path { - stroke-width: 12px; } - .legend__total { - margin-left: 24px; } - html.rtl .legend__total { - margin-left: 0; - margin-right: 24px; } - .legend__total > * { - margin-top: 6px; - padding-top: 6px; - border-top: 1px dotted #ccc; } - .legend--single .legend__item-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 1.33333; - font-weight: bold; - width: auto; } - .legend--single .legend__item-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .legend--single .legend__item-units { - margin-left: 0; - margin-right: 6px; } -.login { - position: absolute; - top: 0px; - left: 0px; - right: 0px; - bottom: 0px; - overflow: hidden; - z-index: 100; } - .login__background { - position: absolute; - max-width: none; } - .login__background--portrait { - width: auto; - height: 100%; } - .login__background--landscape { - height: auto; - width: 100%; } - .login__container { - position: relative; - width: 384px; - margin: 96px auto; - z-index: 1; - -webkit-animation-name: fadein; - -webkit-animation-duration: 0.5s; - animation-name: fadein; - animation-duration: 0.5s; } - @media screen and (max-width: 44.9375em) { - .login__container { - margin: 48px 0px; - width: 100%; - border-radius: 0px; } } - .login__footer { - position: absolute; - left: 0px; - right: 0px; - bottom: 6px; - padding: 6px 24px; - background-color: rgba(255, 255, 255, 0.9); - text-align: center; } +.legend__item, +.legend__total { + color: #777; } + .legend__item > *, + .legend__total > * { + vertical-align: top; } -.login-form { - position: relative; - width: 384px; - padding: 24px; - padding-bottom: 48px; - background-color: #fff; - text-align: center; - z-index: 1; - -webkit-animation-name: fadein; - -webkit-animation-duration: 0.5s; - animation-name: fadein; - animation-duration: 0.5s; } - @media screen and (max-width: 44.9375em) { - .login-form { - width: 100%; - border-radius: 0px; } } - .login-form__secondary-text { - color: #777; } - .login-form fieldset { - text-align: left; - border: none; - margin-bottom: 0px; } - .login-form fieldset > * { - width: 100%; - display: block; } - .login-form__remember-me { - display: block; - margin-top: 24px; +.legend__item-label, +.legend__total-label { + display: inline-block; + min-width: 72px; + text-align: left; } + +.legend__item-value, +.legend__total-value { + display: inline-block; + width: 72px; + text-align: right; } + html.rtl .legend__item-value, html.rtl + .legend__total-value { text-align: left; } + +.legend__item-units, +.legend__total-units { + display: inline-block; + margin-left: 6px; } + html.rtl .legend__item-units, html.rtl + .legend__total-units { + margin-left: 0; + margin-right: 6px; } + +.legend__item svg.legend__item-swatch { + width: 12px; + height: 12px; + margin-top: 6px; + margin-right: 12px; + overflow: visible; } + .legend__item svg.legend__item-swatch.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + .legend__item svg.legend__item-swatch.color-index-unset { + stroke: #ddd; } + .legend__item svg.legend__item-swatch.color-index-brand { + stroke: #8C50FF; } + .legend__item svg.legend__item-swatch.color-index-critical { + stroke: #FF856B; } + .legend__item svg.legend__item-swatch.color-index-error { + stroke: #FF856B; } + .legend__item svg.legend__item-swatch.color-index-warning { + stroke: #FFB86B; } + .legend__item svg.legend__item-swatch.color-index-ok { + stroke: #4EB976; } + .legend__item svg.legend__item-swatch.color-index-unknown { + stroke: #a8a8a8; } + .legend__item svg.legend__item-swatch.color-index-disabled { + stroke: #a8a8a8; } + .legend__item svg.legend__item-swatch.color-index-graph-1, .legend__item svg.legend__item-swatch.color-index-graph-6 { + stroke: #c3a4fe; } + .legend__item svg.legend__item-swatch.color-index-graph-2, .legend__item svg.legend__item-swatch.color-index-graph-7 { + stroke: #a577ff; } + .legend__item svg.legend__item-swatch.color-index-graph-3, .legend__item svg.legend__item-swatch.color-index-graph-8 { + stroke: #5d0cfb; } + .legend__item svg.legend__item-swatch.color-index-graph-4, .legend__item svg.legend__item-swatch.color-index-graph-9 { + stroke: #7026ff; } + .legend__item svg.legend__item-swatch.color-index-graph-5, .legend__item svg.legend__item-swatch.color-index-graph-10 { + stroke: #767676; } + .legend__item svg.legend__item-swatch.color-index-grey-1, .legend__item svg.legend__item-swatch.color-index-grey-5 { + stroke: #333333; } + .legend__item svg.legend__item-swatch.color-index-grey-2, .legend__item svg.legend__item-swatch.color-index-grey-6 { + stroke: #444444; } + .legend__item svg.legend__item-swatch.color-index-grey-3, .legend__item svg.legend__item-swatch.color-index-grey-7 { + stroke: #555555; } + .legend__item svg.legend__item-swatch.color-index-grey-4, .legend__item svg.legend__item-swatch.color-index-grey-8 { + stroke: #666666; } + .legend__item svg.legend__item-swatch.color-index-accent-1, .legend__item svg.legend__item-swatch.color-index-accent-3 { + stroke: #c3a4fe; } + .legend__item svg.legend__item-swatch.color-index-accent-2, .legend__item svg.legend__item-swatch.color-index-accent-4 { + stroke: #a577ff; } + .legend__item svg.legend__item-swatch.color-index-light-1, .legend__item svg.legend__item-swatch.color-index-light-3 { + stroke: #ffffff; } + .legend__item svg.legend__item-swatch.color-index-light-2, .legend__item svg.legend__item-swatch.color-index-light-4 { + stroke: #f5f5f5; } + html.rtl .legend__item svg.legend__item-swatch { + margin-right: 0; + margin-left: 12px; } + .legend__item svg.legend__item-swatch path { + stroke-width: 12px; + transition-property: stroke-width; + transition-duration: 0.3s; + transition-timing-function: ease-in-out; } + +.legend__item--clickable { + cursor: pointer; } + +.legend__item--active { + color: #333; } + .legend__item--active svg.legend__item-swatch path { + stroke-width: 12px; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .legend__item--active { + color: #fff; } + +li.legend__total { + margin-left: 24px; } + html.rtl li.legend__total { + margin-left: 0; + margin-right: 24px; } + li.legend__total > * { + margin-top: 6px; + padding-top: 6px; + border-top: 1px dotted rgba(0, 0, 0, 0.15); } + +.legend--single .legend__item-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 1.33333; + font-weight: bold; + width: auto; } + +.legend--single .legend__item-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .legend--single .legend__item-units { + margin-left: 0; + margin-right: 6px; } + +.login { + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + overflow: hidden; + z-index: 100; } + .login__background { + position: absolute; + max-width: none; } + .login__background--portrait { + width: auto; + height: 100%; } + .login__background--landscape { + height: auto; + width: 100%; } + .login__container { + position: relative; + width: 384px; + margin: 96px auto; + z-index: 1; + -webkit-animation-name: fadein; + -webkit-animation-duration: 0.5s; + animation-name: fadein; + animation-duration: 0.5s; } + @media screen and (max-width: 44.9375em) { + .login__container { + margin: 48px 0px; + width: 100%; + border-radius: 0px; } } + .login__footer { + position: absolute; + left: 0px; + right: 0px; + bottom: 6px; + padding: 6px 24px; + background-color: rgba(255, 255, 255, 0.9); + text-align: center; } + +.login-form { + position: relative; + padding: 24px; + background-color: #fff; + z-index: 1; + -webkit-animation-name: fadein; + -webkit-animation-duration: 0.5s; + animation-name: fadein; + animation-duration: 0.5s; } + @media screen and (max-width: 44.9375em) { + .login-form { + width: 100%; } } + .login-form__header { + text-align: center; } + .login-form fieldset { + margin-bottom: 0; } .login-form__submit { - margin-top: 24px; - width: 100%; } - .login-form__error { - margin-bottom: 12px; - color: #FF856B; + width: 100%; + max-width: none; } + .login-form--align-start .login-form__header { text-align: left; } - .login-form__footer { - margin-top: 12px; - display: flex; - justify-content: space-between; - line-height: 36px; } + html.rtl .login-form--align-start .login-form__header { + text-align: right; } + .login-form--align-start .login-form__submit { + width: auto; } + .login-form--align-end .login-form__header { + text-align: right; } + html.rtl .login-form--align-end .login-form__header { + text-align: left; } + .login-form--align-end .login-form__submit { + width: auto; } .map { position: relative; @@ -3791,7 +4083,7 @@ a.active > .label .label__icon.control-icon svg { .map__item { display: inline-block; width: 192px; - border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); margin-right: 12px; margin-bottom: 12px; background-color: #fff; @@ -3805,7 +4097,7 @@ a.active > .label .label__icon.control-icon svg { .map__item > a > * { display: inline-block; } .map__item > a:hover { - background-color: rgba(0, 0, 0, 0.1); } + background-color: rgba(221, 221, 221, 0.5); } .map__item .status-icon { margin-right: 6px; } .map__item--active { @@ -3815,7 +4107,7 @@ a.active > .label .label__icon.control-icon svg { position: relative; font-size: 19px; font-size: 1.1875rem; - line-height: inherit; } + line-height: 1.26316; } .menu:focus { outline: none; } .menu:focus:not(.menu--expanded):after { @@ -3830,180 +4122,208 @@ a.active > .label .label__icon.control-icon svg { pointer-events: none; } .menu > * { flex: 0 0 auto; } - .menu a:not(.button) { + .menu a:not(.button), + .menu .anchor { text-decoration: none; } - .menu a:not(.button):hover { + .menu a:not(.button):hover, + .menu .anchor:hover { + text-decoration: none; color: #6e22ff; } - .menu a:not(.button).active { + .menu a:not(.button).active, + .menu .anchor.active { color: #6e22ff; } - .menu__control .control-icon-down { - width: 12px; - height: 12px; } - .menu__control .control-icon-down path, - .menu__control .control-icon-down polyline { - stroke-width: 4px; } - .menu__drop { - font-size: 16px; - font-size: 1rem; - line-height: inherit; - max-height: 100vh; } - .menu__drop .anchor { - padding: 12px 24px; - white-space: nowrap; - display: block; } - .menu__drop .anchor:hover, .menu__drop .anchor:focus { - text-decoration: none; - background-color: rgba(0, 0, 0, 0.1); } - .menu__drop .check-box, - .menu__drop .radio-button { - margin-top: 12px; - margin-bottom: 12px; } - .menu__drop--align-right { - text-align: right; } - html.rtl .menu__drop--align-right { - text-align: left; } - .menu__drop--align-right .menu__contents { - text-align: left; } - html.rtl .menu__drop--align-right .menu__contents { - text-align: right; } - .menu__drop--large .menu__control { - line-height: 96px; } - .menu--controlled { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu a:not(.button).active, [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) + .menu .anchor.active { + color: #fff; } + .menu.menu--controlled { display: inline-block; cursor: pointer; } - .menu--controlled.menu--large { - line-height: 96px; } - .menu--controlled.menu--small { - height: 24px; } + +.menu__control:focus:not(.button--disabled) { + box-shadow: inset 0 0 1px 2px #c3a4fe; } + +[class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .menu__control:hover .menu__control-label { + color: #fff; } + +.menu__control .control-icon-down { + width: 12px; + height: 12px; } + .menu__control .control-icon-down path, + .menu__control .control-icon-down polyline { + stroke-width: 4px; } + +@media screen and (min-width: 45em) { + .menu__control.menu--labelled .control-icon { + transition: none; } } + +.menu__drop { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; + max-height: 100vh; } + .menu__drop a:not(.anchor--disabled) { + text-decoration: none; } + .menu__drop a:not(.anchor--disabled):hover { + text-decoration: none; } + .menu__drop .anchor { + padding: 12px 24px; + white-space: nowrap; + display: block; + text-decoration: none; } + .menu__drop .anchor:hover, .menu__drop .anchor:focus { + text-decoration: none; + background-color: rgba(221, 221, 221, 0.5); } + .menu__drop .menu__control { + text-align: left; } + .grommet.rtl .menu__drop .menu__control { + text-align: right; } + .menu__drop .menu__label { + padding: 12px 24px; + font-weight: 600; } + .menu__drop.menu__drop--align-right { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__control { + text-align: right; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__control { + text-align: left; } + .menu__drop.menu__drop--align-right .menu__contents { + text-align: left; } + .grommet.rtl .menu__drop.menu__drop--align-right .menu__contents { + text-align: right; } + .menu__drop.menu__drop--small { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + .menu__drop.menu__drop--large { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.menu--inline.menu--row { + line-height: 48px; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-left: 24px; margin-right: 0; } .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon) { margin-right: 24px; margin-left: 0; } - html.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { + .grommet.rtl .menu--inline.menu--row.box--justify-end > *:not(.control-icon):first-child { margin-right: 0; } .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-left: 0; margin-right: 24px; } .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-right: 0; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button) { margin-right: 0; margin-left: 24px; } - html.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { + .grommet.rtl .menu--inline.menu--row > *:not(.control-icon):not(.button):last-child { margin-left: 0; } - @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--direction-row.box--responsive > * { - margin-right: 0; } - html.rtl .menu--inline.menu.box--direction-row.box--responsive > * { - margin-left: 0; } } - .menu--inline.menu.box--direction-column a:not(.button) { - margin-bottom: 6px; } - .menu--small { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .menu--small .menu__control-drop-icon { - margin-left: 6px; } - html.rtl .menu--small .menu__control-drop-icon { - margin-left: 0; - margin-right: 6px; } - .menu--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--primary > .menu { - width: 100%; } - .menu--primary > a:not(.button) { - padding: 6px 24px; - margin-bottom: 0px; - width: 100%; - border-width: 6px; - border-color: transparent; - border-right-style: solid; } - html.rtl .menu--primary > a:not(.button) { - border-right-style: none; - border-left-style: solid; } - .menu--primary > a:not(.button):hover { - text-decoration: none; } - .menu--primary > a:not(.button):hover:not(.active) { - background-color: rgba(0, 0, 0, 0.1); } - .menu--primary > a:not(.button).active { - border-color: #8C50FF; } - @media screen and (max-width: 44.9375em) { - .menu--primary.menu--down { - display: block; } - .menu--primary.menu--down > * { - display: block; } } -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h2, -.menu--inline.menu.box--direction-column > .menu:not(:first-of-type) h3, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, -.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { - margin-top: 24px; } +@media screen and (max-width: 44.9375em) { + .menu--inline.box--direction-row.box--responsive > * { + margin-right: 0; } + .grommet.rtl .menu--inline.box--direction-row.box--responsive > * { + margin-left: 0; } } + +.menu--inline.box--direction-column a:not(.button) { + margin-bottom: 6px; } + +.menu--inline.menu--small { + font-size: 16px; + font-size: 1rem; + line-height: inherit; } + +.menu--inline.menu--large { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; } + +.menu--primary > .menu { + width: 100%; } + +.menu--primary > a:not(.button) { + padding: 6px 24px; + margin-bottom: 0px; + width: 100%; + border-width: 4px; + border-color: transparent; + border-right-style: solid; } + .grommet.rtl .menu--primary > a:not(.button) { + border-right-style: none; + border-left-style: solid; } + .menu--primary > a:not(.button):hover { + text-decoration: none; } + .menu--primary > a:not(.button):hover:not(.active) { + background-color: rgba(221, 221, 221, 0.5); } + .menu--primary > a:not(.button).active { + border-color: #8C50FF; } + +@media screen and (max-width: 44.9375em) { + .menu--primary.menu--down { + display: block; } + .menu--primary.menu--down > * { + display: block; } } -.menu--inline.menu > hr, +.menu--inline.menu:not(.box--direction-row) > hr, .menu__drop > hr { margin: 12px 24px 18px; height: 1px; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); border: none; } -.menu--inline.menu.box.box--separator-top, +.menu--inline.menu:not(.box--direction-row) .menu__control-label, +.menu__drop .menu__control-label { + font-size: 19px; } + +.menu--inline.menu:not(.box--direction-row) a, +.menu__drop a { + text-decoration: none; } + +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h2, +.menu--inline.menu:not(.box--direction-row).box--direction-column > .menu:not(:first-of-type) h3, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h2, +.menu__drop.box--direction-column > .menu:not(:first-of-type) h3 { + margin-top: 24px; } + +.menu--inline.menu:not(.box--direction-row).box.box--separator-top, .menu__drop.box.box--separator-top { border-color: transparent; } - .menu--inline.menu.box.box--separator-top:before, + .menu--inline.menu:not(.box--direction-row).box.box--separator-top:before, .menu__drop.box.box--separator-top:before { content: ''; margin: 12px 24px 18px; height: 1px; - background-color: #ccc; } - -.menu--inline.menu--small, -.menu__drop--small { - font-size: 1em; } - .menu--inline.menu--small .menu__control-label, - .menu__drop--small .menu__control-label { - padding: 12px; } - .menu--inline.menu--small .menu__control-icon svg, - .menu__drop--small .menu__control-icon svg { - width: 18px; - height: 18px; } - .menu--inline.menu--small > a, - .menu__drop--small > a { - padding: 6px 12px; } - -.menu--inline.menu .menu__control-label, -.menu__drop .menu__control-label { - font-size: 19px; } + background-color: rgba(0, 0, 0, 0.15); } -.menu--inline.menu a, -.menu__drop a { - text-decoration: none; } +.menu--inline.menu:not(.box--direction-row).menu--small > a, +.menu__drop.menu--small > a { + padding: 6px 0; } -.menu--inline.menu--large > a, -.menu__drop--large > a { - padding: 24px 48px; } +.menu--inline.menu:not(.box--direction-row).menu--large > a, +.menu__drop.menu--large > a { + padding: 24px 0; } @media screen and (max-width: 44.9375em) { - .menu--inline.menu.box--responsive > *, + .menu--inline.menu:not(.box--direction-row).box--responsive > *, .menu__drop.box--responsive > * { margin-left: 0px; margin-right: 0px; } - .menu--inline.menu.box--responsive .button, + .menu--inline.menu:not(.box--direction-row).box--responsive .button, .menu__drop.box--responsive .button { width: 100%; margin-bottom: 12px; } - .menu--inline.menu.box--responsive .menu, + .menu--inline.menu:not(.box--direction-row).box--responsive .menu, .menu__drop.box--responsive .menu { margin-bottom: 36px; } } @media screen and (max-width: 44.9375em) { .menu__drop { - max-width: 100%; - width: 100vw; } } + max-width: 100%; } } @-webkit-keyframes draw-meter { 0% { @@ -4032,297 +4352,473 @@ a.active > .label .label__icon.control-icon svg { .meter { display: inline-block; position: relative; } - .meter__slice { - stroke-width: 4px; } - .meter__threshold { - stroke: rgba(51, 51, 51, 0.2); } - .meter__value-container { - position: relative; - display: inline-block; } - .meter__graphic-container { - white-space: normal; } - .meter__graphic-container > a { - text-decoration: none; } - .meter__graphic:focus { - outline: #c3a4fe solid 1px; } - .meter__value { - white-space: normal; - pointer-events: none; } - .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter__value-value { - font-size: 36px; - font-size: 2.25rem; - line-height: 38px; - font-weight: bold; } - .meter__value-units { - font-size: 24px; - font-size: 1.5rem; - line-height: inherit; - margin-left: 6px; - color: #777; - font-weight: normal; } - html.rtl .meter__value-units { - margin-left: 0; - margin-right: 6px; } - .meter__value-label { - display: block; } - .meter__minmax-container { - display: block; } - .meter__minmax { - display: flex; - justify-content: space-between; - color: #777; - font-size: 14px; - font-size: 0.875rem; - line-height: 1.71429; } - .meter__label-min, .meter__label-max { - flex: 0 0 48px; } - .meter__label-max { - text-align: right; } - .meter__label { - fill: #777; } - .meter__label--active { - fill: #000; } - .meter--legend-right { - white-space: nowrap; } - .meter--legend-right .meter__legend { - vertical-align: top; - margin-left: 24px; } - html.rtl .meter--legend-right .meter__legend { - margin-left: 0; - margin-right: 24px; } - .meter--legend-right:not(.meter--tall-legend) .meter__legend { - position: relative; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); } - .meter--legend-bottom .meter__legend { - margin-top: 24px; - display: block; } - .meter:not(.meter--vertical) .meter__graphic-container { - display: inline-block; } - .meter:not(.meter--vertical) .meter__minmax-container { - display: block; - width: 192px; } - .meter:not(.meter--vertical) .meter__minmax { - width: 100%; } - .meter:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--vertical .meter__graphic-container { - display: inline-block; - white-space: nowrap; } - .meter--vertical .meter__minmax-container { - height: 192px; } - .meter--vertical .meter__minmax { - flex-direction: column; - height: 100%; } - .meter--vertical .meter__minmax-min { - order: 1; } - .meter--vertical .meter__minmax-max { - order: 0; } - .meter--vertical .meter__label-min, .meter--vertical .meter__label-max { - flex: 0 0 auto; - text-align: left; } - .meter--vertical .meter__label-min { - order: 1; } - .meter--vertical .meter__label-max { - order: 0; } - .meter--vertical .meter__value-label { - display: block; } - .meter--vertical.meter--small .meter__minmax-container { - height: 96px; } - .meter--vertical.meter--large .meter__minmax-container { - height: 288px; } - .meter--small .meter__slice { - stroke-width: 8px; } - .meter--small .meter__values .meter__slice:hover { - stroke-width: 24px; } - .meter--small .meter__value-value { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--large .meter__value-value { - font-size: 64px; - font-size: 4rem; - line-height: 1.125; } - .meter--large .meter__value-units { - font-size: 48px; - font-size: 3rem; - line-height: 1; } - .meter.meter--active .meter__values .meter__slice:hover { - stroke-width: 12px; } - .meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { - stroke-width: 12px; } - .meter--bar .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 192px 192px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--bar .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--bar .meter__values .meter__slice.color-index-brand { - stroke: #8C50FF; } - .meter--bar .meter__values .meter__slice.color-index-critical { - stroke: #FF856B; } - .meter--bar .meter__values .meter__slice.color-index-error { - stroke: #FF856B; } - .meter--bar .meter__values .meter__slice.color-index-warning { - stroke: #FFB86B; } - .meter--bar .meter__values .meter__slice.color-index-ok { - stroke: #4EB976; } - .meter--bar .meter__values .meter__slice.color-index-unknown { - stroke: #a8a8a8; } - .meter--bar .meter__values .meter__slice.color-index-disabled { - stroke: #a8a8a8; } - .meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-6 { - stroke: #c3a4fe; } - .meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-7 { - stroke: #a577ff; } - .meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-8 { - stroke: #5d0cfb; } - .meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-9 { - stroke: #7026ff; } - .meter--bar .meter__values .meter__slice.color-index-graph-5, .meter--bar .meter__values .meter__slice.color-index-graph-10 { - stroke: #767676; } - .meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-5 { - stroke: #333333; } - .meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-6 { - stroke: #444444; } - .meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-7 { - stroke: #555555; } - .meter--bar .meter__values .meter__slice.color-index-grey-4, .meter--bar .meter__values .meter__slice.color-index-grey-8 { - stroke: #666666; } - .meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-3 { - stroke: #c3a4fe; } - .meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-4 { - stroke: #a577ff; } - .meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--bar .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--bar .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-meter 1.5s linear; - animation: draw-meter 1.5s linear; } } - .meter--bar .meter__thresholds .meter__slice.color-index-unset, - .meter--bar .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-brand, - .meter--bar .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(140, 80, 255, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-critical, - .meter--bar .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(255, 133, 107, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-error, - .meter--bar .meter__tracks .meter__slice.color-index-error { - stroke: rgba(255, 133, 107, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-warning, - .meter--bar .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(255, 184, 107, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-ok, - .meter--bar .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(78, 185, 118, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-unknown, - .meter--bar .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(168, 168, 168, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-disabled, - .meter--bar .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(168, 168, 168, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, - .meter--bar .meter__tracks .meter__slice.color-index-graph-1, - .meter--bar .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(195, 164, 254, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, - .meter--bar .meter__tracks .meter__slice.color-index-graph-2, - .meter--bar .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(165, 119, 255, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, - .meter--bar .meter__tracks .meter__slice.color-index-graph-3, - .meter--bar .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(93, 12, 251, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-9, - .meter--bar .meter__tracks .meter__slice.color-index-graph-4, - .meter--bar .meter__tracks .meter__slice.color-index-graph-9 { - stroke: rgba(112, 38, 255, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-graph-5, .meter--bar .meter__thresholds .meter__slice.color-index-graph-10, - .meter--bar .meter__tracks .meter__slice.color-index-graph-5, - .meter--bar .meter__tracks .meter__slice.color-index-graph-10 { - stroke: rgba(118, 118, 118, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-3, - .meter--bar .meter__tracks .meter__slice.color-index-accent-1, - .meter--bar .meter__tracks .meter__slice.color-index-accent-3 { - stroke: rgba(195, 164, 254, 0.5); } - .meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, - .meter--bar .meter__tracks .meter__slice.color-index-accent-2, - .meter--bar .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(165, 119, 255, 0.5); } - .meter--bar .meter__value { - text-align: left; } - .meter--bar .meter__value-label { - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--bar:not(.meter--vertical) .meter__minmax-container > a { - vertical-align: top; - display: block; - height: 24px; } - .meter--bar:not(.meter--vertical) .meter__graphic { - width: 192px; } - .meter--bar:not(.meter--vertical) .meter__value { - display: inline-block; + +.meter__slice { + stroke-width: 4px; } + +.meter__threshold { + stroke: rgba(51, 51, 51, 0.2); } + +.meter__value-container { + position: relative; + display: inline-block; } + +.meter__graphic-container { + white-space: normal; } + .meter__graphic-container > a { + text-decoration: none; } + +.meter__graphic:focus { + outline: #c3a4fe solid 1px; } + +.meter__graphic text { + fill: #777; } + +.meter__value { + white-space: normal; + pointer-events: none; } + +.meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter__value-value { + font-size: 36px; + font-size: 2.25rem; + line-height: 38px; + font-weight: bold; } + +.meter__value-units { + font-size: 24px; + font-size: 1.5rem; + line-height: inherit; + margin-left: 6px; + color: #777; + font-weight: normal; } + html.rtl .meter__value-units { + margin-left: 0; + margin-right: 6px; } + +.meter__value-label { + display: block; } + +.meter__minmax-container { + display: block; } + +.meter__minmax { + display: flex; + justify-content: space-between; + color: #777; + font-size: 14px; + font-size: 0.875rem; + line-height: 1.71429; } + +.meter__label-min, +.meter__label-max { + flex: 0 0 48px; } + +.meter__label-max { + text-align: right; } + +.meter__label { + fill: #777; } + +.meter__label--active { + fill: #000; } + +.meter--legend-right { + white-space: nowrap; } + .meter--legend-right .meter__legend { vertical-align: top; - margin-left: 12px; } - html.rtl .meter--bar:not(.meter--vertical) .meter__value { - margin-left: 0; - margin-right: 12px; } - .meter--bar:not(.meter--vertical) .meter__value-value { - font-size: 24px; - font-size: 1.5rem; - line-height: 1; } - .meter--bar:not(.meter--vertical) .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; } - .meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { - display: inline-block; - margin-left: 4px; } - html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 24px; } + html.rtl .meter--legend-right .meter__legend { margin-left: 0; - margin-right: 4px; } - .meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { - min-width: 84px; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + margin-right: 24px; } + .meter--legend-right:not(.meter--tall-legend) .meter__legend { + position: relative; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); } + +.meter--legend-bottom .meter__legend { + margin-top: 24px; + display: block; } + +.meter--legend-bottom.meter--legend-align-center .meter__legend { + text-align: center; } + +.meter:not(.meter--vertical) .meter__graphic-container { + display: inline-block; } + +.meter:not(.meter--vertical) .meter__minmax-container { + display: block; + width: 192px; } + +.meter:not(.meter--vertical) .meter__minmax { + width: 100%; } + +.meter:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--vertical .meter__graphic-container { + display: inline-block; + white-space: nowrap; } + +.meter--vertical .meter__minmax-container { + height: 192px; } + +.meter--vertical .meter__minmax { + flex-direction: column; + height: 100%; } + +.meter--vertical .meter__minmax-min { + order: 1; } + +.meter--vertical .meter__minmax-max { + order: 0; } + +.meter--vertical .meter__label-min, +.meter--vertical .meter__label-max { + flex: 0 0 auto; + text-align: left; } + +.meter--vertical .meter__label-min { + order: 1; } + +.meter--vertical .meter__label-max { + order: 0; } + +.meter--vertical .meter__value-label { + display: block; } + +.meter--vertical.meter--small .meter__minmax-container { + height: 96px; } + +.meter--vertical.meter--large .meter__minmax-container { + height: 288px; } + +.meter--small .meter__slice { + stroke-width: 8px; } + +.meter--small .meter__values .meter__slice:hover { + stroke-width: 24px; } + +.meter--small .meter__value-value { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--large .meter__value-value { + font-size: 64px; + font-size: 4rem; + line-height: 1.125; } + +.meter--large .meter__value-units { + font-size: 48px; + font-size: 3rem; + line-height: 1; } + +.meter--active .meter__values .meter__slice:hover { + stroke-width: 12px; } + +.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active { + stroke-width: 12px; } + +.meter--bar .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 192px 192px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--bar .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--bar .meter__values .meter__slice.color-index-brand { + stroke: #8C50FF; } + +.meter--bar .meter__values .meter__slice.color-index-critical { + stroke: #FF856B; } + +.meter--bar .meter__values .meter__slice.color-index-error { + stroke: #FF856B; } + +.meter--bar .meter__values .meter__slice.color-index-warning { + stroke: #FFB86B; } + +.meter--bar .meter__values .meter__slice.color-index-ok { + stroke: #4EB976; } + +.meter--bar .meter__values .meter__slice.color-index-unknown { + stroke: #a8a8a8; } + +.meter--bar .meter__values .meter__slice.color-index-disabled { + stroke: #a8a8a8; } + +.meter--bar .meter__values .meter__slice.color-index-graph-1, .meter--bar .meter__values .meter__slice.color-index-graph-6 { + stroke: #c3a4fe; } + +.meter--bar .meter__values .meter__slice.color-index-graph-2, .meter--bar .meter__values .meter__slice.color-index-graph-7 { + stroke: #a577ff; } + +.meter--bar .meter__values .meter__slice.color-index-graph-3, .meter--bar .meter__values .meter__slice.color-index-graph-8 { + stroke: #5d0cfb; } + +.meter--bar .meter__values .meter__slice.color-index-graph-4, .meter--bar .meter__values .meter__slice.color-index-graph-9 { + stroke: #7026ff; } + +.meter--bar .meter__values .meter__slice.color-index-graph-5, .meter--bar .meter__values .meter__slice.color-index-graph-10 { + stroke: #767676; } + +.meter--bar .meter__values .meter__slice.color-index-grey-1, .meter--bar .meter__values .meter__slice.color-index-grey-5 { + stroke: #333333; } + +.meter--bar .meter__values .meter__slice.color-index-grey-2, .meter--bar .meter__values .meter__slice.color-index-grey-6 { + stroke: #444444; } + +.meter--bar .meter__values .meter__slice.color-index-grey-3, .meter--bar .meter__values .meter__slice.color-index-grey-7 { + stroke: #555555; } + +.meter--bar .meter__values .meter__slice.color-index-grey-4, .meter--bar .meter__values .meter__slice.color-index-grey-8 { + stroke: #666666; } + +.meter--bar .meter__values .meter__slice.color-index-accent-1, .meter--bar .meter__values .meter__slice.color-index-accent-3 { + stroke: #c3a4fe; } + +.meter--bar .meter__values .meter__slice.color-index-accent-2, .meter--bar .meter__values .meter__slice.color-index-accent-4 { + stroke: #a577ff; } + +.meter--bar .meter__values .meter__slice.color-index-light-1, .meter--bar .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--bar .meter__values .meter__slice.color-index-light-2, .meter--bar .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--bar .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--bar .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-meter 1.5s linear; + animation: draw-meter 1.5s linear; } } + +.meter--bar .meter__thresholds .meter__slice.color-index-unset, +.meter--bar .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-brand, +.meter--bar .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(140, 80, 255, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-critical, +.meter--bar .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(255, 133, 107, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-error, +.meter--bar .meter__tracks .meter__slice.color-index-error { + stroke: rgba(255, 133, 107, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-warning, +.meter--bar .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(255, 184, 107, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-ok, +.meter--bar .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(78, 185, 118, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-unknown, +.meter--bar .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(168, 168, 168, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-disabled, +.meter--bar .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(168, 168, 168, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-1, .meter--bar .meter__thresholds .meter__slice.color-index-graph-6, +.meter--bar .meter__tracks .meter__slice.color-index-graph-1, +.meter--bar .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(195, 164, 254, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-2, .meter--bar .meter__thresholds .meter__slice.color-index-graph-7, +.meter--bar .meter__tracks .meter__slice.color-index-graph-2, +.meter--bar .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(165, 119, 255, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-3, .meter--bar .meter__thresholds .meter__slice.color-index-graph-8, +.meter--bar .meter__tracks .meter__slice.color-index-graph-3, +.meter--bar .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(93, 12, 251, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-4, .meter--bar .meter__thresholds .meter__slice.color-index-graph-9, +.meter--bar .meter__tracks .meter__slice.color-index-graph-4, +.meter--bar .meter__tracks .meter__slice.color-index-graph-9 { + stroke: rgba(112, 38, 255, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-graph-5, .meter--bar .meter__thresholds .meter__slice.color-index-graph-10, +.meter--bar .meter__tracks .meter__slice.color-index-graph-5, +.meter--bar .meter__tracks .meter__slice.color-index-graph-10 { + stroke: rgba(118, 118, 118, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-1, .meter--bar .meter__thresholds .meter__slice.color-index-accent-3, +.meter--bar .meter__tracks .meter__slice.color-index-accent-1, +.meter--bar .meter__tracks .meter__slice.color-index-accent-3 { + stroke: rgba(195, 164, 254, 0.5); } + +.meter--bar .meter__thresholds .meter__slice.color-index-accent-2, .meter--bar .meter__thresholds .meter__slice.color-index-accent-4, +.meter--bar .meter__tracks .meter__slice.color-index-accent-2, +.meter--bar .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(165, 119, 255, 0.5); } + +.meter--bar .meter__value { + text-align: left; } + +.meter--bar .meter__value-label { + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--bar.meter--vertical { + white-space: nowrap; } + .meter--bar.meter--vertical svg.meter__graphic { + height: 192px; } + .meter--bar.meter--vertical .meter__labeled-graphic { + display: inline-block; } + .meter--bar.meter--vertical .meter__value { + position: relative; + vertical-align: top; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; } + .meter--bar.meter--vertical .meter__minmax-container { + position: absolute; top: 0px; - -webkit-transform: none; - transform: none; } - .meter--bar:not(.meter--vertical).meter--legend-right .meter__value { - min-width: 48px; } - .meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; } - .meter--bar:not(.meter--vertical).meter--small .meter__value-value, - .meter--bar:not(.meter--vertical).meter--small .meter__value-units { - font-size: 16px; - font-size: 1rem; - line-height: 1.5; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + left: 24px; } + .meter--bar.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + .meter--bar.meter--vertical.meter--legend-right .meter__value { + min-width: 60px; } + .meter--bar.meter--vertical.meter--small svg.meter__graphic { + height: 96px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 24px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 36px; } + .meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 48px; } + .meter--bar.meter--vertical.meter--small .meter__value { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { + top: 48px; } + .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { min-width: 42px; } - .meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { - min-width: 72px; } + .meter--bar.meter--vertical.meter--large svg.meter__graphic { + height: 288px; + width: 36px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + width: 72px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + width: 108px; } + .meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + width: 144px; } + .meter--bar.meter--vertical.meter--large .meter__value { + top: 144px; } + .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { + top: 144px; } + +.meter--bar:not(.meter--vertical) .meter__minmax-container > a { + vertical-align: top; + display: block; + height: 24px; } + +.meter--bar:not(.meter--vertical) .meter__graphic { + width: 192px; } + +.meter--bar:not(.meter--vertical) .meter__value { + display: inline-block; + vertical-align: top; + margin-left: 12px; } + html.rtl .meter--bar:not(.meter--vertical) .meter__value { + margin-left: 0; + margin-right: 12px; } + +.meter--bar:not(.meter--vertical) .meter__value-value { + font-size: 24px; + font-size: 1.5rem; + line-height: 1; } + +.meter--bar:not(.meter--vertical) .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; } + +.meter--bar:not(.meter--vertical).meter--single .meter__value-label, .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + display: inline-block; + margin-left: 4px; } + html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label, html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label { + margin-left: 0; + margin-right: 4px; } + +.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value, .meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value { + min-width: 84px; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend { + top: 0px; + -webkit-transform: none; + transform: none; } + +.meter--bar:not(.meter--vertical).meter--legend-right .meter__value { + min-width: 48px; } + +.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; } + +.meter--bar:not(.meter--vertical).meter--small .meter__value-value, +.meter--bar:not(.meter--vertical).meter--small .meter__value-units { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; } + +.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic, .meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic { + height: 12px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 24px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 36px; } + +.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 48px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value { + min-width: 42px; } + +.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value { + min-width: 72px; } + +.meter--bar:not(.meter--vertical).meter--large { + line-height: 36px; } .meter--bar:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; } + width: 288px; + height: 36px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic { + height: 72px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic { + height: 108px; } + .meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic { + height: 144px; } .meter--bar:not(.meter--vertical).meter--large .meter__value { margin-left: 16px; } html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value { @@ -4332,371 +4828,565 @@ a.active > .label .label__icon.control-icon svg { font-size: 26px; font-size: 1.625rem; line-height: inherit; } - .meter--bar.meter--vertical { - white-space: nowrap; } - .meter--bar.meter--vertical svg.meter__graphic { - height: 192px; } - .meter--bar.meter--vertical .meter__labeled-graphic { - display: inline-block; } - .meter--bar.meter--vertical .meter__value { - position: relative; - vertical-align: top; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; } - .meter--bar.meter--vertical .meter__minmax-container { - position: absolute; - top: 0px; - left: 24px; } - .meter--bar.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--bar.meter--vertical.meter--legend-right .meter__value { - min-width: 60px; } - .meter--bar.meter--vertical.meter--small svg.meter__graphic { - height: 96px; } - .meter--bar.meter--vertical.meter--small .meter__value { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend { - top: 48px; } - .meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value { - min-width: 42px; } - .meter--bar.meter--vertical.meter--large svg.meter__graphic { - height: 288px; } - .meter--bar.meter--vertical.meter--large .meter__value { - top: 144px; } - .meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend { - top: 144px; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc, .meter--spiral { - margin: 0px auto; } } - .meter--circle svg.meter__graphic, .meter--arc svg.meter__graphic, .meter--spiral svg.meter__graphic { - display: block; } - .meter--circle .meter.series-pre path, .meter--arc .meter.series-pre path, .meter--spiral .meter.series-pre path { - stroke-dashoffset: 768px; } - .meter--circle .meter__slice, .meter--arc .meter__slice, .meter--spiral .meter__slice { - stroke-linecap: butt; - stroke-dasharray: 768px 768px; - stroke-dashoffset: 0; - fill: none; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__slice-indicator, .meter--arc .meter__slice-indicator, .meter--spiral .meter__slice-indicator { - stroke-linecap: square; - stroke-width: 4px; - stroke: rgba(51, 51, 51, 0.2); } - .meter--circle .meter__values .meter__slice.color-index-loading, .meter--arc .meter__values .meter__slice.color-index-loading, .meter--spiral .meter__values .meter__slice.color-index-loading { - stroke: #ddd; - stroke-dasharray: 1px 10px; - stroke-dashoffset: 0; } - .meter--circle .meter__values .meter__slice.color-index-unset, .meter--arc .meter__values .meter__slice.color-index-unset, .meter--spiral .meter__values .meter__slice.color-index-unset { - stroke: #ddd; } - .meter--circle .meter__values .meter__slice.color-index-brand, .meter--arc .meter__values .meter__slice.color-index-brand, .meter--spiral .meter__values .meter__slice.color-index-brand { - stroke: #8C50FF; } - .meter--circle .meter__values .meter__slice.color-index-critical, .meter--arc .meter__values .meter__slice.color-index-critical, .meter--spiral .meter__values .meter__slice.color-index-critical { - stroke: #FF856B; } - .meter--circle .meter__values .meter__slice.color-index-error, .meter--arc .meter__values .meter__slice.color-index-error, .meter--spiral .meter__values .meter__slice.color-index-error { - stroke: #FF856B; } - .meter--circle .meter__values .meter__slice.color-index-warning, .meter--arc .meter__values .meter__slice.color-index-warning, .meter--spiral .meter__values .meter__slice.color-index-warning { - stroke: #FFB86B; } - .meter--circle .meter__values .meter__slice.color-index-ok, .meter--arc .meter__values .meter__slice.color-index-ok, .meter--spiral .meter__values .meter__slice.color-index-ok { - stroke: #4EB976; } - .meter--circle .meter__values .meter__slice.color-index-unknown, .meter--arc .meter__values .meter__slice.color-index-unknown, .meter--spiral .meter__values .meter__slice.color-index-unknown { - stroke: #a8a8a8; } - .meter--circle .meter__values .meter__slice.color-index-disabled, .meter--arc .meter__values .meter__slice.color-index-disabled, .meter--spiral .meter__values .meter__slice.color-index-disabled { - stroke: #a8a8a8; } - .meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-6, .meter--arc .meter__values .meter__slice.color-index-graph-1, .meter--arc .meter__values .meter__slice.color-index-graph-6, .meter--spiral .meter__values .meter__slice.color-index-graph-1, .meter--spiral .meter__values .meter__slice.color-index-graph-6 { - stroke: #c3a4fe; } - .meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-7, .meter--arc .meter__values .meter__slice.color-index-graph-2, .meter--arc .meter__values .meter__slice.color-index-graph-7, .meter--spiral .meter__values .meter__slice.color-index-graph-2, .meter--spiral .meter__values .meter__slice.color-index-graph-7 { - stroke: #a577ff; } - .meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-8, .meter--arc .meter__values .meter__slice.color-index-graph-3, .meter--arc .meter__values .meter__slice.color-index-graph-8, .meter--spiral .meter__values .meter__slice.color-index-graph-3, .meter--spiral .meter__values .meter__slice.color-index-graph-8 { - stroke: #5d0cfb; } - .meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-9, .meter--arc .meter__values .meter__slice.color-index-graph-4, .meter--arc .meter__values .meter__slice.color-index-graph-9, .meter--spiral .meter__values .meter__slice.color-index-graph-4, .meter--spiral .meter__values .meter__slice.color-index-graph-9 { - stroke: #7026ff; } - .meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--circle .meter__values .meter__slice.color-index-graph-10, .meter--arc .meter__values .meter__slice.color-index-graph-5, .meter--arc .meter__values .meter__slice.color-index-graph-10, .meter--spiral .meter__values .meter__slice.color-index-graph-5, .meter--spiral .meter__values .meter__slice.color-index-graph-10 { - stroke: #767676; } - .meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-5, .meter--arc .meter__values .meter__slice.color-index-grey-1, .meter--arc .meter__values .meter__slice.color-index-grey-5, .meter--spiral .meter__values .meter__slice.color-index-grey-1, .meter--spiral .meter__values .meter__slice.color-index-grey-5 { - stroke: #333333; } - .meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-6, .meter--arc .meter__values .meter__slice.color-index-grey-2, .meter--arc .meter__values .meter__slice.color-index-grey-6, .meter--spiral .meter__values .meter__slice.color-index-grey-2, .meter--spiral .meter__values .meter__slice.color-index-grey-6 { - stroke: #444444; } - .meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-7, .meter--arc .meter__values .meter__slice.color-index-grey-3, .meter--arc .meter__values .meter__slice.color-index-grey-7, .meter--spiral .meter__values .meter__slice.color-index-grey-3, .meter--spiral .meter__values .meter__slice.color-index-grey-7 { - stroke: #555555; } - .meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--circle .meter__values .meter__slice.color-index-grey-8, .meter--arc .meter__values .meter__slice.color-index-grey-4, .meter--arc .meter__values .meter__slice.color-index-grey-8, .meter--spiral .meter__values .meter__slice.color-index-grey-4, .meter--spiral .meter__values .meter__slice.color-index-grey-8 { - stroke: #666666; } - .meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-3, .meter--arc .meter__values .meter__slice.color-index-accent-1, .meter--arc .meter__values .meter__slice.color-index-accent-3, .meter--spiral .meter__values .meter__slice.color-index-accent-1, .meter--spiral .meter__values .meter__slice.color-index-accent-3 { - stroke: #c3a4fe; } - .meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-4, .meter--arc .meter__values .meter__slice.color-index-accent-2, .meter--arc .meter__values .meter__slice.color-index-accent-4, .meter--spiral .meter__values .meter__slice.color-index-accent-2, .meter--spiral .meter__values .meter__slice.color-index-accent-4 { - stroke: #a577ff; } - .meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, .meter--arc .meter__values .meter__slice.color-index-light-1, .meter--arc .meter__values .meter__slice.color-index-light-3, .meter--spiral .meter__values .meter__slice.color-index-light-1, .meter--spiral .meter__values .meter__slice.color-index-light-3 { - stroke: #ffffff; } - .meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, .meter--arc .meter__values .meter__slice.color-index-light-2, .meter--arc .meter__values .meter__slice.color-index-light-4, .meter--spiral .meter__values .meter__slice.color-index-light-2, .meter--spiral .meter__values .meter__slice.color-index-light-4 { - stroke: #f5f5f5; } - .meter--circle .meter__values .meter__slice--clickable, .meter--arc .meter__values .meter__slice--clickable, .meter--spiral .meter__values .meter__slice--clickable { - cursor: pointer; } - @media screen and (min-width: 45em) { - .meter--circle .meter__values .meter__slice, .meter--arc .meter__values .meter__slice, .meter--spiral .meter__values .meter__slice { - transition: stroke-width 0.2s; - -webkit-animation: draw-arc 1.5s linear; - animation: draw-arc 1.5s linear; } } - .meter--circle .meter__thresholds .meter__slice.color-index-unset, - .meter--circle .meter__tracks .meter__slice.color-index-unset, .meter--arc .meter__thresholds .meter__slice.color-index-unset, - .meter--arc .meter__tracks .meter__slice.color-index-unset, .meter--spiral .meter__thresholds .meter__slice.color-index-unset, - .meter--spiral .meter__tracks .meter__slice.color-index-unset { - stroke: rgba(221, 221, 221, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-brand, - .meter--circle .meter__tracks .meter__slice.color-index-brand, .meter--arc .meter__thresholds .meter__slice.color-index-brand, - .meter--arc .meter__tracks .meter__slice.color-index-brand, .meter--spiral .meter__thresholds .meter__slice.color-index-brand, - .meter--spiral .meter__tracks .meter__slice.color-index-brand { - stroke: rgba(140, 80, 255, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-critical, - .meter--circle .meter__tracks .meter__slice.color-index-critical, .meter--arc .meter__thresholds .meter__slice.color-index-critical, - .meter--arc .meter__tracks .meter__slice.color-index-critical, .meter--spiral .meter__thresholds .meter__slice.color-index-critical, - .meter--spiral .meter__tracks .meter__slice.color-index-critical { - stroke: rgba(255, 133, 107, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-error, - .meter--circle .meter__tracks .meter__slice.color-index-error, .meter--arc .meter__thresholds .meter__slice.color-index-error, - .meter--arc .meter__tracks .meter__slice.color-index-error, .meter--spiral .meter__thresholds .meter__slice.color-index-error, - .meter--spiral .meter__tracks .meter__slice.color-index-error { - stroke: rgba(255, 133, 107, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-warning, - .meter--circle .meter__tracks .meter__slice.color-index-warning, .meter--arc .meter__thresholds .meter__slice.color-index-warning, - .meter--arc .meter__tracks .meter__slice.color-index-warning, .meter--spiral .meter__thresholds .meter__slice.color-index-warning, - .meter--spiral .meter__tracks .meter__slice.color-index-warning { - stroke: rgba(255, 184, 107, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-ok, - .meter--circle .meter__tracks .meter__slice.color-index-ok, .meter--arc .meter__thresholds .meter__slice.color-index-ok, - .meter--arc .meter__tracks .meter__slice.color-index-ok, .meter--spiral .meter__thresholds .meter__slice.color-index-ok, - .meter--spiral .meter__tracks .meter__slice.color-index-ok { - stroke: rgba(78, 185, 118, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-unknown, - .meter--circle .meter__tracks .meter__slice.color-index-unknown, .meter--arc .meter__thresholds .meter__slice.color-index-unknown, - .meter--arc .meter__tracks .meter__slice.color-index-unknown, .meter--spiral .meter__thresholds .meter__slice.color-index-unknown, - .meter--spiral .meter__tracks .meter__slice.color-index-unknown { - stroke: rgba(168, 168, 168, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-disabled, - .meter--circle .meter__tracks .meter__slice.color-index-disabled, .meter--arc .meter__thresholds .meter__slice.color-index-disabled, - .meter--arc .meter__tracks .meter__slice.color-index-disabled, .meter--spiral .meter__thresholds .meter__slice.color-index-disabled, - .meter--spiral .meter__tracks .meter__slice.color-index-disabled { - stroke: rgba(168, 168, 168, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, - .meter--circle .meter__tracks .meter__slice.color-index-graph-1, - .meter--circle .meter__tracks .meter__slice.color-index-graph-6, .meter--arc .meter__thresholds .meter__slice.color-index-graph-1, .meter--arc .meter__thresholds .meter__slice.color-index-graph-6, - .meter--arc .meter__tracks .meter__slice.color-index-graph-1, - .meter--arc .meter__tracks .meter__slice.color-index-graph-6, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-1, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { - stroke: rgba(195, 164, 254, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, - .meter--circle .meter__tracks .meter__slice.color-index-graph-2, - .meter--circle .meter__tracks .meter__slice.color-index-graph-7, .meter--arc .meter__thresholds .meter__slice.color-index-graph-2, .meter--arc .meter__thresholds .meter__slice.color-index-graph-7, - .meter--arc .meter__tracks .meter__slice.color-index-graph-2, - .meter--arc .meter__tracks .meter__slice.color-index-graph-7, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-2, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { - stroke: rgba(165, 119, 255, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, - .meter--circle .meter__tracks .meter__slice.color-index-graph-3, - .meter--circle .meter__tracks .meter__slice.color-index-graph-8, .meter--arc .meter__thresholds .meter__slice.color-index-graph-3, .meter--arc .meter__thresholds .meter__slice.color-index-graph-8, - .meter--arc .meter__tracks .meter__slice.color-index-graph-3, - .meter--arc .meter__tracks .meter__slice.color-index-graph-8, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-3, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { - stroke: rgba(93, 12, 251, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-9, - .meter--circle .meter__tracks .meter__slice.color-index-graph-4, - .meter--circle .meter__tracks .meter__slice.color-index-graph-9, .meter--arc .meter__thresholds .meter__slice.color-index-graph-4, .meter--arc .meter__thresholds .meter__slice.color-index-graph-9, - .meter--arc .meter__tracks .meter__slice.color-index-graph-4, - .meter--arc .meter__tracks .meter__slice.color-index-graph-9, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-9, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-4, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-9 { - stroke: rgba(112, 38, 255, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-graph-5, .meter--circle .meter__thresholds .meter__slice.color-index-graph-10, - .meter--circle .meter__tracks .meter__slice.color-index-graph-5, - .meter--circle .meter__tracks .meter__slice.color-index-graph-10, .meter--arc .meter__thresholds .meter__slice.color-index-graph-5, .meter--arc .meter__thresholds .meter__slice.color-index-graph-10, - .meter--arc .meter__tracks .meter__slice.color-index-graph-5, - .meter--arc .meter__tracks .meter__slice.color-index-graph-10, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, .meter--spiral .meter__thresholds .meter__slice.color-index-graph-10, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-5, - .meter--spiral .meter__tracks .meter__slice.color-index-graph-10 { - stroke: rgba(118, 118, 118, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-3, - .meter--circle .meter__tracks .meter__slice.color-index-accent-1, - .meter--circle .meter__tracks .meter__slice.color-index-accent-3, .meter--arc .meter__thresholds .meter__slice.color-index-accent-1, .meter--arc .meter__thresholds .meter__slice.color-index-accent-3, - .meter--arc .meter__tracks .meter__slice.color-index-accent-1, - .meter--arc .meter__tracks .meter__slice.color-index-accent-3, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-1, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-3 { - stroke: rgba(195, 164, 254, 0.5); } - .meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, - .meter--circle .meter__tracks .meter__slice.color-index-accent-2, - .meter--circle .meter__tracks .meter__slice.color-index-accent-4, .meter--arc .meter__thresholds .meter__slice.color-index-accent-2, .meter--arc .meter__thresholds .meter__slice.color-index-accent-4, - .meter--arc .meter__tracks .meter__slice.color-index-accent-2, - .meter--arc .meter__tracks .meter__slice.color-index-accent-4, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, .meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-2, - .meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { - stroke: rgba(165, 119, 255, 0.5); } - .meter--circle .meter__threshold, .meter--arc .meter__threshold, .meter--spiral .meter__threshold { - stroke-linecap: butt; } - .meter--circle .meter__value-label, .meter--arc .meter__value-label, .meter--spiral .meter__value-label { - display: block; } - @media screen and (max-width: 44.9375em) { - .meter--circle, .meter--arc { - width: 192px; } } - .meter--circle .meter__value, .meter--arc .meter__value { - white-space: normal; - pointer-events: none; - text-align: center; } - .meter--circle .meter__value--active, .meter--arc .meter__value--active { - pointer-events: auto; - cursor: pointer; } - .meter--circle .meter__minmax-container, .meter--arc:not(.meter--vertical) .meter__minmax-container { - width: 192px; } - .meter--circle .meter__value, .meter--arc:not(.meter--vertical) .meter__value { - position: absolute; - left: 50%; } - .meter--circle.meter--small .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { - width: 96px; } - .meter--circle.meter--large .meter__minmax-container, .meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { - width: 288px; } - .meter--circle.meter--legend-right .meter__legend, .meter--arc.meter--vertical.meter--legend-right .meter__legend { - top: 96px; } - .meter--circle.meter--legend-right.meter--small .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { - top: 48px; } - .meter--circle.meter--legend-right.meter--large .meter__legend, .meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { - top: 144px; } - .meter--circle svg.meter__graphic { - width: 192px; - height: 192px; } - .meter--circle .meter__value { - top: 96px; - -webkit-transform: translateX(-50%) translateY(-50%); - transform: translateX(-50%) translateY(-50%); - max-width: 144px; } - .meter--circle.meter--small svg.meter__graphic { - width: 96px; - height: 96px; } - .meter--circle.meter--small .meter__value { - top: 48px; - max-width: 72px; } - .meter--circle.meter--large svg.meter__graphic { - width: 288px; - height: 288px; } - .meter--circle.meter--large .meter__value { - top: 144px; - max-width: 216px; } - .meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { - position: static; - margin: 0 auto; - -webkit-transform: none; - transform: none; } - .meter--arc:not(.meter--vertical) svg.meter__graphic { - width: 192px; - height: 144px; } - .meter--arc:not(.meter--vertical) .meter__value { - top: 108px; - -webkit-transform: translateX(-50%); - transform: translateX(-50%); - max-width: 120px; } - .meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { - top: 72px; } - .meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { - width: 96px; - height: 72px; } - .meter--arc:not(.meter--vertical).meter--small .meter__value { - top: 60px; - max-width: 60px; } - .meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { - width: 288px; - height: 216px; } - .meter--arc:not(.meter--vertical).meter--large .meter__value { - top: 156px; - max-width: 180px; } - .meter--arc.meter--vertical svg.meter__graphic { - display: inline; - width: 144px; - height: 192px; } - .meter--arc.meter--vertical .meter__value { - position: relative; - top: 96px; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); - display: inline-block; - margin-left: -24px; - vertical-align: top; } - html.rtl .meter--arc.meter--vertical .meter__value { - margin-left: 0; - margin-right: -24px; } - .meter--arc.meter--vertical .meter__minmax-container { - display: inline-block; - vertical-align: top; - margin-left: 12px; - padding-top: 12px; - padding-bottom: 12px; } - html.rtl .meter--arc.meter--vertical .meter__minmax-container { - margin-left: 0; - margin-right: 12px; } - .meter--arc.meter--vertical.meter--small svg.meter__graphic { - width: 72px; - height: 96px; } - .meter--arc.meter--vertical.meter--small .meter__value { - top: 48px; - margin-left: -12px; } - html.rtl .meter--arc.meter--vertical.meter--small .meter__value { - margin-left: 0; - margin-right: -12px; } - .meter--arc.meter--vertical.meter--small .meter__minmax-container { - padding-top: 0px; - padding-bottom: 0px; } - .meter--arc.meter--vertical.meter--large svg.meter__graphic { - width: 216px; - height: 288px; } - .meter--arc.meter--vertical.meter--large .meter__value { - top: 144px; - margin-left: -48px; } - html.rtl .meter--arc.meter--vertical.meter--large .meter__value { - margin-left: 0; - margin-right: -48px; } - .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: -72px; } - html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { - margin-left: 0; - margin-right: -72px; } - .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: -60px; } - html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { - margin-left: 0; - margin-right: -60px; } - .meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { - min-width: 78px; } - .meter--arc.meter--vertical.meter--legend-right .meter__value { - min-width: 120px; } - .meter--spiral .meter__value { - position: absolute; - top: 0px; - right: 0px; - white-space: normal; - text-align: right; } - .meter--spiral .meter__value-value { - display: block; - font-size: 24px; - font-size: 1.5rem; - line-height: 1; - margin-bottom: 6px; } - .meter--spiral .meter__value-units { - font-size: 20px; - font-size: 1.25rem; - line-height: 1.2; - color: #777; - margin-left: 0.2em; } - html.rtl .meter--spiral .meter__value-units { - margin-left: 0; - margin-right: 0.2em; } - .meter--spiral .meter__value-label { - display: block; - font-size: 14px; - font-size: 0.875rem; - line-height: 16px; } - .meter--loading .meter__thresholds, - .meter--loading .meter__value { - display: none; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc, + .meter--spiral { + margin: 0px auto; } } + +.meter--circle svg.meter__graphic, +.meter--arc svg.meter__graphic, +.meter--spiral svg.meter__graphic { + display: block; } + +.meter--circle .meter.series-pre path, +.meter--arc .meter.series-pre path, +.meter--spiral .meter.series-pre path { + stroke-dashoffset: 768px; } + +.meter--circle .meter__slice, +.meter--arc .meter__slice, +.meter--spiral .meter__slice { + stroke-linecap: butt; + stroke-dasharray: 768px 768px; + stroke-dashoffset: 0; + fill: none; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__slice-indicator, +.meter--arc .meter__slice-indicator, +.meter--spiral .meter__slice-indicator { + stroke-linecap: square; + stroke-width: 4px; + stroke: rgba(51, 51, 51, 0.2); } + +.meter--circle .meter__values .meter__slice.color-index-loading, +.meter--arc .meter__values .meter__slice.color-index-loading, +.meter--spiral .meter__values .meter__slice.color-index-loading { + stroke: #ddd; + stroke-dasharray: 1px 10px; + stroke-dashoffset: 0; } + +.meter--circle .meter__values .meter__slice.color-index-unset, +.meter--arc .meter__values .meter__slice.color-index-unset, +.meter--spiral .meter__values .meter__slice.color-index-unset { + stroke: #ddd; } + +.meter--circle .meter__values .meter__slice.color-index-brand, +.meter--arc .meter__values .meter__slice.color-index-brand, +.meter--spiral .meter__values .meter__slice.color-index-brand { + stroke: #8C50FF; } + +.meter--circle .meter__values .meter__slice.color-index-critical, +.meter--arc .meter__values .meter__slice.color-index-critical, +.meter--spiral .meter__values .meter__slice.color-index-critical { + stroke: #FF856B; } + +.meter--circle .meter__values .meter__slice.color-index-error, +.meter--arc .meter__values .meter__slice.color-index-error, +.meter--spiral .meter__values .meter__slice.color-index-error { + stroke: #FF856B; } + +.meter--circle .meter__values .meter__slice.color-index-warning, +.meter--arc .meter__values .meter__slice.color-index-warning, +.meter--spiral .meter__values .meter__slice.color-index-warning { + stroke: #FFB86B; } + +.meter--circle .meter__values .meter__slice.color-index-ok, +.meter--arc .meter__values .meter__slice.color-index-ok, +.meter--spiral .meter__values .meter__slice.color-index-ok { + stroke: #4EB976; } + +.meter--circle .meter__values .meter__slice.color-index-unknown, +.meter--arc .meter__values .meter__slice.color-index-unknown, +.meter--spiral .meter__values .meter__slice.color-index-unknown { + stroke: #a8a8a8; } + +.meter--circle .meter__values .meter__slice.color-index-disabled, +.meter--arc .meter__values .meter__slice.color-index-disabled, +.meter--spiral .meter__values .meter__slice.color-index-disabled { + stroke: #a8a8a8; } + +.meter--circle .meter__values .meter__slice.color-index-graph-1, .meter--circle .meter__values .meter__slice.color-index-graph-6, +.meter--arc .meter__values .meter__slice.color-index-graph-1, +.meter--arc .meter__values .meter__slice.color-index-graph-6, +.meter--spiral .meter__values .meter__slice.color-index-graph-1, +.meter--spiral .meter__values .meter__slice.color-index-graph-6 { + stroke: #c3a4fe; } + +.meter--circle .meter__values .meter__slice.color-index-graph-2, .meter--circle .meter__values .meter__slice.color-index-graph-7, +.meter--arc .meter__values .meter__slice.color-index-graph-2, +.meter--arc .meter__values .meter__slice.color-index-graph-7, +.meter--spiral .meter__values .meter__slice.color-index-graph-2, +.meter--spiral .meter__values .meter__slice.color-index-graph-7 { + stroke: #a577ff; } + +.meter--circle .meter__values .meter__slice.color-index-graph-3, .meter--circle .meter__values .meter__slice.color-index-graph-8, +.meter--arc .meter__values .meter__slice.color-index-graph-3, +.meter--arc .meter__values .meter__slice.color-index-graph-8, +.meter--spiral .meter__values .meter__slice.color-index-graph-3, +.meter--spiral .meter__values .meter__slice.color-index-graph-8 { + stroke: #5d0cfb; } + +.meter--circle .meter__values .meter__slice.color-index-graph-4, .meter--circle .meter__values .meter__slice.color-index-graph-9, +.meter--arc .meter__values .meter__slice.color-index-graph-4, +.meter--arc .meter__values .meter__slice.color-index-graph-9, +.meter--spiral .meter__values .meter__slice.color-index-graph-4, +.meter--spiral .meter__values .meter__slice.color-index-graph-9 { + stroke: #7026ff; } + +.meter--circle .meter__values .meter__slice.color-index-graph-5, .meter--circle .meter__values .meter__slice.color-index-graph-10, +.meter--arc .meter__values .meter__slice.color-index-graph-5, +.meter--arc .meter__values .meter__slice.color-index-graph-10, +.meter--spiral .meter__values .meter__slice.color-index-graph-5, +.meter--spiral .meter__values .meter__slice.color-index-graph-10 { + stroke: #767676; } + +.meter--circle .meter__values .meter__slice.color-index-grey-1, .meter--circle .meter__values .meter__slice.color-index-grey-5, +.meter--arc .meter__values .meter__slice.color-index-grey-1, +.meter--arc .meter__values .meter__slice.color-index-grey-5, +.meter--spiral .meter__values .meter__slice.color-index-grey-1, +.meter--spiral .meter__values .meter__slice.color-index-grey-5 { + stroke: #333333; } + +.meter--circle .meter__values .meter__slice.color-index-grey-2, .meter--circle .meter__values .meter__slice.color-index-grey-6, +.meter--arc .meter__values .meter__slice.color-index-grey-2, +.meter--arc .meter__values .meter__slice.color-index-grey-6, +.meter--spiral .meter__values .meter__slice.color-index-grey-2, +.meter--spiral .meter__values .meter__slice.color-index-grey-6 { + stroke: #444444; } + +.meter--circle .meter__values .meter__slice.color-index-grey-3, .meter--circle .meter__values .meter__slice.color-index-grey-7, +.meter--arc .meter__values .meter__slice.color-index-grey-3, +.meter--arc .meter__values .meter__slice.color-index-grey-7, +.meter--spiral .meter__values .meter__slice.color-index-grey-3, +.meter--spiral .meter__values .meter__slice.color-index-grey-7 { + stroke: #555555; } + +.meter--circle .meter__values .meter__slice.color-index-grey-4, .meter--circle .meter__values .meter__slice.color-index-grey-8, +.meter--arc .meter__values .meter__slice.color-index-grey-4, +.meter--arc .meter__values .meter__slice.color-index-grey-8, +.meter--spiral .meter__values .meter__slice.color-index-grey-4, +.meter--spiral .meter__values .meter__slice.color-index-grey-8 { + stroke: #666666; } + +.meter--circle .meter__values .meter__slice.color-index-accent-1, .meter--circle .meter__values .meter__slice.color-index-accent-3, +.meter--arc .meter__values .meter__slice.color-index-accent-1, +.meter--arc .meter__values .meter__slice.color-index-accent-3, +.meter--spiral .meter__values .meter__slice.color-index-accent-1, +.meter--spiral .meter__values .meter__slice.color-index-accent-3 { + stroke: #c3a4fe; } + +.meter--circle .meter__values .meter__slice.color-index-accent-2, .meter--circle .meter__values .meter__slice.color-index-accent-4, +.meter--arc .meter__values .meter__slice.color-index-accent-2, +.meter--arc .meter__values .meter__slice.color-index-accent-4, +.meter--spiral .meter__values .meter__slice.color-index-accent-2, +.meter--spiral .meter__values .meter__slice.color-index-accent-4 { + stroke: #a577ff; } + +.meter--circle .meter__values .meter__slice.color-index-light-1, .meter--circle .meter__values .meter__slice.color-index-light-3, +.meter--arc .meter__values .meter__slice.color-index-light-1, +.meter--arc .meter__values .meter__slice.color-index-light-3, +.meter--spiral .meter__values .meter__slice.color-index-light-1, +.meter--spiral .meter__values .meter__slice.color-index-light-3 { + stroke: #ffffff; } + +.meter--circle .meter__values .meter__slice.color-index-light-2, .meter--circle .meter__values .meter__slice.color-index-light-4, +.meter--arc .meter__values .meter__slice.color-index-light-2, +.meter--arc .meter__values .meter__slice.color-index-light-4, +.meter--spiral .meter__values .meter__slice.color-index-light-2, +.meter--spiral .meter__values .meter__slice.color-index-light-4 { + stroke: #f5f5f5; } + +.meter--circle .meter__values .meter__slice--clickable, +.meter--arc .meter__values .meter__slice--clickable, +.meter--spiral .meter__values .meter__slice--clickable { + cursor: pointer; } + +@media screen and (min-width: 45em) { + .meter--circle .meter__values .meter__slice, + .meter--arc .meter__values .meter__slice, + .meter--spiral .meter__values .meter__slice { + transition: stroke-width 0.2s; + -webkit-animation: draw-arc 1.5s linear; + animation: draw-arc 1.5s linear; } } + +.meter--circle .meter__thresholds .meter__slice.color-index-unset, +.meter--circle .meter__tracks .meter__slice.color-index-unset, +.meter--arc .meter__thresholds .meter__slice.color-index-unset, +.meter--arc .meter__tracks .meter__slice.color-index-unset, +.meter--spiral .meter__thresholds .meter__slice.color-index-unset, +.meter--spiral .meter__tracks .meter__slice.color-index-unset { + stroke: rgba(221, 221, 221, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-brand, +.meter--circle .meter__tracks .meter__slice.color-index-brand, +.meter--arc .meter__thresholds .meter__slice.color-index-brand, +.meter--arc .meter__tracks .meter__slice.color-index-brand, +.meter--spiral .meter__thresholds .meter__slice.color-index-brand, +.meter--spiral .meter__tracks .meter__slice.color-index-brand { + stroke: rgba(140, 80, 255, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-critical, +.meter--circle .meter__tracks .meter__slice.color-index-critical, +.meter--arc .meter__thresholds .meter__slice.color-index-critical, +.meter--arc .meter__tracks .meter__slice.color-index-critical, +.meter--spiral .meter__thresholds .meter__slice.color-index-critical, +.meter--spiral .meter__tracks .meter__slice.color-index-critical { + stroke: rgba(255, 133, 107, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-error, +.meter--circle .meter__tracks .meter__slice.color-index-error, +.meter--arc .meter__thresholds .meter__slice.color-index-error, +.meter--arc .meter__tracks .meter__slice.color-index-error, +.meter--spiral .meter__thresholds .meter__slice.color-index-error, +.meter--spiral .meter__tracks .meter__slice.color-index-error { + stroke: rgba(255, 133, 107, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-warning, +.meter--circle .meter__tracks .meter__slice.color-index-warning, +.meter--arc .meter__thresholds .meter__slice.color-index-warning, +.meter--arc .meter__tracks .meter__slice.color-index-warning, +.meter--spiral .meter__thresholds .meter__slice.color-index-warning, +.meter--spiral .meter__tracks .meter__slice.color-index-warning { + stroke: rgba(255, 184, 107, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-ok, +.meter--circle .meter__tracks .meter__slice.color-index-ok, +.meter--arc .meter__thresholds .meter__slice.color-index-ok, +.meter--arc .meter__tracks .meter__slice.color-index-ok, +.meter--spiral .meter__thresholds .meter__slice.color-index-ok, +.meter--spiral .meter__tracks .meter__slice.color-index-ok { + stroke: rgba(78, 185, 118, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-unknown, +.meter--circle .meter__tracks .meter__slice.color-index-unknown, +.meter--arc .meter__thresholds .meter__slice.color-index-unknown, +.meter--arc .meter__tracks .meter__slice.color-index-unknown, +.meter--spiral .meter__thresholds .meter__slice.color-index-unknown, +.meter--spiral .meter__tracks .meter__slice.color-index-unknown { + stroke: rgba(168, 168, 168, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-disabled, +.meter--circle .meter__tracks .meter__slice.color-index-disabled, +.meter--arc .meter__thresholds .meter__slice.color-index-disabled, +.meter--arc .meter__tracks .meter__slice.color-index-disabled, +.meter--spiral .meter__thresholds .meter__slice.color-index-disabled, +.meter--spiral .meter__tracks .meter__slice.color-index-disabled { + stroke: rgba(168, 168, 168, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-1, .meter--circle .meter__thresholds .meter__slice.color-index-graph-6, +.meter--circle .meter__tracks .meter__slice.color-index-graph-1, +.meter--circle .meter__tracks .meter__slice.color-index-graph-6, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-1, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-6, +.meter--arc .meter__tracks .meter__slice.color-index-graph-1, +.meter--arc .meter__tracks .meter__slice.color-index-graph-6, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-1, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-6 { + stroke: rgba(195, 164, 254, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-2, .meter--circle .meter__thresholds .meter__slice.color-index-graph-7, +.meter--circle .meter__tracks .meter__slice.color-index-graph-2, +.meter--circle .meter__tracks .meter__slice.color-index-graph-7, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-2, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-7, +.meter--arc .meter__tracks .meter__slice.color-index-graph-2, +.meter--arc .meter__tracks .meter__slice.color-index-graph-7, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-2, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-7 { + stroke: rgba(165, 119, 255, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-3, .meter--circle .meter__thresholds .meter__slice.color-index-graph-8, +.meter--circle .meter__tracks .meter__slice.color-index-graph-3, +.meter--circle .meter__tracks .meter__slice.color-index-graph-8, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-3, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-8, +.meter--arc .meter__tracks .meter__slice.color-index-graph-3, +.meter--arc .meter__tracks .meter__slice.color-index-graph-8, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-3, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-8 { + stroke: rgba(93, 12, 251, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-4, .meter--circle .meter__thresholds .meter__slice.color-index-graph-9, +.meter--circle .meter__tracks .meter__slice.color-index-graph-4, +.meter--circle .meter__tracks .meter__slice.color-index-graph-9, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-4, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-9, +.meter--arc .meter__tracks .meter__slice.color-index-graph-4, +.meter--arc .meter__tracks .meter__slice.color-index-graph-9, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-4, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-9 { + stroke: rgba(112, 38, 255, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-graph-5, .meter--circle .meter__thresholds .meter__slice.color-index-graph-10, +.meter--circle .meter__tracks .meter__slice.color-index-graph-5, +.meter--circle .meter__tracks .meter__slice.color-index-graph-10, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-5, +.meter--arc .meter__thresholds .meter__slice.color-index-graph-10, +.meter--arc .meter__tracks .meter__slice.color-index-graph-5, +.meter--arc .meter__tracks .meter__slice.color-index-graph-10, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5, +.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-5, +.meter--spiral .meter__tracks .meter__slice.color-index-graph-10 { + stroke: rgba(118, 118, 118, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-1, .meter--circle .meter__thresholds .meter__slice.color-index-accent-3, +.meter--circle .meter__tracks .meter__slice.color-index-accent-1, +.meter--circle .meter__tracks .meter__slice.color-index-accent-3, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-1, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-3, +.meter--arc .meter__tracks .meter__slice.color-index-accent-1, +.meter--arc .meter__tracks .meter__slice.color-index-accent-3, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-1, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-3 { + stroke: rgba(195, 164, 254, 0.5); } + +.meter--circle .meter__thresholds .meter__slice.color-index-accent-2, .meter--circle .meter__thresholds .meter__slice.color-index-accent-4, +.meter--circle .meter__tracks .meter__slice.color-index-accent-2, +.meter--circle .meter__tracks .meter__slice.color-index-accent-4, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-2, +.meter--arc .meter__thresholds .meter__slice.color-index-accent-4, +.meter--arc .meter__tracks .meter__slice.color-index-accent-2, +.meter--arc .meter__tracks .meter__slice.color-index-accent-4, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2, +.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-2, +.meter--spiral .meter__tracks .meter__slice.color-index-accent-4 { + stroke: rgba(165, 119, 255, 0.5); } + +.meter--circle .meter__threshold, +.meter--arc .meter__threshold, +.meter--spiral .meter__threshold { + stroke-linecap: butt; } + +.meter--circle .meter__value-label, +.meter--arc .meter__value-label, +.meter--spiral .meter__value-label { + display: block; } + +@media screen and (max-width: 44.9375em) { + .meter--circle, + .meter--arc { + width: 192px; } } + +.meter--circle .meter__value, +.meter--arc .meter__value { + white-space: normal; + pointer-events: none; + text-align: center; } + +.meter--circle .meter__value--active, +.meter--arc .meter__value--active { + pointer-events: auto; + cursor: pointer; } + +.meter--circle .meter__minmax-container, +.meter--arc:not(.meter--vertical) .meter__minmax-container { + width: 192px; } + +.meter--circle .meter__value, +.meter--arc:not(.meter--vertical) .meter__value { + position: absolute; + left: 50%; } + +.meter--circle.meter--small .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container { + width: 96px; } + +.meter--circle.meter--large .meter__minmax-container, +.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container { + width: 288px; } + +.meter--circle.meter--legend-right .meter__legend, +.meter--arc.meter--vertical.meter--legend-right .meter__legend { + top: 96px; } + +.meter--circle.meter--legend-right.meter--small .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend { + top: 48px; } + +.meter--circle.meter--legend-right.meter--large .meter__legend, +.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend { + top: 144px; } + +.meter--circle svg.meter__graphic { + width: 192px; + height: 192px; } + +.meter--circle .meter__value { + top: 96px; + -webkit-transform: translateX(-50%) translateY(-50%); + transform: translateX(-50%) translateY(-50%); + max-width: 144px; } + +.meter--circle.meter--small svg.meter__graphic { + width: 96px; + height: 96px; } + +.meter--circle.meter--small .meter__value { + top: 48px; + max-width: 72px; } + +.meter--circle.meter--large svg.meter__graphic { + width: 288px; + height: 288px; } + +.meter--circle.meter--large .meter__value { + top: 144px; + max-width: 216px; } + +.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value { + position: static; + margin: 0 auto; + -webkit-transform: none; + transform: none; } + +.meter--arc:not(.meter--vertical) svg.meter__graphic { + width: 192px; + height: 144px; } + +.meter--arc:not(.meter--vertical) .meter__value { + top: 108px; + -webkit-transform: translateX(-50%); + transform: translateX(-50%); + max-width: 120px; } + +.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend { + top: 72px; } + +.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic { + width: 96px; + height: 72px; } + +.meter--arc:not(.meter--vertical).meter--small .meter__value { + top: 60px; + max-width: 60px; } + +.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic { + width: 288px; + height: 216px; } + +.meter--arc:not(.meter--vertical).meter--large .meter__value { + top: 156px; + max-width: 180px; } + +.meter--arc.meter--vertical svg.meter__graphic { + display: inline; + width: 144px; + height: 192px; } + +.meter--arc.meter--vertical .meter__value { + position: relative; + top: 96px; + -webkit-transform: translateY(-50%); + transform: translateY(-50%); + display: inline-block; + margin-left: -24px; + vertical-align: top; } + html.rtl .meter--arc.meter--vertical .meter__value { + margin-left: 0; + margin-right: -24px; } + +.meter--arc.meter--vertical .meter__minmax-container { + display: inline-block; + vertical-align: top; + margin-left: 12px; + padding-top: 12px; + padding-bottom: 12px; } + html.rtl .meter--arc.meter--vertical .meter__minmax-container { + margin-left: 0; + margin-right: 12px; } + +.meter--arc.meter--vertical.meter--small svg.meter__graphic { + width: 72px; + height: 96px; } + +.meter--arc.meter--vertical.meter--small .meter__value { + top: 48px; + margin-left: -12px; } + html.rtl .meter--arc.meter--vertical.meter--small .meter__value { + margin-left: 0; + margin-right: -12px; } + +.meter--arc.meter--vertical.meter--small .meter__minmax-container { + padding-top: 0px; + padding-bottom: 0px; } + +.meter--arc.meter--vertical.meter--large svg.meter__graphic { + width: 216px; + height: 288px; } + +.meter--arc.meter--vertical.meter--large .meter__value { + top: 144px; + margin-left: -48px; } + html.rtl .meter--arc.meter--vertical.meter--large .meter__value { + margin-left: 0; + margin-right: -48px; } + +.meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: -72px; } + html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value { + margin-left: 0; + margin-right: -72px; } + +.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: -60px; } + html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value { + margin-left: 0; + margin-right: -60px; } + +.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value { + min-width: 78px; } + +.meter--arc.meter--vertical.meter--legend-right .meter__value { + min-width: 120px; } + +.meter--spiral .meter__value { + position: absolute; + top: 0px; + right: 0px; + white-space: normal; + text-align: right; } + +.meter--spiral .meter__value-value { + display: block; + font-size: 24px; + font-size: 1.5rem; + line-height: 1; + margin-bottom: 6px; } + +.meter--spiral .meter__value-units { + font-size: 20px; + font-size: 1.25rem; + line-height: 1.2; + color: #777; + margin-left: 0.2em; } + html.rtl .meter--spiral .meter__value-units { + margin-left: 0; + margin-right: 0.2em; } + +.meter--spiral .meter__value-label { + display: block; + font-size: 14px; + font-size: 0.875rem; + line-height: 16px; } + +.meter--loading .meter__thresholds, +.meter--loading .meter__value { + display: none; } .notification { font-size: 19px; @@ -4718,54 +5408,71 @@ a.active > .label .label__icon.control-icon svg { font-size: 19px; font-size: 1.1875rem; line-height: 24px; } - .notification--critical .notification__status .status-icon__base { + .notification:not(.notification--disabled) { + cursor: pointer; } + .notification:not(.notification--disabled):hover { + z-index: 1; + box-shadow: 0px 0px 0px 2px #8C50FF; } + .notification--status-critical .notification__status .status-icon__base { fill: #fff; } - .notification--critical .notification__status .status-icon__detail { + .notification--status-critical .notification__status .status-icon__detail { stroke: #FF856B; fill: #FF856B; } - .notification--critical .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-critical .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--error .notification__status .status-icon__base { + .notification--status-critical:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #FF856B; } + .notification--status-error .notification__status .status-icon__base { fill: #fff; } - .notification--error .notification__status .status-icon__detail { + .notification--status-error .notification__status .status-icon__detail { stroke: #FF856B; fill: #FF856B; } - .notification--error .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-error .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--warning .notification__status .status-icon__base { + .notification--status-error:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #FF856B; } + .notification--status-warning .notification__status .status-icon__base { fill: #fff; } - .notification--warning .notification__status .status-icon__detail { + .notification--status-warning .notification__status .status-icon__detail { stroke: #FFB86B; fill: #FFB86B; } - .notification--warning .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-warning .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--ok .notification__status .status-icon__base { + .notification--status-warning:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #FFB86B; } + .notification--status-ok .notification__status .status-icon__base { fill: #fff; } - .notification--ok .notification__status .status-icon__detail { + .notification--status-ok .notification__status .status-icon__detail { stroke: #4EB976; fill: #4EB976; } - .notification--ok .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-ok .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--unknown .notification__status .status-icon__base { + .notification--status-ok:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #4EB976; } + .notification--status-unknown .notification__status .status-icon__base { fill: #fff; } - .notification--unknown .notification__status .status-icon__detail { + .notification--status-unknown .notification__status .status-icon__detail { stroke: #a8a8a8; fill: #a8a8a8; } - .notification--unknown .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } - .notification--disabled .notification__status .status-icon__base { + .notification--status-unknown:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #a8a8a8; } + .notification--status-disabled .notification__status .status-icon__base { fill: #fff; } - .notification--disabled .notification__status .status-icon__detail { + .notification--status-disabled .notification__status .status-icon__detail { stroke: #a8a8a8; fill: #a8a8a8; } - .notification--disabled .notification__status.status-icon-unknown .status-icon__detail { + .notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail { stroke: #fff; fill: #fff; } + .notification--status-disabled:not(.notification--disabled):hover { + box-shadow: 0px 0px 0px 2px #a8a8a8; } .notifications-control__icon { width: 48px; @@ -4778,7 +5485,7 @@ a.active > .label .label__icon.control-icon svg { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .notifications__container { position: absolute; @@ -4788,8 +5495,8 @@ a.active > .label .label__icon.control-icon svg { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 4px; } .notifications__icon { position: absolute; @@ -4804,6 +5511,10 @@ a.active > .label .label__icon.control-icon svg { .number-input__input::-webkit-outer-spin-button, .number-input__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } + .number-input__input:invalid { + box-shadow: none; } + .number-input__input::-ms-clear { + display: none; } .object { overflow: auto; } @@ -4839,25 +5550,54 @@ a.active > .label .label__icon.control-icon svg { font-style: italic; color: #777; } .object__attribute--array > .object__attribute-value > ol > li { - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li:last-child { - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .object__attribute--array > .object__attribute-value > ol > li > ul { padding-top: 0px; padding-bottom: 0px; } -.paragraph--small { +.grommet .paragraph--align-start { + text-align: left; } + html.rtl .grommet .paragraph--align-start { + text-align: right; } + +.grommet .paragraph--align-center { + text-align: center; } + +.grommet .paragraph--align-right { + text-align: right; } + html.rtl .grommet .paragraph--align-right { + text-align: left; } + +.grommet .paragraph--margin-none { + margin-top: 0; + margin-bottom: 0; } + +.grommet .paragraph--margin-small { + margin-top: 12px; + margin-bottom: 12px; } + +.grommet .paragraph--margin-medium { + margin-top: 24px; + margin-bottom: 24px; } + +.grommet .paragraph--margin-large { + margin-top: 48px; + margin-bottom: 48px; } + +.grommet .paragraph.paragraph--small { font-size: 14px; font-size: 0.875rem; line-height: 1.71429; } - .paragraph--small a { + .grommet .paragraph.paragraph--small a { text-decoration: none; } -.paragraph--large { +.grommet .paragraph.paragraph--large { font-size: 24px; font-size: 1.5rem; line-height: 28px; } - .paragraph--large a { + .grommet .paragraph.paragraph--large a { color: #8C50FF; font-weight: 600; } @@ -4868,26 +5608,26 @@ a.active > .label .label__icon.control-icon svg { cursor: pointer; } .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label { color: #fff; } .radio-button__input { opacity: 0; position: absolute; } .radio-button__input:checked + .radio-button__control { border-color: #8C50FF; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control { border-color: #fff; } .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control + .radio-button__label { color: #fff; } .radio-button__input:checked + .radio-button__control:after { content: ""; @@ -4899,7 +5639,7 @@ a.active > .label .label__icon.control-icon svg { height: 10px; background-color: #8C50FF; border-radius: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__input:checked + .radio-button__control:after { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__input:checked + .radio-button__control:after { background-color: #fff; } .radio-button__input:focus + .radio-button__control { content: ""; @@ -4919,12 +5659,12 @@ a.active > .label .label__icon.control-icon svg { html.rtl .radio-button__control { margin-right: 0; margin-left: 12px; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__control { - border-color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__control { + border-color: rgba(255, 255, 255, 0.7); } .radio-button__label { color: #777; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .radio-button__label { - color: #dbdbdb; } + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .radio-button__label { + color: rgba(255, 255, 255, 0.85); } .radio-button--disabled .radio-button__control { opacity: 0.5; } @@ -4935,121 +5675,193 @@ a.active > .label .label__icon.control-icon svg { margin: -1px; border: 1px solid #c3a4fe; box-shadow: 0 0 1px 1px #c3a4fe; } - .search--controlled { - cursor: pointer; } - .search__input { - margin-right: 0px; } - .header .search__input { - font-size: inherit; } - .search__drop { - font-size: 20px; - font-size: 1.25rem; + +.search--controlled { + cursor: pointer; } + +.search__input { + margin-right: 0px; } + .header .search__input { + font-size: inherit; line-height: inherit; } + .search__input::-ms-clear { + display: none; } + +.search__drop { + font-size: 20px; + font-size: 1.25rem; + line-height: inherit; } + @media screen and (max-width: 44.9375em) { + .search__drop { + max-width: 100%; + width: 100vw; } } + .search__drop input { + margin-right: 0px; + box-sizing: border-box; + width: 100%; } @media screen and (max-width: 44.9375em) { - .search__drop { - max-width: 100%; - width: 100vw; } } - .search__drop--inline { - margin-left: -1px; } - .search__drop--inline .search__drop-contents { - display: block; } - .search__drop--controlled .search__drop-contents { - display: inline-block; } - .search__drop input { - margin-right: 0px; - box-sizing: border-box; - width: 100%; } - @media screen and (max-width: 44.9375em) { - .search__drop input { - width: calc(100vw - 72px); } } - .search__drop-control { - vertical-align: top; - height: 48px; } - .search__drop .search__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search__drop--large { - line-height: 96px; } - .search--inline { - position: relative; } - .search--inline .search__input { - width: 100%; - box-sizing: border-box; - padding-right: 47px; } - .search--inline .search__input:focus { - padding-right: 46px; } - html.rtl .search--inline .search__input { - padding-right: 23px; - padding-left: 47px; } - html.rtl .search--inline .search__input:focus { - padding-right: 22px; - padding-left: 46px; } - .header .search--inline .search__input:not(:focus) { - border-color: transparent; } - .search--inline .control-icon-search { - position: absolute; - right: 12px; - top: 50%; - transform: translateY(-50%); - pointer-events: none; } - html.rtl .search--inline .control-icon-search { - right: auto; - left: 12px; } - .search--small { - line-height: 24px; } - .search--small .search__input { - font-size: 14px; - font-size: 0.875rem; - line-height: 14px; - padding: 4px 13px; - padding-right: 23px; } - .search--small .search__input:focus { - padding: 3px 12px; - padding-right: 22px; } - .search--small .control-icon-search { - height: 12px; - width: 12px; } - .search--large { - line-height: triple(24px); } - .search--large .search__input { - font-size: 36px; - font-size: 2.25rem; - line-height: 48px; - padding: -7px 35px; - padding-right: 47px; } - .search--large .control-icon-search { - right: 24px; } + .search__drop input { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion { + padding: 6px 24px; + cursor: pointer; } + @media screen and (max-width: 44.9375em) { + .search__drop .search__suggestion { + width: calc(100vw - 72px); } } + .search__drop .search__suggestion:hover, .search__drop .search__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } -.search-input { - position: relative; +.search__drop-control { + vertical-align: top; + height: 48px; } + +.search__drop--controlled .search__drop-contents { display: inline-block; } - .search-input__input { + +.search__drop--large { + line-height: 96px; } + +.search--inline { + position: relative; } + .search--inline .search__input { width: 100%; - height: 100%; - display: block; - padding-right: 60px; } - .search-input__input:focus { - padding-right: 59px; } - .search-input__control { + box-sizing: border-box; + padding-left: 11px; + padding-right: 47px; + border-radius: 0; + -webkit-appearance: none; } + .search--inline .search__input:focus { + padding-left: 10px; + padding-right: 46px; } + html.rtl .search--inline .search__input { + padding-right: 11px; + padding-left: 47px; } + html.rtl .search--inline .search__input:focus { + padding-right: 11px; + padding-left: 46px; } + .header .search--inline .search__input:not(:focus) { + border-color: transparent; } + .search--inline .control-icon-search { position: absolute; + right: 12px; top: 50%; transform: translateY(-50%); - right: 12px; } - .search-input__suggestions { - border-top-left-radius: 0px; - border-top-right-radius: 0px; - margin: 0px; - list-style-type: none; } - .search-input__suggestion { - padding: 6px 24px; - cursor: pointer; } - .search-input__suggestion:hover, .search-input__suggestion--active { - background-color: rgba(0, 0, 0, 0.1); } - .search-input--active .search-input__input { - border-bottom-left-radius: 0px; - border-bottom-right-radius: 0px; } + pointer-events: none; } + html.rtl .search--inline .control-icon-search { + right: auto; + left: 12px; } + +.search--small .search__input { + font-size: 19px; + font-size: 1.1875rem; + line-height: inherit; + padding: 4px 18px; + padding-right: 23px; } + .search--small .search__input:focus { + padding: 3px 17px; + padding-right: 22px; } + +.search--large .search__input { + font-size: 54px; + font-size: 3.375rem; + line-height: normal; + padding: 12px 24px; + padding-right: 72px; } + .search--large .search__input:focus { + padding: 11px 71px; + padding-left: 23px; } + @media screen and (max-width: 44.9375em) { + .search--large .search__input:focus { + padding: 10px 22px; + padding-right: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--large .search__input { + font-size: inherit; + padding: 11px 23px; + padding-right: 47px; + line-height: 1.5; } } + +.search--large .control-icon-search { + right: 24px; + width: 48px; + height: 48px; } + @media screen and (max-width: 44.9375em) { + .search--large .control-icon-search { + right: 12px; + width: 24px; + height: 24px; } } + @media screen and (min-width: 45em) { + .search--large .control-icon-search { + transition: none; } } + +.search--icon-align-start.search--inline .search__input { + padding-left: 47px; + padding-right: 23px; } + .search--icon-align-start.search--inline .search__input:focus { + padding-left: 46px; + padding-right: 23px; } + +.search--icon-align-start.search--inline .control-icon-search { + left: 12px; } + +.search--icon-align-start.search--large .search__input { + padding-left: 72px; + padding-right: 24px; } + .search--icon-align-start.search--large .search__input:focus { + padding-left: 71px; + padding-right: 23px; } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input:focus { + padding: 10px 22px; + padding-left: 46px; } } + @media screen and (max-width: 44.9375em) { + .search--icon-align-start.search--large .search__input { + padding: 11px 23px; + padding-left: 47px; } } + +.search--fill { + width: 100%; + max-width: none; + flex-grow: 1; } + +.search-input { + position: relative; + display: inline-block; } + +.grommet .search-input__input, +.search-input__input { + width: 100%; + height: 100%; + display: block; + padding-right: 48px; } + .grommet .search-input__input:focus, + .search-input__input:focus { + padding-right: 47px; } + .grommet .search-input__input::-ms-clear, + .search-input__input::-ms-clear { + display: none; } + +.search-input__control { + position: absolute; + top: 50%; + transform: translateY(-50%); + right: 6px; } + +.search-input__suggestions { + border-top-left-radius: 0px; + border-top-right-radius: 0px; + margin: 0px; + list-style-type: none; } + +.search-input__suggestion { + padding: 6px 24px; + cursor: pointer; } + .search-input__suggestion:hover, .search-input__suggestion--active { + background-color: rgba(221, 221, 221, 0.5); } + +.search-input--active .search-input__input { + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0px; } section:not(.section) { padding-top: 24px; @@ -5122,7 +5934,7 @@ section > dl > dd { left: 0px; right: 0px; bottom: 0px; - background-color: rgba(128, 128, 128, 0.6); + background-color: rgba(0, 0, 0, 0.5); z-index: 10; } .session__container { position: absolute; @@ -5132,8 +5944,8 @@ section > dl > dd { padding: 24px; padding-top: 96px; background-color: #fff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; + border-left: 1px solid rgba(0, 0, 0, 0.15); + border-bottom: 1px solid rgba(0, 0, 0, 0.15); border-bottom-left-radius: 4px; } .session .react-gravatar { position: absolute; @@ -5142,7 +5954,7 @@ section > dl > dd { .session__actions { margin-top: 24px; padding-top: 24px; - border-top: 1px solid #ccc; } + border-top: 1px solid rgba(0, 0, 0, 0.15); } .session a { cursor: pointer; } @@ -5167,7 +5979,7 @@ section > dl > dd { display: flex; flex-direction: column; } .sidebar--fixed > * { - flex: 1; + flex: 1 1 auto; overflow: auto; } .sidebar--fixed > *.header, .sidebar--fixed > *.footer { flex: 0 0 auto; } @@ -5223,41 +6035,62 @@ section > dl > dd { .skip-link-anchor { width: 0; height: 0; - overflow: hidden; } + overflow: hidden; + position: absolute; } .tab { - padding: 12px; } + padding: 0 12px; } + .tabs--justify-start .tab:first-of-type, + .tabs--justify-end .tab:first-of-type { + padding-left: 0; } + .tabs--justify-start .tab:last-of-type, + .tabs--justify-end .tab:last-of-type { + padding-right: 0; } + @media screen and (max-width: 44.9375em) { + .tabs--responsive .tab:first-of-type, + .tabs--responsive .tab:last-of-type { + padding-left: 12px; + padding-right: 12px; } } .tab a { + display: inline-block; text-decoration: none; } .tab a:hover, .tab a:visited, .tab a:link, .tab a:active { text-decoration: none; } - .tab a:focus .tab__label { - border-bottom: 4px solid; } + .tab a:focus:not(tab--active .tab__link) .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tab__label { + display: inline-block; cursor: pointer; - padding-bottom: 12px; - font-weight: 600; - color: #777; } - .tab--active .tab__label { + padding-bottom: 10px; + color: #777; + border-bottom: 4px solid transparent; } + .tab--active .tab__label, + .tab--active .tab__link:hover .tab__label { color: #000; - border-bottom: 4px solid #000; } - .tab:hover .tab__label, .tab:focus .tab__label { - border-bottom: 4px solid; } + border-color: #000; } + .tab:hover .tab__label { + border-color: rgba(0, 0, 0, 0.15); } .tabs { - margin: 0; + margin: 12px 0; padding: 0; display: flex; flex-wrap: wrap; - justify-content: center; align-items: center; list-style: none; - border-bottom: 1px solid #ccc; } - .tabs__content { - padding: 24px; } - @media screen and (max-width: 44.9375em) { - .tabs__content { - padding: 24px 0; } } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + .tabs--justify-center { + justify-content: center; } + .tabs--justify-start { + justify-content: flex-start; } + .tabs--justify-end { + justify-content: flex-end; } + @media screen and (max-width: 44.9375em) { + .tabs--justify-start.tabs--responsive, .tabs--justify-center.tabs--responsive, .tabs--justify-end.tabs--responsive { + flex-direction: column; + text-align: center; } } + .tabs + div:focus { + outline: none; } .table table { width: 100%; } @@ -5279,7 +6112,7 @@ section > dl > dd { font-size: 20px; font-size: 1.25rem; line-height: 1.2; - border-bottom: 1px solid #ccc; } + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } .table__mirror { position: absolute; @@ -5289,9 +6122,6 @@ section > dl > dd { .table__mirror > thead { position: fixed; background-color: rgba(255, 255, 255, 0.9); } - @media screen and (max-width: 44.9375em) { - .table__mirror > thead { - position: static; } } .table__more { margin-top: 24px; @@ -5299,6 +6129,10 @@ section > dl > dd { .table--scrollable { position: relative; } + .table--scrollable .table__table thead { + visibility: hidden; } + .table--scrollable .table__table th { + border-bottom: none; } .table--selectable tbody tr { cursor: pointer; } @@ -5307,23 +6141,69 @@ section > dl > dd { .table--selectable tbody tr.table-row--selected td { background-color: #d9c5ff; color: #333; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr.table-row--selected td { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr.table-row--selected td { background-color: rgba(0, 0, 0, 0.2); color: #fff; } .table--selectable tbody tr:hover:not(.table-row--selected) td { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .table--selectable tbody tr:hover:not(.table-row--selected) td { color: #fff; } +.table--small thead { + display: none; } + +.table--small td { + display: block; } + .table--small td:before { + font-weight: 100; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + content: attr(data-th); + display: block; + padding-right: 12px; } + +.table--small tr { + border-bottom: 1px solid rgba(0, 0, 0, 0.15); } + +.table--small td, +.table--small th { + padding-left: 24px; } + .tag { - background-color: rgba(128, 128, 128, 0.6); - padding: 3px 6px; + padding: 6px 22px; + background-color: transparent; + border: 2px solid #8C50FF; + border-radius: 4px; + color: #333; + font-size: 19px; + font-size: 1.1875rem; + line-height: 24px; + font-weight: 600; + cursor: pointer; + text-align: center; + outline: none; + min-width: 120px; + max-width: 384px; + border-color: rgba(51, 51, 51, 0.6); + margin: 0 12px 12px 0; position: relative; - margin: 0 12px 12px 0; } - .tag .tag--label { - color: #fff; + opacity: 0.7; } + .tag:focus:not(.button--disabled) { + border-color: #c3a4fe; + box-shadow: 0 0 1px 1px #c3a4fe; } + @media screen and (min-width: 45em) { + .tag { + transition: 0.1s ease-in-out; } } + .tag a, + .tag a:hover, + .tag .anchor:hover:not(.anchor--disabled) { + color: #333; text-decoration: none; } + .tag:hover { + box-shadow: 0px 0px 0px 2px rgba(51, 51, 51, 0.6); + opacity: 1; } .tbd { text-align: center; @@ -5332,23 +6212,12 @@ section > dl > dd { font-size: 6rem; line-height: 1; font-style: italic; - background-color: #ccc; + background-color: rgba(0, 0, 0, 0.15); color: #fff; } .tiles { width: 100%; padding: 12px; } - @media screen and (min-width: 45em) { - .tiles.box--direction-row > .tile { - flex: 0 0 192px; } - .tiles.box--direction-row > .tile > * { - box-sizing: border-box; } - .tiles.box--direction-row > .tile--wide { - box-sizing: border-box; } - .tiles.box--direction-row:not(.tiles--flush) > .tile { - margin: 12px; } - .tiles.box--direction-row:not(.tiles--flush) > .tile--wide { - flex-basis: calc(100% - 24px); } } .tiles__container { display: flex; flex-direction: row; @@ -5363,6 +6232,16 @@ section > dl > dd { .tiles__container .tiles.box--direction-row { width: 100%; overflow: hidden; } + .tiles > .tile { + flex-grow: 0; + flex-shrink: 0; } + @media screen and (min-width: 45em) { + .tiles > .tile { + flex-basis: 192px; } } + .tiles:not(.tiles--flush) > .tile { + margin: 12px; } + .tiles:not(.tiles--flush) > .tile--wide { + flex-basis: calc(100% - 24px); } .tiles--fill.box--wrap { justify-content: space-around; } .tiles--fill.box--wrap > .tile { @@ -5389,16 +6268,14 @@ section > dl > dd { background-color: #d9c5ff; color: #333; } .tiles--selectable .tile:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } - .tiles--small > .tile { - flex-basis: 96px; } + @media screen and (min-width: 45em) { + .tiles--small > .tile { + flex-basis: 96px; } } @media screen and (min-width: 45em) { .tiles--large > .tile { flex-basis: 384px; } } - @media screen and (max-width: 44.9375em) { - .tiles--large > .tile { - flex-basis: 100%; } } .tiles:focus { outline: #c3a4fe solid 1px; } @@ -5418,7 +6295,7 @@ section > dl > dd { background-color: #d9c5ff; color: #333; } .tile--selectable:hover:not(.tile--selected) { - background-color: rgba(0, 0, 0, 0.1); + background-color: rgba(221, 221, 221, 0.5); color: #000; } .tile--eclipsed { opacity: 0.2; } @@ -5447,9 +6324,13 @@ section > dl > dd { text-decoration: none; } [class*="background-color-index-"] .title a:hover { text-decoration: underline; } + .title span { + overflow: hidden; + text-overflow: ellipsis; } .title svg, .title img { - max-width: 576px; } + max-width: 576px; + flex: 0 0 auto; } .title svg:not(:last-child), .title img:not(:last-child) { margin-right: 12px; } @@ -5461,7 +6342,7 @@ section > dl > dd { .title--interactive:hover { color: #8C50FF; cursor: pointer; } - [class*="background-color-index-"]:not([class*="background-color-index-light"]) .title--interactive:hover { + [class*="background-color-index-"]:not([class*="background-color-index-accent"]):not([class*="background-color-index-light"]):not([class*="background-color-index-warning"]):not([class*="background-color-index-disabled"]):not([class*="background-color-index-unknown"]) .title--interactive:hover { color: #fff; } @media screen and (max-width: 44.9375em) { .title--responsive svg, @@ -5517,7 +6398,7 @@ section > dl > dd { .topology__part > .topology__parts .topology__part { flex: 1; } .topology__part--demarcate { - border: 1px solid #ccc; } + border: 1px solid rgba(0, 0, 0, 0.15); } .topology__part--demarcate.topology__part--empty { background-color: #f5f5f5; min-width: 24px; @@ -5586,16 +6467,13 @@ section > dl > dd { display: flex; align-items: center; text-align: left; - padding: 24px; - background-color: rgba(51, 51, 51, 0.7); - color: #dbdbdb; - border-radius: 4px; } + padding: 24px; } .video__control.button--primary { flex: 0 0 auto; width: 96px; height: 96px; border-radius: 48px; - background-color: rgba(140, 80, 255, 0.7); } + background-color: rgba(140, 80, 255, 0.8); } .video__control.button--primary:hover { background-color: #8C50FF; } .video__title { @@ -5606,13 +6484,13 @@ section > dl > dd { right: 0px; bottom: 0px; height: 72px; - color: #dbdbdb; + color: rgba(255, 255, 255, 0.85); background-color: rgba(51, 51, 51, 0.7); } .video__timeline-chapter { position: absolute; height: 100%; padding-left: 6px; - border-left: 2px solid #dbdbdb; + border-left: 2px solid rgba(255, 255, 255, 0.7); text-align: left; cursor: pointer; } .video__timeline-chapter:hover { @@ -5633,6 +6511,13 @@ section > dl > dd { .video__progress-meter { height: 100%; background-color: #8C50FF; } + .video--titled .video__summary { + background-color: rgba(51, 51, 51, 0.7); + color: rgba(255, 255, 255, 0.85); + border-radius: 4px; + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.26316; } .video--playing:not(.video--interacting) .video__summary, .video--playing:not(.video--interacting) .video__timeline, .video--playing:not(.video--interacting) .video__progress { diff --git a/css/grommet.min.css b/css/grommet.min.css index 4466df6..f219638 100644 --- a/css/grommet.min.css +++ b/css/grommet.min.css @@ -4,4 +4,4 @@ * github.com/inuitcss | inuitcss.com */@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:300;src:local("Source Sans Pro Light"),local("SourceSansPro-Light"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/toadOcfmlt9b38dHJxOBGPS42wKzre0cxmO5m5GyTsY.ttf) format("truetype")}@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:400;src:local("Source Sans Pro"),local("SourceSansPro-Regular"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/ODelI1aHBYDBqgeIAH2zlEY6Fu39Tt9XkmtSosaMoEA.ttf) format("truetype")}@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:700;src:local("Source Sans Pro Bold"),local("SourceSansPro-Bold"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/toadOcfmlt9b38dHJxOBGLlcMrNrsnL9dgADnXgYJjs.ttf) format("truetype")}@font-face{font-family:Source Sans Pro;font-style:italic;font-weight:400;src:local("Source Sans Pro Italic"),local("SourceSansPro-It"),url(https://fonts.gstatic.com/s/sourcesanspro/v9/M2Jd71oPJhLKp0zdtTvoMzpKUtbt71woJ25xl7KOGD0.ttf) format("truetype")} -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,html{font-family:Source Sans Pro,Arial,sans-serif}body,html{font-size:16px;font-size:1rem;line-height:24px}h1{font-size:48px;font-size:3rem;line-height:1.125}h2{font-size:36px;font-size:2.25rem;line-height:1.33333}h3{font-size:24px;font-size:1.5rem;line-height:1.25}h4,h5{font-size:18px;font-size:1.125rem;line-height:1.33333}h1,h2,h3,h4,h5{font-weight:100;max-width:100%}h1.header--strong,h1>strong,h2.header--strong,h2>strong,h3.header--strong,h3>strong,h4.header--strong,h4>strong,h5.header--strong,h5>strong{font-weight:600}h1 a,h1 a.anchor,h2 a,h2 a.anchor,h3 a,h3 a.anchor,h4 a,h4 a.anchor,h5 a,h5 a.anchor{color:inherit;text-decoration:none}h1 a.anchor:hover,h1 a:hover,h2 a.anchor:hover,h2 a:hover,h3 a.anchor:hover,h3 a:hover,h4 a.anchor:hover,h4 a:hover,h5 a.anchor:hover,h5 a:hover{text-decoration:none}dd,li,p{max-width:576px;margin-left:0}dd{margin-bottom:12px}p{margin-top:24px;margin-bottom:24px}blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}b,strong{font-weight:600}code.hljs{border:1px solid #ccc}.large-number-font{font-family:Source Sans Pro,Arial,sans-serif}.secondary{color:#777}.error{color:#ff856b}input,select,textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid #ccc;border-radius:4px;outline:none;margin-right:12px;background-color:transparent}html.rtl input,html.rtl select,html.rtl textarea{margin-right:0;margin-left:12px}input:focus,select:focus,textarea:focus{padding:10px 22px;border-width:2px;border-color:#c3a4fe}input::-moz-focus-inner,select::-moz-focus-inner,textarea::-moz-focus-inner{border:none;outline:none}input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#aaa}input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#aaa}input:-ms-input-placeholder,select:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#aaa}input.error,select.error,textarea.error{border-color:#ff856b}input[type=button],input[type=submit]{text-align:center;line-height:inherit}select{border-color:#ccc;padding-right:24px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right;cursor:pointer}select::-moz-focus-inner{border:none}select.plain{border:none}input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}input[type=range]:focus{outline:none}input[type=range]::-moz-focus-inner,input[type=range]::-moz-focus-outer{border:none}input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#8c50ff;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:before{background-color:#fff}input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #8c50ff;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #8c50ff;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}input[type=range]::-ms-fill-lower{background:#8c50ff;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-lower{background:#fff}input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]::-ms-thumb{border-color:#fff}input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}body.rtl,html.rtl{direction:rtl}@media screen and (min-width:45em){body,html{height:100%;width:100%;overflow:visible}}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,a{text-decoration:none;cursor:pointer}.anchor,.anchor:visited,a,a:visited{color:#8c50ff}.anchor.active,a.active{color:#333}.anchor:hover:not(.anchor--disabled),a:hover:not(.anchor--disabled){text-decoration:underline;color:#6e22ff}.anchor__icon,a__icon{display:inline-block;padding:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button),[class*=background-color-index-]:not([class*=background-color-index-light]) a{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu .anchor:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu a:not(.button):hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor.anchor--primary,a.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;color:#8c50ff;text-decoration:none}.anchor.anchor--primary .control-icon,a.anchor--primary .control-icon{stroke:#8c50ff;margin-right:12px}html.rtl .anchor.anchor--primary .control-icon,html.rtl a.anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor.anchor--primary>span,a.anchor--primary>span{vertical-align:middle}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon{transform:translateX(3px);stroke:#8c50ff}.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,.anchor.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon path,a.anchor--primary:hover:not(.anchor--disabled)>.control-icon polyline{stroke-width:3px}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled),[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled){color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor.anchor--primary:hover:not(.anchor--disabled) .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a.anchor--primary:hover:not(.anchor--disabled) .control-icon{fill:#fff;stroke:#fff}.anchor--disabled,a--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon,a--disabled .control-icon{cursor:default}#loading{position:absolute;width:100%;height:100%;background-color:#ddd;text-align:center;padding-top:100px;font-size:48px;color:#ccc;font-style:italic}@media screen and (min-width:45em){.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.app--inline{position:relative}.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:center center;background-size:cover;background-repeat:no-repeat}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.box__container--full{max-width:100%;width:100vw}.layer__container .box__container--full{width:calc(100vw - 48px)}.box__container--full-horizontal{max-width:100%;width:100vw}.layer__container .box__container--full-horizontal{width:calc(100vw - 48px)}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box--wrap{flex-wrap:wrap}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box--full{position:relative;max-width:100%;width:100vw;min-height:100vh;height:100%}.layer__container .box--full{width:calc(100vw - 48px)}.box--full-horizontal{max-width:100%;width:100vw}.layer__container .box--full-horizontal{width:calc(100vw - 48px)}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid #ccc}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid #ccc}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid #ccc}@media screen and (max-width:44.9375em){.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:none;border-bottom:1px solid #ccc}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:none;border-bottom:1px solid #ccc}}[class*=background-color-index-] .box[class*=box--separator]{border-color:#eee}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box--direction-down,.box--direction-up{flex-direction:column}.box--direction-left{justify-content:flex-end}.box--flush{padding:0}.brick{box-shadow:1px 1px 5px #eee;padding:24px;position:relative;margin:0 12px 12px 0;float:left;max-width:calc(100% - 12px)}.brick .brick--label{position:absolute;top:0;right:0;left:0;bottom:0}.brick .brick--label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.brick--content-wrapper{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}button:not(.button),input[type=button],input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #8c50ff;border-radius:4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}button:not(.button):focus:not(.button--disabled),input[type=button]:focus:not(.button--disabled),input[type=submit]:focus:not(.button--disabled){border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}@media screen and (min-width:45em){button:not(.button),input[type=button],input[type=submit]{transition:.1s ease-in-out}}.button{padding:6px 22px;background-color:transparent;border:2px solid #8c50ff;border-radius:4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#8c50ff;background-color:#8c50ff;color:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#c3a4fe}.button--icon{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none}.button--icon.button--primary{background-color:#8c50ff}.button--icon>span:not(.button__icon){vertical-align:middle}.button--icon>span:not(.button__icon):first-child{margin-left:12px}.button--icon>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon{color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon .control-icon{fill:#dbdbdb;stroke:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button--icon:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary){border-color:#eee;color:#dbdbdb}[class*=background-color-index-]:not([class*=background-color-index-light]) .button:not(.button--primary).button--accent{border-color:#c3a4fe}.button--disabled{opacity:.3;cursor:default}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:rgba(0,0,0,.1)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#8c50ff;color:#dbdbdb}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:#fff;stroke-width:1px}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#8c50ff;fill:#8c50ff}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#8c50ff;fill:#8c50ff}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:#ccc}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.chart__graphic:focus{outline:1px solid #c3a4fe}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#8c50ff}.chart__values-line.color-index-critical,.chart__values-line.color-index-error{stroke:#ff856b}.chart__values-line.color-index-warning{stroke:#ffb86b}.chart__values-line.color-index-ok{stroke:#4eb976}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#a8a8a8}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-6{stroke:#c3a4fe}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-7{stroke:#a577ff}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-8{stroke:#5d0cfb}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-9{stroke:#7026ff}.chart__values-line.color-index-graph-5,.chart__values-line.color-index-graph-10{stroke:#767676}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-5{stroke:#333}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-6{stroke:#444}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-7{stroke:#555}.chart__values-line.color-index-grey-4,.chart__values-line.color-index-grey-8{stroke:#666}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-3{stroke:#c3a4fe}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-4{stroke:#a577ff}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-area.color-index-error,.chart__values-bar.color-index-critical,.chart__values-bar.color-index-error{fill:rgba(255,133,107,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(255,184,107,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(78,185,118,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,66%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-6{fill:rgba(195,164,254,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-7{fill:rgba(165,119,255,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-8{fill:rgba(93,12,251,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-9,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-9{fill:rgba(112,38,255,.7)}.chart__values-area.color-index-graph-5,.chart__values-area.color-index-graph-10,.chart__values-bar.color-index-graph-5,.chart__values-bar.color-index-graph-10{fill:hsla(0,0%,46%,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#8c50ff}.chart__values-area--active.color-index-critical,.chart__values-area--active.color-index-error,.chart__values-bar--active.color-index-critical,.chart__values-bar--active.color-index-error{fill:#ff856b}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#ffb86b}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#4eb976}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#a8a8a8}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-6{fill:#c3a4fe}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-7{fill:#a577ff}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-8{fill:#5d0cfb}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-9,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-9{fill:#7026ff}.chart__values-area--active.color-index-graph-5,.chart__values-area--active.color-index-graph-10,.chart__values-bar--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-10{fill:#767676}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-3{fill:#c3a4fe}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-4{fill:#a577ff}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-5{fill:#333}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-6{fill:#444}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-7,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-7{fill:#555}.chart__values-area--active.color-index-grey-4,.chart__values-area--active.color-index-grey-8,.chart__values-bar--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-8{fill:#666}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#8c50ff}.chart__values-point.color-index-critical,.chart__values-point.color-index-error{stroke:#ff856b}.chart__values-point.color-index-warning{stroke:#ffb86b}.chart__values-point.color-index-ok{stroke:#4eb976}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#a8a8a8}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-6{stroke:#c3a4fe}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-7{stroke:#a577ff}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-8{stroke:#5d0cfb}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-9{stroke:#7026ff}.chart__values-point.color-index-graph-5,.chart__values-point.color-index-graph-10{stroke:#767676}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-5{stroke:#333}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-6{stroke:#444}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-7{stroke:#555}.chart__values-point.color-index-grey-4,.chart__values-point.color-index-grey-8{stroke:#666}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-3{stroke:#c3a4fe}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-4{stroke:#a577ff}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#8c50ff}.chart__values--loading.color-index-critical,.chart__values--loading.color-index-error{stroke:#ff856b}.chart__values--loading.color-index-warning{stroke:#ffb86b}.chart__values--loading.color-index-ok{stroke:#4eb976}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#a8a8a8}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-6{stroke:#c3a4fe}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-7{stroke:#a577ff}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-8{stroke:#5d0cfb}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-9{stroke:#7026ff}.chart__values--loading.color-index-graph-5,.chart__values--loading.color-index-graph-10{stroke:#767676}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-5{stroke:#333}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-6{stroke:#444}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-7{stroke:#555}.chart__values--loading.color-index-grey-4,.chart__values--loading.color-index-grey-8{stroke:#666}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-3{stroke:#c3a4fe}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-4{stroke:#a577ff}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical,.chart__yaxis .chart__bar.color-index-error{fill:rgba(255,133,107,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(255,184,107,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(78,185,118,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,66%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(195,164,254,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-7{fill:rgba(165,119,255,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(93,12,251,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-9{fill:rgba(112,38,255,.5)}.chart__yaxis .chart__bar.color-index-graph-5,.chart__yaxis .chart__bar.color-index-graph-10{fill:hsla(0,0%,46%,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#8c50ff}.chart__cursor-point.color-index-critical,.chart__cursor-point.color-index-error{fill:#ff856b}.chart__cursor-point.color-index-warning{fill:#ffb86b}.chart__cursor-point.color-index-ok{fill:#4eb976}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#a8a8a8}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-6{fill:#c3a4fe}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-7{fill:#a577ff}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-8{fill:#5d0cfb}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-9{fill:#7026ff}.chart__cursor-point.color-index-graph-5,.chart__cursor-point.color-index-graph-10{fill:#767676}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-3{fill:#c3a4fe}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-4{fill:#a577ff}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-5{fill:#333}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-6{fill:#444}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-7{fill:#555}.chart__cursor-point.color-index-grey-4,.chart__cursor-point.color-index-grey-8{fill:#666}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#ff856b}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#ff856b;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#ff856b;stop-opacity:0}.chart--area .chart__gradient.color-index-error .begin,.chart--bar .chart__gradient.color-index-error .begin{stop-color:#ff856b}.chart--area .chart__gradient.color-index-error .mid,.chart--bar .chart__gradient.color-index-error .mid{stop-color:#ff856b;stop-opacity:.5}.chart--area .chart__gradient.color-index-error .end,.chart--bar .chart__gradient.color-index-error .end{stop-color:#ff856b;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#ffb86b}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#ffb86b;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#ffb86b;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#4eb976}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#4eb976;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#4eb976;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#a8a8a8}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#a8a8a8;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#a8a8a8;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#a8a8a8}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#a8a8a8;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#a8a8a8;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#c3a4fe}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#c3a4fe;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#c3a4fe;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#a577ff}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#a577ff;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#a577ff;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#5d0cfb}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#5d0cfb;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#5d0cfb;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-9 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-9 .begin{stop-color:#7026ff}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-9 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-9 .mid{stop-color:#7026ff;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-9 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-9 .end{stop-color:#7026ff;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--area .chart__gradient.color-index-graph-10 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-10 .begin{stop-color:#767676}.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--area .chart__gradient.color-index-graph-10 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-10 .mid{stop-color:#767676;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-5 .end,.chart--area .chart__gradient.color-index-graph-10 .end,.chart--bar .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-10 .end{stop-color:#767676;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#8c50ff}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-area.color-index-error,.chart--sparkline .chart__values-bar.color-index-critical,.chart--sparkline .chart__values-bar.color-index-error{fill:#ff856b}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#ffb86b}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#4eb976}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#a8a8a8}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#c3a4fe}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#a577ff}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#5d0cfb}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-9,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-9{fill:#7026ff}.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-area.color-index-graph-10,.chart--sparkline .chart__values-bar.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-10{fill:#767676}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-3{fill:#c3a4fe}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#a577ff}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#333}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#444}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-7,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-7{fill:#555}.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-area.color-index-grey-8,.chart--sparkline .chart__values-bar.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-8{fill:#666}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:4px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control{border-color:#dbdbdb}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box__label{color:#dbdbdb}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#8c50ff;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-light]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:#dbdbdb}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}.background-color-index-dark{color:#fff}.background-color-index-neutral-1,.background-color-index-neutral-4{background-color:#5d0cfb;color:#fff}.background-color-index-neutral-1-a,.background-color-index-neutral-4-a{background-color:rgba(93,12,251,.8);color:#fff}.background-color-index-neutral-2,.background-color-index-neutral-5{background-color:#7026ff;color:#fff}.background-color-index-neutral-2-a,.background-color-index-neutral-5-a{background-color:rgba(112,38,255,.8);color:#fff}.background-color-index-neutral-3,.background-color-index-neutral-6{background-color:#767676;color:#fff}.background-color-index-neutral-3-a,.background-color-index-neutral-6-a{background-color:hsla(0,0%,46%,.8);color:#fff}.background-color-index-accent-1,.background-color-index-accent-3{background-color:#c3a4fe}.background-color-index-accent-1-a,.background-color-index-accent-3-a{background-color:rgba(195,164,254,.8)}.background-color-index-accent-2,.background-color-index-accent-4{background-color:#a577ff}.background-color-index-accent-2-a,.background-color-index-accent-4-a{background-color:rgba(165,119,255,.8)}.background-color-index-grey-1,.background-color-index-grey-5{background-color:#333;color:#fff}.background-color-index-grey-1-a,.background-color-index-grey-5-a{background-color:rgba(51,51,51,.8);color:#fff}.background-color-index-grey-2,.background-color-index-grey-6{background-color:#444;color:#fff}.background-color-index-grey-2-a,.background-color-index-grey-6-a{background-color:rgba(68,68,68,.8);color:#fff}.background-color-index-grey-3,.background-color-index-grey-7{background-color:#555;color:#fff}.background-color-index-grey-3-a,.background-color-index-grey-7-a{background-color:rgba(85,85,85,.8);color:#fff}.background-color-index-grey-4,.background-color-index-grey-8{background-color:#666;color:#fff}.background-color-index-grey-4-a,.background-color-index-grey-8-a{background-color:hsla(0,0%,40%,.8);color:#fff}.background-color-index-graph-1,.background-color-index-graph-6{background-color:#c3a4fe}.background-color-index-graph-2,.background-color-index-graph-7{background-color:#a577ff}.background-color-index-graph-3,.background-color-index-graph-8{background-color:#5d0cfb;color:#fff}.background-color-index-graph-4,.background-color-index-graph-9{background-color:#7026ff;color:#fff}.background-color-index-graph-5,.background-color-index-graph-10{background-color:#767676;color:#fff}.background-color-index-critical,.background-color-index-error{background-color:#ff856b}.background-color-index-warning{background-color:#ffb86b}.background-color-index-ok{background-color:#4eb976;color:#fff}.background-color-index-disabled,.background-color-index-unknown{background-color:#a8a8a8}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff;color:#333}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5;color:#333}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative;display:block}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__graphic:focus{outline:1px solid #c3a4fe}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#8c50ff}.distribution__item-box.color-index-critical,.distribution__item-box.color-index-error{fill:#ff856b}.distribution__item-box.color-index-warning{fill:#ffb86b}.distribution__item-box.color-index-ok{fill:#4eb976}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#a8a8a8}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-6{fill:#c3a4fe}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-7{fill:#a577ff}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-8{fill:#5d0cfb}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-9{fill:#7026ff}.distribution__item-box.color-index-graph-5,.distribution__item-box.color-index-graph-10{fill:#767676}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-3{fill:#c3a4fe}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-4{fill:#a577ff}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-5{fill:#333}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-6{fill:#444}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-7{fill:#555}.distribution__item-box.color-index-grey-4,.distribution__item-box.color-index-grey-8{fill:#666}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#8c50ff}.distribution__item-icons.color-index-critical,.distribution__item-icons.color-index-error{stroke:#ff856b}.distribution__item-icons.color-index-warning{stroke:#ffb86b}.distribution__item-icons.color-index-ok{stroke:#4eb976}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#a8a8a8}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-6{stroke:#c3a4fe}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-7{stroke:#a577ff}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-8{stroke:#5d0cfb}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-9{stroke:#7026ff}.distribution__item-icons.color-index-graph-5,.distribution__item-icons.color-index-graph-10{stroke:#767676}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-5{stroke:#333}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-6{stroke:#444}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-7{stroke:#555}.distribution__item-icons.color-index-grey-4,.distribution__item-icons.color-index-grey-8{stroke:#666}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-3{stroke:#c3a4fe}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-4{stroke:#a577ff}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;padding:6px 12px;font-family:Source Sans Pro,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-graph-3,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-5,.distribution__label.color-index-graph-8,.distribution__label.color-index-graph-9,.distribution__label.color-index-graph-10,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-2,.distribution__label.color-index-grey-3,.distribution__label.color-index-grey-4,.distribution__label.color-index-grey-5,.distribution__label.color-index-grey-6,.distribution__label.color-index-grey-7,.distribution__label.color-index-grey-8,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-ok{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#8c50ff}.distribution__loading-indicator.color-index-critical,.distribution__loading-indicator.color-index-error{stroke:#ff856b}.distribution__loading-indicator.color-index-warning{stroke:#ffb86b}.distribution__loading-indicator.color-index-ok{stroke:#4eb976}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#a8a8a8}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-6{stroke:#c3a4fe}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-7{stroke:#a577ff}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-8{stroke:#5d0cfb}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-9{stroke:#7026ff}.distribution__loading-indicator.color-index-graph-5,.distribution__loading-indicator.color-index-graph-10{stroke:#767676}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-5{stroke:#333}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-6{stroke:#444}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-7{stroke:#555}.distribution__loading-indicator.color-index-grey-4,.distribution__loading-indicator.color-index-grey-8{stroke:#666}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-3{stroke:#c3a4fe}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-4{stroke:#a577ff}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{height:100%;max-height:100%}.drop{position:fixed;z-index:5;background-color:hsla(0,0%,100%,.9);border:none;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.3);overflow:auto}.footer{min-height:36px;line-height:36px;width:100%}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large .footer__content{padding-top:24px;padding-bottom:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative}@media screen and (min-width:45em){.form{width:480px;max-width:100%}.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid #ccc;margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field{background-color:transparent;color:#dbdbdb}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__label{color:#dbdbdb}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0;padding-left:24px;padding-right:24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>textarea{color:#fff}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px;padding-left:22px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents ::-ms-clear,.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid #ccc;padding-top:6px}.form-field__contents>.form-field--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__help{color:#dbdbdb}.form-field__error{display:block;float:right;color:#ff856b;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-light]) .form-field__error{color:#dbdbdb}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#ff856b}.form-field--focus{z-index:2;border-color:#c3a4fe}.header{height:72px;width:100%;margin-bottom:0}.header--large{height:96px}.header--small{height:48px}.header.box>:not(:last-child){margin-right:12px}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}header.header{font-size:24px;font-size:1.5rem;line-height:inherit;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .5s;transition:transform .5s}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}header.header.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}header.header.box--direction-row>*{margin-bottom:0}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}div.header__container{flex-shrink:0}div.header__container--fixed{position:relative}div.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){div.header__container--fixed .header__wrapper .header{position:fixed}div.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}div.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}div.header__wrapper{height:72px}div.header--large .header__wrapper{height:96px}div.header--large .header__content{line-height:96px}div.header--small .header__wrapper{height:48px}div.header--small .header__content{line-height:48px}div.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}div.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}div.header--fixed.header--primary .header__content{position:static;background-color:transparent}div.header--flush .header__wrapper{padding-left:0;padding-right:0}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1.2}.headline--small{font-size:30px;font-size:1.875rem;line-height:1.6}.headline--strong{font-weight:600}.control-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#8c50ff}.control-icon.color-index-critical,.control-icon.color-index-error{stroke:#ff856b}.control-icon.color-index-warning{stroke:#ffb86b}.control-icon.color-index-ok{stroke:#4eb976}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#a8a8a8}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{stroke:#c3a4fe}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{stroke:#a577ff}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{stroke:#5d0cfb}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{stroke:#7026ff}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{stroke:#767676}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{stroke:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{stroke:#444}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{stroke:#555}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{stroke:#666}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{stroke:#c3a4fe}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{stroke:#a577ff}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#8c50ff}.control-icon.color-index-critical,.control-icon.color-index-error{fill:#ff856b}.control-icon.color-index-warning{fill:#ffb86b}.control-icon.color-index-ok{fill:#4eb976}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#a8a8a8}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{fill:#c3a4fe}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{fill:#a577ff}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{fill:#5d0cfb}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{fill:#7026ff}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{fill:#767676}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{fill:#c3a4fe}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{fill:#a577ff}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{fill:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{fill:#444}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{fill:#555}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{fill:#666}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover:not(.anchor--disabled) .control-icon,.button:hover:not(.anchor--disabled) .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.control-icon__badge circle{fill:#c3a4fe}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .control-icon{fill:#dbdbdb;stroke:#dbdbdb}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-light]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#a8a8a8}.status-icon-critical .status-icon__base,.status-icon-error .status-icon__base{fill:#ff856b}.status-icon-warning .status-icon__base{fill:#ffb86b}.status-icon-ok .status-icon__base{fill:#4eb976}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#a8a8a8}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#a8a8a8;stroke:#a8a8a8}.status-icon--large{width:48px;height:48px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#8c50ff}.logo-icon.color-index-critical,.logo-icon.color-index-error{stroke:#ff856b}.logo-icon.color-index-warning{stroke:#ffb86b}.logo-icon.color-index-ok{stroke:#4eb976}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#a8a8a8}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-6{stroke:#c3a4fe}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-7{stroke:#a577ff}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-8{stroke:#5d0cfb}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-9{stroke:#7026ff}.logo-icon.color-index-graph-5,.logo-icon.color-index-graph-10{stroke:#767676}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-5{stroke:#333}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-6{stroke:#444}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-7{stroke:#555}.logo-icon.color-index-grey-4,.logo-icon.color-index-grey-8{stroke:#666}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-3{stroke:#c3a4fe}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-4{stroke:#a577ff}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}@media screen and (max-width:44.9375em){.label__text{display:none}}@media screen and (min-width:45em){.label__icon{display:none}}a.active>.label .label__icon.control-icon svg{fill:#000;stroke:#000}.layer{position:relative;z-index:4}@media screen and (min-width:45em){.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.layer:not(.layer--hidden)+.app{display:none}}.layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.layer__container{padding:0 24px;border-bottom:1px solid #ccc;box-shadow:0 2px 4px rgba(0,0,0,.3)}}@media screen and (min-width:45em){.layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.3)}}.layer__closer{position:absolute;top:0;right:0;z-index:1}html.rtl .layer__closer{right:auto;left:0}.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.layer--align-center:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){html.rtl .layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at right,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center}@media screen and (min-width:45em){.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden){background-image:radial-gradient(circle at left,#fff,#fff 20%,hsla(0,0%,50%,.6))}}html.rtl .layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){html.rtl .layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-top:not(.layer--hidden){background-image:radial-gradient(circle at top,#fff,#fff 20%,hsla(0,0%,50%,.6))}.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}@media screen and (min-width:45em){.layer--align-bottom:not(.layer--hidden){background-image:radial-gradient(circle at bottom,#fff,#fff 20%,hsla(0,0%,50%,.6))}}.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.layer--hidden{left:-10000px;z-index:-1}.layer--hidden.layer--align-left{right:auto}.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.layer--hidden{display:none}}@media screen and (min-width:45em){.layer--hidden.layer--peek{left:0;z-index:4}.layer--hidden.layer--peek.layer--align-left{right:auto}.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #8c50ff;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:rgba(0,0,0,.1)}.list .list-item--selected{background-color:#d9c5ff;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#d9c5ff;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:rgba(0,0,0,.1);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;width:72px}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item--clickable{cursor:pointer}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#8c50ff}.legend__item svg.legend__item-swatch.color-index-critical,.legend__item svg.legend__item-swatch.color-index-error{stroke:#ff856b}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#ffb86b}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#4eb976}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#a8a8a8}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#c3a4fe}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#a577ff}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#5d0cfb}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-9{stroke:#7026ff}.legend__item svg.legend__item-swatch.color-index-graph-5,.legend__item svg.legend__item-swatch.color-index-graph-10{stroke:#767676}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#333}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#444}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-7{stroke:#555}.legend__item svg.legend__item-swatch.color-index-grey-4,.legend__item svg.legend__item-swatch.color-index-grey-8{stroke:#666}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-3{stroke:#c3a4fe}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#a577ff}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}.legend__total{margin-left:24px}html.rtl .legend__total{margin-left:0;margin-right:24px}.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted #ccc}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;width:384px;padding:24px;padding-bottom:48px;background-color:#fff;text-align:center;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%;border-radius:0}}.login-form__secondary-text{color:#777}.login-form fieldset{text-align:left;border:none;margin-bottom:0}.login-form fieldset>*{width:100%;display:block}.login-form__remember-me{display:block;margin-top:24px;text-align:left}.login-form__submit{margin-top:24px;width:100%}.login-form__error{margin-bottom:12px;color:#ff856b;text-align:left}.login-form__footer{margin-top:12px;display:flex;justify-content:space-between;line-height:36px}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid #ccc;margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:rgba(0,0,0,.1)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:inherit}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #c3a4fe;box-shadow:0 0 1px 1px #c3a4fe;pointer-events:none}.menu>*{flex:0 0 auto}.menu a:not(.button){text-decoration:none}.menu a:not(.button).active,.menu a:not(.button):hover{color:#6e22ff}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}.menu__drop{font-size:16px;font-size:1rem;line-height:inherit;max-height:100vh}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:rgba(0,0,0,.1)}.menu__drop .check-box,.menu__drop .radio-button{margin-top:12px;margin-bottom:12px}.menu__drop--align-right{text-align:right}.menu__drop--align-right .menu__contents,html.rtl .menu__drop--align-right{text-align:left}html.rtl .menu__drop--align-right .menu__contents{text-align:right}.menu__drop--large .menu__control{line-height:96px}.menu--controlled{display:inline-block;cursor:pointer}.menu--controlled.menu--large{line-height:96px}.menu--controlled.menu--small{height:24px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}html.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}html.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.menu.box--direction-row.box--responsive>*{margin-right:0}html.rtl .menu--inline.menu.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.menu.box--direction-column a:not(.button){margin-bottom:6px}.menu--small{font-size:16px;font-size:1rem;line-height:1.5}.menu--small .menu__control-drop-icon{margin-left:6px}html.rtl .menu--small .menu__control-drop-icon{margin-left:0;margin-right:6px}.menu--small .menu__control-icon svg{width:18px;height:18px}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:6px;border-color:transparent;border-right-style:solid}html.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:rgba(0,0,0,.1)}.menu--primary>a:not(.button).active{border-color:#8c50ff}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu.box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:#ccc;border:none}.menu--inline.menu.box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu.box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:#ccc}.menu--inline.menu--small,.menu__drop--small{font-size:1em}.menu--inline.menu--small .menu__control-label,.menu__drop--small .menu__control-label{padding:12px}.menu--inline.menu--small .menu__control-icon svg,.menu__drop--small .menu__control-icon svg{width:18px;height:18px}.menu--inline.menu--small>a,.menu__drop--small>a{padding:6px 12px}.menu--inline.menu .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu a,.menu__drop a{text-decoration:none}.menu--inline.menu--large>a,.menu__drop--large>a{padding:24px 48px}@media screen and (max-width:44.9375em){.menu--inline.menu.box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu.box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu.box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%;width:100vw}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #c3a4fe}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter.meter--active .meter__values .meter__slice:hover,.meter.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#8c50ff}.meter--bar .meter__values .meter__slice.color-index-critical,.meter--bar .meter__values .meter__slice.color-index-error{stroke:#ff856b}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#ffb86b}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#4eb976}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#a8a8a8}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#c3a4fe}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#a577ff}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#5d0cfb}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-9{stroke:#7026ff}.meter--bar .meter__values .meter__slice.color-index-graph-5,.meter--bar .meter__values .meter__slice.color-index-graph-10{stroke:#767676}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#444}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-7{stroke:#555}.meter--bar .meter__values .meter__slice.color-index-grey-4,.meter--bar .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-3{stroke:#c3a4fe}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#a577ff}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(140,80,255,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__thresholds .meter__slice.color-index-error,.meter--bar .meter__tracks .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-error{stroke:rgba(255,133,107,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,184,107,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(78,185,118,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,66%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(195,164,254,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(165,119,255,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(93,12,251,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-9,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(112,38,255,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__thresholds .meter__slice.color-index-graph-10,.meter--bar .meter__tracks .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(0,0%,46%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(195,164,254,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(165,119,255,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#8c50ff}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--arc .meter__values .meter__slice.color-index-error,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-error,.meter--spiral .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-error{stroke:#ff856b}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#ffb86b}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#4eb976}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#a8a8a8}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#c3a4fe}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#a577ff}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#5d0cfb}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-9,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-9,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-9{stroke:#7026ff}.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--arc .meter__values .meter__slice.color-index-graph-10,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-10,.meter--spiral .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-10{stroke:#767676}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#444}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-7,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-7,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-7{stroke:#555}.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--arc .meter__values .meter__slice.color-index-grey-8,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-8,.meter--spiral .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-3{stroke:#c3a4fe}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#a577ff}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(140,80,255,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__thresholds .meter__slice.color-index-error,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-error,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-error,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-error,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-error,.meter--spiral .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-error{stroke:rgba(255,133,107,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,184,107,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(78,185,118,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,66%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(195,164,254,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(165,119,255,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(93,12,251,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-9,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-9,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-9,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-9,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(112,38,255,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__thresholds .meter__slice.color-index-graph-10,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-10,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-10,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-10,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(0,0%,46%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(195,164,254,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(165,119,255,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification--critical .notification__status .status-icon__base{fill:#fff}.notification--critical .notification__status .status-icon__detail{stroke:#ff856b;fill:#ff856b}.notification--critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--error .notification__status .status-icon__base{fill:#fff}.notification--error .notification__status .status-icon__detail{stroke:#ff856b;fill:#ff856b}.notification--error .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--warning .notification__status .status-icon__base{fill:#fff}.notification--warning .notification__status .status-icon__detail{stroke:#ffb86b;fill:#ffb86b}.notification--warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--ok .notification__status .status-icon__base{fill:#fff}.notification--ok .notification__status .status-icon__detail{stroke:#4eb976;fill:#4eb976}.notification--ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--unknown .notification__status .status-icon__base{fill:#fff}.notification--unknown .notification__status .status-icon__detail{stroke:#a8a8a8;fill:#a8a8a8}.notification--unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--disabled .notification__status .status-icon__base{fill:#fff}.notification--disabled .notification__status .status-icon__detail{stroke:#a8a8a8;fill:#a8a8a8}.notification--disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:4px}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid #ccc}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.paragraph--small a{text-decoration:none}.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.paragraph--large a{color:#8c50ff;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#8c50ff;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#6e22ff;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__control{border-color:#dbdbdb}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-light]) .radio-button__label{color:#dbdbdb}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop--inline{margin-left:-1px}.search__drop--inline .search__drop-contents{display:block}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop-control{vertical-align:top;height:48px}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:rgba(0,0,0,.1)}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-right:47px}.search--inline .search__input:focus{padding-right:46px}html.rtl .search--inline .search__input{padding-right:23px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:22px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small{line-height:24px}.search--small .search__input{font-size:14px;font-size:.875rem;line-height:14px;padding:4px 13px;padding-right:23px}.search--small .search__input:focus{padding:3px 12px;padding-right:22px}.search--small .control-icon-search{height:12px;width:12px}.search--large{line-height:triple(24px)}.search--large .search__input{font-size:36px;font-size:2.25rem;line-height:48px;padding:-7px 35px;padding-right:47px}.search--large .control-icon-search{right:24px}.search-input{position:relative;display:inline-block}.search-input__input{width:100%;height:100%;display:block;padding-right:60px}.search-input__input:focus{padding-right:59px}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:12px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:rgba(0,0,0,.1)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#8c50ff}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:hsla(0,0%,50%,.6);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid #ccc;border-bottom:1px solid #ccc;border-bottom-left-radius:4px}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid #ccc}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden}.tab{padding:12px}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus .tab__label{border-bottom:4px solid}.tab__label{cursor:pointer;padding-bottom:12px;font-weight:600;color:#777}.tab--active .tab__label{color:#000;border-bottom:4px solid #000}.tab:focus .tab__label,.tab:hover .tab__label{border-bottom:4px solid}.tabs{margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;list-style:none;border-bottom:1px solid #ccc}.tabs__content{padding:24px}@media screen and (max-width:44.9375em){.tabs__content{padding:24px 0}}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid #ccc}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}@media screen and (max-width:44.9375em){.table__mirror>thead{position:static}}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#d9c5ff;color:#333}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:rgba(0,0,0,.1);color:#000}[class*=background-color-index-]:not([class*=background-color-index-light]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.tag{background-color:hsla(0,0%,50%,.6);padding:3px 6px;position:relative;margin:0 12px 12px 0}.tag .tag--label{color:#fff;text-decoration:none}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:#ccc;color:#fff}.tiles{width:100%;padding:12px}@media screen and (min-width:45em){.tiles.box--direction-row>.tile{flex:0 0 192px}.tiles.box--direction-row>.tile--wide,.tiles.box--direction-row>.tile>*{box-sizing:border-box}.tiles.box--direction-row:not(.tiles--flush)>.tile{margin:12px}.tiles.box--direction-row:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#d9c5ff;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tiles--small>.tile{flex-basis:96px}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}@media screen and (max-width:44.9375em){.tiles--large>.tile{flex-basis:100%}}.tiles:focus{outline:1px solid #c3a4fe}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#d9c5ff;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:rgba(0,0,0,.1);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title img,.title svg{max-width:576px}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#8c50ff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-light]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid #ccc}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px;background-color:rgba(51,51,51,.7);color:#dbdbdb;border-radius:4px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(140,80,255,.7)}.video__control.button--primary:hover{background-color:#8c50ff}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:#dbdbdb;background-color:rgba(51,51,51,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid #dbdbdb;text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#8c50ff}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both} \ No newline at end of file +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,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}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}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{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{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:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}blockquote,body,caption,dd,dl,fieldset,figure,form,h1,h2,h3,h4,h5,h6,hr,legend,ol,p,pre,table,td,th,ul{margin:0;padding:0}abbr[title],dfn[title]{cursor:help}ins,u{text-decoration:none}ins{border-bottom:1px solid}address,blockquote,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,ol,p,pre,table,ul{margin-bottom:24px;margin-bottom:1.5rem}dd,ol,ul{margin-left:48px;margin-left:3rem}html{font-size:1em;line-height:1.5;background-color:#fff;color:#333;overflow-y:scroll;min-height:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}h1{font-size:36px;font-size:2.25rem;line-height:1.33333}h2{font-size:30px;font-size:1.875rem;line-height:1.6}h3{font-size:24px;font-size:1.5rem;line-height:1}h4{font-size:20px;font-size:1.25rem;line-height:1.2}h5{font-size:16px;font-size:1rem;line-height:1.5}h6{font-size:14px;font-size:.875rem;line-height:1.71429}li>ol,li>ul{margin-bottom:0}img{max-width:100%;font-style:italic;vertical-align:middle}.gm-style img,img[height],img[width]{max-width:none}.brand-font,.grommet{font-family:Source Sans Pro,Arial,sans-serif}.grommet{font-size:16px;font-size:1rem;line-height:24px}.grommet h1{font-size:48px;font-size:3rem;line-height:1.125}.grommet h2{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet h3{font-size:24px;font-size:1.5rem;line-height:1.25}.grommet h4{font-size:18px;font-size:1.125rem;line-height:1.33333}.grommet h5{font-size:17px;font-size:1.0625rem;line-height:1.41176}.grommet h6{font-size:16px;font-size:1rem;line-height:1.5}.grommet h1,.grommet h2,.grommet h3,.grommet h4,.grommet h5,.grommet h6{font-weight:100;max-width:100%}.grommet h1.header--strong,.grommet h1>strong,.grommet h2.header--strong,.grommet h2>strong,.grommet h3.header--strong,.grommet h3>strong,.grommet h4.header--strong,.grommet h4>strong,.grommet h5.header--strong,.grommet h5>strong,.grommet h6.header--strong,.grommet h6>strong{font-weight:600}.grommet h1 a,.grommet h1 a.anchor,.grommet h2 a,.grommet h2 a.anchor,.grommet h3 a,.grommet h3 a.anchor,.grommet h4 a,.grommet h4 a.anchor,.grommet h5 a,.grommet h5 a.anchor,.grommet h6 a,.grommet h6 a.anchor{color:inherit;text-decoration:none}.grommet h1 a.anchor:hover,.grommet h1 a:hover,.grommet h2 a.anchor:hover,.grommet h2 a:hover,.grommet h3 a.anchor:hover,.grommet h3 a:hover,.grommet h4 a.anchor:hover,.grommet h4 a:hover,.grommet h5 a.anchor:hover,.grommet h5 a:hover,.grommet h6 a.anchor:hover,.grommet h6 a:hover{text-decoration:none}.grommet dd,.grommet li,.grommet p{max-width:576px;margin-left:0}.grommet dd{margin-bottom:12px}.grommet p{margin-top:24px;margin-bottom:24px}.grommet blockquote{font-size:36px;font-size:2.25rem;line-height:1.33333}.grommet b,.grommet strong{font-weight:600}.grommet code.hljs{border:1px solid rgba(0,0,0,.15)}.grommet .large-number-font{font-family:Source Sans Pro,Arial,sans-serif}.grommet .secondary{color:#777}.grommet .error{color:#ff856b}.grommet input,.grommet select,.grommet textarea{font-size:16px;font-size:1rem;line-height:1.5;padding:11px 23px;border:1px solid rgba(0,0,0,.15);border-radius:4px;outline:none;background-color:transparent}.grommet.rtl .grommet input,.grommet.rtl .grommet select,.grommet.rtl .grommet textarea{margin-right:0;margin-left:12px}.grommet input:focus,.grommet select:focus,.grommet textarea:focus{padding:10px 22px;border-width:2px;border-color:#c3a4fe}.grommet input::-moz-focus-inner,.grommet select::-moz-focus-inner,.grommet textarea::-moz-focus-inner{border:none;outline:none}.grommet input::-webkit-input-placeholder,.grommet select::-webkit-input-placeholder,.grommet textarea::-webkit-input-placeholder{color:#aaa}.grommet input::-moz-placeholder,.grommet select::-moz-placeholder,.grommet textarea::-moz-placeholder{color:#aaa}.grommet input:-ms-input-placeholder,.grommet select:-ms-input-placeholder,.grommet textarea:-ms-input-placeholder{color:#aaa}.grommet input.error,.grommet select.error,.grommet textarea.error{border-color:#ff856b}.grommet input[type=button],.grommet input[type=submit]{text-align:center;line-height:inherit}.grommet select{border-color:rgba(0,0,0,.15);padding-right:48px;-webkit-appearance:none;-moz-appearance:none;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAOhJREFUSA3tksENgzAMRUmrrlApuTAAxxw6QvfojYmYKtw6QpUDI1Rq6o8MStsAMT1UlbAUcMB+33FcFJttHfifDlhrT7QO31YMBlgDZw8HH5RSF3JLY0zrvX8MAZI3F1gT66y17ohz2zGgDSFc6UdF+5oDJWwUidMDXoFFfgtAfwJUjMppX7KI6CQJeOOcu48CcNaKzMFfBNaILME/BCQiOfCkQI5ILhwshceUpUAcG0/LeKEpzqwAEhIiRTSKs3Dk92MKZ8rep4vgR57zRTiYiwIIikVo29HKgiNXZGgXt0yUtwX/tgNPQqatJ1aBLFMAAAAASUVORK5CYII=) no-repeat center right 12px;cursor:pointer}.grommet select::-moz-focus-inner{border:none}.grommet select.plain{border:none}.grommet input[type=range]{position:relative;-webkit-appearance:none;border-color:transparent;height:24px;padding:0;cursor:pointer;overflow-x:hidden}.grommet input[type=range]:focus{outline:none}.grommet input[type=range]::-moz-focus-inner,.grommet input[type=range]::-moz-focus-outer{border:none}.grommet input[type=range]::-webkit-slider-runnable-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-runnable-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-webkit-slider-thumb{position:relative;height:24px;width:24px;overflow:visible;-webkit-appearance:none;margin-top:-11px}.grommet input[type=range]::-webkit-slider-thumb:before{content:"";position:absolute;left:-3000px;right:24px;top:9px;bottom:9px;background-color:#8c50ff;pointer-events:none}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:before{background-color:#fff}.grommet input[type=range]::-webkit-slider-thumb:after{content:"";position:absolute;border:2px solid #8c50ff;height:20px;width:20px;border-radius:24px;background-color:#fff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-webkit-slider-thumb:after{background-color:transparent;border-color:#fff}.grommet input[type=range]:hover::-webkit-slider-thumb:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-webkit-slider-thumb:after{background-color:#fff;border-color:#fff}.grommet input[type=range]::-moz-range-track{width:100%;height:2px;background-color:rgba(51,51,51,.2)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-moz-range-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #8c50ff;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-moz-range-thumb{border-color:#fff;background-color:transparent}.grommet input[type=range]::hover::-moz-range-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::hover::-moz-range-thumb{border-color:#fff;background-color:#fff}.grommet input[type=range]::-ms-track{width:100%;height:2px;background-color:rgba(51,51,51,.2);border-color:transparent;color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-track{background-color:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-fill-lower{background:#8c50ff;border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-lower{background:#fff}.grommet input[type=range]::-ms-fill-upper{background:rgba(51,51,51,.2);border-color:transparent}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-fill-upper{background:hsla(0,0%,100%,.1)}.grommet input[type=range]::-ms-thumb{position:relative;height:24px;width:24px;overflow:visible;border:2px solid #999;height:20px;width:20px;border-radius:24px;background-color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]::-ms-thumb{border-color:#fff}.grommet input[type=range]:hover::-ms-thumb{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .grommet input[type=range]:hover::-ms-thumb{border-color:#fff;background-color:#fff}@media screen and (min-width:45em){html.grommet{height:100%;width:100%;overflow:visible}}.grommet{box-sizing:border-box}.grommet.rtl{direction:rtl}.grommet *{box-sizing:inherit}.i-list-bare{margin:0;padding:0;list-style:none}.anchor,.grommet a:not(.anchor){color:#8c50ff;text-decoration:none;cursor:pointer}.anchor.plain .anchor.button,.anchor.plain .anchor.button:hover,.anchor.plain .grommet a:not(.anchor).button,.anchor.plain .grommet a:not(.anchor).button:hover,.grommet a:not(.anchor).plain .anchor.button,.grommet a:not(.anchor).plain .anchor.button:hover,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button,.grommet a:not(.anchor).plain .grommet a:not(.anchor).button:hover{text-decoration:none}.anchor:visited,.grommet a:not(.anchor):visited{color:#8c50ff}.anchor.active,.grommet a:not(.anchor).active{color:#333}.anchor:hover,.grommet a:not(.anchor):hover{color:#6e22ff;text-decoration:underline}.anchor--disabled:hover{color:#8c50ff}.anchor__icon{display:inline-block;padding:12px}.anchor--icon-label,.anchor--primary{font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;text-decoration:none}.anchor--icon-label .control-icon,.anchor--primary .control-icon{vertical-align:middle;margin-right:12px}html.rtl .anchor--icon-label .control-icon,html.rtl .anchor--primary .control-icon{margin-right:0;margin-left:12px}.anchor--icon-label>span,.anchor--primary>span{vertical-align:middle}.anchor--reverse .control-icon{margin-right:0;margin-left:12px}.anchor--primary{color:#8c50ff}.anchor--primary .control-icon{stroke:#8c50ff}.anchor--primary:hover .control-icon{stroke:#8c50ff;transform:translateX(3px)}.anchor--primary:hover .control-icon path,.anchor--primary:hover .control-icon polyline{stroke-width:3px}.anchor--primary.anchor--disabled .control-icon{transform:none}.anchor--disabled{opacity:.3;cursor:default}.anchor--disabled .control-icon{cursor:default}.anchor--icon{display:inline-block}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a{color:hsla(0,0%,100%,.85)}.grommet [class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor.anchor--disabled:hover .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}@media screen and (min-width:45em){.grommet.app{position:absolute;top:0;bottom:0;left:0;right:0;overflow:auto}}.grommet.app--inline{position:relative}.grommet.app--centered>.split{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.article{position:relative}.article--scroll-step{text-align:center;height:100vh;width:100vw;max-width:100%}.article--scroll-step>.article__control{position:fixed;z-index:4}.article--scroll-step>.article__control-up{top:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-down{bottom:0;left:50%;transform:translateX(-50%)}.article--scroll-step>.article__control-left{top:50%;transform:translateY(-50%);left:0}.article--scroll-step>.article__control-right{top:50%;transform:translateY(-50%);right:0}.article--scroll-step.box--direction-column{overflow-x:hidden;overflow-y:auto}.article--scroll-step.box--direction-column>.article__control-carousel{top:50%;left:24px;transform:translateY(-50%)}.article--scroll-step.box--direction-row{overflow-x:auto;overflow-y:hidden}.article--scroll-step.box--direction-row>:not(.article__controls){overflow-y:auto}.article--scroll-step.box--direction-row>.article__control-carousel{top:24px;left:50%;transform:translateX(-50%)}.article>*{flex:0 0 auto}.grommet article:not(.article){width:100%}.attribute{margin-bottom:12px}@media screen and (max-width:44.9375em){.attribute{width:100%}}.attribute__label{display:block;text-align:left;font-size:14px;font-size:.875rem;line-height:24px;color:#777}.box{display:flex;background-position:50%;background-size:cover;background-repeat:no-repeat}.box--pad-none{padding:0}.box--pad-small{padding:12px}.box--pad-medium{padding:24px}.box--pad-large{padding:48px}.box--pad-horizontal-none{padding-left:0;padding-right:0}.box--pad-horizontal-small{padding-left:12px;padding-right:12px}.box--pad-horizontal-medium{padding-left:24px;padding-right:24px}.box--pad-horizontal-large{padding-left:48px;padding-right:48px}.box--pad-vertical-none{padding-top:0;padding-bottom:0}.box--pad-vertical-small{padding-top:12px;padding-bottom:12px}.box--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.box--pad-vertical-large{padding-top:48px;padding-bottom:48px}.box>.flex,.box>.flex-grow-1{flex-grow:1}.box>.no-flex{flex:0 0 auto}.box__texture{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.box__container{padding-left:24px;padding-right:24px}.app--centered .box__container>.box{width:100%;max-width:960px;margin-left:auto;margin-right:auto}@media screen and (max-width:44.9375em){.app--centered .box__container>.box{padding-left:0;padding-right:0}}.box__container--full,.box__container--full-horizontal{max-width:100%;width:100vw}.box--wrap{flex-wrap:wrap}.box--full{position:relative;min-height:100vh;height:100%}.box--full,.box--full-horizontal{max-width:100%;width:100vw}.box--full-vertical{min-height:100vh}.box--direction-row{flex-direction:row}.box--direction-row.box--reverse{flex-direction:row-reverse}.box--direction-row.box--pad-between-small>:not(:last-child){margin-right:12px}html.rtl .box--direction-row.box--pad-between-small>:not(:last-child){margin-right:0;margin-left:12px}.box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:24px}html.rtl .box--direction-row.box--pad-between-medium>:not(:last-child){margin-right:0;margin-left:24px}.box--direction-row.box--pad-between-large>:not(:last-child){margin-right:48px}html.rtl .box--direction-row.box--pad-between-large>:not(:last-child){margin-right:0;margin-left:48px}@media screen and (max-width:44.9375em){.box--direction-row.box--responsive{flex-direction:column}.box--direction-row.box--responsive:not(.box--justify-center){align-items:stretch}.box--direction-row.box--responsive.box--reverse{flex-direction:column-reverse}}.box--direction-column{flex-direction:column}.box--direction-column.box--reverse{flex-direction:column-reverse}.box--direction-column>.footer.box--direction-row,.box--direction-column>.header.box--direction-row,.box--direction-column>.header__container--fixed{flex:0 0 auto}.box--direction-column.box--pad-between-small>:not(:last-child){margin-bottom:12px}.box--direction-column.box--pad-between-medium>:not(:last-child){margin-bottom:24px}.box--direction-column.box--pad-between-large>:not(:last-child){margin-bottom:48px}.box--justify-start{justify-content:flex-start}.box--justify-center{justify-content:center}.box--justify-between{justify-content:space-between}.box--justify-end{justify-content:flex-end}.box--align-start{align-items:flex-start}.box--align-center{align-items:center}.box--align-end{align-items:flex-end}.box--align-baseline{align-items:baseline}.box--align-content-start{align-content:flex-start}.box--align-content-end{align-content:flex-end}.box--align-content-center{align-content:center}.box--align-content-between{align-content:space-between}.box--align-content-around{align-content:space-around}.box--separator-all,.box--separator-horizontal,.box--separator-top{border-top:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-bottom,.box--separator-horizontal{border-bottom:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-left,.box--separator-vertical{border-left:1px solid rgba(0,0,0,.15)}.box--separator-all,.box--separator-right,.box--separator-vertical{border-right:1px solid rgba(0,0,0,.15)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .box[class*=box--separator]{border-color:hsla(0,0%,100%,.5)}.box--text-align-left{text-align:left}.box--text-align-center{text-align:center}.box--text-align-right{text-align:right}.box--clickable{cursor:pointer}.brick{padding:24px;position:relative;float:left;margin:0 12px 12px 0;max-width:calc(100% - 12px)}.brick__label{position:absolute;top:0;right:0;left:0;bottom:0;overflow:hidden}.brick__label span{text-transform:uppercase;text-decoration:none;color:#333;position:absolute;left:24px;bottom:24px}.brick__background{position:absolute;top:0;bottom:0;left:0;right:0}.brick__container{position:absolute;top:24px;bottom:24px;left:24px;right:24px;max-width:calc(100% - 48px)}.brick--clickable:focus,.brick--clickable:hover{z-index:1;transition:transform .4s;transform:scale(1.05);outline:none}.brick[class*=background-color-index-] span{color:#fff}.brick--1-1{width:calc(25% - 12px)}.brick--1-1:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-1{width:calc(50% - 12px)}}.brick--1-2{width:calc(25% - 12px)}.brick--1-2:after{padding-top:calc(200% + 60px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--1-2{width:calc(50% - 12px)}}.brick--2-1{width:calc(50% - 12px)}.brick--2-1:after{padding-top:calc(50% - 30px);display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-1{width:calc(100% - 12px)}}.brick--2-2{width:calc(50% - 12px)}.brick--2-2:after{padding-top:100%;display:block;content:''}@media screen and (max-width:63.9375em){.brick--2-2{width:calc(100% - 12px)}}.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{padding:6px 22px;background-color:transparent;border:2px solid #8c50ff;border-radius:4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.grommet button:not(.button):focus:not(.button--disabled),.grommet input[type=button]:focus:not(.button--disabled),.grommet input[type=submit]:focus:not(.button--disabled){border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}@media screen and (min-width:45em){.grommet button:not(.button),.grommet input[type=button],.grommet input[type=submit]{transition:.1s ease-in-out}}.grommet a.button,.grommet a.button:hover{text-decoration:none}.button{padding:6px 22px;background-color:transparent;border:2px solid #8c50ff;border-radius:4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px}.button:focus:not(.button--disabled){border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}@media screen and (min-width:45em){.button{transition:.1s ease-in-out}}.button__icon{display:inline-block;padding:12px}.button--primary{border-color:#8c50ff;background-color:#8c50ff;color:#fff}.button--primary:hover:not(.button--disabled){color:#fff}.button--primary:hover:not(.button--disabled) .button__icon .control-icon{fill:#fff;stroke:#fff}.button--secondary{border-color:rgba(51,51,51,.6)}.button--accent{border-color:#c3a4fe}.button--plain{border:none;padding:0;width:auto;height:auto;min-width:0;max-width:none;font-weight:inherit}.button--plain.button--primary{background-color:#8c50ff}.button--plain>span:not(.button__icon):first-child{margin-left:12px}.button--plain>span:not(.button__icon):last-child{margin-right:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain{color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain .control-icon{fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover{color:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button--plain:hover .control-icon{fill:#fff;stroke:#fff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary){border-color:hsla(0,0%,100%,.7);color:hsla(0,0%,100%,.85)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:not(.button--primary).button--accent{border-color:#c3a4fe}.button--disabled{opacity:.3;cursor:default}.button--icon,.button:not(.button--fill){flex:0 0 auto}.button--fill{width:100%;max-width:none;flex-grow:1}.calendar{position:relative;display:inline-block;min-width:288px}.calendar__input{width:100%;height:100%;display:block;padding-right:60px}.calendar__input:focus{padding-right:59px}.calendar__input::-ms-clear{display:none}.calendar__control{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar__drop{border-top-left-radius:0;border-top-right-radius:0}.calendar__title{text-align:center}.calendar__grid{width:100%;padding:12px}.calendar__grid table{width:100%}.calendar__grid td,.calendar__grid th{text-align:center;padding:6px}.calendar__grid th{color:#777;font-weight:400}.calendar__day{display:inline-block;cursor:pointer;width:24px;height:24px;transition:background-color .3s}.calendar__day:hover{background-color:hsla(0,0%,87%,.5)}.calendar__day--other-month{color:#777}.calendar__day--active{background-color:#8c50ff;color:hsla(0,0%,100%,.85)}.calendar--active .calendar__input{border-bottom-left-radius:0;border-bottom-right-radius:0}@-webkit-keyframes a{0%{opacity:1}to{opacity:0}}@keyframes a{0%{opacity:1}to{opacity:0}}.carousel{position:relative;max-width:100%;overflow:hidden}.carousel__track{display:flex;max-width:none;transition:all .8s}.carousel .tiles.box--direction-row>.tile.carousel__item{flex:1 1 100%;box-sizing:border-box}.carousel .tiles.box--direction-row>.tile.carousel__item>*{width:100%}.carousel__arrow{-webkit-animation:b 1s;animation:b 1s;z-index:1;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer}.carousel__arrow .control-icon{filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__arrow .control-icon polyline{stroke:hsla(0,0%,100%,.7);stroke-width:1px}.carousel__arrow:hover .control-icon polyline{stroke:#fff}.carousel__arrow--next{right:0}.carousel__arrow--prev{left:0}.carousel .control-icon-next{right:0}.carousel .control-icon-previous{left:0}.carousel__controls{-webkit-animation:b 1s;animation:b 1s;margin-left:50%;transform:translateX(-50%);position:absolute;bottom:12px;text-align:center;z-index:1}.carousel__control{display:inline-block;width:36px;height:36px;stroke:hsla(0,0%,100%,.7);fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel__control--active{stroke:#8c50ff;fill:#8c50ff}.carousel--hide-controls .carousel__controls,.carousel--hide-controls .control-icon-next,.carousel--hide-controls .control-icon-previous{opacity:0;-webkit-animation:a 1s;animation:a 1s}.carousel img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.carousel-controls__control{width:36px;height:36px;stroke:#fff;fill:transparent;cursor:pointer;filter:drop-shadow(1px 1px 1px rgba(170,170,170,.5));-webkit-filter:drop-shadow(1px 1px 1px hsla(0,0%,67%,.5))}.carousel-controls__control:hover{stroke-width:2px}.carousel-controls__control--active{stroke:#8c50ff;fill:#8c50ff}@-webkit-keyframes b{0%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:0}to{opacity:1}}.chart{position:relative;display:block}.chart__grid{stroke:rgba(0,0,0,.15)}.chart__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}@media screen and (min-width:45em){.chart__values g{-webkit-animation:b 1.5s;animation:b 1.5s}}.chart__values-line{stroke-width:3px}.chart__values-line.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-line.color-index-unset{stroke:#ddd}.chart__values-line.color-index-brand{stroke:#8c50ff}.chart__values-line.color-index-critical,.chart__values-line.color-index-error{stroke:#ff856b}.chart__values-line.color-index-warning{stroke:#ffb86b}.chart__values-line.color-index-ok{stroke:#4eb976}.chart__values-line.color-index-disabled,.chart__values-line.color-index-unknown{stroke:#a8a8a8}.chart__values-line.color-index-graph-1,.chart__values-line.color-index-graph-6{stroke:#c3a4fe}.chart__values-line.color-index-graph-2,.chart__values-line.color-index-graph-7{stroke:#a577ff}.chart__values-line.color-index-graph-3,.chart__values-line.color-index-graph-8{stroke:#5d0cfb}.chart__values-line.color-index-graph-4,.chart__values-line.color-index-graph-9{stroke:#7026ff}.chart__values-line.color-index-graph-5,.chart__values-line.color-index-graph-10{stroke:#767676}.chart__values-line.color-index-grey-1,.chart__values-line.color-index-grey-5{stroke:#333}.chart__values-line.color-index-grey-2,.chart__values-line.color-index-grey-6{stroke:#444}.chart__values-line.color-index-grey-3,.chart__values-line.color-index-grey-7{stroke:#555}.chart__values-line.color-index-grey-4,.chart__values-line.color-index-grey-8{stroke:#666}.chart__values-line.color-index-accent-1,.chart__values-line.color-index-accent-3{stroke:#c3a4fe}.chart__values-line.color-index-accent-2,.chart__values-line.color-index-accent-4{stroke:#a577ff}.chart__values-line.color-index-light-1,.chart__values-line.color-index-light-3{stroke:#fff}.chart__values-line.color-index-light-2,.chart__values-line.color-index-light-4{stroke:#f5f5f5}.chart__values-area.color-index-critical,.chart__values-area.color-index-error,.chart__values-bar.color-index-critical,.chart__values-bar.color-index-error{fill:rgba(255,133,107,.7)}.chart__values-area.color-index-warning,.chart__values-bar.color-index-warning{fill:rgba(255,184,107,.7)}.chart__values-area.color-index-ok,.chart__values-bar.color-index-ok{fill:rgba(78,185,118,.7)}.chart__values-area.color-index-disabled,.chart__values-area.color-index-unknown,.chart__values-bar.color-index-disabled,.chart__values-bar.color-index-unknown{fill:hsla(0,0%,66%,.7)}.chart__values-area.color-index-graph-1,.chart__values-area.color-index-graph-6,.chart__values-bar.color-index-graph-1,.chart__values-bar.color-index-graph-6{fill:rgba(195,164,254,.7)}.chart__values-area.color-index-graph-2,.chart__values-area.color-index-graph-7,.chart__values-bar.color-index-graph-2,.chart__values-bar.color-index-graph-7{fill:rgba(165,119,255,.7)}.chart__values-area.color-index-graph-3,.chart__values-area.color-index-graph-8,.chart__values-bar.color-index-graph-3,.chart__values-bar.color-index-graph-8{fill:rgba(93,12,251,.7)}.chart__values-area.color-index-graph-4,.chart__values-area.color-index-graph-9,.chart__values-bar.color-index-graph-4,.chart__values-bar.color-index-graph-9{fill:rgba(112,38,255,.7)}.chart__values-area.color-index-graph-5,.chart__values-area.color-index-graph-10,.chart__values-bar.color-index-graph-5,.chart__values-bar.color-index-graph-10{fill:hsla(0,0%,46%,.7)}.chart__values-area--active.color-index-unset,.chart__values-bar--active.color-index-unset{fill:#ddd}.chart__values-area--active.color-index-brand,.chart__values-bar--active.color-index-brand{fill:#8c50ff}.chart__values-area--active.color-index-critical,.chart__values-area--active.color-index-error,.chart__values-bar--active.color-index-critical,.chart__values-bar--active.color-index-error{fill:#ff856b}.chart__values-area--active.color-index-warning,.chart__values-bar--active.color-index-warning{fill:#ffb86b}.chart__values-area--active.color-index-ok,.chart__values-bar--active.color-index-ok{fill:#4eb976}.chart__values-area--active.color-index-disabled,.chart__values-area--active.color-index-unknown,.chart__values-bar--active.color-index-disabled,.chart__values-bar--active.color-index-unknown{fill:#a8a8a8}.chart__values-area--active.color-index-graph-1,.chart__values-area--active.color-index-graph-6,.chart__values-bar--active.color-index-graph-1,.chart__values-bar--active.color-index-graph-6{fill:#c3a4fe}.chart__values-area--active.color-index-graph-2,.chart__values-area--active.color-index-graph-7,.chart__values-bar--active.color-index-graph-2,.chart__values-bar--active.color-index-graph-7{fill:#a577ff}.chart__values-area--active.color-index-graph-3,.chart__values-area--active.color-index-graph-8,.chart__values-bar--active.color-index-graph-3,.chart__values-bar--active.color-index-graph-8{fill:#5d0cfb}.chart__values-area--active.color-index-graph-4,.chart__values-area--active.color-index-graph-9,.chart__values-bar--active.color-index-graph-4,.chart__values-bar--active.color-index-graph-9{fill:#7026ff}.chart__values-area--active.color-index-graph-5,.chart__values-area--active.color-index-graph-10,.chart__values-bar--active.color-index-graph-5,.chart__values-bar--active.color-index-graph-10{fill:#767676}.chart__values-area--active.color-index-accent-1,.chart__values-area--active.color-index-accent-3,.chart__values-bar--active.color-index-accent-1,.chart__values-bar--active.color-index-accent-3{fill:#c3a4fe}.chart__values-area--active.color-index-accent-2,.chart__values-area--active.color-index-accent-4,.chart__values-bar--active.color-index-accent-2,.chart__values-bar--active.color-index-accent-4{fill:#a577ff}.chart__values-area--active.color-index-grey-1,.chart__values-area--active.color-index-grey-5,.chart__values-bar--active.color-index-grey-1,.chart__values-bar--active.color-index-grey-5{fill:#333}.chart__values-area--active.color-index-grey-2,.chart__values-area--active.color-index-grey-6,.chart__values-bar--active.color-index-grey-2,.chart__values-bar--active.color-index-grey-6{fill:#444}.chart__values-area--active.color-index-grey-3,.chart__values-area--active.color-index-grey-7,.chart__values-bar--active.color-index-grey-3,.chart__values-bar--active.color-index-grey-7{fill:#555}.chart__values-area--active.color-index-grey-4,.chart__values-area--active.color-index-grey-8,.chart__values-bar--active.color-index-grey-4,.chart__values-bar--active.color-index-grey-8{fill:#666}.chart__values-point{stroke-width:3px;fill:#fff}.chart__values-point.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values-point.color-index-unset{stroke:#ddd}.chart__values-point.color-index-brand{stroke:#8c50ff}.chart__values-point.color-index-critical,.chart__values-point.color-index-error{stroke:#ff856b}.chart__values-point.color-index-warning{stroke:#ffb86b}.chart__values-point.color-index-ok{stroke:#4eb976}.chart__values-point.color-index-disabled,.chart__values-point.color-index-unknown{stroke:#a8a8a8}.chart__values-point.color-index-graph-1,.chart__values-point.color-index-graph-6{stroke:#c3a4fe}.chart__values-point.color-index-graph-2,.chart__values-point.color-index-graph-7{stroke:#a577ff}.chart__values-point.color-index-graph-3,.chart__values-point.color-index-graph-8{stroke:#5d0cfb}.chart__values-point.color-index-graph-4,.chart__values-point.color-index-graph-9{stroke:#7026ff}.chart__values-point.color-index-graph-5,.chart__values-point.color-index-graph-10{stroke:#767676}.chart__values-point.color-index-grey-1,.chart__values-point.color-index-grey-5{stroke:#333}.chart__values-point.color-index-grey-2,.chart__values-point.color-index-grey-6{stroke:#444}.chart__values-point.color-index-grey-3,.chart__values-point.color-index-grey-7{stroke:#555}.chart__values-point.color-index-grey-4,.chart__values-point.color-index-grey-8{stroke:#666}.chart__values-point.color-index-accent-1,.chart__values-point.color-index-accent-3{stroke:#c3a4fe}.chart__values-point.color-index-accent-2,.chart__values-point.color-index-accent-4{stroke:#a577ff}.chart__values-point.color-index-light-1,.chart__values-point.color-index-light-3{stroke:#fff}.chart__values-point.color-index-light-2,.chart__values-point.color-index-light-4{stroke:#f5f5f5}.chart__values--loading{stroke-width:24px}.chart__values--loading.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.chart__values--loading.color-index-unset{stroke:#ddd}.chart__values--loading.color-index-brand{stroke:#8c50ff}.chart__values--loading.color-index-critical,.chart__values--loading.color-index-error{stroke:#ff856b}.chart__values--loading.color-index-warning{stroke:#ffb86b}.chart__values--loading.color-index-ok{stroke:#4eb976}.chart__values--loading.color-index-disabled,.chart__values--loading.color-index-unknown{stroke:#a8a8a8}.chart__values--loading.color-index-graph-1,.chart__values--loading.color-index-graph-6{stroke:#c3a4fe}.chart__values--loading.color-index-graph-2,.chart__values--loading.color-index-graph-7{stroke:#a577ff}.chart__values--loading.color-index-graph-3,.chart__values--loading.color-index-graph-8{stroke:#5d0cfb}.chart__values--loading.color-index-graph-4,.chart__values--loading.color-index-graph-9{stroke:#7026ff}.chart__values--loading.color-index-graph-5,.chart__values--loading.color-index-graph-10{stroke:#767676}.chart__values--loading.color-index-grey-1,.chart__values--loading.color-index-grey-5{stroke:#333}.chart__values--loading.color-index-grey-2,.chart__values--loading.color-index-grey-6{stroke:#444}.chart__values--loading.color-index-grey-3,.chart__values--loading.color-index-grey-7{stroke:#555}.chart__values--loading.color-index-grey-4,.chart__values--loading.color-index-grey-8{stroke:#666}.chart__values--loading.color-index-accent-1,.chart__values--loading.color-index-accent-3{stroke:#c3a4fe}.chart__values--loading.color-index-accent-2,.chart__values--loading.color-index-accent-4{stroke:#a577ff}.chart__values--loading.color-index-light-1,.chart__values--loading.color-index-light-3{stroke:#fff}.chart__values--loading.color-index-light-2,.chart__values--loading.color-index-light-4{stroke:#f5f5f5}.chart__threshold{stroke-width:2px;stroke:rgba(51,51,51,.2);pointer-events:none}.chart__yaxis .chart__bar.color-index-critical,.chart__yaxis .chart__bar.color-index-error{fill:rgba(255,133,107,.5)}.chart__yaxis .chart__bar.color-index-warning{fill:rgba(255,184,107,.5)}.chart__yaxis .chart__bar.color-index-ok{fill:rgba(78,185,118,.5)}.chart__yaxis .chart__bar.color-index-disabled,.chart__yaxis .chart__bar.color-index-unknown{fill:hsla(0,0%,66%,.5)}.chart__yaxis .chart__bar.color-index-graph-1,.chart__yaxis .chart__bar.color-index-graph-6{fill:rgba(195,164,254,.5)}.chart__yaxis .chart__bar.color-index-graph-2,.chart__yaxis .chart__bar.color-index-graph-7{fill:rgba(165,119,255,.5)}.chart__yaxis .chart__bar.color-index-graph-3,.chart__yaxis .chart__bar.color-index-graph-8{fill:rgba(93,12,251,.5)}.chart__yaxis .chart__bar.color-index-graph-4,.chart__yaxis .chart__bar.color-index-graph-9{fill:rgba(112,38,255,.5)}.chart__yaxis .chart__bar.color-index-graph-5,.chart__yaxis .chart__bar.color-index-graph-10{fill:hsla(0,0%,46%,.5)}.chart__xaxis-index text{fill:#777}.chart__xaxis-index--eclipse text{fill:transparent}.chart__xaxis-index--active text{fill:#333}.chart__front-xband-background{fill:transparent}.chart__cursor{stroke:#333;stroke-width:2;pointer-events:none}.chart__cursor-point{stroke-width:2}.chart__cursor-point.color-index-unset{fill:#ddd}.chart__cursor-point.color-index-brand{fill:#8c50ff}.chart__cursor-point.color-index-critical,.chart__cursor-point.color-index-error{fill:#ff856b}.chart__cursor-point.color-index-warning{fill:#ffb86b}.chart__cursor-point.color-index-ok{fill:#4eb976}.chart__cursor-point.color-index-disabled,.chart__cursor-point.color-index-unknown{fill:#a8a8a8}.chart__cursor-point.color-index-graph-1,.chart__cursor-point.color-index-graph-6{fill:#c3a4fe}.chart__cursor-point.color-index-graph-2,.chart__cursor-point.color-index-graph-7{fill:#a577ff}.chart__cursor-point.color-index-graph-3,.chart__cursor-point.color-index-graph-8{fill:#5d0cfb}.chart__cursor-point.color-index-graph-4,.chart__cursor-point.color-index-graph-9{fill:#7026ff}.chart__cursor-point.color-index-graph-5,.chart__cursor-point.color-index-graph-10{fill:#767676}.chart__cursor-point.color-index-accent-1,.chart__cursor-point.color-index-accent-3{fill:#c3a4fe}.chart__cursor-point.color-index-accent-2,.chart__cursor-point.color-index-accent-4{fill:#a577ff}.chart__cursor-point.color-index-grey-1,.chart__cursor-point.color-index-grey-5{fill:#333}.chart__cursor-point.color-index-grey-2,.chart__cursor-point.color-index-grey-6{fill:#444}.chart__cursor-point.color-index-grey-3,.chart__cursor-point.color-index-grey-7{fill:#555}.chart__cursor-point.color-index-grey-4,.chart__cursor-point.color-index-grey-8{fill:#666}.chart__legend--overlay{padding:12px;pointer-events:none}@media screen and (max-width:44.9375em){.chart__legend--overlay{margin:0 auto}}@media screen and (min-width:45em){.chart__legend--overlay{position:absolute;left:0;margin:0;background-color:hsla(0,0%,100%,.8)}}.chart--area .chart__gradient.color-index-critical .begin,.chart--bar .chart__gradient.color-index-critical .begin{stop-color:#ff856b}.chart--area .chart__gradient.color-index-critical .mid,.chart--bar .chart__gradient.color-index-critical .mid{stop-color:#ff856b;stop-opacity:.5}.chart--area .chart__gradient.color-index-critical .end,.chart--bar .chart__gradient.color-index-critical .end{stop-color:#ff856b;stop-opacity:0}.chart--area .chart__gradient.color-index-error .begin,.chart--bar .chart__gradient.color-index-error .begin{stop-color:#ff856b}.chart--area .chart__gradient.color-index-error .mid,.chart--bar .chart__gradient.color-index-error .mid{stop-color:#ff856b;stop-opacity:.5}.chart--area .chart__gradient.color-index-error .end,.chart--bar .chart__gradient.color-index-error .end{stop-color:#ff856b;stop-opacity:0}.chart--area .chart__gradient.color-index-warning .begin,.chart--bar .chart__gradient.color-index-warning .begin{stop-color:#ffb86b}.chart--area .chart__gradient.color-index-warning .mid,.chart--bar .chart__gradient.color-index-warning .mid{stop-color:#ffb86b;stop-opacity:.5}.chart--area .chart__gradient.color-index-warning .end,.chart--bar .chart__gradient.color-index-warning .end{stop-color:#ffb86b;stop-opacity:0}.chart--area .chart__gradient.color-index-ok .begin,.chart--bar .chart__gradient.color-index-ok .begin{stop-color:#4eb976}.chart--area .chart__gradient.color-index-ok .mid,.chart--bar .chart__gradient.color-index-ok .mid{stop-color:#4eb976;stop-opacity:.5}.chart--area .chart__gradient.color-index-ok .end,.chart--bar .chart__gradient.color-index-ok .end{stop-color:#4eb976;stop-opacity:0}.chart--area .chart__gradient.color-index-unknown .begin,.chart--bar .chart__gradient.color-index-unknown .begin{stop-color:#a8a8a8}.chart--area .chart__gradient.color-index-unknown .mid,.chart--bar .chart__gradient.color-index-unknown .mid{stop-color:#a8a8a8;stop-opacity:.5}.chart--area .chart__gradient.color-index-unknown .end,.chart--bar .chart__gradient.color-index-unknown .end{stop-color:#a8a8a8;stop-opacity:0}.chart--area .chart__gradient.color-index-disabled .begin,.chart--bar .chart__gradient.color-index-disabled .begin{stop-color:#a8a8a8}.chart--area .chart__gradient.color-index-disabled .mid,.chart--bar .chart__gradient.color-index-disabled .mid{stop-color:#a8a8a8;stop-opacity:.5}.chart--area .chart__gradient.color-index-disabled .end,.chart--bar .chart__gradient.color-index-disabled .end{stop-color:#a8a8a8;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-1 .begin,.chart--area .chart__gradient.color-index-graph-6 .begin,.chart--bar .chart__gradient.color-index-graph-1 .begin,.chart--bar .chart__gradient.color-index-graph-6 .begin{stop-color:#c3a4fe}.chart--area .chart__gradient.color-index-graph-1 .mid,.chart--area .chart__gradient.color-index-graph-6 .mid,.chart--bar .chart__gradient.color-index-graph-1 .mid,.chart--bar .chart__gradient.color-index-graph-6 .mid{stop-color:#c3a4fe;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-1 .end,.chart--area .chart__gradient.color-index-graph-6 .end,.chart--bar .chart__gradient.color-index-graph-1 .end,.chart--bar .chart__gradient.color-index-graph-6 .end{stop-color:#c3a4fe;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-2 .begin,.chart--area .chart__gradient.color-index-graph-7 .begin,.chart--bar .chart__gradient.color-index-graph-2 .begin,.chart--bar .chart__gradient.color-index-graph-7 .begin{stop-color:#a577ff}.chart--area .chart__gradient.color-index-graph-2 .mid,.chart--area .chart__gradient.color-index-graph-7 .mid,.chart--bar .chart__gradient.color-index-graph-2 .mid,.chart--bar .chart__gradient.color-index-graph-7 .mid{stop-color:#a577ff;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-2 .end,.chart--area .chart__gradient.color-index-graph-7 .end,.chart--bar .chart__gradient.color-index-graph-2 .end,.chart--bar .chart__gradient.color-index-graph-7 .end{stop-color:#a577ff;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-3 .begin,.chart--area .chart__gradient.color-index-graph-8 .begin,.chart--bar .chart__gradient.color-index-graph-3 .begin,.chart--bar .chart__gradient.color-index-graph-8 .begin{stop-color:#5d0cfb}.chart--area .chart__gradient.color-index-graph-3 .mid,.chart--area .chart__gradient.color-index-graph-8 .mid,.chart--bar .chart__gradient.color-index-graph-3 .mid,.chart--bar .chart__gradient.color-index-graph-8 .mid{stop-color:#5d0cfb;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-3 .end,.chart--area .chart__gradient.color-index-graph-8 .end,.chart--bar .chart__gradient.color-index-graph-3 .end,.chart--bar .chart__gradient.color-index-graph-8 .end{stop-color:#5d0cfb;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-4 .begin,.chart--area .chart__gradient.color-index-graph-9 .begin,.chart--bar .chart__gradient.color-index-graph-4 .begin,.chart--bar .chart__gradient.color-index-graph-9 .begin{stop-color:#7026ff}.chart--area .chart__gradient.color-index-graph-4 .mid,.chart--area .chart__gradient.color-index-graph-9 .mid,.chart--bar .chart__gradient.color-index-graph-4 .mid,.chart--bar .chart__gradient.color-index-graph-9 .mid{stop-color:#7026ff;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-4 .end,.chart--area .chart__gradient.color-index-graph-9 .end,.chart--bar .chart__gradient.color-index-graph-4 .end,.chart--bar .chart__gradient.color-index-graph-9 .end{stop-color:#7026ff;stop-opacity:0}.chart--area .chart__gradient.color-index-graph-5 .begin,.chart--area .chart__gradient.color-index-graph-10 .begin,.chart--bar .chart__gradient.color-index-graph-5 .begin,.chart--bar .chart__gradient.color-index-graph-10 .begin{stop-color:#767676}.chart--area .chart__gradient.color-index-graph-5 .mid,.chart--area .chart__gradient.color-index-graph-10 .mid,.chart--bar .chart__gradient.color-index-graph-5 .mid,.chart--bar .chart__gradient.color-index-graph-10 .mid{stop-color:#767676;stop-opacity:.5}.chart--area .chart__gradient.color-index-graph-5 .end,.chart--area .chart__gradient.color-index-graph-10 .end,.chart--bar .chart__gradient.color-index-graph-5 .end,.chart--bar .chart__gradient.color-index-graph-10 .end{stop-color:#767676;stop-opacity:0}.chart--small .chart__graphic{height:96px}.chart--large .chart__graphic{height:288px}.chart--sparkline{display:inline-block;margin-right:6px}.chart--sparkline .chart__graphic{width:auto;height:24px}.chart--sparkline .chart__values-area.color-index-unset,.chart--sparkline .chart__values-bar.color-index-unset{fill:#ddd}.chart--sparkline .chart__values-area.color-index-brand,.chart--sparkline .chart__values-bar.color-index-brand{fill:#8c50ff}.chart--sparkline .chart__values-area.color-index-critical,.chart--sparkline .chart__values-area.color-index-error,.chart--sparkline .chart__values-bar.color-index-critical,.chart--sparkline .chart__values-bar.color-index-error{fill:#ff856b}.chart--sparkline .chart__values-area.color-index-warning,.chart--sparkline .chart__values-bar.color-index-warning{fill:#ffb86b}.chart--sparkline .chart__values-area.color-index-ok,.chart--sparkline .chart__values-bar.color-index-ok{fill:#4eb976}.chart--sparkline .chart__values-area.color-index-disabled,.chart--sparkline .chart__values-area.color-index-unknown,.chart--sparkline .chart__values-bar.color-index-disabled,.chart--sparkline .chart__values-bar.color-index-unknown{fill:#a8a8a8}.chart--sparkline .chart__values-area.color-index-graph-1,.chart--sparkline .chart__values-area.color-index-graph-6,.chart--sparkline .chart__values-bar.color-index-graph-1,.chart--sparkline .chart__values-bar.color-index-graph-6{fill:#c3a4fe}.chart--sparkline .chart__values-area.color-index-graph-2,.chart--sparkline .chart__values-area.color-index-graph-7,.chart--sparkline .chart__values-bar.color-index-graph-2,.chart--sparkline .chart__values-bar.color-index-graph-7{fill:#a577ff}.chart--sparkline .chart__values-area.color-index-graph-3,.chart--sparkline .chart__values-area.color-index-graph-8,.chart--sparkline .chart__values-bar.color-index-graph-3,.chart--sparkline .chart__values-bar.color-index-graph-8{fill:#5d0cfb}.chart--sparkline .chart__values-area.color-index-graph-4,.chart--sparkline .chart__values-area.color-index-graph-9,.chart--sparkline .chart__values-bar.color-index-graph-4,.chart--sparkline .chart__values-bar.color-index-graph-9{fill:#7026ff}.chart--sparkline .chart__values-area.color-index-graph-5,.chart--sparkline .chart__values-area.color-index-graph-10,.chart--sparkline .chart__values-bar.color-index-graph-5,.chart--sparkline .chart__values-bar.color-index-graph-10{fill:#767676}.chart--sparkline .chart__values-area.color-index-accent-1,.chart--sparkline .chart__values-area.color-index-accent-3,.chart--sparkline .chart__values-bar.color-index-accent-1,.chart--sparkline .chart__values-bar.color-index-accent-3{fill:#c3a4fe}.chart--sparkline .chart__values-area.color-index-accent-2,.chart--sparkline .chart__values-area.color-index-accent-4,.chart--sparkline .chart__values-bar.color-index-accent-2,.chart--sparkline .chart__values-bar.color-index-accent-4{fill:#a577ff}.chart--sparkline .chart__values-area.color-index-grey-1,.chart--sparkline .chart__values-area.color-index-grey-5,.chart--sparkline .chart__values-bar.color-index-grey-1,.chart--sparkline .chart__values-bar.color-index-grey-5{fill:#333}.chart--sparkline .chart__values-area.color-index-grey-2,.chart--sparkline .chart__values-area.color-index-grey-6,.chart--sparkline .chart__values-bar.color-index-grey-2,.chart--sparkline .chart__values-bar.color-index-grey-6{fill:#444}.chart--sparkline .chart__values-area.color-index-grey-3,.chart--sparkline .chart__values-area.color-index-grey-7,.chart--sparkline .chart__values-bar.color-index-grey-3,.chart--sparkline .chart__values-bar.color-index-grey-7{fill:#555}.chart--sparkline .chart__values-area.color-index-grey-4,.chart--sparkline .chart__values-area.color-index-grey-8,.chart--sparkline .chart__values-bar.color-index-grey-4,.chart--sparkline .chart__values-bar.color-index-grey-8{fill:#666}.check-box{margin-right:12px;white-space:nowrap}html.rtl .check-box{margin-right:24px;margin-left:12px}.check-box:not(.check-box--disabled){cursor:pointer}.check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box:hover:not(.check-box--disabled) .check-box__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box:hover:not(.check-box--disabled) .check-box__label{color:#fff}.check-box>:first-child{margin-right:12px}html.rtl .check-box>:first-child{margin-right:0;margin-left:12px}.check-box__input{opacity:0;position:absolute}.check-box__input:checked+.check-box__control{border-color:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control{border-color:#fff}.check-box__input:checked+.check-box__control .check-box__control-check{display:block}.check-box__input:checked+.check-box__control+.check-box__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__input:checked+.check-box__control+.check-box__label{color:#fff}.check-box__input:focus+.check-box__control{border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}.check-box__control{position:relative;top:-1px;display:inline-block;width:24px;height:24px;vertical-align:middle;background-color:inherit;border:2px solid #999;border-radius:4px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control{border-color:hsla(0,0%,100%,.7)}.check-box__control-check{position:absolute;top:-2px;left:-2px;display:none;width:24px;height:24px;stroke-width:4px;stroke:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__control-check{stroke:#fff}.check-box__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box__label{color:hsla(0,0%,100%,.85)}.check-box--disabled .check-box__control{opacity:.5}.check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{content:"";border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle:hover:not(.check-box--disabled) .check-box__input:checked+.check-box__control:after{background-color:#fff;border-color:#fff}.check-box--toggle .check-box__control{width:48px;height:24px;border-radius:24px;background-color:rgba(51,51,51,.2);border:none;transition:background-color .3s}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control{background-color:hsla(0,0%,100%,.1)}.check-box--toggle .check-box__control:after{content:"";display:block;position:absolute;top:-2px;left:0;width:28px;height:28px;background-color:#fff;border:2px solid #999;border-radius:24px;transition:margin-left .3s;box-sizing:border-box}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__control:after{background-color:transparent;border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control{background-color:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control{background-color:hsla(0,0%,100%,.1)}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{stroke:transparent}.check-box--toggle .check-box__input:checked+.check-box__control:after{content:"";background-color:#fff;border-color:#8c50ff;margin-left:24px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .check-box--toggle .check-box__input:checked+.check-box__control:after{border-color:hsla(0,0%,100%,.7)}.check-box--toggle .check-box__input:checked+.check-box__control .check-box__control-check{display:none}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]){color:#fff}.background-color-index-brand{background-color:#8c50ff}.background-color-index-neutral-1,.background-color-index-neutral-4{background-color:#5d0cfb}.background-color-index-neutral-1-a,.background-color-index-neutral-4-a{background-color:rgba(93,12,251,.8)}.background-color-index-neutral-2,.background-color-index-neutral-5{background-color:#7026ff}.background-color-index-neutral-2-a,.background-color-index-neutral-5-a{background-color:rgba(112,38,255,.8)}.background-color-index-neutral-3,.background-color-index-neutral-6{background-color:#767676}.background-color-index-neutral-3-a,.background-color-index-neutral-6-a{background-color:hsla(0,0%,46%,.8)}.background-color-index-accent-1,.background-color-index-accent-3{background-color:#c3a4fe}.background-color-index-accent-1-a,.background-color-index-accent-3-a{background-color:rgba(195,164,254,.8)}.background-color-index-accent-2,.background-color-index-accent-4{background-color:#a577ff}.background-color-index-accent-2-a,.background-color-index-accent-4-a{background-color:rgba(165,119,255,.8)}.background-color-index-grey-1,.background-color-index-grey-5{background-color:#333}.background-color-index-grey-1-a,.background-color-index-grey-5-a{background-color:rgba(51,51,51,.8)}.background-color-index-grey-2,.background-color-index-grey-6{background-color:#444}.background-color-index-grey-2-a,.background-color-index-grey-6-a{background-color:rgba(68,68,68,.8)}.background-color-index-grey-3,.background-color-index-grey-7{background-color:#555}.background-color-index-grey-3-a,.background-color-index-grey-7-a{background-color:rgba(85,85,85,.8)}.background-color-index-grey-4,.background-color-index-grey-8{background-color:#666}.background-color-index-grey-4-a,.background-color-index-grey-8-a{background-color:hsla(0,0%,40%,.8)}.background-color-index-graph-1,.background-color-index-graph-6{background-color:#c3a4fe}.background-color-index-graph-2,.background-color-index-graph-7{background-color:#a577ff}.background-color-index-graph-3,.background-color-index-graph-8{background-color:#5d0cfb}.background-color-index-graph-4,.background-color-index-graph-9{background-color:#7026ff}.background-color-index-graph-5,.background-color-index-graph-10{background-color:#767676}.background-color-index-critical,.background-color-index-error{background-color:#ff856b}.background-color-index-warning{background-color:#ffb86b}.background-color-index-ok{background-color:#4eb976}.background-color-index-disabled,.background-color-index-unknown{background-color:#a8a8a8}.background-color-index-light-1,.background-color-index-light-3{background-color:#fff}.background-color-index-light-2,.background-color-index-light-4{background-color:#f5f5f5}.center-column{padding-left:24px;padding-right:24px}.center-column .center-column__content{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.columns{display:flex;flex-direction:row;width:100%}.columns__column{flex:0 0 192px;display:flex;flex-direction:column}.columns--small>.columns__column{flex-basis:96px}.columns--large>.columns__column{flex-basis:384px}@media screen and (min-width:45em){.dashboard{height:calc(100vh - 96px)}}@media screen and (max-width:44.9375em){.dashboard{height:calc(100vh - 48px)}}.distribution{position:relative}.distribution__graphic{width:100%;height:192px;max-height:calc(100vh - 144px)}.distribution__background{fill:#f5f5f5}.distribution__item--clickable{cursor:pointer}.distribution__item-box.color-index-unset{fill:#ddd}.distribution__item-box.color-index-brand{fill:#8c50ff}.distribution__item-box.color-index-critical,.distribution__item-box.color-index-error{fill:#ff856b}.distribution__item-box.color-index-warning{fill:#ffb86b}.distribution__item-box.color-index-ok{fill:#4eb976}.distribution__item-box.color-index-disabled,.distribution__item-box.color-index-unknown{fill:#a8a8a8}.distribution__item-box.color-index-graph-1,.distribution__item-box.color-index-graph-6{fill:#c3a4fe}.distribution__item-box.color-index-graph-2,.distribution__item-box.color-index-graph-7{fill:#a577ff}.distribution__item-box.color-index-graph-3,.distribution__item-box.color-index-graph-8{fill:#5d0cfb}.distribution__item-box.color-index-graph-4,.distribution__item-box.color-index-graph-9{fill:#7026ff}.distribution__item-box.color-index-graph-5,.distribution__item-box.color-index-graph-10{fill:#767676}.distribution__item-box.color-index-accent-1,.distribution__item-box.color-index-accent-3{fill:#c3a4fe}.distribution__item-box.color-index-accent-2,.distribution__item-box.color-index-accent-4{fill:#a577ff}.distribution__item-box.color-index-grey-1,.distribution__item-box.color-index-grey-5{fill:#333}.distribution__item-box.color-index-grey-2,.distribution__item-box.color-index-grey-6{fill:#444}.distribution__item-box.color-index-grey-3,.distribution__item-box.color-index-grey-7{fill:#555}.distribution__item-box.color-index-grey-4,.distribution__item-box.color-index-grey-8{fill:#666}.distribution__item-icons.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__item-icons.color-index-unset{stroke:#ddd}.distribution__item-icons.color-index-brand{stroke:#8c50ff}.distribution__item-icons.color-index-critical,.distribution__item-icons.color-index-error{stroke:#ff856b}.distribution__item-icons.color-index-warning{stroke:#ffb86b}.distribution__item-icons.color-index-ok{stroke:#4eb976}.distribution__item-icons.color-index-disabled,.distribution__item-icons.color-index-unknown{stroke:#a8a8a8}.distribution__item-icons.color-index-graph-1,.distribution__item-icons.color-index-graph-6{stroke:#c3a4fe}.distribution__item-icons.color-index-graph-2,.distribution__item-icons.color-index-graph-7{stroke:#a577ff}.distribution__item-icons.color-index-graph-3,.distribution__item-icons.color-index-graph-8{stroke:#5d0cfb}.distribution__item-icons.color-index-graph-4,.distribution__item-icons.color-index-graph-9{stroke:#7026ff}.distribution__item-icons.color-index-graph-5,.distribution__item-icons.color-index-graph-10{stroke:#767676}.distribution__item-icons.color-index-grey-1,.distribution__item-icons.color-index-grey-5{stroke:#333}.distribution__item-icons.color-index-grey-2,.distribution__item-icons.color-index-grey-6{stroke:#444}.distribution__item-icons.color-index-grey-3,.distribution__item-icons.color-index-grey-7{stroke:#555}.distribution__item-icons.color-index-grey-4,.distribution__item-icons.color-index-grey-8{stroke:#666}.distribution__item-icons.color-index-accent-1,.distribution__item-icons.color-index-accent-3{stroke:#c3a4fe}.distribution__item-icons.color-index-accent-2,.distribution__item-icons.color-index-accent-4{stroke:#a577ff}.distribution__item-icons.color-index-light-1,.distribution__item-icons.color-index-light-3{stroke:#fff}.distribution__item-icons.color-index-light-2,.distribution__item-icons.color-index-light-4{stroke:#f5f5f5}.distribution__label{position:absolute;font-family:Source Sans Pro,Arial,sans-serif;overflow:hidden;text-align:left;pointer-events:none}.distribution__label.color-index-graph-3,.distribution__label.color-index-graph-4,.distribution__label.color-index-graph-5,.distribution__label.color-index-graph-8,.distribution__label.color-index-graph-9,.distribution__label.color-index-graph-10,.distribution__label.color-index-grey-1,.distribution__label.color-index-grey-2,.distribution__label.color-index-grey-3,.distribution__label.color-index-grey-4,.distribution__label.color-index-grey-5,.distribution__label.color-index-grey-6,.distribution__label.color-index-grey-7,.distribution__label.color-index-grey-8,.distribution__label.color-index-neutral-1,.distribution__label.color-index-neutral-2,.distribution__label.color-index-neutral-3,.distribution__label.color-index-neutral-4,.distribution__label.color-index-neutral-5,.distribution__label.color-index-neutral-6,.distribution__label.color-index-ok{color:#fff}.distribution__label-value{display:block;font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700}.distribution__label-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;font-weight:400}.distribution__label-label{display:block}.distribution__label--active{color:#333}.distribution__label--thin .distribution__label-label,.distribution__label--thin .distribution__label-value{display:inline-block}.distribution__label--small .distribution__label-units,.distribution__label--small .distribution__label-value{font-size:20px;font-size:1.25rem;line-height:1;margin-right:4px}.distribution__label--icons{padding:0 12px 12px 0;background-color:hsla(0,0%,100%,.8);color:#333}.distribution__label--icons .label-value{line-height:1}.distribution__label--icons .label-units{color:#777}.distribution__label--icons .label-label{display:block}.distribution__loading-indicator{stroke-width:24px}.distribution__loading-indicator.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.distribution__loading-indicator.color-index-unset{stroke:#ddd}.distribution__loading-indicator.color-index-brand{stroke:#8c50ff}.distribution__loading-indicator.color-index-critical,.distribution__loading-indicator.color-index-error{stroke:#ff856b}.distribution__loading-indicator.color-index-warning{stroke:#ffb86b}.distribution__loading-indicator.color-index-ok{stroke:#4eb976}.distribution__loading-indicator.color-index-disabled,.distribution__loading-indicator.color-index-unknown{stroke:#a8a8a8}.distribution__loading-indicator.color-index-graph-1,.distribution__loading-indicator.color-index-graph-6{stroke:#c3a4fe}.distribution__loading-indicator.color-index-graph-2,.distribution__loading-indicator.color-index-graph-7{stroke:#a577ff}.distribution__loading-indicator.color-index-graph-3,.distribution__loading-indicator.color-index-graph-8{stroke:#5d0cfb}.distribution__loading-indicator.color-index-graph-4,.distribution__loading-indicator.color-index-graph-9{stroke:#7026ff}.distribution__loading-indicator.color-index-graph-5,.distribution__loading-indicator.color-index-graph-10{stroke:#767676}.distribution__loading-indicator.color-index-grey-1,.distribution__loading-indicator.color-index-grey-5{stroke:#333}.distribution__loading-indicator.color-index-grey-2,.distribution__loading-indicator.color-index-grey-6{stroke:#444}.distribution__loading-indicator.color-index-grey-3,.distribution__loading-indicator.color-index-grey-7{stroke:#555}.distribution__loading-indicator.color-index-grey-4,.distribution__loading-indicator.color-index-grey-8{stroke:#666}.distribution__loading-indicator.color-index-accent-1,.distribution__loading-indicator.color-index-accent-3{stroke:#c3a4fe}.distribution__loading-indicator.color-index-accent-2,.distribution__loading-indicator.color-index-accent-4{stroke:#a577ff}.distribution__loading-indicator.color-index-light-1,.distribution__loading-indicator.color-index-light-3{stroke:#fff}.distribution__loading-indicator.color-index-light-2,.distribution__loading-indicator.color-index-light-4{stroke:#f5f5f5}.distribution--icons .distribution__label{padding:0 12px 12px 0}.distribution--icons .distribution__label-value{line-height:1}.distribution--small .distribution__graphic{height:96px}.distribution--large .distribution__graphic{height:288px}.distribution--full{height:100%}.distribution--full .distribution__graphic{width:auto;height:auto;max-height:100%;max-width:100%}.grommet.drop{position:absolute;z-index:5;border-radius:4px;overflow:auto}.grommet.drop:not([class*=background-color-index-]){background-color:hsla(0,0%,97%,.95);border:none;box-shadow:none}.footer{min-height:36px;line-height:36px;width:100%}.footer.box--direction-row>h1,.footer.box--direction-row>h2,.footer.box--direction-row>h3,.footer.box--direction-row>h4{margin-bottom:0}.footer__content{display:flex;justify-content:space-between;width:100%;padding-left:24px;padding-right:24px}.footer__content.center-column__content>.menu:first-child{flex:0 0 auto;width:192px}@media screen and (max-width:44.9375em){.footer__content.center-column__content>.menu:first-child{width:100%}.footer__content.center-column__content>.menu:first-child:empty{width:0;margin:0;padding:0}}.footer__content>.flex-1{flex:1}.footer__content>.flex-2{flex:2}.footer__content>.flex-3{flex:3}.footer__content>.flex-4{flex:4}.footer__content>*{margin-right:48px}.footer__content>:last-child{margin-right:0;text-align:left}.footer--primary{height:auto;padding:24px}.footer--primary .footer__content{position:relative;color:#777;display:block}.footer--primary .footer__content p{padding-top:12px;margin:0;max-width:none;text-align:right;line-height:24px}.footer--centered .footer__content{display:block;text-align:center}.footer--centered .footer__content>*{margin-right:auto;margin-left:auto;text-align:center}.footer--flush .footer__content{padding-left:0;padding-right:0}.footer--large{min-height:96px;line-height:96px}.footer--small{min-height:24px;line-height:24px}.footer__container--float{padding-left:24px;padding-right:24px}.footer__container--float,:not(.footer__container--float)>.footer--float{position:absolute;bottom:0;left:0;right:0}.form{position:relative;width:480px;max-width:100%}@media screen and (min-width:45em){.form .form-field .tiles__container{max-width:480px}}.form--pad-none{padding:0}.form--pad-small{padding:12px}.form--pad-medium{padding:24px}.form--pad-large{padding:48px}.form--pad-horizontal-none{padding-left:0;padding-right:0}.form--pad-horizontal-small{padding-left:12px;padding-right:12px}.form--pad-horizontal-medium{padding-left:24px;padding-right:24px}.form--pad-horizontal-large{padding-left:48px;padding-right:48px}.form--pad-vertical-none{padding-top:0;padding-bottom:0}.form--pad-vertical-small{padding-top:12px;padding-bottom:12px}.form--pad-vertical-medium{padding-top:24px;padding-bottom:24px}.form--pad-vertical-large{padding-top:48px;padding-bottom:48px}.form>.header .header__wrapper{background-color:inherit}.form fieldset{border:none;margin:0;margin-bottom:2rem;margin-top:24px}.form fieldset:first-child{margin-top:0}.form fieldset:last-child{margin-bottom:0}.form fieldset>legend{font-size:24px;font-size:1.5rem;line-height:1;font-weight:600;margin-bottom:12px}.form fieldset>:not(.form-field)+.form-field{margin-top:12px}.form fieldset>.form-field+:not(.form-field):not(.form-fields){margin-top:24px}.form fieldset>.form-fields{display:flex;flex-direction:row}.form fieldset>.form-fields .form-field{margin-bottom:-1px}.form fieldset>.form-fields>.button{flex:0 0 auto}.form--fill{min-width:0}.form--compact{max-width:288px}.form-field{position:relative;padding:6px 24px;border:1px solid rgba(0,0,0,.15);margin-bottom:-1px;background-color:#fff;color:#333;opacity:1}@media screen and (min-width:45em){.form-field{width:100%;overflow:auto;transition:all .4s,padding-top .3s .1s,padding-bottom .3s .1s}}@media screen and (max-width:44.9375em){.form-field{display:block}}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field{background-color:transparent;color:hsla(0,0%,100%,.85)}.form--fill .form-field{width:100%}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-size:14px;font-size:.875rem;line-height:24px;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__label{color:hsla(0,0%,100%,.85)}.form-field__contents{display:block;margin-left:-24px;margin-right:-24px}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select,.form-field__contents>textarea{display:block;width:100%;border:none;padding:0 24px;border-radius:0;font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.calendar input:focus,.form-field__contents>.search-input input:focus,.form-field__contents>input[type=email]:focus,.form-field__contents>input[type=file]:focus,.form-field__contents>input[type=number]:focus,.form-field__contents>input[type=password]:focus,.form-field__contents>input[type=range]:focus,.form-field__contents>input[type=text]:focus,.form-field__contents>select:focus,.form-field__contents>textarea:focus{border:none;padding:0 24px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.calendar input,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>.search-input input,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=email],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=file],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=number],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=password],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=range],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>input[type=text],[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>textarea{color:#fff}.form-field__contents>.calendar input,.form-field__contents>.search-input input,.form-field__contents>input[type=email],.form-field__contents>input[type=file],.form-field__contents>input[type=number],.form-field__contents>input[type=password],.form-field__contents>input[type=range],.form-field__contents>input[type=text],.form-field__contents>select{height:24px}.form-field__contents>input[type=range]{width:calc(100% - 48px);margin-left:24px;margin-right:24px;padding-left:0;padding-right:0}.form-field__contents>select{display:block;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATdJREFUOBGlUjFqw0AQ1AWBCWpd+A1pXOYHJk38BZeSOkPS5BERaWRJTcCNH2A3xj9waRf+hGsJAoLLjNk77iLFIXhB7NzO3OjuGBUEgaqqaos+wXdL7eI4frqDg27bdoZ+vsHtLB5aGZOyLJ+VUmut9Rdmj0mSHAzX16EfY77HngH2TKHfUMcTXooDEAsKMFhlWXYvVKcJtxKzhTGj0Bpy0TTNK0xPED5EUfTOWV+Ro4Za7nE19spm+NtVHP7q03gn5Ca+Hf78RoxTfOZ5PiJmEXNGTA21xG51DEmmafqBtsM3DMNwic6bKMFDcqIB9Cv0l3Z1iRIMjphMiqKYC8Os2ohYtQM6b+hwwY8o8Qm8iLhag3uvbEiJQ0EjMfMiYnRuv2pIYV3XL4xHX0Rco39hRkni9Oe+bw49m1YsR5tyAAAAAElFTkSuQmCC);background-position:center right 18px}html.rtl .form-field__contents>select{background-position:center left 18px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__contents>select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAABGdBTUEAALGPC/xhBQAAATtJREFUOBGdkk1KxEAQhdNiEPdZeIEk4MalNwhu9ApeQdCNhxBc6U5w4wHGjcwBAi4VMpDkCCYHkEDi+4bp0JNp/6ag6ErVey9VRZkgCExVVS/GmEzx1jYMwzxJkpMdKQxd150r8bGtGlw00DJWpK7rU8UzFT/lx2mavtma7y3L8khTvcr3VD+L4/gZHB0ujUTf93cA5E95nu/b2vSlBgYsHCsGbhTko23bK3W3EPAwiqIbcj6jBgYsHBczjmyT341i67+tZq1DSOxOf78mVgcPRVEcEGPE5IjB+Pa8IQhYO7kVcS5SFIbhI3ycmBw1MGCntjtNrL6XpySBdwlkGvNilc8kNp6Ij7uxQxfk7ou8xNdOxMXa2DuyLXIO6ugeIXx6Ihbnvj8KAmya5lKiC3x6Iq7Qv2JOCf8L6QsuVKvxz0iZVQAAAABJRU5ErkJggg==)}.form-field__contents>select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-field__contents>select::-ms-expand{display:none}.form-field__contents>select::-ms-value{background:none;color:inherit}.form-field__contents>textarea{vertical-align:top;height:auto;resize:vertical}.form-field__contents>.check-box,.form-field__contents>.radio-button{display:block;font-size:16px;font-size:1rem;line-height:1.5;margin:12px 24px}.form-field__contents>.calendar,.form-field__contents>.search-input{display:block}.form-field__contents>.calendar input,.form-field__contents>.search-input input{margin-left:0;margin-right:0}.form-field__contents>.calendar .calendar__control,.form-field__contents>.calendar .search-input__control,.form-field__contents>.search-input .calendar__control,.form-field__contents>.search-input .search-input__control{top:auto;right:6px;transform:none;bottom:-6px}html.rtl .form-field__contents>.calendar .calendar__control,html.rtl .form-field__contents>.calendar .search-input__control,html.rtl .form-field__contents>.search-input .calendar__control,html.rtl .form-field__contents>.search-input .search-input__control{right:auto;left:6px}.form-field__contents>.number-input{display:flex;padding-right:6px}html.rtl .form-field__contents>.number-input{padding-right:0;padding-left:6px}.form-field__contents>.number-input input[type=number]{display:inline-block;flex:1;border:none;padding:0 24px}.form-field__contents>.number-input input[type=number]:focus{padding:0 24px}.form--compact .form-field__contents>.number-input input[type=number]{width:144px}.form-field__contents>input[type=file]{display:inline-block}.form-field__contents>.table--selectable{font-size:16px;font-size:1rem;line-height:1.5}.form-field__contents>.table--selectable table{margin-bottom:0}.form-field__contents>.table--selectable table td:first-child,.form-field__contents>.table--selectable table th:first-child{padding-left:24px}.form-field__contents>.form-field{width:auto;margin-top:12px;border:none}.form-field__contents>.form-field>.form-field__label{border-top:1px solid rgba(0,0,0,.15);padding-top:6px}.form-field__contents--hidden{margin-top:0}.form-field__help{display:block;font-size:13px;font-size:.8125rem;line-height:1.84615;color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__help{color:hsla(0,0%,100%,.85)}.form-field__error{display:block;float:right;color:#ff856b;line-height:24px}html.rtl .form-field__error{float:left}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .form-field__error{color:hsla(0,0%,100%,.85)}.form-field--text,.form-field--text .form-field__label{cursor:pointer}@media screen and (max-width:44.9375em){.form-field--hidden{display:none}}@media screen and (min-width:45em){.form-field--hidden{border:none;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;max-height:0;transition:max-height .2s,all .4s}}.form-field--error{z-index:1;border-color:#ff856b}.form-field--focus{z-index:2;border-color:#c3a4fe}.header{min-height:72px;width:100%;margin-bottom:0}.header a{color:inherit}.header a,.header a:hover{text-decoration:none}.header .status-icon{flex-grow:0;flex-shrink:0}.header--large{min-height:96px}.header--large .header__content{line-height:96px}.header--small{min-height:48px}.header--small .header__content{line-height:48px}header.header{font-size:24px;font-size:1.5rem;line-height:inherit}header.header h1,header.header h2,header.header h3,header.header h4,header.header h5{margin-bottom:0}.header--splash{-webkit-transform:translateY(40vh);transform:translateY(40vh)}:not(.header__container--float)>header.header--float{position:absolute;top:0;left:0;right:0}header.header--primary .header__wrapper{border-bottom:none}.header:not(header).box--separator-top{padding-top:6px}.header:not(header).box--separator-bottom{padding-bottom:6px}.header__container{flex-shrink:0}.header__container--fixed{position:relative}.header__container--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;z-index:3}@media screen and (min-width:45em){.header__container--fixed .header__wrapper .header{position:fixed}.header__container--fixed .header__wrapper .header:not(.header--float){background-color:hsla(0,0%,100%,.9)}}.header__container--float{position:absolute;top:0;left:0;right:0;padding-left:24px;padding-right:24px}.header__wrapper{height:72px}.header__wrapper--large{height:96px}.header__wrapper--small{height:48px}.header--fixed .header__wrapper{position:absolute;top:0;left:0;right:0;background-color:hsla(0,0%,100%,.9);z-index:3}.header--fixed.header--primary .header__wrapper{position:fixed;background-color:hsla(0,0%,100%,.9)}.header--fixed.header--primary .header__content{position:static;background-color:transparent}.header--flush .header__wrapper{padding-left:0;padding-right:0}h1.heading,h2.heading,h3.heading,h4.heading,h5.heading,h6.heading{margin-bottom:12px;line-height:1}h1.heading--large,h2.heading--large,h3.heading--large,h4.heading--large,h5.heading--large,h6.heading--large{font-size:125%}h1.heading--small,h2.heading--small,h3.heading--small,h4.heading--small,h5.heading--small,h6.heading--small{font-size:75%}h1.heading--strong,h2.heading--strong,h3.heading--strong,h4.heading--strong,h5.heading--strong,h6.heading--strong{font-weight:600}h1.heading--align-start,h2.heading--align-start,h3.heading--align-start,h4.heading--align-start,h5.heading--align-start,h6.heading--align-start{text-align:left}html.rtl h1.heading--align-start,html.rtl h2.heading--align-start,html.rtl h3.heading--align-start,html.rtl h4.heading--align-start,html.rtl h5.heading--align-start,html.rtl h6.heading--align-start{text-align:right}h1.heading--align-center,h2.heading--align-center,h3.heading--align-center,h4.heading--align-center,h5.heading--align-center,h6.heading--align-center{text-align:center}h1.heading--align-right,h2.heading--align-right,h3.heading--align-right,h4.heading--align-right,h5.heading--align-right,h6.heading--align-right{text-align:right}html.rtl h1.heading--align-right,html.rtl h2.heading--align-right,html.rtl h3.heading--align-right,html.rtl h4.heading--align-right,html.rtl h5.heading--align-right,html.rtl h6.heading--align-right{text-align:left}h1.heading--margin-none,h2.heading--margin-none,h3.heading--margin-none,h4.heading--margin-none,h5.heading--margin-none,h6.heading--margin-none{margin-top:0;margin-bottom:0}h1.heading--margin-small,h2.heading--margin-small,h3.heading--margin-small,h4.heading--margin-small,h5.heading--margin-small,h6.heading--margin-small{margin-top:12px;margin-bottom:12px}h1.heading--margin-medium,h2.heading--margin-medium,h3.heading--margin-medium,h4.heading--margin-medium,h5.heading--margin-medium,h6.heading--margin-medium{margin-top:24px;margin-bottom:24px}h1.heading--margin-large,h2.heading--margin-large,h3.heading--margin-large,h4.heading--margin-large,h5.heading--margin-large,h6.heading--margin-large{margin-top:48px;margin-bottom:48px}.headline{font-size:48px;font-size:3rem;line-height:1;font-weight:100;margin-bottom:24px;max-width:100%}.headline--large{font-size:60px;font-size:3.75rem;line-height:1}.headline--small{font-size:30px;font-size:1.875rem;line-height:1}.headline--strong{font-weight:600}.headline--align-start{text-align:left}html.rtl .headline--align-start{text-align:right}.headline--align-center{text-align:center}.headline--align-right{text-align:right}html.rtl .headline--align-right{text-align:left}.headline--margin-none{margin-top:0;margin-bottom:0}.headline--margin-small{margin-top:12px;margin-bottom:12px}.headline--margin-medium{margin-top:24px;margin-bottom:24px}.headline--margin-large{margin-top:48px;margin-bottom:48px}.control-icon{display:inline-block;width:24px;height:24px;cursor:pointer;fill:#999;stroke:#999;flex:0 0 auto}.control-icon :not([stroke])[fill=none]{stroke-width:0}.control-icon [stroke]{stroke:inherit}.control-icon [fill*="#"]{fill:inherit}.control-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.control-icon.color-index-unset{stroke:#ddd}.control-icon.color-index-brand{stroke:#8c50ff}.control-icon.color-index-critical,.control-icon.color-index-error{stroke:#ff856b}.control-icon.color-index-warning{stroke:#ffb86b}.control-icon.color-index-ok{stroke:#4eb976}.control-icon.color-index-disabled,.control-icon.color-index-unknown{stroke:#a8a8a8}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{stroke:#c3a4fe}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{stroke:#a577ff}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{stroke:#5d0cfb}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{stroke:#7026ff}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{stroke:#767676}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{stroke:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{stroke:#444}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{stroke:#555}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{stroke:#666}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{stroke:#c3a4fe}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{stroke:#a577ff}.control-icon.color-index-light-1,.control-icon.color-index-light-3{stroke:#fff}.control-icon.color-index-light-2,.control-icon.color-index-light-4{stroke:#f5f5f5}.control-icon.color-index-unset{fill:#ddd}.control-icon.color-index-brand{fill:#8c50ff}.control-icon.color-index-critical,.control-icon.color-index-error{fill:#ff856b}.control-icon.color-index-warning{fill:#ffb86b}.control-icon.color-index-ok{fill:#4eb976}.control-icon.color-index-disabled,.control-icon.color-index-unknown{fill:#a8a8a8}.control-icon.color-index-graph-1,.control-icon.color-index-graph-6{fill:#c3a4fe}.control-icon.color-index-graph-2,.control-icon.color-index-graph-7{fill:#a577ff}.control-icon.color-index-graph-3,.control-icon.color-index-graph-8{fill:#5d0cfb}.control-icon.color-index-graph-4,.control-icon.color-index-graph-9{fill:#7026ff}.control-icon.color-index-graph-5,.control-icon.color-index-graph-10{fill:#767676}.control-icon.color-index-accent-1,.control-icon.color-index-accent-3{fill:#c3a4fe}.control-icon.color-index-accent-2,.control-icon.color-index-accent-4{fill:#a577ff}.control-icon.color-index-grey-1,.control-icon.color-index-grey-5{fill:#333}.control-icon.color-index-grey-2,.control-icon.color-index-grey-6{fill:#444}.control-icon.color-index-grey-3,.control-icon.color-index-grey-7{fill:#555}.control-icon.color-index-grey-4,.control-icon.color-index-grey-8{fill:#666}@media screen and (min-width:45em){.control-icon{transition:all .3s ease-in-out}}.anchor:hover .control-icon,.button:hover .control-icon,.menu__control:hover .control-icon,a:hover .control-icon{fill:#000;stroke:#000}.anchor.anchor--disabled:hover .control-icon,.button.button--disabled:hover .control-icon{fill:#999;stroke:#999}.control-icon__badge circle{fill:#c3a4fe}.control-icon__badge text{stroke:#333;fill:#333}.button--primary .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .control-icon:not([class*=color-index]){fill:hsla(0,0%,100%,.7);stroke:hsla(0,0%,100%,.7)}.button--primary:hover .control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .anchor:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .button:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover>.control-icon,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) a:hover>.control-icon{fill:#fff;stroke:#fff}.control-icon--active{fill:#000;stroke:#000}.control-icon--large{width:48px;height:48px}.control-icon--huge{width:288px;height:288px}.status-icon{width:24px;height:24px;vertical-align:middle;flex:0 0 auto}.status-icon .status-icon__base{fill:#a8a8a8}.status-icon-critical .status-icon__base,.status-icon-error .status-icon__base{fill:#ff856b}.status-icon-warning .status-icon__base{fill:#ffb86b}.status-icon-ok .status-icon__base{fill:#4eb976}.status-icon-disabled .status-icon__base,.status-icon-label .status-icon__base,.status-icon-unknown .status-icon__base{fill:#a8a8a8}.status-icon__detail{fill:#fff;stroke:#fff}.status-icon-unknown .status-icon__detail{fill:#a8a8a8;stroke:#a8a8a8}.status-icon--large{width:48px;height:48px}.status-icon--huge{width:288px;height:288px}.status-icon--small{width:12px;height:12px;margin-top:6px;margin-bottom:6px}.status-icon--small .status-icon__detail{display:none}@-webkit-keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes c{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.icon-changing{width:24px;height:24px;-webkit-animation:c 1.5s linear infinite;animation:c 1.5s linear infinite}.icon-changing--small{width:12px;height:12px}.icon-spinning{width:24px;height:24px;-webkit-animation:c 4s steps(4,end) infinite;animation:c 4s steps(4,end) infinite}.icon-spinning--small{width:12px;height:12px}.logo-icon{width:48px;height:48px}.logo-icon.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.logo-icon.color-index-unset{stroke:#ddd}.logo-icon.color-index-brand{stroke:#8c50ff}.logo-icon.color-index-critical,.logo-icon.color-index-error{stroke:#ff856b}.logo-icon.color-index-warning{stroke:#ffb86b}.logo-icon.color-index-ok{stroke:#4eb976}.logo-icon.color-index-disabled,.logo-icon.color-index-unknown{stroke:#a8a8a8}.logo-icon.color-index-graph-1,.logo-icon.color-index-graph-6{stroke:#c3a4fe}.logo-icon.color-index-graph-2,.logo-icon.color-index-graph-7{stroke:#a577ff}.logo-icon.color-index-graph-3,.logo-icon.color-index-graph-8{stroke:#5d0cfb}.logo-icon.color-index-graph-4,.logo-icon.color-index-graph-9{stroke:#7026ff}.logo-icon.color-index-graph-5,.logo-icon.color-index-graph-10{stroke:#767676}.logo-icon.color-index-grey-1,.logo-icon.color-index-grey-5{stroke:#333}.logo-icon.color-index-grey-2,.logo-icon.color-index-grey-6{stroke:#444}.logo-icon.color-index-grey-3,.logo-icon.color-index-grey-7{stroke:#555}.logo-icon.color-index-grey-4,.logo-icon.color-index-grey-8{stroke:#666}.logo-icon.color-index-accent-1,.logo-icon.color-index-accent-3{stroke:#c3a4fe}.logo-icon.color-index-accent-2,.logo-icon.color-index-accent-4{stroke:#a577ff}.logo-icon.color-index-light-1,.logo-icon.color-index-light-3{stroke:#fff}.logo-icon.color-index-light-2,.logo-icon.color-index-light-4{stroke:#f5f5f5}.logo-icon--small{width:24px;height:24px}.logo-icon--large{width:96px;height:96px}.logo-icon--huge{width:288px;height:288px}.right-left-icon--left{display:none}html.rtl .right-left-icon--left{display:inline}html.rtl .right-left-icon--right{display:none}.image--medium{width:576px}.image--large{width:960px}.image--small{width:240px}.image--thumb{width:48px;height:48px;flex:0 0 auto;object-fit:cover}.image--full{width:100%;height:100%}.image--full-horizontal{width:100%}.image--full-vertical{height:100%}.label{font-size:19px;font-size:1.1875rem;line-height:1.26316;margin-bottom:24px}.label--uppercase{text-transform:uppercase;letter-spacing:.2em}.label--align-start{text-align:left}html.rtl .label--align-start{text-align:right}.label--align-center{text-align:center}.label--align-right{text-align:right}html.rtl .label--align-right{text-align:left}.label--margin-none{margin-top:0;margin-bottom:0}.label--margin-small{margin-top:12px;margin-bottom:12px}.label--margin-medium{margin-top:24px;margin-bottom:24px}.label--margin-large{margin-top:48px;margin-bottom:48px}.grommet.layer{position:relative;z-index:4;background-color:rgba(0,0,0,.5);height:100vh}@media screen and (min-width:45em){.grommet.layer{position:fixed;top:0;left:0;right:0;bottom:0}}@media screen and (max-width:44.9375em){.grommet.layer:not(.layer--hidden)+.app{display:none}}.grommet.layer .layer__container{background-color:#fff}@media screen and (max-width:44.9375em){.grommet.layer .layer__container{padding:0 24px;min-height:100vh;min-width:100vw}}@media screen and (min-width:45em){.grommet.layer .layer__container{position:absolute;max-height:100%;max-width:100%;overflow:auto;padding:0 48px;border-radius:4px;box-shadow:none}}.grommet.layer .layer__closer{position:absolute;top:0;right:0;z-index:1}.grommet.rtl .grommet.layer .layer__closer{right:auto;left:0}.grommet.layer.layer--flush .layer__container{padding:0}@media screen and (min-width:45em){.grommet.layer.layer--align-center:not(.layer--hidden) .layer__container{left:50%;top:50%;max-height:calc(100vh - 48px);max-width:calc(100vw - 48px);transform:translate(-50%,-50%)}}.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{top:0;bottom:0;left:0}@media screen and (min-width:45em){.grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{left:auto;right:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-left:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{top:0;bottom:0;right:0}@media screen and (min-width:45em){.grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:f .2s ease-in-out forwards;animation:f .2s ease-in-out forwards}}.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{right:auto;left:0}@media screen and (min-width:45em){.grommet.rtl .grommet.layer.layer--align-right:not(.layer--hidden) .layer__container{-webkit-animation:e .2s ease-in-out forwards;animation:e .2s ease-in-out forwards}}@media screen and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{left:50%;transform:translateX(-50%)}}@media screen and (min-width:45em) and (min-width:45em){.grommet.layer.layer--align-top:not(.layer--hidden) .layer__container{-webkit-animation:g .2s ease-in-out forwards;animation:g .2s ease-in-out forwards}}.grommet.layer.layer--align-bottom:not(.layer--hidden) .layer__container{bottom:0}.grommet.layer.layer--hidden{left:-100vw;right:100vw;z-index:-1}.grommet.layer.layer--hidden.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--align-left .layer__container{left:-100vw}@media screen and (max-width:44.9375em){.grommet.layer.layer--hidden{display:none}}@media screen and (min-width:45em){.grommet.layer.layer--hidden.layer--peek{left:0;z-index:4}.grommet.layer.layer--hidden.layer--peek.layer--align-left{right:auto}.grommet.layer.layer--hidden.layer--peek.layer--align-left .layer__container{left:auto;right:-12px;border-right:10px solid #8c50ff;-webkit-animation:d .5s ease-in-out alternate 5;animation:d .5s ease-in-out alternate 5}}@-webkit-keyframes d{0%{right:-6px}to{right:-12px}}@keyframes d{0%{right:-6px}to{right:-12px}}@-webkit-keyframes e{0%{left:-100vw}to{left:0}}@keyframes e{0%{left:-100vw}to{left:0}}@-webkit-keyframes f{0%{right:-100vw}to{right:0}}@keyframes f{0%{right:-100vw}to{right:0}}@-webkit-keyframes g{0%{top:-100vh}to{top:0}}@keyframes g{0%{top:-100vh}to{top:0}}.list{list-style-type:none;margin:0;padding:0;overflow:auto}.list__empty,.list__more{padding:12px 24px}.list__empty{color:#777;font-style:italic}.list .list-item{max-width:none}.list .list-item:focus{outline:1px solid #c3a4fe}.list .list-item__image{height:24px;width:24px;margin-right:24px;overflow:hidden;flex:0 0 auto}.list .list-item__image img{height:100%;width:100%;max-width:none;object-fit:cover}.list .list-item__annotation,.list .list-item__label{flex:1}.list .list-item__annotation{margin-left:24px;color:#777}.list .list-item--selectable{cursor:pointer}.list .list-item--selectable:hover{background-color:hsla(0,0%,87%,.5)}.list .list-item--selected{background-color:#d9c5ff;color:#333}.list .list-item--row .list-item__annotation{text-align:right}.list--selectable .list-item{cursor:pointer;transition:background-color .2s}.list--selectable .list-item--selected{background-color:#d9c5ff;color:#333}.list--selectable .list-item:hover:not(.list-item--selected){background-color:hsla(0,0%,87%,.5);color:#000}.list--small .list-item__image,.list--small .list__more__image{height:12px;width:12px}.list--large .list-item__image,.list--large .list__more__image{height:48px;width:48px}.legend{text-align:left;list-style-type:none;white-space:normal;display:inline-block;margin:0;line-height:24px}html.rtl .legend{text-align:right}.legend__item,.legend__total{color:#777}.legend__item>*,.legend__total>*{vertical-align:top}.legend__item-label,.legend__total-label{display:inline-block;min-width:72px;text-align:left}.legend__item-value,.legend__total-value{display:inline-block;width:72px;text-align:right}html.rtl .legend__item-value,html.rtl .legend__total-value{text-align:left}.legend__item-units,.legend__total-units{display:inline-block;margin-left:6px}html.rtl .legend__item-units,html.rtl .legend__total-units{margin-left:0;margin-right:6px}.legend__item svg.legend__item-swatch{width:12px;height:12px;margin-top:6px;margin-right:12px;overflow:visible}.legend__item svg.legend__item-swatch.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.legend__item svg.legend__item-swatch.color-index-unset{stroke:#ddd}.legend__item svg.legend__item-swatch.color-index-brand{stroke:#8c50ff}.legend__item svg.legend__item-swatch.color-index-critical,.legend__item svg.legend__item-swatch.color-index-error{stroke:#ff856b}.legend__item svg.legend__item-swatch.color-index-warning{stroke:#ffb86b}.legend__item svg.legend__item-swatch.color-index-ok{stroke:#4eb976}.legend__item svg.legend__item-swatch.color-index-disabled,.legend__item svg.legend__item-swatch.color-index-unknown{stroke:#a8a8a8}.legend__item svg.legend__item-swatch.color-index-graph-1,.legend__item svg.legend__item-swatch.color-index-graph-6{stroke:#c3a4fe}.legend__item svg.legend__item-swatch.color-index-graph-2,.legend__item svg.legend__item-swatch.color-index-graph-7{stroke:#a577ff}.legend__item svg.legend__item-swatch.color-index-graph-3,.legend__item svg.legend__item-swatch.color-index-graph-8{stroke:#5d0cfb}.legend__item svg.legend__item-swatch.color-index-graph-4,.legend__item svg.legend__item-swatch.color-index-graph-9{stroke:#7026ff}.legend__item svg.legend__item-swatch.color-index-graph-5,.legend__item svg.legend__item-swatch.color-index-graph-10{stroke:#767676}.legend__item svg.legend__item-swatch.color-index-grey-1,.legend__item svg.legend__item-swatch.color-index-grey-5{stroke:#333}.legend__item svg.legend__item-swatch.color-index-grey-2,.legend__item svg.legend__item-swatch.color-index-grey-6{stroke:#444}.legend__item svg.legend__item-swatch.color-index-grey-3,.legend__item svg.legend__item-swatch.color-index-grey-7{stroke:#555}.legend__item svg.legend__item-swatch.color-index-grey-4,.legend__item svg.legend__item-swatch.color-index-grey-8{stroke:#666}.legend__item svg.legend__item-swatch.color-index-accent-1,.legend__item svg.legend__item-swatch.color-index-accent-3{stroke:#c3a4fe}.legend__item svg.legend__item-swatch.color-index-accent-2,.legend__item svg.legend__item-swatch.color-index-accent-4{stroke:#a577ff}.legend__item svg.legend__item-swatch.color-index-light-1,.legend__item svg.legend__item-swatch.color-index-light-3{stroke:#fff}.legend__item svg.legend__item-swatch.color-index-light-2,.legend__item svg.legend__item-swatch.color-index-light-4{stroke:#f5f5f5}html.rtl .legend__item svg.legend__item-swatch{margin-right:0;margin-left:12px}.legend__item svg.legend__item-swatch path{stroke-width:12px;transition-property:stroke-width;transition-duration:.3s;transition-timing-function:ease-in-out}.legend__item--clickable{cursor:pointer}.legend__item--active{color:#333}.legend__item--active svg.legend__item-swatch path{stroke-width:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .legend__item--active{color:#fff}li.legend__total{margin-left:24px}html.rtl li.legend__total{margin-left:0;margin-right:24px}li.legend__total>*{margin-top:6px;padding-top:6px;border-top:1px dotted rgba(0,0,0,.15)}.legend--single .legend__item-value{font-size:36px;font-size:2.25rem;line-height:1.33333;font-weight:700;width:auto}.legend--single .legend__item-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .legend--single .legend__item-units{margin-left:0;margin-right:6px}.login{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:6}.login__background{position:absolute;max-width:none}.login__background--portrait{width:auto;height:100%}.login__background--landscape{height:auto;width:100%}.login__container{position:relative;width:384px;margin:96px auto;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login__container{margin:48px 0;width:100%;border-radius:0}}.login__footer{position:absolute;left:0;right:0;bottom:6px;padding:6px 24px;background-color:hsla(0,0%,100%,.9);text-align:center}.login-form{position:relative;padding:24px;background-color:#fff;z-index:1;-webkit-animation-name:b;-webkit-animation-duration:.5s;animation-name:b;animation-duration:.5s}@media screen and (max-width:44.9375em){.login-form{width:100%}}.login-form__header{text-align:center}.login-form fieldset{margin-bottom:0}.login-form__submit{width:100%;max-width:none}.login-form--align-start .login-form__header{text-align:left}html.rtl .login-form--align-start .login-form__header{text-align:right}.login-form--align-start .login-form__submit{width:auto}.login-form--align-end .login-form__header{text-align:right}html.rtl .login-form--align-end .login-form__header{text-align:left}.login-form--align-end .login-form__submit{width:auto}.map{position:relative;padding:24px}.map__canvas{position:absolute;top:0;left:0;z-index:-1;opacity:.1}.map__canvas--highlight{opacity:1}.map__categories{margin:0;list-style-type:none}.map__category{position:relative;padding-top:24px;margin-bottom:12px;max-width:none}.map__category-label{position:absolute;top:0;left:0;font-size:14px;font-size:.875rem;line-height:1.71429}.map__category-items{margin:0;list-style-type:none;overflow:hidden;text-align:center}.map__item{display:inline-block;width:192px;border:1px solid rgba(0,0,0,.15);margin-right:12px;margin-bottom:12px;background-color:#fff;font-size:16px;font-size:1rem;line-height:1.5}.map__item>a{display:block;padding:6px 12px;transition:background-color .2s}.map__item>a>*{display:inline-block}.map__item>a:hover{background-color:hsla(0,0%,87%,.5)}.map__item .status-icon{margin-right:6px}.map__item--active{border-color:#000}.menu{position:relative;font-size:19px;font-size:1.1875rem;line-height:1.26316}.menu:focus{outline:none}.menu:focus:not(.menu--expanded):after{content:'';position:absolute;top:0;left:0;bottom:0;right:0;border:1px solid #c3a4fe;box-shadow:0 0 1px 1px #c3a4fe;pointer-events:none}.menu>*{flex:0 0 auto}.menu .anchor,.menu a:not(.button){text-decoration:none}.menu .anchor:hover,.menu a:not(.button):hover{text-decoration:none;color:#6e22ff}.menu .anchor.active,.menu a:not(.button).active{color:#6e22ff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu .anchor.active,[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu a:not(.button).active{color:#fff}.menu.menu--controlled{display:inline-block;cursor:pointer}.menu__control:focus:not(.button--disabled){box-shadow:inset 0 0 1px 2px #c3a4fe}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .menu__control:hover .menu__control-label{color:#fff}.menu__control .control-icon-down{width:12px;height:12px}.menu__control .control-icon-down path,.menu__control .control-icon-down polyline{stroke-width:4px}@media screen and (min-width:45em){.menu__control.menu--labelled .control-icon{transition:none}}.menu__drop{font-size:19px;font-size:1.1875rem;line-height:1.26316;max-height:100vh}.menu__drop .anchor,.menu__drop a:not(.anchor--disabled),.menu__drop a:not(.anchor--disabled):hover{text-decoration:none}.menu__drop .anchor{padding:12px 24px;white-space:nowrap;display:block}.menu__drop .anchor:focus,.menu__drop .anchor:hover{text-decoration:none;background-color:hsla(0,0%,87%,.5)}.menu__drop .menu__control{text-align:left}.grommet.rtl .menu__drop .menu__control{text-align:right}.menu__drop .menu__label{padding:12px 24px;font-weight:600}.menu__drop.menu__drop--align-right{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right{text-align:left}.menu__drop.menu__drop--align-right .menu__control{text-align:right}.grommet.rtl .menu__drop.menu__drop--align-right .menu__control,.menu__drop.menu__drop--align-right .menu__contents{text-align:left}.grommet.rtl .menu__drop.menu__drop--align-right .menu__contents{text-align:right}.menu__drop.menu__drop--small{font-size:16px;font-size:1rem;line-height:1.5}.menu__drop.menu__drop--large{font-size:24px;font-size:1.5rem;line-height:1}.menu--inline.menu--row{line-height:48px}.menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-left:24px;margin-right:0}.menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon){margin-right:24px;margin-left:0}.grommet.rtl .menu--inline.menu--row.box--justify-end>:not(.control-icon):first-child{margin-right:0}.menu--inline.menu--row>:not(.control-icon):not(.button){margin-left:0;margin-right:24px}.menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-right:0}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button){margin-right:0;margin-left:24px}.grommet.rtl .menu--inline.menu--row>:not(.control-icon):not(.button):last-child{margin-left:0}@media screen and (max-width:44.9375em){.menu--inline.box--direction-row.box--responsive>*{margin-right:0}.grommet.rtl .menu--inline.box--direction-row.box--responsive>*{margin-left:0}}.menu--inline.box--direction-column a:not(.button){margin-bottom:6px}.menu--inline.menu--small{font-size:16px;font-size:1rem;line-height:inherit}.menu--inline.menu--large{font-size:24px;font-size:1.5rem;line-height:inherit}.menu--primary>.menu{width:100%}.menu--primary>a:not(.button){padding:6px 24px;margin-bottom:0;width:100%;border-width:4px;border-color:transparent;border-right-style:solid}.grommet.rtl .menu--primary>a:not(.button){border-right-style:none;border-left-style:solid}.menu--primary>a:not(.button):hover{text-decoration:none}.menu--primary>a:not(.button):hover:not(.active){background-color:hsla(0,0%,87%,.5)}.menu--primary>a:not(.button).active{border-color:#8c50ff}@media screen and (max-width:44.9375em){.menu--primary.menu--down,.menu--primary.menu--down>*{display:block}}.menu--inline.menu:not(.box--direction-row)>hr,.menu__drop>hr{margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15);border:none}.menu--inline.menu:not(.box--direction-row) .menu__control-label,.menu__drop .menu__control-label{font-size:19px}.menu--inline.menu:not(.box--direction-row) a,.menu__drop a{text-decoration:none}.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h2,.menu--inline.menu:not(.box--direction-row).box--direction-column>.menu:not(:first-of-type) h3,.menu__drop.box--direction-column>.menu:not(:first-of-type) h2,.menu__drop.box--direction-column>.menu:not(:first-of-type) h3{margin-top:24px}.menu--inline.menu:not(.box--direction-row).box.box--separator-top,.menu__drop.box.box--separator-top{border-color:transparent}.menu--inline.menu:not(.box--direction-row).box.box--separator-top:before,.menu__drop.box.box--separator-top:before{content:'';margin:12px 24px 18px;height:1px;background-color:rgba(0,0,0,.15)}.menu--inline.menu:not(.box--direction-row).menu--small>a,.menu__drop.menu--small>a{padding:6px 0}.menu--inline.menu:not(.box--direction-row).menu--large>a,.menu__drop.menu--large>a{padding:24px 0}@media screen and (max-width:44.9375em){.menu--inline.menu:not(.box--direction-row).box--responsive>*,.menu__drop.box--responsive>*{margin-left:0;margin-right:0}.menu--inline.menu:not(.box--direction-row).box--responsive .button,.menu__drop.box--responsive .button{width:100%;margin-bottom:12px}.menu--inline.menu:not(.box--direction-row).box--responsive .menu,.menu__drop.box--responsive .menu{margin-bottom:36px}}@media screen and (max-width:44.9375em){.menu__drop{max-width:100%}}@-webkit-keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@keyframes h{0%{stroke-dashoffset:192px}to{stroke-dashoffset:0}}@-webkit-keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}@keyframes i{0%{stroke-dashoffset:-192px}to{stroke-dashoffset:0}}.meter{display:inline-block;position:relative}.meter__slice{stroke-width:4px}.meter__threshold{stroke:rgba(51,51,51,.2)}.meter__value-container{position:relative;display:inline-block}.meter__graphic-container{white-space:normal}.meter__graphic-container>a{text-decoration:none}.meter__graphic:focus{outline:1px solid #c3a4fe}.meter__graphic text{fill:#777}.meter__value{white-space:normal;pointer-events:none}.meter__value--active{pointer-events:auto;cursor:pointer}.meter__value-value{font-size:36px;font-size:2.25rem;line-height:38px;font-weight:700}.meter__value-units{font-size:24px;font-size:1.5rem;line-height:inherit;margin-left:6px;color:#777;font-weight:400}html.rtl .meter__value-units{margin-left:0;margin-right:6px}.meter__minmax-container,.meter__value-label{display:block}.meter__minmax{display:flex;justify-content:space-between;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.meter__label-max,.meter__label-min{flex:0 0 48px}.meter__label-max{text-align:right}.meter__label{fill:#777}.meter__label--active{fill:#000}.meter--legend-right{white-space:nowrap}.meter--legend-right .meter__legend{vertical-align:top;margin-left:24px}html.rtl .meter--legend-right .meter__legend{margin-left:0;margin-right:24px}.meter--legend-right:not(.meter--tall-legend) .meter__legend{position:relative;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.meter--legend-bottom .meter__legend{margin-top:24px;display:block}.meter--legend-bottom.meter--legend-align-center .meter__legend{text-align:center}.meter:not(.meter--vertical) .meter__graphic-container{display:inline-block}.meter:not(.meter--vertical) .meter__minmax-container{display:block;width:192px}.meter:not(.meter--vertical) .meter__minmax{width:100%}.meter:not(.meter--vertical).meter--small .meter__minmax-container{width:96px}.meter:not(.meter--vertical).meter--large .meter__minmax-container{width:288px}.meter--vertical .meter__graphic-container{display:inline-block;white-space:nowrap}.meter--vertical .meter__minmax-container{height:192px}.meter--vertical .meter__minmax{flex-direction:column;height:100%}.meter--vertical .meter__minmax-min{order:1}.meter--vertical .meter__minmax-max{order:0}.meter--vertical .meter__label-max,.meter--vertical .meter__label-min{flex:0 0 auto;text-align:left}.meter--vertical .meter__label-min{order:1}.meter--vertical .meter__label-max{order:0}.meter--vertical .meter__value-label{display:block}.meter--vertical.meter--small .meter__minmax-container{height:96px}.meter--vertical.meter--large .meter__minmax-container{height:288px}.meter--small .meter__slice{stroke-width:8px}.meter--small .meter__values .meter__slice:hover{stroke-width:24px}.meter--small .meter__value-value{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--small .meter__value-units{font-size:16px;font-size:1rem;line-height:1.5}.meter--large .meter__value-value{font-size:64px;font-size:4rem;line-height:1.125}.meter--large .meter__value-units{font-size:48px;font-size:3rem;line-height:1}.meter--active .meter__values .meter__slice:hover,.meter--active:not(.meter--single) .meter__values .meter__slice.meter__slice--active{stroke-width:12px}.meter--bar .meter__slice{stroke-linecap:butt;stroke-dasharray:192px 192px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--bar .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--bar .meter__values .meter__slice.color-index-brand{stroke:#8c50ff}.meter--bar .meter__values .meter__slice.color-index-critical,.meter--bar .meter__values .meter__slice.color-index-error{stroke:#ff856b}.meter--bar .meter__values .meter__slice.color-index-warning{stroke:#ffb86b}.meter--bar .meter__values .meter__slice.color-index-ok{stroke:#4eb976}.meter--bar .meter__values .meter__slice.color-index-disabled,.meter--bar .meter__values .meter__slice.color-index-unknown{stroke:#a8a8a8}.meter--bar .meter__values .meter__slice.color-index-graph-1,.meter--bar .meter__values .meter__slice.color-index-graph-6{stroke:#c3a4fe}.meter--bar .meter__values .meter__slice.color-index-graph-2,.meter--bar .meter__values .meter__slice.color-index-graph-7{stroke:#a577ff}.meter--bar .meter__values .meter__slice.color-index-graph-3,.meter--bar .meter__values .meter__slice.color-index-graph-8{stroke:#5d0cfb}.meter--bar .meter__values .meter__slice.color-index-graph-4,.meter--bar .meter__values .meter__slice.color-index-graph-9{stroke:#7026ff}.meter--bar .meter__values .meter__slice.color-index-graph-5,.meter--bar .meter__values .meter__slice.color-index-graph-10{stroke:#767676}.meter--bar .meter__values .meter__slice.color-index-grey-1,.meter--bar .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--bar .meter__values .meter__slice.color-index-grey-2,.meter--bar .meter__values .meter__slice.color-index-grey-6{stroke:#444}.meter--bar .meter__values .meter__slice.color-index-grey-3,.meter--bar .meter__values .meter__slice.color-index-grey-7{stroke:#555}.meter--bar .meter__values .meter__slice.color-index-grey-4,.meter--bar .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--bar .meter__values .meter__slice.color-index-accent-1,.meter--bar .meter__values .meter__slice.color-index-accent-3{stroke:#c3a4fe}.meter--bar .meter__values .meter__slice.color-index-accent-2,.meter--bar .meter__values .meter__slice.color-index-accent-4{stroke:#a577ff}.meter--bar .meter__values .meter__slice.color-index-light-1,.meter--bar .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--bar .meter__values .meter__slice.color-index-light-2,.meter--bar .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--bar .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--bar .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:h 1.5s linear;animation:h 1.5s linear}}.meter--bar .meter__thresholds .meter__slice.color-index-unset,.meter--bar .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-brand,.meter--bar .meter__tracks .meter__slice.color-index-brand{stroke:rgba(140,80,255,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-critical,.meter--bar .meter__thresholds .meter__slice.color-index-error,.meter--bar .meter__tracks .meter__slice.color-index-critical,.meter--bar .meter__tracks .meter__slice.color-index-error{stroke:rgba(255,133,107,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-warning,.meter--bar .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,184,107,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-ok,.meter--bar .meter__tracks .meter__slice.color-index-ok{stroke:rgba(78,185,118,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-disabled,.meter--bar .meter__thresholds .meter__slice.color-index-unknown,.meter--bar .meter__tracks .meter__slice.color-index-disabled,.meter--bar .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,66%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-1,.meter--bar .meter__thresholds .meter__slice.color-index-graph-6,.meter--bar .meter__tracks .meter__slice.color-index-graph-1,.meter--bar .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(195,164,254,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-2,.meter--bar .meter__thresholds .meter__slice.color-index-graph-7,.meter--bar .meter__tracks .meter__slice.color-index-graph-2,.meter--bar .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(165,119,255,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-3,.meter--bar .meter__thresholds .meter__slice.color-index-graph-8,.meter--bar .meter__tracks .meter__slice.color-index-graph-3,.meter--bar .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(93,12,251,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-4,.meter--bar .meter__thresholds .meter__slice.color-index-graph-9,.meter--bar .meter__tracks .meter__slice.color-index-graph-4,.meter--bar .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(112,38,255,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-graph-5,.meter--bar .meter__thresholds .meter__slice.color-index-graph-10,.meter--bar .meter__tracks .meter__slice.color-index-graph-5,.meter--bar .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(0,0%,46%,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-1,.meter--bar .meter__thresholds .meter__slice.color-index-accent-3,.meter--bar .meter__tracks .meter__slice.color-index-accent-1,.meter--bar .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(195,164,254,.5)}.meter--bar .meter__thresholds .meter__slice.color-index-accent-2,.meter--bar .meter__thresholds .meter__slice.color-index-accent-4,.meter--bar .meter__tracks .meter__slice.color-index-accent-2,.meter--bar .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(165,119,255,.5)}.meter--bar .meter__value{text-align:left}.meter--bar .meter__value-label{font-size:14px;font-size:.875rem;line-height:16px}.meter--bar.meter--vertical{white-space:nowrap}.meter--bar.meter--vertical svg.meter__graphic{height:192px}.meter--bar.meter--vertical .meter__labeled-graphic{display:inline-block}.meter--bar.meter--vertical .meter__value{position:relative;vertical-align:top;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block}.meter--bar.meter--vertical .meter__minmax-container{position:absolute;top:0;left:24px}.meter--bar.meter--vertical.meter--legend-right .meter__legend{top:96px}.meter--bar.meter--vertical.meter--legend-right .meter__value{min-width:60px}.meter--bar.meter--vertical.meter--small svg.meter__graphic{height:96px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{width:24px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{width:36px}.meter--bar.meter--vertical.meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{width:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--small .meter__value{top:48px}.meter--bar.meter--vertical.meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar.meter--vertical.meter--large svg.meter__graphic{height:288px;width:36px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{width:72px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{width:108px}.meter--bar.meter--vertical.meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{width:144px}.meter--bar.meter--vertical.meter--large.meter--legend-right .meter__legend,.meter--bar.meter--vertical.meter--large .meter__value{top:144px}.meter--bar:not(.meter--vertical) .meter__minmax-container>a{vertical-align:top;display:block;height:24px}.meter--bar:not(.meter--vertical) .meter__graphic{width:192px}.meter--bar:not(.meter--vertical) .meter__value{display:inline-block;vertical-align:top;margin-left:12px}html.rtl .meter--bar:not(.meter--vertical) .meter__value{margin-left:0;margin-right:12px}.meter--bar:not(.meter--vertical) .meter__value-value{font-size:24px;font-size:1.5rem;line-height:1}.meter--bar:not(.meter--vertical) .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2}.meter--bar:not(.meter--vertical).meter--single .meter__value-label,.meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{display:inline-block;margin-left:4px}html.rtl .meter--bar:not(.meter--vertical).meter--single .meter__value-label,html.rtl .meter--bar:not(.meter--vertical).meter--stacked .meter__value-label{margin-left:0;margin-right:4px}.meter--bar:not(.meter--vertical).meter--single.meter--legend-right .meter__value,.meter--bar:not(.meter--vertical).meter--stacked.meter--legend-right .meter__value{min-width:84px}.meter--bar:not(.meter--vertical).meter--legend-right .meter__legend{top:0;-webkit-transform:none;transform:none}.meter--bar:not(.meter--vertical).meter--legend-right .meter__value{min-width:48px}.meter--bar:not(.meter--vertical).meter--small svg.meter__graphic{width:96px}.meter--bar:not(.meter--vertical).meter--small .meter__value-units,.meter--bar:not(.meter--vertical).meter--small .meter__value-value{font-size:16px;font-size:1rem;line-height:1.5}.meter--bar:not(.meter--vertical).meter--small.meter--single svg.meter__graphic,.meter--bar:not(.meter--vertical).meter--small.meter--stacked svg.meter__graphic{height:12px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-2 .meter__graphic{height:24px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-3 .meter__graphic{height:36px}.meter--bar:not(.meter--vertical).meter--small:not(.meter--stacked).meter--count-4 .meter__graphic{height:48px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right .meter__value{min-width:42px}.meter--bar:not(.meter--vertical).meter--small.meter--legend-right.meter--stacked .meter__value{min-width:72px}.meter--bar:not(.meter--vertical).meter--large{line-height:36px}.meter--bar:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:36px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-2 .meter__graphic{height:72px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-3 .meter__graphic{height:108px}.meter--bar:not(.meter--vertical).meter--large:not(.meter--stacked).meter--count-4 .meter__graphic{height:144px}.meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:16px}html.rtl .meter--bar:not(.meter--vertical).meter--large .meter__value{margin-left:0;margin-right:16px}.meter--bar:not(.meter--vertical).meter--large .meter__value-units,.meter--bar:not(.meter--vertical).meter--large .meter__value-value{font-size:26px;font-size:1.625rem;line-height:inherit}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle,.meter--spiral{margin:0 auto}}.meter--arc svg.meter__graphic,.meter--circle svg.meter__graphic,.meter--spiral svg.meter__graphic{display:block}.meter--arc .meter.series-pre path,.meter--circle .meter.series-pre path,.meter--spiral .meter.series-pre path{stroke-dashoffset:768px}.meter--arc .meter__slice,.meter--circle .meter__slice,.meter--spiral .meter__slice{stroke-linecap:butt;stroke-dasharray:768px 768px;stroke-dashoffset:0;fill:none;stroke:rgba(51,51,51,.2)}.meter--arc .meter__slice-indicator,.meter--circle .meter__slice-indicator,.meter--spiral .meter__slice-indicator{stroke-linecap:square;stroke-width:4px;stroke:rgba(51,51,51,.2)}.meter--arc .meter__values .meter__slice.color-index-loading,.meter--circle .meter__values .meter__slice.color-index-loading,.meter--spiral .meter__values .meter__slice.color-index-loading{stroke:#ddd;stroke-dasharray:1px 10px;stroke-dashoffset:0}.meter--arc .meter__values .meter__slice.color-index-unset,.meter--circle .meter__values .meter__slice.color-index-unset,.meter--spiral .meter__values .meter__slice.color-index-unset{stroke:#ddd}.meter--arc .meter__values .meter__slice.color-index-brand,.meter--circle .meter__values .meter__slice.color-index-brand,.meter--spiral .meter__values .meter__slice.color-index-brand{stroke:#8c50ff}.meter--arc .meter__values .meter__slice.color-index-critical,.meter--arc .meter__values .meter__slice.color-index-error,.meter--circle .meter__values .meter__slice.color-index-critical,.meter--circle .meter__values .meter__slice.color-index-error,.meter--spiral .meter__values .meter__slice.color-index-critical,.meter--spiral .meter__values .meter__slice.color-index-error{stroke:#ff856b}.meter--arc .meter__values .meter__slice.color-index-warning,.meter--circle .meter__values .meter__slice.color-index-warning,.meter--spiral .meter__values .meter__slice.color-index-warning{stroke:#ffb86b}.meter--arc .meter__values .meter__slice.color-index-ok,.meter--circle .meter__values .meter__slice.color-index-ok,.meter--spiral .meter__values .meter__slice.color-index-ok{stroke:#4eb976}.meter--arc .meter__values .meter__slice.color-index-disabled,.meter--arc .meter__values .meter__slice.color-index-unknown,.meter--circle .meter__values .meter__slice.color-index-disabled,.meter--circle .meter__values .meter__slice.color-index-unknown,.meter--spiral .meter__values .meter__slice.color-index-disabled,.meter--spiral .meter__values .meter__slice.color-index-unknown{stroke:#a8a8a8}.meter--arc .meter__values .meter__slice.color-index-graph-1,.meter--arc .meter__values .meter__slice.color-index-graph-6,.meter--circle .meter__values .meter__slice.color-index-graph-1,.meter--circle .meter__values .meter__slice.color-index-graph-6,.meter--spiral .meter__values .meter__slice.color-index-graph-1,.meter--spiral .meter__values .meter__slice.color-index-graph-6{stroke:#c3a4fe}.meter--arc .meter__values .meter__slice.color-index-graph-2,.meter--arc .meter__values .meter__slice.color-index-graph-7,.meter--circle .meter__values .meter__slice.color-index-graph-2,.meter--circle .meter__values .meter__slice.color-index-graph-7,.meter--spiral .meter__values .meter__slice.color-index-graph-2,.meter--spiral .meter__values .meter__slice.color-index-graph-7{stroke:#a577ff}.meter--arc .meter__values .meter__slice.color-index-graph-3,.meter--arc .meter__values .meter__slice.color-index-graph-8,.meter--circle .meter__values .meter__slice.color-index-graph-3,.meter--circle .meter__values .meter__slice.color-index-graph-8,.meter--spiral .meter__values .meter__slice.color-index-graph-3,.meter--spiral .meter__values .meter__slice.color-index-graph-8{stroke:#5d0cfb}.meter--arc .meter__values .meter__slice.color-index-graph-4,.meter--arc .meter__values .meter__slice.color-index-graph-9,.meter--circle .meter__values .meter__slice.color-index-graph-4,.meter--circle .meter__values .meter__slice.color-index-graph-9,.meter--spiral .meter__values .meter__slice.color-index-graph-4,.meter--spiral .meter__values .meter__slice.color-index-graph-9{stroke:#7026ff}.meter--arc .meter__values .meter__slice.color-index-graph-5,.meter--arc .meter__values .meter__slice.color-index-graph-10,.meter--circle .meter__values .meter__slice.color-index-graph-5,.meter--circle .meter__values .meter__slice.color-index-graph-10,.meter--spiral .meter__values .meter__slice.color-index-graph-5,.meter--spiral .meter__values .meter__slice.color-index-graph-10{stroke:#767676}.meter--arc .meter__values .meter__slice.color-index-grey-1,.meter--arc .meter__values .meter__slice.color-index-grey-5,.meter--circle .meter__values .meter__slice.color-index-grey-1,.meter--circle .meter__values .meter__slice.color-index-grey-5,.meter--spiral .meter__values .meter__slice.color-index-grey-1,.meter--spiral .meter__values .meter__slice.color-index-grey-5{stroke:#333}.meter--arc .meter__values .meter__slice.color-index-grey-2,.meter--arc .meter__values .meter__slice.color-index-grey-6,.meter--circle .meter__values .meter__slice.color-index-grey-2,.meter--circle .meter__values .meter__slice.color-index-grey-6,.meter--spiral .meter__values .meter__slice.color-index-grey-2,.meter--spiral .meter__values .meter__slice.color-index-grey-6{stroke:#444}.meter--arc .meter__values .meter__slice.color-index-grey-3,.meter--arc .meter__values .meter__slice.color-index-grey-7,.meter--circle .meter__values .meter__slice.color-index-grey-3,.meter--circle .meter__values .meter__slice.color-index-grey-7,.meter--spiral .meter__values .meter__slice.color-index-grey-3,.meter--spiral .meter__values .meter__slice.color-index-grey-7{stroke:#555}.meter--arc .meter__values .meter__slice.color-index-grey-4,.meter--arc .meter__values .meter__slice.color-index-grey-8,.meter--circle .meter__values .meter__slice.color-index-grey-4,.meter--circle .meter__values .meter__slice.color-index-grey-8,.meter--spiral .meter__values .meter__slice.color-index-grey-4,.meter--spiral .meter__values .meter__slice.color-index-grey-8{stroke:#666}.meter--arc .meter__values .meter__slice.color-index-accent-1,.meter--arc .meter__values .meter__slice.color-index-accent-3,.meter--circle .meter__values .meter__slice.color-index-accent-1,.meter--circle .meter__values .meter__slice.color-index-accent-3,.meter--spiral .meter__values .meter__slice.color-index-accent-1,.meter--spiral .meter__values .meter__slice.color-index-accent-3{stroke:#c3a4fe}.meter--arc .meter__values .meter__slice.color-index-accent-2,.meter--arc .meter__values .meter__slice.color-index-accent-4,.meter--circle .meter__values .meter__slice.color-index-accent-2,.meter--circle .meter__values .meter__slice.color-index-accent-4,.meter--spiral .meter__values .meter__slice.color-index-accent-2,.meter--spiral .meter__values .meter__slice.color-index-accent-4{stroke:#a577ff}.meter--arc .meter__values .meter__slice.color-index-light-1,.meter--arc .meter__values .meter__slice.color-index-light-3,.meter--circle .meter__values .meter__slice.color-index-light-1,.meter--circle .meter__values .meter__slice.color-index-light-3,.meter--spiral .meter__values .meter__slice.color-index-light-1,.meter--spiral .meter__values .meter__slice.color-index-light-3{stroke:#fff}.meter--arc .meter__values .meter__slice.color-index-light-2,.meter--arc .meter__values .meter__slice.color-index-light-4,.meter--circle .meter__values .meter__slice.color-index-light-2,.meter--circle .meter__values .meter__slice.color-index-light-4,.meter--spiral .meter__values .meter__slice.color-index-light-2,.meter--spiral .meter__values .meter__slice.color-index-light-4{stroke:#f5f5f5}.meter--arc .meter__values .meter__slice--clickable,.meter--circle .meter__values .meter__slice--clickable,.meter--spiral .meter__values .meter__slice--clickable{cursor:pointer}@media screen and (min-width:45em){.meter--arc .meter__values .meter__slice,.meter--circle .meter__values .meter__slice,.meter--spiral .meter__values .meter__slice{transition:stroke-width .2s;-webkit-animation:i 1.5s linear;animation:i 1.5s linear}}.meter--arc .meter__thresholds .meter__slice.color-index-unset,.meter--arc .meter__tracks .meter__slice.color-index-unset,.meter--circle .meter__thresholds .meter__slice.color-index-unset,.meter--circle .meter__tracks .meter__slice.color-index-unset,.meter--spiral .meter__thresholds .meter__slice.color-index-unset,.meter--spiral .meter__tracks .meter__slice.color-index-unset{stroke:hsla(0,0%,87%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-brand,.meter--arc .meter__tracks .meter__slice.color-index-brand,.meter--circle .meter__thresholds .meter__slice.color-index-brand,.meter--circle .meter__tracks .meter__slice.color-index-brand,.meter--spiral .meter__thresholds .meter__slice.color-index-brand,.meter--spiral .meter__tracks .meter__slice.color-index-brand{stroke:rgba(140,80,255,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-critical,.meter--arc .meter__thresholds .meter__slice.color-index-error,.meter--arc .meter__tracks .meter__slice.color-index-critical,.meter--arc .meter__tracks .meter__slice.color-index-error,.meter--circle .meter__thresholds .meter__slice.color-index-critical,.meter--circle .meter__thresholds .meter__slice.color-index-error,.meter--circle .meter__tracks .meter__slice.color-index-critical,.meter--circle .meter__tracks .meter__slice.color-index-error,.meter--spiral .meter__thresholds .meter__slice.color-index-critical,.meter--spiral .meter__thresholds .meter__slice.color-index-error,.meter--spiral .meter__tracks .meter__slice.color-index-critical,.meter--spiral .meter__tracks .meter__slice.color-index-error{stroke:rgba(255,133,107,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-warning,.meter--arc .meter__tracks .meter__slice.color-index-warning,.meter--circle .meter__thresholds .meter__slice.color-index-warning,.meter--circle .meter__tracks .meter__slice.color-index-warning,.meter--spiral .meter__thresholds .meter__slice.color-index-warning,.meter--spiral .meter__tracks .meter__slice.color-index-warning{stroke:rgba(255,184,107,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-ok,.meter--arc .meter__tracks .meter__slice.color-index-ok,.meter--circle .meter__thresholds .meter__slice.color-index-ok,.meter--circle .meter__tracks .meter__slice.color-index-ok,.meter--spiral .meter__thresholds .meter__slice.color-index-ok,.meter--spiral .meter__tracks .meter__slice.color-index-ok{stroke:rgba(78,185,118,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-disabled,.meter--arc .meter__thresholds .meter__slice.color-index-unknown,.meter--arc .meter__tracks .meter__slice.color-index-disabled,.meter--arc .meter__tracks .meter__slice.color-index-unknown,.meter--circle .meter__thresholds .meter__slice.color-index-disabled,.meter--circle .meter__thresholds .meter__slice.color-index-unknown,.meter--circle .meter__tracks .meter__slice.color-index-disabled,.meter--circle .meter__tracks .meter__slice.color-index-unknown,.meter--spiral .meter__thresholds .meter__slice.color-index-disabled,.meter--spiral .meter__thresholds .meter__slice.color-index-unknown,.meter--spiral .meter__tracks .meter__slice.color-index-disabled,.meter--spiral .meter__tracks .meter__slice.color-index-unknown{stroke:hsla(0,0%,66%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-1,.meter--arc .meter__thresholds .meter__slice.color-index-graph-6,.meter--arc .meter__tracks .meter__slice.color-index-graph-1,.meter--arc .meter__tracks .meter__slice.color-index-graph-6,.meter--circle .meter__thresholds .meter__slice.color-index-graph-1,.meter--circle .meter__thresholds .meter__slice.color-index-graph-6,.meter--circle .meter__tracks .meter__slice.color-index-graph-1,.meter--circle .meter__tracks .meter__slice.color-index-graph-6,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-1,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-6,.meter--spiral .meter__tracks .meter__slice.color-index-graph-1,.meter--spiral .meter__tracks .meter__slice.color-index-graph-6{stroke:rgba(195,164,254,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-2,.meter--arc .meter__thresholds .meter__slice.color-index-graph-7,.meter--arc .meter__tracks .meter__slice.color-index-graph-2,.meter--arc .meter__tracks .meter__slice.color-index-graph-7,.meter--circle .meter__thresholds .meter__slice.color-index-graph-2,.meter--circle .meter__thresholds .meter__slice.color-index-graph-7,.meter--circle .meter__tracks .meter__slice.color-index-graph-2,.meter--circle .meter__tracks .meter__slice.color-index-graph-7,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-2,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-7,.meter--spiral .meter__tracks .meter__slice.color-index-graph-2,.meter--spiral .meter__tracks .meter__slice.color-index-graph-7{stroke:rgba(165,119,255,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-3,.meter--arc .meter__thresholds .meter__slice.color-index-graph-8,.meter--arc .meter__tracks .meter__slice.color-index-graph-3,.meter--arc .meter__tracks .meter__slice.color-index-graph-8,.meter--circle .meter__thresholds .meter__slice.color-index-graph-3,.meter--circle .meter__thresholds .meter__slice.color-index-graph-8,.meter--circle .meter__tracks .meter__slice.color-index-graph-3,.meter--circle .meter__tracks .meter__slice.color-index-graph-8,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-3,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-8,.meter--spiral .meter__tracks .meter__slice.color-index-graph-3,.meter--spiral .meter__tracks .meter__slice.color-index-graph-8{stroke:rgba(93,12,251,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-4,.meter--arc .meter__thresholds .meter__slice.color-index-graph-9,.meter--arc .meter__tracks .meter__slice.color-index-graph-4,.meter--arc .meter__tracks .meter__slice.color-index-graph-9,.meter--circle .meter__thresholds .meter__slice.color-index-graph-4,.meter--circle .meter__thresholds .meter__slice.color-index-graph-9,.meter--circle .meter__tracks .meter__slice.color-index-graph-4,.meter--circle .meter__tracks .meter__slice.color-index-graph-9,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-4,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-9,.meter--spiral .meter__tracks .meter__slice.color-index-graph-4,.meter--spiral .meter__tracks .meter__slice.color-index-graph-9{stroke:rgba(112,38,255,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-graph-5,.meter--arc .meter__thresholds .meter__slice.color-index-graph-10,.meter--arc .meter__tracks .meter__slice.color-index-graph-5,.meter--arc .meter__tracks .meter__slice.color-index-graph-10,.meter--circle .meter__thresholds .meter__slice.color-index-graph-5,.meter--circle .meter__thresholds .meter__slice.color-index-graph-10,.meter--circle .meter__tracks .meter__slice.color-index-graph-5,.meter--circle .meter__tracks .meter__slice.color-index-graph-10,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-5,.meter--spiral .meter__thresholds .meter__slice.color-index-graph-10,.meter--spiral .meter__tracks .meter__slice.color-index-graph-5,.meter--spiral .meter__tracks .meter__slice.color-index-graph-10{stroke:hsla(0,0%,46%,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-1,.meter--arc .meter__thresholds .meter__slice.color-index-accent-3,.meter--arc .meter__tracks .meter__slice.color-index-accent-1,.meter--arc .meter__tracks .meter__slice.color-index-accent-3,.meter--circle .meter__thresholds .meter__slice.color-index-accent-1,.meter--circle .meter__thresholds .meter__slice.color-index-accent-3,.meter--circle .meter__tracks .meter__slice.color-index-accent-1,.meter--circle .meter__tracks .meter__slice.color-index-accent-3,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-1,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-3,.meter--spiral .meter__tracks .meter__slice.color-index-accent-1,.meter--spiral .meter__tracks .meter__slice.color-index-accent-3{stroke:rgba(195,164,254,.5)}.meter--arc .meter__thresholds .meter__slice.color-index-accent-2,.meter--arc .meter__thresholds .meter__slice.color-index-accent-4,.meter--arc .meter__tracks .meter__slice.color-index-accent-2,.meter--arc .meter__tracks .meter__slice.color-index-accent-4,.meter--circle .meter__thresholds .meter__slice.color-index-accent-2,.meter--circle .meter__thresholds .meter__slice.color-index-accent-4,.meter--circle .meter__tracks .meter__slice.color-index-accent-2,.meter--circle .meter__tracks .meter__slice.color-index-accent-4,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-2,.meter--spiral .meter__thresholds .meter__slice.color-index-accent-4,.meter--spiral .meter__tracks .meter__slice.color-index-accent-2,.meter--spiral .meter__tracks .meter__slice.color-index-accent-4{stroke:rgba(165,119,255,.5)}.meter--arc .meter__threshold,.meter--circle .meter__threshold,.meter--spiral .meter__threshold{stroke-linecap:butt}.meter--arc .meter__value-label,.meter--circle .meter__value-label,.meter--spiral .meter__value-label{display:block}@media screen and (max-width:44.9375em){.meter--arc,.meter--circle{width:192px}}.meter--arc .meter__value,.meter--circle .meter__value{white-space:normal;pointer-events:none;text-align:center}.meter--arc .meter__value--active,.meter--circle .meter__value--active{pointer-events:auto;cursor:pointer}.meter--arc:not(.meter--vertical) .meter__minmax-container,.meter--circle .meter__minmax-container{width:192px}.meter--arc:not(.meter--vertical) .meter__value,.meter--circle .meter__value{position:absolute;left:50%}.meter--arc:not(.meter--vertical).meter--small .meter__minmax-container,.meter--circle.meter--small .meter__minmax-container{width:96px}.meter--arc:not(.meter--vertical).meter--large .meter__minmax-container,.meter--circle.meter--large .meter__minmax-container{width:288px}.meter--arc.meter--vertical.meter--legend-right .meter__legend,.meter--circle.meter--legend-right .meter__legend{top:96px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__legend,.meter--circle.meter--legend-right.meter--small .meter__legend{top:48px}.meter--arc.meter--vertical.meter--legend-right.meter--large .meter__legend,.meter--circle.meter--legend-right.meter--large .meter__legend{top:144px}.meter--circle svg.meter__graphic{width:192px;height:192px}.meter--circle .meter__value{top:96px;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);max-width:144px}.meter--circle.meter--small svg.meter__graphic{width:96px;height:96px}.meter--circle.meter--small .meter__value{top:48px;max-width:72px}.meter--circle.meter--large svg.meter__graphic{width:288px;height:288px}.meter--circle.meter--large .meter__value{top:144px;max-width:216px}.meter--circle:not(.meter--stacked):not(.meter--single) .meter__value{position:static;margin:0 auto;-webkit-transform:none;transform:none}.meter--arc:not(.meter--vertical) svg.meter__graphic{width:192px;height:144px}.meter--arc:not(.meter--vertical) .meter__value{top:108px;-webkit-transform:translateX(-50%);transform:translateX(-50%);max-width:120px}.meter--arc:not(.meter--vertical).meter--legend-right .meter__legend{top:72px}.meter--arc:not(.meter--vertical).meter--small svg.meter__graphic{width:96px;height:72px}.meter--arc:not(.meter--vertical).meter--small .meter__value{top:60px;max-width:60px}.meter--arc:not(.meter--vertical).meter--large svg.meter__graphic{width:288px;height:216px}.meter--arc:not(.meter--vertical).meter--large .meter__value{top:156px;max-width:180px}.meter--arc.meter--vertical svg.meter__graphic{display:inline;width:144px;height:192px}.meter--arc.meter--vertical .meter__value{position:relative;top:96px;-webkit-transform:translateY(-50%);transform:translateY(-50%);display:inline-block;margin-left:-24px;vertical-align:top}html.rtl .meter--arc.meter--vertical .meter__value{margin-left:0;margin-right:-24px}.meter--arc.meter--vertical .meter__minmax-container{display:inline-block;vertical-align:top;margin-left:12px;padding-top:12px;padding-bottom:12px}html.rtl .meter--arc.meter--vertical .meter__minmax-container{margin-left:0;margin-right:12px}.meter--arc.meter--vertical.meter--small svg.meter__graphic{width:72px;height:96px}.meter--arc.meter--vertical.meter--small .meter__value{top:48px;margin-left:-12px}html.rtl .meter--arc.meter--vertical.meter--small .meter__value{margin-left:0;margin-right:-12px}.meter--arc.meter--vertical.meter--small .meter__minmax-container{padding-top:0;padding-bottom:0}.meter--arc.meter--vertical.meter--large svg.meter__graphic{width:216px;height:288px}.meter--arc.meter--vertical.meter--large .meter__value{top:144px;margin-left:-48px}html.rtl .meter--arc.meter--vertical.meter--large .meter__value{margin-left:0;margin-right:-48px}.meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:-72px}html.rtl .meter--arc.meter--vertical.meter--minmax .meter__value{margin-left:0;margin-right:-72px}.meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:-60px}html.rtl .meter--arc.meter--vertical.meter--minmax.meter--small .meter__value{margin-left:0;margin-right:-60px}.meter--arc.meter--vertical.meter--legend-right.meter--small .meter__value{min-width:78px}.meter--arc.meter--vertical.meter--legend-right .meter__value{min-width:120px}.meter--spiral .meter__value{position:absolute;top:0;right:0;white-space:normal;text-align:right}.meter--spiral .meter__value-value{display:block;font-size:24px;font-size:1.5rem;line-height:1;margin-bottom:6px}.meter--spiral .meter__value-units{font-size:20px;font-size:1.25rem;line-height:1.2;color:#777;margin-left:.2em}html.rtl .meter--spiral .meter__value-units{margin-left:0;margin-right:.2em}.meter--spiral .meter__value-label{display:block;font-size:14px;font-size:.875rem;line-height:16px}.meter--loading .meter__thresholds,.meter--loading .meter__value{display:none}.notification{font-size:19px;font-size:1.1875rem;line-height:24px}.notification__message{font-size:24px;font-size:1.5rem;line-height:24px}.notification__message+*{margin-top:24px}.notification__status{flex:0 0 auto;margin-right:24px}html.rtl .notification__status{margin-right:0;margin-left:24px}.notification--small .notification__message{font-size:19px;font-size:1.1875rem;line-height:24px}.notification:not(.notification--disabled){cursor:pointer}.notification:not(.notification--disabled):hover{z-index:1;box-shadow:0 0 0 2px #8c50ff}.notification--status-critical .notification__status .status-icon__base{fill:#fff}.notification--status-critical .notification__status .status-icon__detail{stroke:#ff856b;fill:#ff856b}.notification--status-critical .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-critical:not(.notification--disabled):hover{box-shadow:0 0 0 2px #ff856b}.notification--status-error .notification__status .status-icon__base{fill:#fff}.notification--status-error .notification__status .status-icon__detail{stroke:#ff856b;fill:#ff856b}.notification--status-error .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-error:not(.notification--disabled):hover{box-shadow:0 0 0 2px #ff856b}.notification--status-warning .notification__status .status-icon__base{fill:#fff}.notification--status-warning .notification__status .status-icon__detail{stroke:#ffb86b;fill:#ffb86b}.notification--status-warning .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-warning:not(.notification--disabled):hover{box-shadow:0 0 0 2px #ffb86b}.notification--status-ok .notification__status .status-icon__base{fill:#fff}.notification--status-ok .notification__status .status-icon__detail{stroke:#4eb976;fill:#4eb976}.notification--status-ok .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-ok:not(.notification--disabled):hover{box-shadow:0 0 0 2px #4eb976}.notification--status-unknown .notification__status .status-icon__base{fill:#fff}.notification--status-unknown .notification__status .status-icon__detail{stroke:#a8a8a8;fill:#a8a8a8}.notification--status-unknown .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-unknown:not(.notification--disabled):hover{box-shadow:0 0 0 2px #a8a8a8}.notification--status-disabled .notification__status .status-icon__base{fill:#fff}.notification--status-disabled .notification__status .status-icon__detail{stroke:#a8a8a8;fill:#a8a8a8}.notification--status-disabled .notification__status.status-icon-unknown .status-icon__detail{stroke:#fff;fill:#fff}.notification--status-disabled:not(.notification--disabled):hover{box-shadow:0 0 0 2px #a8a8a8}.notifications-control__icon{width:48px;height:48px;vertical-align:middle}.notifications{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.notifications__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:4px}.notifications__icon{position:absolute;top:24px;right:84px;width:48px;height:48px;vertical-align:middle}.number-input__input{-moz-appearance:textfield}.number-input__input::-webkit-inner-spin-button,.number-input__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-input__input:invalid{box-shadow:none}.number-input__input::-ms-clear{display:none}.object{overflow:auto}.object__container{padding:24px}.object ol,.object ul{margin:0;list-style-type:none}.object li{width:auto}.object__attribute{margin-bottom:12px}.object__attribute-name{display:block;color:#777;font-size:14px;font-size:.875rem;line-height:1.71429}.object__attribute-value{display:block;font-size:16px;font-size:1rem;line-height:1.5}.object__attribute-value ol,.object__attribute-value ul{margin-left:24px;padding-top:24px;padding-bottom:24px}.object__attribute--container>.object__attribute-name{font-weight:700}.object__attribute--unset .object__attribute-value{font-style:italic;color:#777}.object__attribute--array>.object__attribute-value>ol>li{border-top:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li:last-child{border-bottom:1px solid rgba(0,0,0,.15)}.object__attribute--array>.object__attribute-value>ol>li>ul{padding-top:0;padding-bottom:0}.grommet .paragraph--align-start{text-align:left}html.rtl .grommet .paragraph--align-start{text-align:right}.grommet .paragraph--align-center{text-align:center}.grommet .paragraph--align-right{text-align:right}html.rtl .grommet .paragraph--align-right{text-align:left}.grommet .paragraph--margin-none{margin-top:0;margin-bottom:0}.grommet .paragraph--margin-small{margin-top:12px;margin-bottom:12px}.grommet .paragraph--margin-medium{margin-top:24px;margin-bottom:24px}.grommet .paragraph--margin-large{margin-top:48px;margin-bottom:48px}.grommet .paragraph.paragraph--small{font-size:14px;font-size:.875rem;line-height:1.71429}.grommet .paragraph.paragraph--small a{text-decoration:none}.grommet .paragraph.paragraph--large{font-size:24px;font-size:1.5rem;line-height:28px}.grommet .paragraph.paragraph--large a{color:#8c50ff;font-weight:600}.radio-button{margin-right:24px;white-space:nowrap}.radio-button:not(.radio-button--disabled){cursor:pointer}.radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button:hover:not(.radio-button--disabled) .radio-button__label{color:#fff}.radio-button__input{opacity:0;position:absolute}.radio-button__input:checked+.radio-button__control{border-color:#8c50ff}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control{border-color:#fff}.radio-button__input:checked+.radio-button__control+.radio-button__label{color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control+.radio-button__label{color:#fff}.radio-button__input:checked+.radio-button__control:after{content:"";display:block;position:absolute;top:5px;left:5px;width:10px;height:10px;background-color:#8c50ff;border-radius:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__input:checked+.radio-button__control:after{background-color:#fff}.radio-button__input:focus+.radio-button__control{content:"";border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}.radio-button__control{position:relative;display:inline-block;width:24px;height:24px;margin-right:12px;vertical-align:middle;background-color:inherit;color:#6e22ff;border:2px solid #999;border-radius:24px}html.rtl .radio-button__control{margin-right:0;margin-left:12px}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__control{border-color:hsla(0,0%,100%,.7)}.radio-button__label{color:#777}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .radio-button__label{color:hsla(0,0%,100%,.85)}.radio-button--disabled .radio-button__control{opacity:.5}.search{display:inline-block}.search:focus{outline:none;margin:-1px;border:1px solid #c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}.search--controlled{cursor:pointer}.search__input{margin-right:0}.header .search__input{font-size:inherit;line-height:inherit}.search__input::-ms-clear{display:none}.search__drop{font-size:20px;font-size:1.25rem;line-height:inherit}@media screen and (max-width:44.9375em){.search__drop{max-width:100%;width:100vw}}.search__drop input{margin-right:0;box-sizing:border-box;width:100%}@media screen and (max-width:44.9375em){.search__drop input{width:calc(100vw - 72px)}}.search__drop .search__suggestion{padding:6px 24px;cursor:pointer}@media screen and (max-width:44.9375em){.search__drop .search__suggestion{width:calc(100vw - 72px)}}.search__drop .search__suggestion--active,.search__drop .search__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search__drop-control{vertical-align:top;height:48px}.search__drop--controlled .search__drop-contents{display:inline-block}.search__drop--large{line-height:96px}.search--inline{position:relative}.search--inline .search__input{width:100%;box-sizing:border-box;padding-left:11px;padding-right:47px;border-radius:0;-webkit-appearance:none}.search--inline .search__input:focus{padding-left:10px;padding-right:46px}html.rtl .search--inline .search__input{padding-right:11px;padding-left:47px}html.rtl .search--inline .search__input:focus{padding-right:11px;padding-left:46px}.header .search--inline .search__input:not(:focus){border-color:transparent}.search--inline .control-icon-search{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}html.rtl .search--inline .control-icon-search{right:auto;left:12px}.search--small .search__input{font-size:19px;font-size:1.1875rem;line-height:inherit;padding:4px 18px;padding-right:23px}.search--small .search__input:focus{padding:3px 17px;padding-right:22px}.search--large .search__input{font-size:54px;font-size:3.375rem;line-height:normal;padding:12px 24px;padding-right:72px}.search--large .search__input:focus{padding:11px 71px;padding-left:23px}@media screen and (max-width:44.9375em){.search--large .search__input:focus{padding:10px 22px;padding-right:46px}}@media screen and (max-width:44.9375em){.search--large .search__input{font-size:inherit;padding:11px 23px;padding-right:47px;line-height:1.5}}.search--large .control-icon-search{right:24px;width:48px;height:48px}@media screen and (max-width:44.9375em){.search--large .control-icon-search{right:12px;width:24px;height:24px}}@media screen and (min-width:45em){.search--large .control-icon-search{transition:none}}.search--icon-align-start.search--inline .search__input{padding-left:47px;padding-right:23px}.search--icon-align-start.search--inline .search__input:focus{padding-left:46px;padding-right:23px}.search--icon-align-start.search--inline .control-icon-search{left:12px}.search--icon-align-start.search--large .search__input{padding-left:72px;padding-right:24px}.search--icon-align-start.search--large .search__input:focus{padding-left:71px;padding-right:23px}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input:focus{padding:10px 22px;padding-left:46px}}@media screen and (max-width:44.9375em){.search--icon-align-start.search--large .search__input{padding:11px 23px;padding-left:47px}}.search--fill{width:100%;max-width:none;flex-grow:1}.search-input{position:relative;display:inline-block}.grommet .search-input__input,.search-input__input{width:100%;height:100%;display:block;padding-right:48px}.grommet .search-input__input:focus,.search-input__input:focus{padding-right:47px}.grommet .search-input__input::-ms-clear,.search-input__input::-ms-clear{display:none}.search-input__control{position:absolute;top:50%;transform:translateY(-50%);right:6px}.search-input__suggestions{border-top-left-radius:0;border-top-right-radius:0;margin:0;list-style-type:none}.search-input__suggestion{padding:6px 24px;cursor:pointer}.search-input__suggestion--active,.search-input__suggestion:hover{background-color:hsla(0,0%,87%,.5)}.search-input--active .search-input__input{border-bottom-left-radius:0;border-bottom-right-radius:0}section:not(.section){padding-top:24px;padding-bottom:24px}section:not(.section):first-of-type{margin-top:0;padding-top:0}.section>img,section>img{margin-top:24px;margin-bottom:24px;display:block;height:auto}@media screen and (max-width:44.9375em){.section>img,section>img{max-width:576px}}.section>iframe,section>iframe{width:100%;max-width:576px;height:400px}@media screen and (max-width:44.9375em){.section>iframe,section>iframe{height:250px}}@media screen and (max-width:44.9375em){.section>ol,.section>ul,section>ol,section>ul{margin-left:0;margin-bottom:24px}}.section>dl>dt,section>dl>dt{margin-top:24px;margin-bottom:6px;text-transform:uppercase}.section>dl>dt code,section>dl>dt code{text-transform:none;white-space:pre-wrap}.section>dl>dd,section>dl>dd{margin-left:0}@media screen and (max-width:44.9375em){.section>dl>dd,section>dl>dd{padding-right:24px}}.react-gravatar{width:48px;height:48px;border-radius:24px;border:2px solid transparent;overflow:hidden;cursor:pointer;transition:all .3s ease-in-out}.react-gravatar:hover{border-color:#8c50ff}.session{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);z-index:4}.session__container{position:absolute;top:0;right:0;min-width:300px;padding:24px;padding-top:96px;background-color:#fff;border-left:1px solid rgba(0,0,0,.15);border-bottom:1px solid rgba(0,0,0,.15);border-bottom-left-radius:4px}.session .react-gravatar{position:absolute;top:24px;right:24px}.session__actions{margin-top:24px;padding-top:24px;border-top:1px solid rgba(0,0,0,.15)}.session a{cursor:pointer}.settings{position:relative;text-align:center}.settings__panels{display:inline-block}.settings__panel{vertical-align:top}.sidebar{min-height:100vh}@media screen and (max-width:44.9375em){.sidebar{max-width:100%;width:100vw}}@media screen and (min-width:45em){.sidebar{width:336px}}.sidebar--fixed{display:flex;flex-direction:column}.sidebar--fixed>*{flex:1 1 auto;overflow:auto}.sidebar--fixed>.footer,.sidebar--fixed>.header{flex:0 0 auto}.sidebar--primary{background-color:#f5f5f5}@media screen and (min-width:45em){.sidebar--small{width:240px}}@media screen and (min-width:45em){.sidebar--large{width:480px}}.split{position:relative;overflow:visible}.split:after{position:absolute;left:0;content:' ';display:block;width:45em;height:0;z-index:-10}@media screen and (min-width:45em){.split{display:flex}.split--fixed>*{position:relative;height:100vh;overflow:auto;-ms-overflow-style:-ms-autohiding-scrollbar}.split--flex-right>:first-child:not(:last-child){flex:0 0 auto}.split--flex-right>:last-child{flex:1}.split--flex-left>.object,.split--flex-left>:last-child:not(:first-child){flex:0 0 auto}.split--flex-both>*,.split--flex-left>:first-child{flex:1}.split--separator>*{border-right:1px solid #000}.split--separator>:last-child{border-right:none}}@media screen and (max-width:44.9375em){.split--separator>*{border-bottom:1px solid #000}.split--separator>:last-child{border-bottom:none}}.skip-link-anchor{width:0;height:0;overflow:hidden;position:absolute}.tab{padding:0 12px}.tabs--justify-end .tab:first-of-type,.tabs--justify-start .tab:first-of-type{padding-left:0}.tabs--justify-end .tab:last-of-type,.tabs--justify-start .tab:last-of-type{padding-right:0}@media screen and (max-width:44.9375em){.tabs--responsive .tab:first-of-type,.tabs--responsive .tab:last-of-type{padding-left:12px;padding-right:12px}}.tab a{display:inline-block}.tab a,.tab a:active,.tab a:hover,.tab a:link,.tab a:visited{text-decoration:none}.tab a:focus:not(tab--active .tab__link) .tab__label{border-color:rgba(0,0,0,.15)}.tab__label{display:inline-block;cursor:pointer;padding-bottom:10px;color:#777;border-bottom:4px solid transparent}.tab--active .tab__label,.tab--active .tab__link:hover .tab__label{color:#000;border-color:#000}.tab:hover .tab__label{border-color:rgba(0,0,0,.15)}.tabs{margin:12px 0;padding:0;display:flex;flex-wrap:wrap;align-items:center;list-style:none;border-bottom:1px solid rgba(0,0,0,.15)}.tabs--justify-center{justify-content:center}.tabs--justify-start{justify-content:flex-start}.tabs--justify-end{justify-content:flex-end}@media screen and (max-width:44.9375em){.tabs--justify-center.tabs--responsive,.tabs--justify-end.tabs--responsive,.tabs--justify-start.tabs--responsive{flex-direction:column;text-align:center}}.tabs+div:focus{outline:none}.table table{width:100%}.table td,.table th{padding:11px 12px;vertical-align:top;text-align:left}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.table th{font-weight:100;font-size:20px;font-size:1.25rem;line-height:1.2;border-bottom:1px solid rgba(0,0,0,.15)}.table__mirror{position:absolute;top:0;left:0;right:0}.table__mirror>thead{position:fixed;background-color:hsla(0,0%,100%,.9)}.table__more{margin-top:24px;text-align:center}.table--scrollable{position:relative}.table--scrollable .table__table thead{visibility:hidden}.table--scrollable .table__table th{border-bottom:none}.table--selectable tbody tr{cursor:pointer}.table--selectable tbody tr td{transition:background-color .2s}.table--selectable tbody tr.table-row--selected td{background-color:#d9c5ff;color:#333}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr.table-row--selected td{background-color:rgba(0,0,0,.2);color:#fff}.table--selectable tbody tr:hover:not(.table-row--selected) td{background-color:hsla(0,0%,87%,.5);color:#000}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .table--selectable tbody tr:hover:not(.table-row--selected) td{color:#fff}.table--small thead{display:none}.table--small td{display:block}.table--small td:before{font-weight:100;font-size:19px;font-size:1.1875rem;line-height:24px;content:attr(data-th);display:block;padding-right:12px}.table--small tr{border-bottom:1px solid rgba(0,0,0,.15)}.table--small td,.table--small th{padding-left:24px}.tag{padding:6px 22px;background-color:transparent;border:2px solid #8c50ff;border-radius:4px;color:#333;font-size:19px;font-size:1.1875rem;line-height:24px;font-weight:600;cursor:pointer;text-align:center;outline:none;min-width:120px;max-width:384px;border-color:rgba(51,51,51,.6);margin:0 12px 12px 0;position:relative;opacity:.7}.tag:focus:not(.button--disabled){border-color:#c3a4fe;box-shadow:0 0 1px 1px #c3a4fe}@media screen and (min-width:45em){.tag{transition:.1s ease-in-out}}.tag .anchor:hover:not(.anchor--disabled),.tag a,.tag a:hover{color:#333;text-decoration:none}.tag:hover{box-shadow:0 0 0 2px rgba(51,51,51,.6);opacity:1}.tbd{text-align:center;padding:96px;font-size:96px;font-size:6rem;line-height:1;font-style:italic;background-color:rgba(0,0,0,.15);color:#fff}.tiles{width:100%;padding:12px}.tiles__container{display:flex;flex-direction:row;align-items:center;width:100%}.tiles__container .tiles__left,.tiles__container .tiles__right{flex:0 0 auto}.tiles__container .tiles{flex:1;margin:0}.tiles__container .tiles.box--direction-row{width:100%;overflow:hidden}.tiles>.tile{flex-grow:0;flex-shrink:0}@media screen and (min-width:45em){.tiles>.tile{flex-basis:192px}}.tiles:not(.tiles--flush)>.tile{margin:12px}.tiles:not(.tiles--flush)>.tile--wide{flex-basis:calc(100% - 24px)}.tiles--fill.box--wrap{justify-content:space-around}.tiles--fill.box--wrap>.tile{flex-grow:1}.tiles--flush{padding:0}.tiles--flush>.tile{margin:0}.tiles--flush>.tile--wide{flex-basis:100%}.tiles--moreable{position:relative;padding-bottom:48px}.tiles--moreable .tiles__more{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tiles--selectable .tile{cursor:pointer;transition:background-color .2s}.tiles--selectable .tile--selected{background-color:#d9c5ff;color:#333}.tiles--selectable .tile:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}@media screen and (min-width:45em){.tiles--small>.tile{flex-basis:96px}}@media screen and (min-width:45em){.tiles--large>.tile{flex-basis:384px}}.tiles:focus{outline:1px solid #c3a4fe}.tile{overflow:hidden}.tile .status-icon{margin-right:6px}html.rtl .tile .status-icon{margin-right:0;margin-left:6px}.tile>.chart{width:100%}.tile--selectable{cursor:pointer;transition:background-color .2s}.tile--selectable.tile--selected{background-color:#d9c5ff;color:#333}.tile--selectable:hover:not(.tile--selected){background-color:hsla(0,0%,87%,.5);color:#000}.tile--eclipsed{opacity:.2}.title{max-height:100%;overflow:hidden;text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:24px;font-size:1.5rem;line-height:inherit}@media screen and (min-width:45em){.title{font-weight:600}}.title>:not(:last-child){margin-right:12px}html.rtl .title>:not(:last-child){margin-right:0;margin-left:12px}.title a{color:inherit}.title a,.title a:hover{text-decoration:none}[class*=background-color-index-] .title a:hover{text-decoration:underline}.title span{overflow:hidden;text-overflow:ellipsis}.title img,.title svg{max-width:576px;flex:0 0 auto}.title img:not(:last-child),.title svg:not(:last-child){margin-right:12px}.title--interactive{cursor:pointer}@media screen and (min-width:45em){.title--interactive{transition:color .3s ease-in-out}}.title--interactive:hover{color:#8c50ff;cursor:pointer}[class*=background-color-index-]:not([class*=background-color-index-accent]):not([class*=background-color-index-light]):not([class*=background-color-index-warning]):not([class*=background-color-index-disabled]):not([class*=background-color-index-unknown]) .title--interactive:hover{color:#fff}@media screen and (max-width:44.9375em){.title--responsive img,.title--responsive svg{margin-right:0}.title--responsive>:not(:first-child){display:none}}.topology{position:relative}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts{flex-direction:column}}@media screen and (min-width:45em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-right:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-right:0}}@media screen and (max-width:44.9375em){.topology__contents>.topology__parts--direction-row>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-row>.topology__part:last-child{margin-bottom:0}}.topology__contents>.topology__parts--direction-column>.topology__part{margin-bottom:48px}.topology__contents>.topology__parts--direction-column>.topology__part:last-child{margin-bottom:0}.topology__canvas{position:absolute;pointer-events:none}.topology__parts{display:flex;align-items:stretch}.topology__parts--direction-row{flex-direction:row;flex-grow:1}.topology__parts--direction-column{flex-direction:column;flex-grow:1}.topology__parts--align-start{align-items:flex-start}.topology__parts--align-center{align-items:center}.topology__parts--align-end{align-items:flex-end}.topology__part,.topology__parts--align-stretch{align-items:stretch}.topology__part{display:flex;justify-content:center;overflow:hidden}.topology__part>.topology__parts .topology__part{flex:1}.topology__part--demarcate{border:1px solid rgba(0,0,0,.15)}.topology__part--demarcate.topology__part--empty{background-color:#f5f5f5;min-width:24px;min-height:24px}.topology__part--justify-start{justify-content:flex-start}.topology__part--justify-center{justify-content:center}.topology__part--justify-between{justify-content:space-between}.topology__part--justify-end{justify-content:flex-end}.topology__part--align-start{align-items:flex-start}.topology__part--align-center{align-items:center}.topology__part--align-end{align-items:flex-end}.topology__part--align-stretch{align-items:stretch}.topology__part--direction-row{flex-direction:row}.topology__part--direction-row.topology__part--reverse{flex-direction:row-reverse}.topology__part--direction-row>:not(.topology__parts):not(.topology__part){margin:6px}.topology__part--direction-column{flex-direction:column}.topology__part--direction-column.topology__part--reverse{flex-direction:column-reverse}.topology__part--direction-column>:not(.topology__parts):not(.topology__part){margin:6px}.topology__label{font-size:14px;margin-left:12px;margin-right:12px}.topology .status-icon{position:relative;z-index:1}.video{position:relative;height:auto}@media screen and (max-width:44.9375em){.video{max-width:100%;width:100vw}}@media screen and (min-width:45em){.video--small{width:240px}.video--small .video__control.button--primary{width:48px;height:48px;border-radius:24px}.video--large{width:960px}}.video--full,.video video{width:100%}.video__summary{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;text-align:left;padding:24px}.video__control.button--primary{flex:0 0 auto;width:96px;height:96px;border-radius:48px;background-color:rgba(140,80,255,.8)}.video__control.button--primary:hover{background-color:#8c50ff}.video__title{margin-left:24px}.video__timeline{position:absolute;left:0;right:0;bottom:0;height:72px;color:hsla(0,0%,100%,.85);background-color:rgba(51,51,51,.7)}.video__timeline-chapter{position:absolute;height:100%;padding-left:6px;border-left:2px solid hsla(0,0%,100%,.7);text-align:left;cursor:pointer}.video__timeline-chapter:hover{color:#fff;border-color:#fff}.video__timeline-chapter time{display:block;font-size:14px;font-size:.875rem;line-height:24px}.video__progress{position:absolute;left:0;right:0;bottom:0;height:6px;text-align:left}.video__progress-meter{height:100%;background-color:#8c50ff}.video--titled .video__summary{background-color:rgba(51,51,51,.7);color:hsla(0,0%,100%,.85);border-radius:4px;font-size:19px;font-size:1.1875rem;line-height:1.26316}.video--playing:not(.video--interacting) .video__progress,.video--playing:not(.video--interacting) .video__summary,.video--playing:not(.video--interacting) .video__timeline{opacity:0;transition:opacity 1s}.clearfix:after{content:"";display:table;clear:both} \ No newline at end of file diff --git a/grommet.js b/grommet.js index 62bab6c..5ad27e4 100644 --- a/grommet.js +++ b/grommet.js @@ -51,87 +51,88 @@ var Grommet = var Grommet = { // Components Anchor: __webpack_require__(1), - App: __webpack_require__(44), - Article: __webpack_require__(99), - Box: __webpack_require__(52), - Button: __webpack_require__(74), - Calendar: __webpack_require__(103), - Carousel: __webpack_require__(206), - Chart: __webpack_require__(222), - CheckBox: __webpack_require__(224), - Distribution: __webpack_require__(225), - Footer: __webpack_require__(226), - Form: __webpack_require__(227), - FormField: __webpack_require__(228), - FormFields: __webpack_require__(229), - Header: __webpack_require__(204), - Headline: __webpack_require__(230), - Image: __webpack_require__(231), - Label: __webpack_require__(232), - Layer: __webpack_require__(71), - Legend: __webpack_require__(223), - List: __webpack_require__(233), - ListItem: __webpack_require__(234), - Login: __webpack_require__(235), - LoginForm: __webpack_require__(236), - Map: __webpack_require__(237), - Menu: __webpack_require__(75), - Meter: __webpack_require__(238), - Notification: __webpack_require__(245), - NumberInput: __webpack_require__(265), - RadioButton: __webpack_require__(268), - Search: __webpack_require__(269), - SearchInput: __webpack_require__(271), - Section: __webpack_require__(272), - Sidebar: __webpack_require__(273), - Split: __webpack_require__(274), - Tab: __webpack_require__(275), - Table: __webpack_require__(276), - TableRow: __webpack_require__(277), - Tabs: __webpack_require__(278), - TableRow: __webpack_require__(277), - Tiles: __webpack_require__(207), - Tile: __webpack_require__(219), - Title: __webpack_require__(205), - Topology: __webpack_require__(279), - Video: __webpack_require__(280), - Object: __webpack_require__(284), - TBD: __webpack_require__(285), + App: __webpack_require__(30), + Article: __webpack_require__(60), + Box: __webpack_require__(38), + Button: __webpack_require__(46), + Calendar: __webpack_require__(64), + Carousel: __webpack_require__(168), + Chart: __webpack_require__(178), + CheckBox: __webpack_require__(180), + Columns: __webpack_require__(181), + Distribution: __webpack_require__(182), + Footer: __webpack_require__(183), + Form: __webpack_require__(184), + FormField: __webpack_require__(185), + FormFields: __webpack_require__(186), + Header: __webpack_require__(165), + Heading: __webpack_require__(187), + Headline: __webpack_require__(188), + Image: __webpack_require__(189), + Label: __webpack_require__(190), + Layer: __webpack_require__(43), + Legend: __webpack_require__(179), + List: __webpack_require__(191), + ListItem: __webpack_require__(192), + Login: __webpack_require__(193), + LoginForm: __webpack_require__(194), + Map: __webpack_require__(195), + Menu: __webpack_require__(47), + Meter: __webpack_require__(196), + Notification: __webpack_require__(203), + NumberInput: __webpack_require__(213), + RadioButton: __webpack_require__(216), + Search: __webpack_require__(217), + SearchInput: __webpack_require__(219), + Section: __webpack_require__(220), + Sidebar: __webpack_require__(221), + Split: __webpack_require__(222), + Tab: __webpack_require__(223), + Table: __webpack_require__(224), + TableRow: __webpack_require__(225), + Tabs: __webpack_require__(226), + Tiles: __webpack_require__(169), + Tile: __webpack_require__(173), + Title: __webpack_require__(166), + Topology: __webpack_require__(227), + Video: __webpack_require__(228), + Object: __webpack_require__(232), + TBD: __webpack_require__(233), Icons: { - Calendar: __webpack_require__(286), - Clear: __webpack_require__(287), - DragHandle: __webpack_require__(288), - Edit: __webpack_require__(289), - Facebook: __webpack_require__(290), - Filter: __webpack_require__(291), - Grommet: __webpack_require__(292), - Help: __webpack_require__(293), - Left: __webpack_require__(294), - LinkedIn: __webpack_require__(295), - Mail: __webpack_require__(296), - More: __webpack_require__(297), - Person: __webpack_require__(298), - Right: __webpack_require__(299), - Search: __webpack_require__(300), - SearchPlus: __webpack_require__(301), - Spinning: __webpack_require__(216), - Status: __webpack_require__(256), - Twitter: __webpack_require__(302), - World: __webpack_require__(303), - Base: __webpack_require__(304) + Calendar: __webpack_require__(234), + Clear: __webpack_require__(235), + DragHandle: __webpack_require__(236), + Edit: __webpack_require__(237), + Facebook: __webpack_require__(238), + Filter: __webpack_require__(239), + Grommet: __webpack_require__(240), + Help: __webpack_require__(241), + Left: __webpack_require__(242), + LinkedIn: __webpack_require__(243), + Mail: __webpack_require__(244), + More: __webpack_require__(245), + Person: __webpack_require__(246), + Right: __webpack_require__(247), + Search: __webpack_require__(248), + SearchPlus: __webpack_require__(249), + Spinning: __webpack_require__(170), + Status: __webpack_require__(204), + Twitter: __webpack_require__(250), + World: __webpack_require__(251), + Base: __webpack_require__(252) }, // Mixins Mixins: { - KeyboardAccelerators: __webpack_require__(602) + KeyboardAccelerators: __webpack_require__(550) }, // Utils - Cookies: __webpack_require__(46), - DOM: __webpack_require__(73), - KeyboardAccelerators: __webpack_require__(68), - Locale: __webpack_require__(45), - Rest: __webpack_require__(603), - RestWatch: __webpack_require__(607), - Validator: __webpack_require__(608) + Cookies: __webpack_require__(32), + DOM: __webpack_require__(45), + KeyboardAccelerators: __webpack_require__(39), + Locale: __webpack_require__(31), + Rest: __webpack_require__(551), + RestWatch: __webpack_require__(555), + Validator: __webpack_require__(556) }; module.exports = Grommet; @@ -142,29 +143,35 @@ var Grommet = 'use strict'; - var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - Object.defineProperty(exports, "__esModule", { value: true }); + var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); + var _react = __webpack_require__(2); var _react2 = _interopRequireDefault(_react); - var _LinkRightLeft = __webpack_require__(3); + var _classnames2 = __webpack_require__(3); - var _LinkRightLeft2 = _interopRequireDefault(_LinkRightLeft); + var _classnames3 = _interopRequireDefault(_classnames2); + + var _LinkNext = __webpack_require__(4); + + var _LinkNext2 = _interopRequireDefault(_LinkNext); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP + function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2016 Hewlett Packard Enterprise Development LP - var CLASS_ROOT = "anchor"; + var CLASS_ROOT = 'anchor'; var Anchor = function (_Component) { _inherits(Anchor, _Component); @@ -178,39 +185,54 @@ var Grommet = _createClass(Anchor, [{ key: 'render', value: function render() { - var classes = [CLASS_ROOT]; - var icon = undefined; + var _classnames; - if (this.props.primary) { - classes.push(CLASS_ROOT + "--primary"); - icon = _react2.default.createElement(_LinkRightLeft2.default, null); - } - if (this.props.disabled) { - classes.push(CLASS_ROOT + "--disabled"); + var icon = void 0; + if (this.props.icon) { + icon = this.props.icon; + } else if (this.props.primary) { + icon = _react2.default.createElement(_LinkNext2.default, null); } - if (this.props.className) { - classes.push(this.props.className); + + if (icon && !this.props.primary && !this.props.label) { + icon = _react2.default.createElement( + 'span', + { className: CLASS_ROOT + '__icon' }, + icon + ); } - var children = _react2.default.Children.map(this.props.children, function (child) { + + var hasIcon = icon !== undefined; + var children = _react.Children.map(this.props.children, function (child) { if (child && child.type && child.type.icon) { - return _react2.default.createElement( + hasIcon = true; + child = _react2.default.createElement( 'span', { className: CLASS_ROOT + '__icon' }, child ); - } else { - return child; } + return child; }); + var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--disabled', this.props.disabled), _defineProperty(_classnames, CLASS_ROOT + '--icon', icon), _defineProperty(_classnames, CLASS_ROOT + '--icon-label', hasIcon && this.props.label), _defineProperty(_classnames, CLASS_ROOT + '--primary', this.props.primary), _defineProperty(_classnames, CLASS_ROOT + '--reverse', this.props.reverse), _classnames)); + + if (!children) { + children = this.props.label; + } + + var first = this.props.reverse ? children : icon; + var second = this.props.reverse ? icon : children; + return _react2.default.createElement( this.props.tag, - { id: this.props.id, className: classes.join(' '), + { id: this.props.id, className: classes, href: this.props.href, target: this.props.target, - onClick: this.props.onClick }, - icon, - children + onClick: this.props.onClick, + 'aria-label': this.props.a11yTitle }, + first, + second ); } }]); @@ -219,15 +241,20 @@ var Grommet = }(_react.Component); exports.default = Anchor; + ; Anchor.propTypes = { + a11yTitle: _react.PropTypes.string, disabled: _react.PropTypes.bool, href: _react.PropTypes.string, + icon: _react.PropTypes.element, id: _react.PropTypes.string, + label: _react.PropTypes.node, onClick: _react.PropTypes.func, primary: _react.PropTypes.bool, tag: _react.PropTypes.string, - target: _react.PropTypes.string + target: _react.PropTypes.string, + reverse: _react.PropTypes.bool }; Anchor.defaultProps = { @@ -245,75 +272,55 @@ var Grommet = /* 3 */ /***/ function(module, exports, __webpack_require__) { - 'use strict'; - - var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - - Object.defineProperty(exports, "__esModule", { - value: true - }); - - var _react = __webpack_require__(2); - - var _react2 = _interopRequireDefault(_react); - - var _LinkNext = __webpack_require__(4); - - var _LinkNext2 = _interopRequireDefault(_LinkNext); - - var _LinkPrevious = __webpack_require__(43); - - var _LinkPrevious2 = _interopRequireDefault(_LinkPrevious); - - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - - function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - - function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - - function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP + var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! + Copyright (c) 2016 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames + */ + /* global define */ - var CLASS_ROOT = "right-left-icon"; + (function () { + 'use strict'; - var LinkRightLeft = function (_Component) { - _inherits(LinkRightLeft, _Component); + var hasOwn = {}.hasOwnProperty; - function LinkRightLeft() { - _classCallCheck(this, LinkRightLeft); + function classNames () { + var classes = []; - return _possibleConstructorReturn(this, Object.getPrototypeOf(LinkRightLeft).apply(this, arguments)); - } + for (var i = 0; i < arguments.length; i++) { + var arg = arguments[i]; + if (!arg) continue; - _createClass(LinkRightLeft, [{ - key: 'render', - value: function render() { - var classes = [CLASS_ROOT]; - var _props = this.props; - var a11yTitle = _props.a11yTitle; - var size = _props.size; + var argType = typeof arg; - if (this.props.className) { - classes.push(this.props.className); - } - return _react2.default.createElement( - 'span', - { className: classes.join(' ') }, - _react2.default.createElement(_LinkNext2.default, { className: CLASS_ROOT + '--right', a11yTitle: a11yTitle, size: size }), - _react2.default.createElement(_LinkPrevious2.default, { className: CLASS_ROOT + '--left', a11yTitle: a11yTitle, size: size }) - ); - } - }]); + if (argType === 'string' || argType === 'number') { + classes.push(arg); + } else if (Array.isArray(arg)) { + classes.push(classNames.apply(null, arg)); + } else if (argType === 'object') { + for (var key in arg) { + if (hasOwn.call(arg, key) && arg[key]) { + classes.push(key); + } + } + } + } - return LinkRightLeft; - }(_react.Component); + return classes.join(' '); + } - exports.default = LinkRightLeft; + if (typeof module !== 'undefined' && module.exports) { + module.exports = classNames; + } else if (true) { + // register as 'classnames', consistent with npm package name + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = function () { + return classNames; + }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } else { + window.classNames = classNames; + } + }()); - LinkRightLeft.propTypes = { - a11yTitle: _react.PropTypes.string, - size: _react.PropTypes.oneOf(['small', 'medium', 'large']) - }; - module.exports = exports['default']; /***/ }, /* 4 */ @@ -321,29 +328,35 @@ var Grommet = 'use strict'; - var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - Object.defineProperty(exports, "__esModule", { value: true }); + var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); + var _react = __webpack_require__(2); var _react2 = _interopRequireDefault(_react); + var _classnames2 = __webpack_require__(3); + + var _classnames3 = _interopRequireDefault(_classnames2); + var _FormattedMessage = __webpack_require__(5); var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP - var CLASS_ROOT = "control-icon"; + var CLASS_ROOT = 'control-icon'; var Icon = function (_Component) { _inherits(Icon, _Component); @@ -357,28 +370,32 @@ var Grommet = _createClass(Icon, [{ key: 'render', value: function render() { - var classes = [CLASS_ROOT, CLASS_ROOT + '-link-next']; - if (this.props.size) { - classes.push(CLASS_ROOT + "--" + this.props.size); - } else if (this.props.large) { - classes.push(CLASS_ROOT + "--large"); - } - if (this.props.colorIndex) { - classes.push("color-index-" + this.props.colorIndex); - } - if (this.props.className) { - classes.push(this.props.className); + var _classnames; + + var _props = this.props; + var a11yTitle = _props.a11yTitle; + var a11yTitleId = _props.a11yTitleId; + var className = _props.className; + var colorIndex = _props.colorIndex; + var large = _props.large; + var size = _props.size; + + + if (!size && large) { + size = 'large'; } - var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link-next"; - var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel }); + var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link-next', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames)); + + var titleLabel = a11yTitle || 'link-next'; + a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel }); return _react2.default.createElement( 'svg', - { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId }, + { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId }, _react2.default.createElement( 'title', - { id: this.props.a11yTitleId }, + { id: a11yTitleId }, a11yTitle ), _react2.default.createElement( @@ -395,13 +412,14 @@ var Grommet = }(_react.Component); exports.default = Icon; + ; Icon.propTypes = { a11yTitle: _react.PropTypes.string, a11yTitleId: _react.PropTypes.string, colorIndex: _react.PropTypes.string, large: _react.PropTypes.bool, - size: _react.PropTypes.oneOf(['small', 'medium', 'large']) + size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge']) }; Icon.defaultProps = { @@ -409,7 +427,8 @@ var Grommet = }; Icon.icon = true; - module.exports = exports.default; + + Icon.displayName = 'LinkNext'; module.exports = exports['default']; /***/ }, @@ -418,8 +437,6 @@ var Grommet = 'use strict'; - var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - Object.defineProperty(exports, "__esModule", { value: true }); @@ -432,49 +449,20 @@ var Grommet = function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - - function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - - function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP + // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP // NOTE: This component is a temporary wrapper of react-intl FormattedMessage // to avoid errors being thrown if the context hasn't been wrapped by // IntlProvider. The hope is that react-intl will change to obviate the // need for this component. - var GrommetFormattedMessage = function (_Component) { - _inherits(GrommetFormattedMessage, _Component); - - function GrommetFormattedMessage() { - _classCallCheck(this, GrommetFormattedMessage); - - return _possibleConstructorReturn(this, Object.getPrototypeOf(GrommetFormattedMessage).apply(this, arguments)); - } - - _createClass(GrommetFormattedMessage, [{ - key: 'render', - value: function render() { - var result; - if (this.context.intl) { - result = _react2.default.createElement(_reactIntl.FormattedMessage, { id: this.props.id, - defaultMessage: this.props.defaultMessage }); - } else { - result = _react2.default.createElement( - 'span', - { id: this.props.id }, - this.props.defaultMessage || this.props.id - ); - } - - return result; - } - }]); - - return GrommetFormattedMessage; - }(_react.Component); - - exports.default = GrommetFormattedMessage; + var GrommetFormattedMessage = function GrommetFormattedMessage(props, context) { + return context.intl ? _react2.default.createElement(_reactIntl.FormattedMessage, props) : _react2.default.createElement( + 'span', + { id: props.id }, + props.defaultMessage || props.id + ); + }; GrommetFormattedMessage.contextTypes = { intl: _react.PropTypes.object @@ -484,2110 +472,1580 @@ var Grommet = id: _react.PropTypes.string.isRequired, defaultMessage: _react.PropTypes.string }; + + GrommetFormattedMessage.displayName = 'GrommetFormattedMessage'; + + exports.default = GrommetFormattedMessage; module.exports = exports['default']; /***/ }, /* 6 */ /***/ function(module, exports, __webpack_require__) { - /* - * Copyright 2015, Yahoo Inc. + /* WEBPACK VAR INJECTION */(function(process) {/* + * Copyright 2016, Yahoo Inc. * Copyrights licensed under the New BSD License. * See the accompanying LICENSE file for terms. */ 'use strict'; - exports.__esModule = true; - exports.defineMessages = defineMessages; - exports.addLocaleData = addLocaleData; + function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } - function _interopRequire(obj) { return obj && obj.__esModule ? obj['default'] : obj; } + var allLocaleData = _interopDefault(__webpack_require__(8)); + var IntlMessageFormat = _interopDefault(__webpack_require__(9)); + var IntlRelativeFormat = _interopDefault(__webpack_require__(19)); + var React = __webpack_require__(2); + var React__default = _interopDefault(React); + var invariant = _interopDefault(__webpack_require__(26)); + var memoizeIntlConstructor = _interopDefault(__webpack_require__(27)); - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } + var babelHelpers = {}; + babelHelpers.typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { + return typeof obj; + } : function (obj) { + return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; + }; - var _intlMessageformat = __webpack_require__(7); + babelHelpers.classCallCheck = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + }; - var _intlRelativeformat = __webpack_require__(17); + babelHelpers.createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } - var _en = __webpack_require__(24); + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; + }(); + + babelHelpers.defineProperty = function (obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } - var _en2 = _interopRequireDefault(_en); + return obj; + }; - var _componentsIntl = __webpack_require__(25); + babelHelpers.extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; - exports.IntlProvider = _interopRequire(_componentsIntl); + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } - var _componentsGroup = __webpack_require__(34); + return target; + }; - exports.FormattedGroup = _interopRequire(_componentsGroup); + babelHelpers.inherits = function (subClass, superClass) { + if (typeof superClass !== "function" && superClass !== null) { + throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); + } - var _componentsDate = __webpack_require__(35); + subClass.prototype = Object.create(superClass && superClass.prototype, { + constructor: { + value: subClass, + enumerable: false, + writable: true, + configurable: true + } + }); + if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; + }; - exports.FormattedDate = _interopRequire(_componentsDate); + babelHelpers.possibleConstructorReturn = function (self, call) { + if (!self) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } - var _componentsTime = __webpack_require__(36); + return call && (typeof call === "object" || typeof call === "function") ? call : self; + }; - exports.FormattedTime = _interopRequire(_componentsTime); + babelHelpers.toConsumableArray = function (arr) { + if (Array.isArray(arr)) { + for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; - var _componentsRelative = __webpack_require__(37); + return arr2; + } else { + return Array.from(arr); + } + }; - exports.FormattedRelative = _interopRequire(_componentsRelative); + babelHelpers; - var _componentsNumber = __webpack_require__(38); + // GENERATED FILE + var defaultLocaleData = { "locale": "en", "pluralRuleFunction": function pluralRuleFunction(n, ord) { + var s = String(n).split("."), + v0 = !s[1], + t0 = Number(s[0]) == n, + n10 = t0 && s[0].slice(-1), + n100 = t0 && s[0].slice(-2);if (ord) return n10 == 1 && n100 != 11 ? "one" : n10 == 2 && n100 != 12 ? "two" : n10 == 3 && n100 != 13 ? "few" : "other";return n == 1 && v0 ? "one" : "other"; + }, "fields": { "year": { "displayName": "year", "relative": { "0": "this year", "1": "next year", "-1": "last year" }, "relativeTime": { "future": { "one": "in {0} year", "other": "in {0} years" }, "past": { "one": "{0} year ago", "other": "{0} years ago" } } }, "month": { "displayName": "month", "relative": { "0": "this month", "1": "next month", "-1": "last month" }, "relativeTime": { "future": { "one": "in {0} month", "other": "in {0} months" }, "past": { "one": "{0} month ago", "other": "{0} months ago" } } }, "day": { "displayName": "day", "relative": { "0": "today", "1": "tomorrow", "-1": "yesterday" }, "relativeTime": { "future": { "one": "in {0} day", "other": "in {0} days" }, "past": { "one": "{0} day ago", "other": "{0} days ago" } } }, "hour": { "displayName": "hour", "relativeTime": { "future": { "one": "in {0} hour", "other": "in {0} hours" }, "past": { "one": "{0} hour ago", "other": "{0} hours ago" } } }, "minute": { "displayName": "minute", "relativeTime": { "future": { "one": "in {0} minute", "other": "in {0} minutes" }, "past": { "one": "{0} minute ago", "other": "{0} minutes ago" } } }, "second": { "displayName": "second", "relative": { "0": "now" }, "relativeTime": { "future": { "one": "in {0} second", "other": "in {0} seconds" }, "past": { "one": "{0} second ago", "other": "{0} seconds ago" } } } } }; - exports.FormattedNumber = _interopRequire(_componentsNumber); + function addLocaleData() { + var data = arguments.length <= 0 || arguments[0] === undefined ? [] : arguments[0]; - var _componentsPlural = __webpack_require__(39); + var locales = Array.isArray(data) ? data : [data]; - exports.FormattedPlural = _interopRequire(_componentsPlural); + locales.forEach(function (localeData) { + if (localeData && localeData.locale) { + IntlMessageFormat.__addLocaleData(localeData); + IntlRelativeFormat.__addLocaleData(localeData); + } + }); + } - var _componentsMessage = __webpack_require__(40); + function hasLocaleData(locale) { + var localeParts = (locale || '').split('-'); - exports.FormattedMessage = _interopRequire(_componentsMessage); + while (localeParts.length > 0) { + if (hasIMFAndIRFLocaleData(localeParts.join('-'))) { + return true; + } - var _componentsHtmlMessage = __webpack_require__(41); + localeParts.pop(); + } - exports.FormattedHTMLMessage = _interopRequire(_componentsHtmlMessage); + return false; + } - var _inject = __webpack_require__(42); + function hasIMFAndIRFLocaleData(locale) { + var normalizedLocale = locale && locale.toLowerCase(); - exports.injectIntl = _interopRequire(_inject); + return !!(IntlMessageFormat.__localeData__[normalizedLocale] && IntlRelativeFormat.__localeData__[normalizedLocale]); + } - var _types = __webpack_require__(32); + var bool = React.PropTypes.bool; + var number = React.PropTypes.number; + var string = React.PropTypes.string; + var func = React.PropTypes.func; + var object = React.PropTypes.object; + var oneOf = React.PropTypes.oneOf; + var shape = React.PropTypes.shape; - exports.intlShape = _types.intlShape; - function defineMessages(messageDescriptors) { - // TODO: Type check in dev? Return something different? - return messageDescriptors; - } + var intlConfigPropTypes = { + locale: string, + formats: object, + messages: object, - function addLocaleData() { - var data = arguments.length <= 0 || arguments[0] === undefined ? [] : arguments[0]; + defaultLocale: string, + defaultFormats: object + }; - var locales = Array.isArray(data) ? data : [data]; + var intlFormatPropTypes = { + formatDate: func.isRequired, + formatTime: func.isRequired, + formatRelative: func.isRequired, + formatNumber: func.isRequired, + formatPlural: func.isRequired, + formatMessage: func.isRequired, + formatHTMLMessage: func.isRequired + }; - locales.forEach(function (localeData) { - _intlMessageformat.__addLocaleData(localeData); - _intlRelativeformat.__addLocaleData(localeData); - }); - } + var intlShape = shape(babelHelpers['extends']({}, intlConfigPropTypes, intlFormatPropTypes, { + now: func.isRequired + })); - addLocaleData(_en2['default']); + var messageDescriptorPropTypes = { + id: string.isRequired, + description: string, + defaultMessage: string + }; -/***/ }, -/* 7 */ -/***/ function(module, exports, __webpack_require__) { + var dateTimeFormatPropTypes = { + localeMatcher: oneOf(['best fit', 'lookup']), + formatMatcher: oneOf(['basic', 'best fit']), - /* jshint node:true */ + timeZone: string, + hour12: bool, - 'use strict'; + weekday: oneOf(['narrow', 'short', 'long']), + era: oneOf(['narrow', 'short', 'long']), + year: oneOf(['numeric', '2-digit']), + month: oneOf(['numeric', '2-digit', 'narrow', 'short', 'long']), + day: oneOf(['numeric', '2-digit']), + hour: oneOf(['numeric', '2-digit']), + minute: oneOf(['numeric', '2-digit']), + second: oneOf(['numeric', '2-digit']), + timeZoneName: oneOf(['short', 'long']) + }; - var IntlMessageFormat = __webpack_require__(8)['default']; + var numberFormatPropTypes = { + localeMatcher: oneOf(['best fit', 'lookup']), - // Add all locale data to `IntlMessageFormat`. This module will be ignored when - // bundling for the browser with Browserify/Webpack. - __webpack_require__(16); + style: oneOf(['decimal', 'currency', 'percent']), + currency: string, + currencyDisplay: oneOf(['symbol', 'code', 'name']), + useGrouping: bool, - // Re-export `IntlMessageFormat` as the CommonJS default exports with all the - // locale data registered, and with English set as the default locale. Define - // the `default` prop for use with other compiled ES6 Modules. - exports = module.exports = IntlMessageFormat; - exports['default'] = exports; + minimumIntegerDigits: number, + minimumFractionDigits: number, + maximumFractionDigits: number, + minimumSignificantDigits: number, + maximumSignificantDigits: number + }; + var relativeFormatPropTypes = { + style: oneOf(['best fit', 'numeric']), + units: oneOf(['second', 'minute', 'hour', 'day', 'month', 'year']) + }; -/***/ }, -/* 8 */ -/***/ function(module, exports, __webpack_require__) { + var pluralFormatPropTypes = { + style: oneOf(['cardinal', 'ordinal']) + }; - /* jslint esnext: true */ + var intlConfigPropNames = Object.keys(intlConfigPropTypes); - "use strict"; - var src$core$$ = __webpack_require__(9), src$en$$ = __webpack_require__(15); + var ESCAPED_CHARS = { + '&': '&', + '>': '>', + '<': '<', + '"': '"', + '\'': ''' + }; - src$core$$["default"].__addLocaleData(src$en$$["default"]); - src$core$$["default"].defaultLocale = 'en'; + var UNSAFE_CHARS_REGEX = /[&><"']/g; - exports["default"] = src$core$$["default"]; + function escape(str) { + return ('' + str).replace(UNSAFE_CHARS_REGEX, function (match) { + return ESCAPED_CHARS[match]; + }); + } - //# sourceMappingURL=main.js.map + function filterProps(obj, whitelist) { + var defaults = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; -/***/ }, -/* 9 */ -/***/ function(module, exports, __webpack_require__) { + return whitelist.reduce(function (filtered, name) { + if (obj.hasOwnProperty(name)) { + filtered[name] = obj[name]; + } else if (defaults.hasOwnProperty(name)) { + filtered[name] = defaults[name]; + } - /* - Copyright (c) 2014, Yahoo! Inc. All rights reserved. - Copyrights licensed under the New BSD License. - See the accompanying LICENSE file for terms. - */ + return filtered; + }, {}); + } - /* jslint esnext: true */ + function invariantIntlContext() { + var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; - "use strict"; - var src$utils$$ = __webpack_require__(10), src$es5$$ = __webpack_require__(11), src$compiler$$ = __webpack_require__(12), intl$messageformat$parser$$ = __webpack_require__(13); - exports["default"] = MessageFormat; + var intl = _ref.intl; - // -- MessageFormat -------------------------------------------------------- + invariant(intl, '[React Intl] Could not find required `intl` object. ' + ' needs to exist in the component ancestry.'); + } - function MessageFormat(message, locales, formats) { - // Parse string messages into an AST. - var ast = typeof message === 'string' ? - MessageFormat.__parse(message) : message; + function shallowEquals(objA, objB) { + if (objA === objB) { + return true; + } - if (!(ast && ast.type === 'messageFormatPattern')) { - throw new TypeError('A message must be provided as a String or AST.'); + if ((typeof objA === 'undefined' ? 'undefined' : babelHelpers['typeof'](objA)) !== 'object' || objA === null || (typeof objB === 'undefined' ? 'undefined' : babelHelpers['typeof'](objB)) !== 'object' || objB === null) { + return false; } - // Creates a new object with the specified `formats` merged with the default - // formats. - formats = this._mergeFormats(MessageFormat.formats, formats); + var keysA = Object.keys(objA); + var keysB = Object.keys(objB); - // Defined first because it's used to build the format pattern. - src$es5$$.defineProperty(this, '_locale', {value: this._resolveLocale(locales)}); + if (keysA.length !== keysB.length) { + return false; + } - // Compile the `ast` to a pattern that is highly optimized for repeated - // `format()` invocations. **Note:** This passes the `locales` set provided - // to the constructor instead of just the resolved locale. - var pluralFn = this._findPluralRuleFunction(this._locale); - var pattern = this._compilePattern(ast, locales, formats, pluralFn); + // Test for A's keys different from B. + var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB); + for (var i = 0; i < keysA.length; i++) { + if (!bHasOwnProperty(keysA[i]) || objA[keysA[i]] !== objB[keysA[i]]) { + return false; + } + } - // "Bind" `format()` method to `this` so it can be passed by reference like - // the other `Intl` APIs. - var messageFormat = this; - this.format = function (values) { - return messageFormat._format(pattern, values); - }; + return true; } - // Default format options used as the prototype of the `formats` provided to the - // constructor. These are used when constructing the internal Intl.NumberFormat - // and Intl.DateTimeFormat instances. - src$es5$$.defineProperty(MessageFormat, 'formats', { - enumerable: true, + function shouldIntlComponentUpdate(_ref2, nextProps, nextState) { + var props = _ref2.props; + var state = _ref2.state; + var _ref2$context = _ref2.context; + var context = _ref2$context === undefined ? {} : _ref2$context; + var nextContext = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var _context$intl = context.intl; + var intl = _context$intl === undefined ? {} : _context$intl; + var _nextContext$intl = nextContext.intl; + var nextIntl = _nextContext$intl === undefined ? {} : _nextContext$intl; - value: { - number: { - 'currency': { - style: 'currency' - }, - 'percent': { - style: 'percent' - } - }, + return !shallowEquals(nextProps, props) || !shallowEquals(nextState, state) || !shallowEquals(filterProps(nextIntl, intlConfigPropNames), filterProps(intl, intlConfigPropNames)); + } - date: { - 'short': { - month: 'numeric', - day : 'numeric', - year : '2-digit' - }, + function getDisplayName(Component) { + return Component.displayName || Component.name || 'Component'; + } - 'medium': { - month: 'short', - day : 'numeric', - year : 'numeric' - }, + function injectIntl(WrappedComponent) { + var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; + var _options$intlPropName = options.intlPropName; + var intlPropName = _options$intlPropName === undefined ? 'intl' : _options$intlPropName; + var _options$withRef = options.withRef; + var withRef = _options$withRef === undefined ? false : _options$withRef; - 'long': { - month: 'long', - day : 'numeric', - year : 'numeric' - }, + var InjectIntl = function (_Component) { + babelHelpers.inherits(InjectIntl, _Component); - 'full': { - weekday: 'long', - month : 'long', - day : 'numeric', - year : 'numeric' - } - }, + function InjectIntl(props, context) { + babelHelpers.classCallCheck(this, InjectIntl); - time: { - 'short': { - hour : 'numeric', - minute: 'numeric' - }, + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(InjectIntl).call(this, props, context)); - 'medium': { - hour : 'numeric', - minute: 'numeric', - second: 'numeric' - }, + invariantIntlContext(context); + return _this; + } - 'long': { - hour : 'numeric', - minute : 'numeric', - second : 'numeric', - timeZoneName: 'short' - }, + babelHelpers.createClass(InjectIntl, [{ + key: 'getWrappedInstance', + value: function getWrappedInstance() { + invariant(withRef, '[React Intl] To access the wrapped instance, ' + 'the `{withRef: true}` option must be set when calling: ' + '`injectIntl()`'); - 'full': { - hour : 'numeric', - minute : 'numeric', - second : 'numeric', - timeZoneName: 'short' + return this.refs.wrappedInstance; } - } - } - }); + }, { + key: 'render', + value: function render() { + return React__default.createElement(WrappedComponent, babelHelpers['extends']({}, this.props, babelHelpers.defineProperty({}, intlPropName, this.context.intl), { + ref: withRef ? 'wrappedInstance' : null + })); + } + }]); + return InjectIntl; + }(React.Component); - // Define internal private properties for dealing with locale data. - src$es5$$.defineProperty(MessageFormat, '__localeData__', {value: src$es5$$.objCreate(null)}); - src$es5$$.defineProperty(MessageFormat, '__addLocaleData', {value: function (data) { - if (!(data && data.locale)) { - throw new Error( - 'Locale data provided to IntlMessageFormat is missing a ' + - '`locale` property' - ); - } + InjectIntl.displayName = 'InjectIntl(' + getDisplayName(WrappedComponent) + ')'; - MessageFormat.__localeData__[data.locale.toLowerCase()] = data; - }}); + InjectIntl.contextTypes = { + intl: intlShape + }; - // Defines `__parse()` static method as an exposed private. - src$es5$$.defineProperty(MessageFormat, '__parse', {value: intl$messageformat$parser$$["default"].parse}); + InjectIntl.WrappedComponent = WrappedComponent; - // Define public `defaultLocale` property which defaults to English, but can be - // set by the developer. - src$es5$$.defineProperty(MessageFormat, 'defaultLocale', { - enumerable: true, - writable : true, - value : undefined - }); + return InjectIntl; + } - MessageFormat.prototype.resolvedOptions = function () { - // TODO: Provide anything else? - return { - locale: this._locale - }; - }; + /* + * Copyright 2015, Yahoo Inc. + * Copyrights licensed under the New BSD License. + * See the accompanying LICENSE file for terms. + */ - MessageFormat.prototype._compilePattern = function (ast, locales, formats, pluralFn) { - var compiler = new src$compiler$$["default"](locales, formats, pluralFn); - return compiler.compile(ast); - }; + function defineMessages(messageDescriptors) { + // This simply returns what's passed-in because it's meant to be a hook for + // babel-plugin-react-intl. + return messageDescriptors; + } - MessageFormat.prototype._findPluralRuleFunction = function (locale) { - var localeData = MessageFormat.__localeData__; - var data = localeData[locale.toLowerCase()]; + function resolveLocale(locales) { + // IntlMessageFormat#_resolveLocale() does not depend on `this`. + return IntlMessageFormat.prototype._resolveLocale(locales); + } - // The locale data is de-duplicated, so we have to traverse the locale's - // hierarchy until we find a `pluralRuleFunction` to return. - while (data) { - if (data.pluralRuleFunction) { - return data.pluralRuleFunction; - } + function findPluralFunction(locale) { + // IntlMessageFormat#_findPluralFunction() does not depend on `this`. + return IntlMessageFormat.prototype._findPluralRuleFunction(locale); + } - data = data.parentLocale && localeData[data.parentLocale.toLowerCase()]; - } + var IntlPluralFormat = function IntlPluralFormat(locales) { + var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; + babelHelpers.classCallCheck(this, IntlPluralFormat); - throw new Error( - 'Locale data added to IntlMessageFormat is missing a ' + - '`pluralRuleFunction` for :' + locale - ); - }; + var useOrdinal = options.style === 'ordinal'; + var pluralFn = findPluralFunction(resolveLocale(locales)); - MessageFormat.prototype._format = function (pattern, values) { - var result = '', - i, len, part, id, value; + this.format = function (value) { + return pluralFn(value, useOrdinal); + }; + }; - for (i = 0, len = pattern.length; i < len; i += 1) { - part = pattern[i]; + var DATE_TIME_FORMAT_OPTIONS = Object.keys(dateTimeFormatPropTypes); + var NUMBER_FORMAT_OPTIONS = Object.keys(numberFormatPropTypes); + var RELATIVE_FORMAT_OPTIONS = Object.keys(relativeFormatPropTypes); + var PLURAL_FORMAT_OPTIONS = Object.keys(pluralFormatPropTypes); - // Exist early for string parts. - if (typeof part === 'string') { - result += part; - continue; - } + function getNamedFormat(formats, type, name) { + var format = formats && formats[type] && formats[type][name]; + if (format) { + return format; + } - id = part.id; + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] No ' + type + ' format named: ' + name); + } + } - // Enforce that all required values are provided by the caller. - if (!(values && src$utils$$.hop.call(values, id))) { - throw new Error('A value must be provided for: ' + id); + function formatDate(config, state, value) { + var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var locale = config.locale; + var formats = config.formats; + var format = options.format; + + + var date = new Date(value); + var defaults = format && getNamedFormat(formats, 'date', format); + var filteredOptions = filterProps(options, DATE_TIME_FORMAT_OPTIONS, defaults); + + try { + return state.getDateTimeFormat(locale, filteredOptions).format(date); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting date.\n' + e); } + } - value = values[id]; + return String(date); + } - // Recursively format plural and select parts' option — which can be a - // nested pattern structure. The choosing of the option to use is - // abstracted-by and delegated-to the part helper object. - if (part.options) { - result += this._format(part.getOption(value), values); - } else { - result += part.format(value); + function formatTime(config, state, value) { + var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var locale = config.locale; + var formats = config.formats; + var format = options.format; + + + var date = new Date(value); + var defaults = format && getNamedFormat(formats, 'time', format); + var filteredOptions = filterProps(options, DATE_TIME_FORMAT_OPTIONS, defaults); + + // When no formatting options have been specified, default to outputting a + // time; e.g.: "9:42 AM". + if (Object.keys(filteredOptions).length === 0) { + filteredOptions = { + hour: 'numeric', + minute: 'numeric' + }; + } + + try { + return state.getDateTimeFormat(locale, filteredOptions).format(date); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting time.\n' + e); } } - return result; - }; + return String(date); + } - MessageFormat.prototype._mergeFormats = function (defaults, formats) { - var mergedFormats = {}, - type, mergedType; + function formatRelative(config, state, value) { + var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var locale = config.locale; + var formats = config.formats; + var format = options.format; - for (type in defaults) { - if (!src$utils$$.hop.call(defaults, type)) { continue; } - mergedFormats[type] = mergedType = src$es5$$.objCreate(defaults[type]); + var date = new Date(value); + var now = new Date(options.now); + var defaults = format && getNamedFormat(formats, 'relative', format); + var filteredOptions = filterProps(options, RELATIVE_FORMAT_OPTIONS, defaults); - if (formats && src$utils$$.hop.call(formats, type)) { - src$utils$$.extend(mergedType, formats[type]); + try { + return state.getRelativeFormat(locale, filteredOptions).format(date, { + now: isFinite(now) ? now : state.now() + }); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting relative time.\n' + e); } } - return mergedFormats; - }; + return String(date); + } - MessageFormat.prototype._resolveLocale = function (locales) { - if (typeof locales === 'string') { - locales = [locales]; + function formatNumber(config, state, value) { + var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var locale = config.locale; + var formats = config.formats; + var format = options.format; + + + var defaults = format && getNamedFormat(formats, 'number', format); + var filteredOptions = filterProps(options, NUMBER_FORMAT_OPTIONS, defaults); + + try { + return state.getNumberFormat(locale, filteredOptions).format(value); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting number.\n' + e); + } } - // Create a copy of the array so we can push on the default locale. - locales = (locales || []).concat(MessageFormat.defaultLocale); + return String(value); + } - var localeData = MessageFormat.__localeData__; - var i, len, localeParts, data; + function formatPlural(config, state, value) { + var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var locale = config.locale; - // Using the set of locales + the default locale, we look for the first one - // which that has been registered. When data does not exist for a locale, we - // traverse its ancestors to find something that's been registered within - // its hierarchy of locales. Since we lack the proper `parentLocale` data - // here, we must take a naive approach to traversal. - for (i = 0, len = locales.length; i < len; i += 1) { - localeParts = locales[i].toLowerCase().split('-'); - while (localeParts.length) { - data = localeData[localeParts.join('-')]; - if (data) { - // Return the normalized locale string; e.g., we return "en-US", - // instead of "en-us". - return data.locale; - } + var filteredOptions = filterProps(options, PLURAL_FORMAT_OPTIONS); - localeParts.pop(); + try { + return state.getPluralFormat(locale, filteredOptions).format(value); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting plural.\n' + e); } } - var defaultLocale = locales.pop(); - throw new Error( - 'No locale data has been added to IntlMessageFormat for: ' + - locales.join(', ') + ', or the default locale: ' + defaultLocale - ); - }; + return 'other'; + } - //# sourceMappingURL=core.js.map + function formatMessage(config, state) { + var messageDescriptor = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; + var values = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + var locale = config.locale; + var formats = config.formats; + var messages = config.messages; + var defaultLocale = config.defaultLocale; + var defaultFormats = config.defaultFormats; + var id = messageDescriptor.id; + var defaultMessage = messageDescriptor.defaultMessage; -/***/ }, -/* 10 */ -/***/ function(module, exports) { + // `id` is a required field of a Message Descriptor. - /* - Copyright (c) 2014, Yahoo! Inc. All rights reserved. - Copyrights licensed under the New BSD License. - See the accompanying LICENSE file for terms. - */ + invariant(id, '[React Intl] An `id` must be provided to format a message.'); - /* jslint esnext: true */ + var message = messages && messages[id]; + var hasValues = Object.keys(values).length > 0; - "use strict"; - exports.extend = extend; - var hop = Object.prototype.hasOwnProperty; + // Avoid expensive message formatting for simple messages without values. In + // development messages will always be formatted in case of missing values. + if (!hasValues && process.env.NODE_ENV === 'production') { + return message || defaultMessage || id; + } - function extend(obj) { - var sources = Array.prototype.slice.call(arguments, 1), - i, len, source, key; + var formattedMessage = void 0; - for (i = 0, len = sources.length; i < len; i += 1) { - source = sources[i]; - if (!source) { continue; } + if (message) { + try { + var formatter = state.getMessageFormat(message, locale, formats); - for (key in source) { - if (hop.call(source, key)) { - obj[key] = source[key]; + formattedMessage = formatter.format(values); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting message: "' + id + '" for locale: "' + locale + '"' + (defaultMessage ? ', using default message as fallback.' : '') + ('\n' + e)); + } + } + } else { + if (process.env.NODE_ENV !== 'production') { + // This prevents warnings from littering the console in development + // when no `messages` are passed into the for the + // default locale, and a default message is in the source. + if (!defaultMessage || locale && locale.toLowerCase() !== defaultLocale.toLowerCase()) { + + console.error('[React Intl] Missing message: "' + id + '" for locale: "' + locale + '"' + (defaultMessage ? ', using default message as fallback.' : '')); } } } - return obj; - } - exports.hop = hop; + if (!formattedMessage && defaultMessage) { + try { + var _formatter = state.getMessageFormat(defaultMessage, defaultLocale, defaultFormats); - //# sourceMappingURL=utils.js.map + formattedMessage = _formatter.format(values); + } catch (e) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Error formatting the default message for: "' + id + '"' + ('\n' + e)); + } + } + } -/***/ }, -/* 11 */ -/***/ function(module, exports, __webpack_require__) { + if (!formattedMessage) { + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Cannot format message: "' + id + '", ' + ('using message ' + (message || defaultMessage ? 'source' : 'id') + ' as fallback.')); + } + } - /* - Copyright (c) 2014, Yahoo! Inc. All rights reserved. - Copyrights licensed under the New BSD License. - See the accompanying LICENSE file for terms. - */ + return formattedMessage || message || defaultMessage || id; + } - /* jslint esnext: true */ + function formatHTMLMessage(config, state, messageDescriptor) { + var rawValues = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - "use strict"; - var src$utils$$ = __webpack_require__(10); + // Process all the values before they are used when formatting the ICU + // Message string. Since the formatted message might be injected via + // `innerHTML`, all String-based values need to be HTML-escaped. + var escapedValues = Object.keys(rawValues).reduce(function (escaped, name) { + var value = rawValues[name]; + escaped[name] = typeof value === 'string' ? escape(value) : value; + return escaped; + }, {}); - // Purposely using the same implementation as the Intl.js `Intl` polyfill. - // Copyright 2013 Andy Earnshaw, MIT License + return formatMessage(config, state, messageDescriptor, escapedValues); + } - var realDefineProp = (function () { - try { return !!Object.defineProperty({}, 'a', {}); } - catch (e) { return false; } - })(); + var format = Object.freeze({ + formatDate: formatDate, + formatTime: formatTime, + formatRelative: formatRelative, + formatNumber: formatNumber, + formatPlural: formatPlural, + formatMessage: formatMessage, + formatHTMLMessage: formatHTMLMessage + }); - var es3 = !realDefineProp && !Object.prototype.__defineGetter__; + var intlConfigPropNames$1 = Object.keys(intlConfigPropTypes); + var intlFormatPropNames = Object.keys(intlFormatPropTypes); - var defineProperty = realDefineProp ? Object.defineProperty : - function (obj, name, desc) { + // These are not a static property on the `IntlProvider` class so the intl + // config values can be inherited from an ancestor. + var defaultProps = { + formats: {}, + messages: {}, - if ('get' in desc && obj.__defineGetter__) { - obj.__defineGetter__(name, desc.get); - } else if (!src$utils$$.hop.call(obj, name) || 'value' in desc) { - obj[name] = desc.value; - } + defaultLocale: 'en', + defaultFormats: {} }; - var objCreate = Object.create || function (proto, props) { - var obj, k; + var IntlProvider = function (_Component) { + babelHelpers.inherits(IntlProvider, _Component); - function F() {} - F.prototype = proto; - obj = new F(); + function IntlProvider(props, context) { + babelHelpers.classCallCheck(this, IntlProvider); - for (k in props) { - if (src$utils$$.hop.call(props, k)) { - defineProperty(obj, k, props[k]); - } + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(IntlProvider).call(this, props, context)); + + invariant(typeof Intl !== 'undefined', '[React Intl] The `Intl` APIs must be available in the runtime, ' + 'and do not appear to be built-in. An `Intl` polyfill should be loaded.\n' + 'See: http://formatjs.io/guides/runtime-environments/'); + + // Used to stabilize time when performing an initial rendering so that + // all relative times use the same reference "now" time. + var initialNow = void 0; + if (isFinite(props.initialNow)) { + initialNow = Number(props.initialNow); + } else { + // When an `initialNow` isn't provided via `props`, look to see an + // exists in the ancestry and call its `now()` + // function to propagate its value for "now". + initialNow = context.intl ? context.intl.now() : Date.now(); + } + + _this.state = { + // Creating `Intl*` formatters is expensive so these format caches + // memoize the `Intl*` constructors and have the same lifecycle as + // this IntlProvider instance. + getDateTimeFormat: memoizeIntlConstructor(Intl.DateTimeFormat), + getNumberFormat: memoizeIntlConstructor(Intl.NumberFormat), + getMessageFormat: memoizeIntlConstructor(IntlMessageFormat), + getRelativeFormat: memoizeIntlConstructor(IntlRelativeFormat), + getPluralFormat: memoizeIntlConstructor(IntlPluralFormat), + + // Wrapper to provide stable "now" time for initial render. + now: function now() { + return _this._didDisplay ? Date.now() : initialNow; + } + }; + return _this; } - return obj; - }; - exports.defineProperty = defineProperty, exports.objCreate = objCreate; + babelHelpers.createClass(IntlProvider, [{ + key: 'getConfig', + value: function getConfig() { + var _context$intl = this.context.intl; + var intlContext = _context$intl === undefined ? {} : _context$intl; - //# sourceMappingURL=es5.js.map + // Build a whitelisted config object from `props`, defaults, and + // `context.intl`, if an exists in the ancestry. -/***/ }, -/* 12 */ -/***/ function(module, exports) { + var config = babelHelpers['extends']({}, defaultProps, filterProps(this.props, intlConfigPropNames$1, intlContext)); - /* - Copyright (c) 2014, Yahoo! Inc. All rights reserved. - Copyrights licensed under the New BSD License. - See the accompanying LICENSE file for terms. - */ + if (!hasLocaleData(config.locale)) { + var locale = config.locale; + var defaultLocale = config.defaultLocale; + var defaultFormats = config.defaultFormats; - /* jslint esnext: true */ - "use strict"; - exports["default"] = Compiler; + if (process.env.NODE_ENV !== 'production') { + console.error('[React Intl] Missing locale data for locale: "' + locale + '". ' + ('Using default locale: "' + defaultLocale + '" as fallback.')); + } - function Compiler(locales, formats, pluralFn) { - this.locales = locales; - this.formats = formats; - this.pluralFn = pluralFn; - } + // Since there's no registered locale data for `locale`, this will + // fallback to the `defaultLocale` to make sure things can render. + // The `messages` are overridden to the `defaultProps` empty object + // to maintain referential equality across re-renders. It's assumed + // each contains a `defaultMessage` prop. + config = babelHelpers['extends']({}, config, { + locale: defaultLocale, + formats: defaultFormats, + messages: defaultProps.messages + }); + } - Compiler.prototype.compile = function (ast) { - this.pluralStack = []; - this.currentPlural = null; - this.pluralNumberFormat = null; + return config; + } + }, { + key: 'getBoundFormatFns', + value: function getBoundFormatFns(config, state) { + return intlFormatPropNames.reduce(function (boundFormatFns, name) { + boundFormatFns[name] = format[name].bind(null, config, state); + return boundFormatFns; + }, {}); + } + }, { + key: 'getChildContext', + value: function getChildContext() { + var config = this.getConfig(); - return this.compileMessage(ast); + // Bind intl factories and current config to the format functions. + var boundFormatFns = this.getBoundFormatFns(config, this.state); + + return { + intl: babelHelpers['extends']({}, config, boundFormatFns, { + now: this.state.now + }) + }; + } + }, { + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate() { + for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { + next[_key] = arguments[_key]; + } + + return shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); + } + }, { + key: 'componentDidMount', + value: function componentDidMount() { + this._didDisplay = true; + } + }, { + key: 'render', + value: function render() { + return React.Children.only(this.props.children); + } + }]); + return IntlProvider; + }(React.Component); + + IntlProvider.displayName = 'IntlProvider'; + + IntlProvider.contextTypes = { + intl: intlShape }; - Compiler.prototype.compileMessage = function (ast) { - if (!(ast && ast.type === 'messageFormatPattern')) { - throw new Error('Message AST is not of type: "messageFormatPattern"'); - } + IntlProvider.childContextTypes = { + intl: intlShape.isRequired + }; - var elements = ast.elements, - pattern = []; + IntlProvider.propTypes = babelHelpers['extends']({}, intlConfigPropTypes, { + children: React.PropTypes.element.isRequired, + initialNow: React.PropTypes.any + }); - var i, len, element; + var FormattedDate = function (_Component) { + babelHelpers.inherits(FormattedDate, _Component); - for (i = 0, len = elements.length; i < len; i += 1) { - element = elements[i]; + function FormattedDate(props, context) { + babelHelpers.classCallCheck(this, FormattedDate); - switch (element.type) { - case 'messageTextElement': - pattern.push(this.compileMessageText(element)); - break; + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedDate).call(this, props, context)); - case 'argumentElement': - pattern.push(this.compileArgument(element)); - break; + invariantIntlContext(context); + return _this; + } - default: - throw new Error('Message element does not have a valid type'); + babelHelpers.createClass(FormattedDate, [{ + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate() { + for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { + next[_key] = arguments[_key]; + } + + return shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); } - } + }, { + key: 'render', + value: function render() { + var formatDate = this.context.intl.formatDate; + var _props = this.props; + var value = _props.value; + var children = _props.children; - return pattern; - }; - Compiler.prototype.compileMessageText = function (element) { - // When this `element` is part of plural sub-pattern and its value contains - // an unescaped '#', use a `PluralOffsetString` helper to properly output - // the number with the correct offset in the string. - if (this.currentPlural && /(^|[^\\])#/g.test(element.value)) { - // Create a cache a NumberFormat instance that can be reused for any - // PluralOffsetString instance in this message. - if (!this.pluralNumberFormat) { - this.pluralNumberFormat = new Intl.NumberFormat(this.locales); + var formattedDate = formatDate(value, this.props); + + if (typeof children === 'function') { + return children(formattedDate); + } + + return React__default.createElement( + 'span', + null, + formattedDate + ); } + }]); + return FormattedDate; + }(React.Component); - return new PluralOffsetString( - this.currentPlural.id, - this.currentPlural.format.offset, - this.pluralNumberFormat, - element.value); - } + FormattedDate.displayName = 'FormattedDate'; - // Unescape the escaped '#'s in the message text. - return element.value.replace(/\\#/g, '#'); + FormattedDate.contextTypes = { + intl: intlShape }; - Compiler.prototype.compileArgument = function (element) { - var format = element.format; + FormattedDate.propTypes = babelHelpers['extends']({}, dateTimeFormatPropTypes, { + value: React.PropTypes.any.isRequired, + format: React.PropTypes.string, + children: React.PropTypes.func + }); - if (!format) { - return new StringFormat(element.id); + var FormattedTime = function (_Component) { + babelHelpers.inherits(FormattedTime, _Component); + + function FormattedTime(props, context) { + babelHelpers.classCallCheck(this, FormattedTime); + + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedTime).call(this, props, context)); + + invariantIntlContext(context); + return _this; } - var formats = this.formats, - locales = this.locales, - pluralFn = this.pluralFn, - options; + babelHelpers.createClass(FormattedTime, [{ + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate() { + for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { + next[_key] = arguments[_key]; + } - switch (format.type) { - case 'numberFormat': - options = formats.number[format.style]; - return { - id : element.id, - format: new Intl.NumberFormat(locales, options).format - }; + return shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); + } + }, { + key: 'render', + value: function render() { + var formatTime = this.context.intl.formatTime; + var _props = this.props; + var value = _props.value; + var children = _props.children; - case 'dateFormat': - options = formats.date[format.style]; - return { - id : element.id, - format: new Intl.DateTimeFormat(locales, options).format - }; - case 'timeFormat': - options = formats.time[format.style]; - return { - id : element.id, - format: new Intl.DateTimeFormat(locales, options).format - }; + var formattedTime = formatTime(value, this.props); - case 'pluralFormat': - options = this.compileOptions(element); - return new PluralFormat( - element.id, format.ordinal, format.offset, options, pluralFn + if (typeof children === 'function') { + return children(formattedTime); + } + + return React__default.createElement( + 'span', + null, + formattedTime ); + } + }]); + return FormattedTime; + }(React.Component); - case 'selectFormat': - options = this.compileOptions(element); - return new SelectFormat(element.id, options); + FormattedTime.displayName = 'FormattedTime'; - default: - throw new Error('Message element does not have a valid format type'); - } + FormattedTime.contextTypes = { + intl: intlShape }; - Compiler.prototype.compileOptions = function (element) { - var format = element.format, - options = format.options, - optionsHash = {}; + FormattedTime.propTypes = babelHelpers['extends']({}, dateTimeFormatPropTypes, { + value: React.PropTypes.any.isRequired, + format: React.PropTypes.string, + children: React.PropTypes.func + }); - // Save the current plural element, if any, then set it to a new value when - // compiling the options sub-patterns. This conforms the spec's algorithm - // for handling `"#"` syntax in message text. - this.pluralStack.push(this.currentPlural); - this.currentPlural = format.type === 'pluralFormat' ? element : null; + var SECOND = 1000; + var MINUTE = 1000 * 60; + var HOUR = 1000 * 60 * 60; + var DAY = 1000 * 60 * 60 * 24; - var i, len, option; + // The maximum timer delay value is a 32-bit signed integer. + // See: https://mdn.io/setTimeout + var MAX_TIMER_DELAY = 2147483647; - for (i = 0, len = options.length; i < len; i += 1) { - option = options[i]; + function selectUnits(delta) { + var absDelta = Math.abs(delta); - // Compile the sub-pattern and save it under the options's selector. - optionsHash[option.selector] = this.compileMessage(option.value); + if (absDelta < MINUTE) { + return 'second'; } - // Pop the plural stack to put back the original current plural value. - this.currentPlural = this.pluralStack.pop(); - - return optionsHash; - }; + if (absDelta < HOUR) { + return 'minute'; + } - // -- Compiler Helper Classes -------------------------------------------------- + if (absDelta < DAY) { + return 'hour'; + } - function StringFormat(id) { - this.id = id; + // The maximum scheduled delay will be measured in days since the maximum + // timer delay is less than the number of milliseconds in 25 days. + return 'day'; } - StringFormat.prototype.format = function (value) { - if (!value) { - return ''; + function getUnitDelay(units) { + switch (units) { + case 'second': + return SECOND; + case 'minute': + return MINUTE; + case 'hour': + return HOUR; + case 'day': + return DAY; + default: + return MAX_TIMER_DELAY; } + } - return typeof value === 'string' ? value : String(value); - }; + var FormattedRelative = function (_Component) { + babelHelpers.inherits(FormattedRelative, _Component); - function PluralFormat(id, useOrdinal, offset, options, pluralFn) { - this.id = id; - this.useOrdinal = useOrdinal; - this.offset = offset; - this.options = options; - this.pluralFn = pluralFn; - } + function FormattedRelative(props, context) { + babelHelpers.classCallCheck(this, FormattedRelative); - PluralFormat.prototype.getOption = function (value) { - var options = this.options; + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedRelative).call(this, props, context)); - var option = options['=' + value] || - options[this.pluralFn(value - this.offset, this.useOrdinal)]; + invariantIntlContext(context); - return option || options.other; - }; + var now = isFinite(props.initialNow) ? Number(props.initialNow) : context.intl.now(); - function PluralOffsetString(id, offset, numberFormat, string) { - this.id = id; - this.offset = offset; - this.numberFormat = numberFormat; - this.string = string; - } + // `now` is stored as state so that `render()` remains a function of + // props + state, instead of accessing `Date.now()` inside `render()`. + _this.state = { now: now }; + return _this; + } - PluralOffsetString.prototype.format = function (value) { - var number = this.numberFormat.format(value - this.offset); + babelHelpers.createClass(FormattedRelative, [{ + key: 'scheduleNextUpdate', + value: function scheduleNextUpdate(props, state) { + var _this2 = this; - return this.string - .replace(/(^|[^\\])#/g, '$1' + number) - .replace(/\\#/g, '#'); - }; + var updateInterval = props.updateInterval; - function SelectFormat(id, options) { - this.id = id; - this.options = options; - } + // If the `updateInterval` is falsy, including `0`, then auto updates + // have been turned off, so we bail and skip scheduling an update. - SelectFormat.prototype.getOption = function (value) { - var options = this.options; - return options[value] || options.other; - }; + if (!updateInterval) { + return; + } - //# sourceMappingURL=compiler.js.map + var time = new Date(props.value).getTime(); + var delta = time - state.now; + var units = props.units || selectUnits(delta); -/***/ }, -/* 13 */ -/***/ function(module, exports, __webpack_require__) { + var unitDelay = getUnitDelay(units); + var unitRemainder = Math.abs(delta % unitDelay); - 'use strict'; + // We want the largest possible timer delay which will still display + // accurate information while reducing unnecessary re-renders. The delay + // should be until the next "interesting" moment, like a tick from + // "1 minute ago" to "2 minutes ago" when the delta is 120,000ms. + var delay = delta < 0 ? Math.max(updateInterval, unitDelay - unitRemainder) : Math.max(updateInterval, unitRemainder); - exports = module.exports = __webpack_require__(14)['default']; - exports['default'] = exports; + clearTimeout(this._timer); + this._timer = setTimeout(function () { + _this2.setState({ now: _this2.context.intl.now() }); + }, delay); + } + }, { + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate() { + for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { + next[_key] = arguments[_key]; + } -/***/ }, -/* 14 */ -/***/ function(module, exports) { + return shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); + } + }, { + key: 'componentWillUpdate', + value: function componentWillUpdate(nextProps, nextState) { + this.scheduleNextUpdate(nextProps, nextState); + } + }, { + key: 'componentDidMount', + value: function componentDidMount() { + this.scheduleNextUpdate(this.props, this.state); + } + }, { + key: 'componentWillUnmount', + value: function componentWillUnmount() { + clearTimeout(this._timer); + } + }, { + key: 'render', + value: function render() { + var formatRelative = this.context.intl.formatRelative; + var _props = this.props; + var value = _props.value; + var children = _props.children; - "use strict"; - exports["default"] = (function() { - /* - * Generated by PEG.js 0.8.0. - * - * http://pegjs.majda.cz/ - */ + var formattedRelative = formatRelative(value, babelHelpers['extends']({}, this.props, this.state)); - function peg$subclass(child, parent) { - function ctor() { this.constructor = child; } - ctor.prototype = parent.prototype; - child.prototype = new ctor(); - } + if (typeof children === 'function') { + return children(formattedRelative); + } - function SyntaxError(message, expected, found, offset, line, column) { - this.message = message; - this.expected = expected; - this.found = found; - this.offset = offset; - this.line = line; - this.column = column; + return React__default.createElement( + 'span', + null, + formattedRelative + ); + } + }]); + return FormattedRelative; + }(React.Component); - this.name = "SyntaxError"; - } + FormattedRelative.displayName = 'FormattedRelative'; - peg$subclass(SyntaxError, Error); + FormattedRelative.contextTypes = { + intl: intlShape + }; - function parse(input) { - var options = arguments.length > 1 ? arguments[1] : {}, + FormattedRelative.propTypes = babelHelpers['extends']({}, relativeFormatPropTypes, { + value: React.PropTypes.any.isRequired, + format: React.PropTypes.string, + updateInterval: React.PropTypes.number, + initialNow: React.PropTypes.any, + children: React.PropTypes.func + }); - peg$FAILED = {}, + FormattedRelative.defaultProps = { + updateInterval: 1000 * 10 + }; - peg$startRuleFunctions = { start: peg$parsestart }, - peg$startRuleFunction = peg$parsestart, + var FormattedNumber = function (_Component) { + babelHelpers.inherits(FormattedNumber, _Component); - peg$c0 = [], - peg$c1 = function(elements) { - return { - type : 'messageFormatPattern', - elements: elements - }; - }, - peg$c2 = peg$FAILED, - peg$c3 = function(text) { - var string = '', - i, j, outerLen, inner, innerLen; + function FormattedNumber(props, context) { + babelHelpers.classCallCheck(this, FormattedNumber); - for (i = 0, outerLen = text.length; i < outerLen; i += 1) { - inner = text[i]; + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedNumber).call(this, props, context)); - for (j = 0, innerLen = inner.length; j < innerLen; j += 1) { - string += inner[j]; - } - } + invariantIntlContext(context); + return _this; + } - return string; - }, - peg$c4 = function(messageText) { - return { - type : 'messageTextElement', - value: messageText - }; - }, - peg$c5 = /^[^ \t\n\r,.+={}#]/, - peg$c6 = { type: "class", value: "[^ \\t\\n\\r,.+={}#]", description: "[^ \\t\\n\\r,.+={}#]" }, - peg$c7 = "{", - peg$c8 = { type: "literal", value: "{", description: "\"{\"" }, - peg$c9 = null, - peg$c10 = ",", - peg$c11 = { type: "literal", value: ",", description: "\",\"" }, - peg$c12 = "}", - peg$c13 = { type: "literal", value: "}", description: "\"}\"" }, - peg$c14 = function(id, format) { - return { - type : 'argumentElement', - id : id, - format: format && format[2] - }; - }, - peg$c15 = "number", - peg$c16 = { type: "literal", value: "number", description: "\"number\"" }, - peg$c17 = "date", - peg$c18 = { type: "literal", value: "date", description: "\"date\"" }, - peg$c19 = "time", - peg$c20 = { type: "literal", value: "time", description: "\"time\"" }, - peg$c21 = function(type, style) { - return { - type : type + 'Format', - style: style && style[2] - }; - }, - peg$c22 = "plural", - peg$c23 = { type: "literal", value: "plural", description: "\"plural\"" }, - peg$c24 = function(pluralStyle) { - return { - type : pluralStyle.type, - ordinal: false, - offset : pluralStyle.offset || 0, - options: pluralStyle.options - }; - }, - peg$c25 = "selectordinal", - peg$c26 = { type: "literal", value: "selectordinal", description: "\"selectordinal\"" }, - peg$c27 = function(pluralStyle) { - return { - type : pluralStyle.type, - ordinal: true, - offset : pluralStyle.offset || 0, - options: pluralStyle.options - } - }, - peg$c28 = "select", - peg$c29 = { type: "literal", value: "select", description: "\"select\"" }, - peg$c30 = function(options) { - return { - type : 'selectFormat', - options: options - }; - }, - peg$c31 = "=", - peg$c32 = { type: "literal", value: "=", description: "\"=\"" }, - peg$c33 = function(selector, pattern) { - return { - type : 'optionalFormatPattern', - selector: selector, - value : pattern - }; - }, - peg$c34 = "offset:", - peg$c35 = { type: "literal", value: "offset:", description: "\"offset:\"" }, - peg$c36 = function(number) { - return number; - }, - peg$c37 = function(offset, options) { - return { - type : 'pluralFormat', - offset : offset, - options: options - }; - }, - peg$c38 = { type: "other", description: "whitespace" }, - peg$c39 = /^[ \t\n\r]/, - peg$c40 = { type: "class", value: "[ \\t\\n\\r]", description: "[ \\t\\n\\r]" }, - peg$c41 = { type: "other", description: "optionalWhitespace" }, - peg$c42 = /^[0-9]/, - peg$c43 = { type: "class", value: "[0-9]", description: "[0-9]" }, - peg$c44 = /^[0-9a-f]/i, - peg$c45 = { type: "class", value: "[0-9a-f]i", description: "[0-9a-f]i" }, - peg$c46 = "0", - peg$c47 = { type: "literal", value: "0", description: "\"0\"" }, - peg$c48 = /^[1-9]/, - peg$c49 = { type: "class", value: "[1-9]", description: "[1-9]" }, - peg$c50 = function(digits) { - return parseInt(digits, 10); - }, - peg$c51 = /^[^{}\\\0-\x1F \t\n\r]/, - peg$c52 = { type: "class", value: "[^{}\\\\\\0-\\x1F \\t\\n\\r]", description: "[^{}\\\\\\0-\\x1F \\t\\n\\r]" }, - peg$c53 = "\\#", - peg$c54 = { type: "literal", value: "\\#", description: "\"\\\\#\"" }, - peg$c55 = function() { return '\\#'; }, - peg$c56 = "\\{", - peg$c57 = { type: "literal", value: "\\{", description: "\"\\\\{\"" }, - peg$c58 = function() { return '\u007B'; }, - peg$c59 = "\\}", - peg$c60 = { type: "literal", value: "\\}", description: "\"\\\\}\"" }, - peg$c61 = function() { return '\u007D'; }, - peg$c62 = "\\u", - peg$c63 = { type: "literal", value: "\\u", description: "\"\\\\u\"" }, - peg$c64 = function(digits) { - return String.fromCharCode(parseInt(digits, 16)); - }, - peg$c65 = function(chars) { return chars.join(''); }, + babelHelpers.createClass(FormattedNumber, [{ + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate() { + for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { + next[_key] = arguments[_key]; + } - peg$currPos = 0, - peg$reportedPos = 0, - peg$cachedPos = 0, - peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }, - peg$maxFailPos = 0, - peg$maxFailExpected = [], - peg$silentFails = 0, + return shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); + } + }, { + key: 'render', + value: function render() { + var formatNumber = this.context.intl.formatNumber; + var _props = this.props; + var value = _props.value; + var children = _props.children; - peg$result; - if ("startRule" in options) { - if (!(options.startRule in peg$startRuleFunctions)) { - throw new Error("Can't start parsing from rule \"" + options.startRule + "\"."); - } + var formattedNumber = formatNumber(value, this.props); - peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; - } + if (typeof children === 'function') { + return children(formattedNumber); + } - function text() { - return input.substring(peg$reportedPos, peg$currPos); - } + return React__default.createElement( + 'span', + null, + formattedNumber + ); + } + }]); + return FormattedNumber; + }(React.Component); - function offset() { - return peg$reportedPos; - } + FormattedNumber.displayName = 'FormattedNumber'; - function line() { - return peg$computePosDetails(peg$reportedPos).line; - } + FormattedNumber.contextTypes = { + intl: intlShape + }; - function column() { - return peg$computePosDetails(peg$reportedPos).column; - } + FormattedNumber.propTypes = babelHelpers['extends']({}, numberFormatPropTypes, { + value: React.PropTypes.any.isRequired, + format: React.PropTypes.string, + children: React.PropTypes.func + }); - function expected(description) { - throw peg$buildException( - null, - [{ type: "other", description: description }], - peg$reportedPos - ); - } + var FormattedPlural = function (_Component) { + babelHelpers.inherits(FormattedPlural, _Component); - function error(message) { - throw peg$buildException(message, null, peg$reportedPos); + function FormattedPlural(props, context) { + babelHelpers.classCallCheck(this, FormattedPlural); + + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedPlural).call(this, props, context)); + + invariantIntlContext(context); + return _this; } - function peg$computePosDetails(pos) { - function advance(details, startPos, endPos) { - var p, ch; + babelHelpers.createClass(FormattedPlural, [{ + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate() { + for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { + next[_key] = arguments[_key]; + } - for (p = startPos; p < endPos; p++) { - ch = input.charAt(p); - if (ch === "\n") { - if (!details.seenCR) { details.line++; } - details.column = 1; - details.seenCR = false; - } else if (ch === "\r" || ch === "\u2028" || ch === "\u2029") { - details.line++; - details.column = 1; - details.seenCR = true; - } else { - details.column++; - details.seenCR = false; - } + return shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); } - } + }, { + key: 'render', + value: function render() { + var formatPlural = this.context.intl.formatPlural; + var _props = this.props; + var value = _props.value; + var other = _props.other; + var children = _props.children; - if (peg$cachedPos !== pos) { - if (peg$cachedPos > pos) { - peg$cachedPos = 0; - peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }; + + var pluralCategory = formatPlural(value, this.props); + var formattedPlural = this.props[pluralCategory] || other; + + if (typeof children === 'function') { + return children(formattedPlural); + } + + return React__default.createElement( + 'span', + null, + formattedPlural + ); } - advance(peg$cachedPosDetails, peg$cachedPos, pos); - peg$cachedPos = pos; - } + }]); + return FormattedPlural; + }(React.Component); - return peg$cachedPosDetails; - } + FormattedPlural.displayName = 'FormattedPlural'; - function peg$fail(expected) { - if (peg$currPos < peg$maxFailPos) { return; } + FormattedPlural.contextTypes = { + intl: intlShape + }; - if (peg$currPos > peg$maxFailPos) { - peg$maxFailPos = peg$currPos; - peg$maxFailExpected = []; - } + FormattedPlural.propTypes = babelHelpers['extends']({}, pluralFormatPropTypes, { + value: React.PropTypes.any.isRequired, - peg$maxFailExpected.push(expected); - } + other: React.PropTypes.node.isRequired, + zero: React.PropTypes.node, + one: React.PropTypes.node, + two: React.PropTypes.node, + few: React.PropTypes.node, + many: React.PropTypes.node, - function peg$buildException(message, expected, pos) { - function cleanupExpected(expected) { - var i = 1; + children: React.PropTypes.func + }); - expected.sort(function(a, b) { - if (a.description < b.description) { - return -1; - } else if (a.description > b.description) { - return 1; - } else { - return 0; - } - }); + FormattedPlural.defaultProps = { + style: 'cardinal' + }; - while (i < expected.length) { - if (expected[i - 1] === expected[i]) { - expected.splice(i, 1); - } else { - i++; - } - } - } + var FormattedMessage = function (_Component) { + babelHelpers.inherits(FormattedMessage, _Component); - function buildMessage(expected, found) { - function stringEscape(s) { - function hex(ch) { return ch.charCodeAt(0).toString(16).toUpperCase(); } + function FormattedMessage(props, context) { + babelHelpers.classCallCheck(this, FormattedMessage); - return s - .replace(/\\/g, '\\\\') - .replace(/"/g, '\\"') - .replace(/\x08/g, '\\b') - .replace(/\t/g, '\\t') - .replace(/\n/g, '\\n') - .replace(/\f/g, '\\f') - .replace(/\r/g, '\\r') - .replace(/[\x00-\x07\x0B\x0E\x0F]/g, function(ch) { return '\\x0' + hex(ch); }) - .replace(/[\x10-\x1F\x80-\xFF]/g, function(ch) { return '\\x' + hex(ch); }) - .replace(/[\u0180-\u0FFF]/g, function(ch) { return '\\u0' + hex(ch); }) - .replace(/[\u1080-\uFFFF]/g, function(ch) { return '\\u' + hex(ch); }); - } + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedMessage).call(this, props, context)); - var expectedDescs = new Array(expected.length), - expectedDesc, foundDesc, i; + invariantIntlContext(context); + return _this; + } - for (i = 0; i < expected.length; i++) { - expectedDescs[i] = expected[i].description; - } + babelHelpers.createClass(FormattedMessage, [{ + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate(nextProps) { + var values = this.props.values; + var nextValues = nextProps.values; - expectedDesc = expected.length > 1 - ? expectedDescs.slice(0, -1).join(", ") - + " or " - + expectedDescs[expected.length - 1] - : expectedDescs[0]; - foundDesc = found ? "\"" + stringEscape(found) + "\"" : "end of input"; + if (!shallowEquals(nextValues, values)) { + return true; + } - return "Expected " + expectedDesc + " but " + foundDesc + " found."; - } + // Since `values` has already been checked, we know they're not + // different, so the current `values` are carried over so the shallow + // equals comparison on the other props isn't affected by the `values`. + var nextPropsToCheck = babelHelpers['extends']({}, nextProps, { + values: values + }); - var posDetails = peg$computePosDetails(pos), - found = pos < input.length ? input.charAt(pos) : null; + for (var _len = arguments.length, next = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + next[_key - 1] = arguments[_key]; + } - if (expected !== null) { - cleanupExpected(expected); - } + return shouldIntlComponentUpdate.apply(undefined, [this, nextPropsToCheck].concat(next)); + } + }, { + key: 'render', + value: function render() { + var formatMessage = this.context.intl.formatMessage; + var _props = this.props; + var id = _props.id; + var description = _props.description; + var defaultMessage = _props.defaultMessage; + var values = _props.values; + var tagName = _props.tagName; + var children = _props.children; + + + var tokenRegexp = void 0; + var tokenizedValues = void 0; + var elements = void 0; + + var hasValues = values && Object.keys(values).length > 0; + if (hasValues) { + (function () { + // Creates a token with a random UID that should not be guessable or + // conflict with other parts of the `message` string. + var uid = Math.floor(Math.random() * 0x10000000000).toString(16); + + var generateToken = function () { + var counter = 0; + return function () { + return '@__ELEMENT-' + uid + '-' + (counter += 1) + '__@'; + }; + }(); + + tokenRegexp = new RegExp('(@__ELEMENT-' + uid + '-\\d+__@)', 'g'); + tokenizedValues = {}; + elements = {}; + + // Iterates over the `props` to keep track of any React Element + // values so they can be represented by the `token` as a placeholder + // when the `message` is formatted. This allows the formatted + // message to then be broken-up into parts with references to the + // React Elements inserted back in. + Object.keys(values).forEach(function (name) { + var value = values[name]; + + if (React.isValidElement(value)) { + var token = generateToken(); + tokenizedValues[name] = token; + elements[token] = value; + } else { + tokenizedValues[name] = value; + } + }); + })(); + } - return new SyntaxError( - message !== null ? message : buildMessage(expected, found), - expected, - found, - pos, - posDetails.line, - posDetails.column - ); - } + var descriptor = { id: id, description: description, defaultMessage: defaultMessage }; + var formattedMessage = formatMessage(descriptor, tokenizedValues || values); + + var nodes = void 0; + + var hasElements = elements && Object.keys(elements).length > 0; + if (hasElements) { + // Split the message into parts so the React Element values captured + // above can be inserted back into the rendered message. This + // approach allows messages to render with React Elements while + // keeping React's virtual diffing working properly. + nodes = formattedMessage.split(tokenRegexp).filter(function (part) { + return !!part; + }).map(function (part) { + return elements[part] || part; + }); + } else { + nodes = [formattedMessage]; + } - function peg$parsestart() { - var s0; + if (typeof children === 'function') { + return children.apply(undefined, babelHelpers.toConsumableArray(nodes)); + } - s0 = peg$parsemessageFormatPattern(); + return React.createElement.apply(undefined, [tagName, null].concat(babelHelpers.toConsumableArray(nodes))); + } + }]); + return FormattedMessage; + }(React.Component); - return s0; - } + FormattedMessage.displayName = 'FormattedMessage'; - function peg$parsemessageFormatPattern() { - var s0, s1, s2; + FormattedMessage.contextTypes = { + intl: intlShape + }; - s0 = peg$currPos; - s1 = []; - s2 = peg$parsemessageFormatElement(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsemessageFormatElement(); - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c1(s1); - } - s0 = s1; + FormattedMessage.propTypes = babelHelpers['extends']({}, messageDescriptorPropTypes, { + values: React.PropTypes.object, + tagName: React.PropTypes.string, + children: React.PropTypes.func + }); - return s0; - } + FormattedMessage.defaultProps = { + values: {}, + tagName: 'span' + }; - function peg$parsemessageFormatElement() { - var s0; + var FormattedHTMLMessage = function (_Component) { + babelHelpers.inherits(FormattedHTMLMessage, _Component); - s0 = peg$parsemessageTextElement(); - if (s0 === peg$FAILED) { - s0 = peg$parseargumentElement(); - } + function FormattedHTMLMessage(props, context) { + babelHelpers.classCallCheck(this, FormattedHTMLMessage); - return s0; + var _this = babelHelpers.possibleConstructorReturn(this, Object.getPrototypeOf(FormattedHTMLMessage).call(this, props, context)); + + invariantIntlContext(context); + return _this; } - function peg$parsemessageText() { - var s0, s1, s2, s3, s4, s5; + babelHelpers.createClass(FormattedHTMLMessage, [{ + key: 'shouldComponentUpdate', + value: function shouldComponentUpdate(nextProps) { + var values = this.props.values; + var nextValues = nextProps.values; - s0 = peg$currPos; - s1 = []; - s2 = peg$currPos; - s3 = peg$parse_(); - if (s3 !== peg$FAILED) { - s4 = peg$parsechars(); - if (s4 !== peg$FAILED) { - s5 = peg$parse_(); - if (s5 !== peg$FAILED) { - s3 = [s3, s4, s5]; - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$c2; - } - } else { - peg$currPos = s2; - s2 = peg$c2; - } - } else { - peg$currPos = s2; - s2 = peg$c2; - } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$currPos; - s3 = peg$parse_(); - if (s3 !== peg$FAILED) { - s4 = peg$parsechars(); - if (s4 !== peg$FAILED) { - s5 = peg$parse_(); - if (s5 !== peg$FAILED) { - s3 = [s3, s4, s5]; - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$c2; - } - } else { - peg$currPos = s2; - s2 = peg$c2; + + if (!shallowEquals(nextValues, values)) { + return true; } - } else { - peg$currPos = s2; - s2 = peg$c2; - } + + // Since `values` has already been checked, we know they're not + // different, so the current `values` are carried over so the shallow + // equals comparison on the other props isn't affected by the `values`. + var nextPropsToCheck = babelHelpers['extends']({}, nextProps, { + values: values + }); + + for (var _len = arguments.length, next = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + next[_key - 1] = arguments[_key]; + } + + return shouldIntlComponentUpdate.apply(undefined, [this, nextPropsToCheck].concat(next)); } - } else { - s1 = peg$c2; - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c3(s1); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parsews(); - if (s1 !== peg$FAILED) { - s1 = input.substring(s0, peg$currPos); + }, { + key: 'render', + value: function render() { + var formatHTMLMessage = this.context.intl.formatHTMLMessage; + var _props = this.props; + var id = _props.id; + var description = _props.description; + var defaultMessage = _props.defaultMessage; + var rawValues = _props.values; + var tagName = _props.tagName; + var children = _props.children; + + + var descriptor = { id: id, description: description, defaultMessage: defaultMessage }; + var formattedHTMLMessage = formatHTMLMessage(descriptor, rawValues); + + if (typeof children === 'function') { + return children(formattedHTMLMessage); + } + + // Since the message presumably has HTML in it, we need to set + // `innerHTML` in order for it to be rendered and not escaped by React. + // To be safe, all string prop values were escaped when formatting the + // message. It is assumed that the message is not UGC, and came from the + // developer making it more like a template. + // + // Note: There's a perf impact of using this component since there's no + // way for React to do its virtual DOM diffing. + return React.createElement(tagName, { + dangerouslySetInnerHTML: { + __html: formattedHTMLMessage + } + }); } - s0 = s1; - } + }]); + return FormattedHTMLMessage; + }(React.Component); - return s0; - } + FormattedHTMLMessage.displayName = 'FormattedHTMLMessage'; - function peg$parsemessageTextElement() { - var s0, s1; + FormattedHTMLMessage.contextTypes = { + intl: intlShape + }; - s0 = peg$currPos; - s1 = peg$parsemessageText(); - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c4(s1); - } - s0 = s1; + FormattedHTMLMessage.propTypes = babelHelpers['extends']({}, messageDescriptorPropTypes, { + values: React.PropTypes.object, + tagName: React.PropTypes.string, + children: React.PropTypes.func + }); - return s0; + FormattedHTMLMessage.defaultProps = { + values: {}, + tagName: 'span' + }; + + addLocaleData(defaultLocaleData); + + addLocaleData(allLocaleData); + + exports.addLocaleData = addLocaleData; + exports.intlShape = intlShape; + exports.injectIntl = injectIntl; + exports.defineMessages = defineMessages; + exports.IntlProvider = IntlProvider; + exports.FormattedDate = FormattedDate; + exports.FormattedTime = FormattedTime; + exports.FormattedRelative = FormattedRelative; + exports.FormattedNumber = FormattedNumber; + exports.FormattedPlural = FormattedPlural; + exports.FormattedMessage = FormattedMessage; + exports.FormattedHTMLMessage = FormattedHTMLMessage; + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(7))) + +/***/ }, +/* 7 */ +/***/ function(module, exports) { + + // shim for using process in browser + + var process = module.exports = {}; + var queue = []; + var draining = false; + var currentQueue; + var queueIndex = -1; + + function cleanUpNextTick() { + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); } + } - function peg$parseargument() { - var s0, s1, s2; + function drainQueue() { + if (draining) { + return; + } + var timeout = setTimeout(cleanUpNextTick); + draining = true; - s0 = peg$parsenumber(); - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - if (peg$c5.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c6); } - } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - if (peg$c5.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c6); } + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); } - } - } else { - s1 = peg$c2; } - if (s1 !== peg$FAILED) { - s1 = input.substring(s0, peg$currPos); - } - s0 = s1; - } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + clearTimeout(timeout); + } - return s0; + process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + setTimeout(drainQueue, 0); } + }; - function peg$parseargumentElement() { - var s0, s1, s2, s3, s4, s5, s6, s7, s8; + // v8 likes predictible objects + function Item(fun, array) { + this.fun = fun; + this.array = array; + } + Item.prototype.run = function () { + this.fun.apply(null, this.array); + }; + process.title = 'browser'; + process.browser = true; + process.env = {}; + process.argv = []; + process.version = ''; // empty string to avoid regexp issues + process.versions = {}; - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 123) { - s1 = peg$c7; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c8); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - s3 = peg$parseargument(); - if (s3 !== peg$FAILED) { - s4 = peg$parse_(); - if (s4 !== peg$FAILED) { - s5 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 44) { - s6 = peg$c10; - peg$currPos++; - } else { - s6 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c11); } - } - if (s6 !== peg$FAILED) { - s7 = peg$parse_(); - if (s7 !== peg$FAILED) { - s8 = peg$parseelementFormat(); - if (s8 !== peg$FAILED) { - s6 = [s6, s7, s8]; - s5 = s6; - } else { - peg$currPos = s5; - s5 = peg$c2; - } - } else { - peg$currPos = s5; - s5 = peg$c2; - } - } else { - peg$currPos = s5; - s5 = peg$c2; - } - if (s5 === peg$FAILED) { - s5 = peg$c9; - } - if (s5 !== peg$FAILED) { - s6 = peg$parse_(); - if (s6 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s7 = peg$c12; - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c13); } - } - if (s7 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c14(s3, s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parseelementFormat() { - var s0; - - s0 = peg$parsesimpleFormat(); - if (s0 === peg$FAILED) { - s0 = peg$parsepluralFormat(); - if (s0 === peg$FAILED) { - s0 = peg$parseselectOrdinalFormat(); - if (s0 === peg$FAILED) { - s0 = peg$parseselectFormat(); - } - } - } - - return s0; - } - - function peg$parsesimpleFormat() { - var s0, s1, s2, s3, s4, s5, s6; - - s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c15) { - s1 = peg$c15; - peg$currPos += 6; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c16); } - } - if (s1 === peg$FAILED) { - if (input.substr(peg$currPos, 4) === peg$c17) { - s1 = peg$c17; - peg$currPos += 4; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c18); } - } - if (s1 === peg$FAILED) { - if (input.substr(peg$currPos, 4) === peg$c19) { - s1 = peg$c19; - peg$currPos += 4; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c20); } - } - } - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - s3 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 44) { - s4 = peg$c10; - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c11); } - } - if (s4 !== peg$FAILED) { - s5 = peg$parse_(); - if (s5 !== peg$FAILED) { - s6 = peg$parsechars(); - if (s6 !== peg$FAILED) { - s4 = [s4, s5, s6]; - s3 = s4; - } else { - peg$currPos = s3; - s3 = peg$c2; - } - } else { - peg$currPos = s3; - s3 = peg$c2; - } - } else { - peg$currPos = s3; - s3 = peg$c2; - } - if (s3 === peg$FAILED) { - s3 = peg$c9; - } - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c21(s1, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parsepluralFormat() { - var s0, s1, s2, s3, s4, s5; - - s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c22) { - s1 = peg$c22; - peg$currPos += 6; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c23); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 44) { - s3 = peg$c10; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c11); } - } - if (s3 !== peg$FAILED) { - s4 = peg$parse_(); - if (s4 !== peg$FAILED) { - s5 = peg$parsepluralStyle(); - if (s5 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c24(s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parseselectOrdinalFormat() { - var s0, s1, s2, s3, s4, s5; - - s0 = peg$currPos; - if (input.substr(peg$currPos, 13) === peg$c25) { - s1 = peg$c25; - peg$currPos += 13; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c26); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 44) { - s3 = peg$c10; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c11); } - } - if (s3 !== peg$FAILED) { - s4 = peg$parse_(); - if (s4 !== peg$FAILED) { - s5 = peg$parsepluralStyle(); - if (s5 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c27(s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parseselectFormat() { - var s0, s1, s2, s3, s4, s5, s6; - - s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c28) { - s1 = peg$c28; - peg$currPos += 6; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c29); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 44) { - s3 = peg$c10; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c11); } - } - if (s3 !== peg$FAILED) { - s4 = peg$parse_(); - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parseoptionalFormatPattern(); - if (s6 !== peg$FAILED) { - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parseoptionalFormatPattern(); - } - } else { - s5 = peg$c2; - } - if (s5 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c30(s5); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parseselector() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - s1 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 61) { - s2 = peg$c31; - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c32); } - } - if (s2 !== peg$FAILED) { - s3 = peg$parsenumber(); - if (s3 !== peg$FAILED) { - s2 = [s2, s3]; - s1 = s2; - } else { - peg$currPos = s1; - s1 = peg$c2; - } - } else { - peg$currPos = s1; - s1 = peg$c2; - } - if (s1 !== peg$FAILED) { - s1 = input.substring(s0, peg$currPos); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$parsechars(); - } - - return s0; - } - - function peg$parseoptionalFormatPattern() { - var s0, s1, s2, s3, s4, s5, s6, s7, s8; - - s0 = peg$currPos; - s1 = peg$parse_(); - if (s1 !== peg$FAILED) { - s2 = peg$parseselector(); - if (s2 !== peg$FAILED) { - s3 = peg$parse_(); - if (s3 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 123) { - s4 = peg$c7; - peg$currPos++; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c8); } - } - if (s4 !== peg$FAILED) { - s5 = peg$parse_(); - if (s5 !== peg$FAILED) { - s6 = peg$parsemessageFormatPattern(); - if (s6 !== peg$FAILED) { - s7 = peg$parse_(); - if (s7 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s8 = peg$c12; - peg$currPos++; - } else { - s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c13); } - } - if (s8 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c33(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parseoffset() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c34) { - s1 = peg$c34; - peg$currPos += 7; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c35); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - s3 = peg$parsenumber(); - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c36(s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parsepluralStyle() { - var s0, s1, s2, s3, s4; - - s0 = peg$currPos; - s1 = peg$parseoffset(); - if (s1 === peg$FAILED) { - s1 = peg$c9; - } - if (s1 !== peg$FAILED) { - s2 = peg$parse_(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parseoptionalFormatPattern(); - if (s4 !== peg$FAILED) { - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parseoptionalFormatPattern(); - } - } else { - s3 = peg$c2; - } - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c37(s1, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - - return s0; - } - - function peg$parsews() { - var s0, s1; - - peg$silentFails++; - s0 = []; - if (peg$c39.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c40); } - } - if (s1 !== peg$FAILED) { - while (s1 !== peg$FAILED) { - s0.push(s1); - if (peg$c39.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c40); } - } - } - } else { - s0 = peg$c2; - } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c38); } - } - - return s0; - } - - function peg$parse_() { - var s0, s1, s2; - - peg$silentFails++; - s0 = peg$currPos; - s1 = []; - s2 = peg$parsews(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsews(); - } - if (s1 !== peg$FAILED) { - s1 = input.substring(s0, peg$currPos); - } - s0 = s1; - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c41); } - } - - return s0; - } - - function peg$parsedigit() { - var s0; - - if (peg$c42.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c43); } - } - - return s0; - } - - function peg$parsehexDigit() { - var s0; - - if (peg$c44.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c45); } - } - - return s0; - } - - function peg$parsenumber() { - var s0, s1, s2, s3, s4, s5; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 48) { - s1 = peg$c46; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c47); } - } - if (s1 === peg$FAILED) { - s1 = peg$currPos; - s2 = peg$currPos; - if (peg$c48.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c49); } - } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parsedigit(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parsedigit(); - } - if (s4 !== peg$FAILED) { - s3 = [s3, s4]; - s2 = s3; - } else { - peg$currPos = s2; - s2 = peg$c2; - } - } else { - peg$currPos = s2; - s2 = peg$c2; - } - if (s2 !== peg$FAILED) { - s2 = input.substring(s1, peg$currPos); - } - s1 = s2; - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c50(s1); - } - s0 = s1; - - return s0; - } - - function peg$parsechar() { - var s0, s1, s2, s3, s4, s5, s6, s7; - - if (peg$c51.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c52); } - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c53) { - s1 = peg$c53; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c54); } - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c55(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c56) { - s1 = peg$c56; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c57); } - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c58(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c59) { - s1 = peg$c59; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c60); } - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c61(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c62) { - s1 = peg$c62; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c63); } - } - if (s1 !== peg$FAILED) { - s2 = peg$currPos; - s3 = peg$currPos; - s4 = peg$parsehexDigit(); - if (s4 !== peg$FAILED) { - s5 = peg$parsehexDigit(); - if (s5 !== peg$FAILED) { - s6 = peg$parsehexDigit(); - if (s6 !== peg$FAILED) { - s7 = peg$parsehexDigit(); - if (s7 !== peg$FAILED) { - s4 = [s4, s5, s6, s7]; - s3 = s4; - } else { - peg$currPos = s3; - s3 = peg$c2; - } - } else { - peg$currPos = s3; - s3 = peg$c2; - } - } else { - peg$currPos = s3; - s3 = peg$c2; - } - } else { - peg$currPos = s3; - s3 = peg$c2; - } - if (s3 !== peg$FAILED) { - s3 = input.substring(s2, peg$currPos); - } - s2 = s3; - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c64(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } else { - peg$currPos = s0; - s0 = peg$c2; - } - } - } - } - } - - return s0; - } - - function peg$parsechars() { - var s0, s1, s2; - - s0 = peg$currPos; - s1 = []; - s2 = peg$parsechar(); - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parsechar(); - } - } else { - s1 = peg$c2; - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c65(s1); - } - s0 = s1; - - return s0; - } - - peg$result = peg$startRuleFunction(); - - if (peg$result !== peg$FAILED && peg$currPos === input.length) { - return peg$result; - } else { - if (peg$result !== peg$FAILED && peg$currPos < input.length) { - peg$fail({ type: "end", description: "end of input" }); - } - - throw peg$buildException(null, peg$maxFailExpected, peg$maxFailPos); - } - } - - return { - SyntaxError: SyntaxError, - parse: parse - }; - })(); + function noop() {} - //# sourceMappingURL=parser.js.map + process.on = noop; + process.addListener = noop; + process.once = noop; + process.off = noop; + process.removeListener = noop; + process.removeAllListeners = noop; + process.emit = noop; -/***/ }, -/* 15 */ -/***/ function(module, exports) { + process.binding = function (name) { + throw new Error('process.binding is not supported'); + }; - // GENERATED FILE - "use strict"; - exports["default"] = {"locale":"en","pluralRuleFunction":function (n,ord){var s=String(n).split("."),v0=!s[1],t0=Number(s[0])==n,n10=t0&&s[0].slice(-1),n100=t0&&s[0].slice(-2);if(ord)return n10==1&&n100!=11?"one":n10==2&&n100!=12?"two":n10==3&&n100!=13?"few":"other";return n==1&&v0?"one":"other"}}; + process.cwd = function () { return '/' }; + process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); + }; + process.umask = function() { return 0; }; - //# sourceMappingURL=en.js.map /***/ }, -/* 16 */ +/* 8 */ /***/ function(module, exports) { /* (ignored) */ /***/ }, -/* 17 */ +/* 9 */ /***/ function(module, exports, __webpack_require__) { /* jshint node:true */ 'use strict'; - var IntlRelativeFormat = __webpack_require__(18)['default']; + var IntlMessageFormat = __webpack_require__(10)['default']; - // Add all locale data to `IntlRelativeFormat`. This module will be ignored when + // Add all locale data to `IntlMessageFormat`. This module will be ignored when // bundling for the browser with Browserify/Webpack. - __webpack_require__(23); + __webpack_require__(18); - // Re-export `IntlRelativeFormat` as the CommonJS default exports with all the + // Re-export `IntlMessageFormat` as the CommonJS default exports with all the // locale data registered, and with English set as the default locale. Define // the `default` prop for use with other compiled ES6 Modules. - exports = module.exports = IntlRelativeFormat; + exports = module.exports = IntlMessageFormat; exports['default'] = exports; /***/ }, -/* 18 */ +/* 10 */ /***/ function(module, exports, __webpack_require__) { /* jslint esnext: true */ "use strict"; - var src$core$$ = __webpack_require__(19), src$en$$ = __webpack_require__(22); + var src$core$$ = __webpack_require__(11), src$en$$ = __webpack_require__(17); src$core$$["default"].__addLocaleData(src$en$$["default"]); src$core$$["default"].defaultLocale = 'en'; @@ -2597,7 +2055,7 @@ var Grommet = //# sourceMappingURL=main.js.map /***/ }, -/* 19 */ +/* 11 */ /***/ function(module, exports, __webpack_require__) { /* @@ -2609,234 +2067,231 @@ var Grommet = /* jslint esnext: true */ "use strict"; - var intl$messageformat$$ = __webpack_require__(7), src$diff$$ = __webpack_require__(20), src$es5$$ = __webpack_require__(21); - exports["default"] = RelativeFormat; + var src$utils$$ = __webpack_require__(12), src$es5$$ = __webpack_require__(13), src$compiler$$ = __webpack_require__(14), intl$messageformat$parser$$ = __webpack_require__(15); + exports["default"] = MessageFormat; - // ----------------------------------------------------------------------------- + // -- MessageFormat -------------------------------------------------------- - var FIELDS = ['second', 'minute', 'hour', 'day', 'month', 'year']; - var STYLES = ['best fit', 'numeric']; + function MessageFormat(message, locales, formats) { + // Parse string messages into an AST. + var ast = typeof message === 'string' ? + MessageFormat.__parse(message) : message; - // -- RelativeFormat ----------------------------------------------------------- + if (!(ast && ast.type === 'messageFormatPattern')) { + throw new TypeError('A message must be provided as a String or AST.'); + } - function RelativeFormat(locales, options) { - options = options || {}; + // Creates a new object with the specified `formats` merged with the default + // formats. + formats = this._mergeFormats(MessageFormat.formats, formats); - // Make a copy of `locales` if it's an array, so that it doesn't change - // since it's used lazily. - if (src$es5$$.isArray(locales)) { - locales = locales.concat(); - } + // Defined first because it's used to build the format pattern. + src$es5$$.defineProperty(this, '_locale', {value: this._resolveLocale(locales)}); - src$es5$$.defineProperty(this, '_locale', {value: this._resolveLocale(locales)}); - src$es5$$.defineProperty(this, '_options', {value: { - style: this._resolveStyle(options.style), - units: this._isValidUnits(options.units) && options.units - }}); + // Compile the `ast` to a pattern that is highly optimized for repeated + // `format()` invocations. **Note:** This passes the `locales` set provided + // to the constructor instead of just the resolved locale. + var pluralFn = this._findPluralRuleFunction(this._locale); + var pattern = this._compilePattern(ast, locales, formats, pluralFn); - src$es5$$.defineProperty(this, '_locales', {value: locales}); - src$es5$$.defineProperty(this, '_fields', {value: this._findFields(this._locale)}); - src$es5$$.defineProperty(this, '_messages', {value: src$es5$$.objCreate(null)}); + // "Bind" `format()` method to `this` so it can be passed by reference like + // the other `Intl` APIs. + var messageFormat = this; + this.format = function (values) { + return messageFormat._format(pattern, values); + }; + } + + // Default format options used as the prototype of the `formats` provided to the + // constructor. These are used when constructing the internal Intl.NumberFormat + // and Intl.DateTimeFormat instances. + src$es5$$.defineProperty(MessageFormat, 'formats', { + enumerable: true, + + value: { + number: { + 'currency': { + style: 'currency' + }, + + 'percent': { + style: 'percent' + } + }, + + date: { + 'short': { + month: 'numeric', + day : 'numeric', + year : '2-digit' + }, + + 'medium': { + month: 'short', + day : 'numeric', + year : 'numeric' + }, + + 'long': { + month: 'long', + day : 'numeric', + year : 'numeric' + }, + + 'full': { + weekday: 'long', + month : 'long', + day : 'numeric', + year : 'numeric' + } + }, + + time: { + 'short': { + hour : 'numeric', + minute: 'numeric' + }, + + 'medium': { + hour : 'numeric', + minute: 'numeric', + second: 'numeric' + }, + + 'long': { + hour : 'numeric', + minute : 'numeric', + second : 'numeric', + timeZoneName: 'short' + }, - // "Bind" `format()` method to `this` so it can be passed by reference like - // the other `Intl` APIs. - var relativeFormat = this; - this.format = function format(date, options) { - return relativeFormat._format(date, options); - }; - } + 'full': { + hour : 'numeric', + minute : 'numeric', + second : 'numeric', + timeZoneName: 'short' + } + } + } + }); // Define internal private properties for dealing with locale data. - src$es5$$.defineProperty(RelativeFormat, '__localeData__', {value: src$es5$$.objCreate(null)}); - src$es5$$.defineProperty(RelativeFormat, '__addLocaleData', {value: function (data) { + src$es5$$.defineProperty(MessageFormat, '__localeData__', {value: src$es5$$.objCreate(null)}); + src$es5$$.defineProperty(MessageFormat, '__addLocaleData', {value: function (data) { if (!(data && data.locale)) { throw new Error( - 'Locale data provided to IntlRelativeFormat is missing a ' + - '`locale` property value' + 'Locale data provided to IntlMessageFormat is missing a ' + + '`locale` property' ); } - RelativeFormat.__localeData__[data.locale.toLowerCase()] = data; - - // Add data to IntlMessageFormat. - intl$messageformat$$["default"].__addLocaleData(data); + MessageFormat.__localeData__[data.locale.toLowerCase()] = data; }}); - // Define public `defaultLocale` property which can be set by the developer, or - // it will be set when the first RelativeFormat instance is created by - // leveraging the resolved locale from `Intl`. - src$es5$$.defineProperty(RelativeFormat, 'defaultLocale', { + // Defines `__parse()` static method as an exposed private. + src$es5$$.defineProperty(MessageFormat, '__parse', {value: intl$messageformat$parser$$["default"].parse}); + + // Define public `defaultLocale` property which defaults to English, but can be + // set by the developer. + src$es5$$.defineProperty(MessageFormat, 'defaultLocale', { enumerable: true, writable : true, value : undefined }); - // Define public `thresholds` property which can be set by the developer, and - // defaults to relative time thresholds from moment.js. - src$es5$$.defineProperty(RelativeFormat, 'thresholds', { - enumerable: true, - - value: { - second: 45, // seconds to minute - minute: 45, // minutes to hour - hour : 22, // hours to day - day : 26, // days to month - month : 11 // months to year - } - }); - - RelativeFormat.prototype.resolvedOptions = function () { + MessageFormat.prototype.resolvedOptions = function () { + // TODO: Provide anything else? return { - locale: this._locale, - style : this._options.style, - units : this._options.units + locale: this._locale }; }; - RelativeFormat.prototype._compileMessage = function (units) { - // `this._locales` is the original set of locales the user specified to the - // constructor, while `this._locale` is the resolved root locale. - var locales = this._locales; - var resolvedLocale = this._locale; - - var field = this._fields[units]; - var relativeTime = field.relativeTime; - var future = ''; - var past = ''; - var i; - - for (i in relativeTime.future) { - if (relativeTime.future.hasOwnProperty(i)) { - future += ' ' + i + ' {' + - relativeTime.future[i].replace('{0}', '#') + '}'; - } - } - - for (i in relativeTime.past) { - if (relativeTime.past.hasOwnProperty(i)) { - past += ' ' + i + ' {' + - relativeTime.past[i].replace('{0}', '#') + '}'; - } - } - - var message = '{when, select, future {{0, plural, ' + future + '}}' + - 'past {{0, plural, ' + past + '}}}'; - - // Create the synthetic IntlMessageFormat instance using the original - // locales value specified by the user when constructing the the parent - // IntlRelativeFormat instance. - return new intl$messageformat$$["default"](message, locales); - }; - - RelativeFormat.prototype._getMessage = function (units) { - var messages = this._messages; - - // Create a new synthetic message based on the locale data from CLDR. - if (!messages[units]) { - messages[units] = this._compileMessage(units); - } - - return messages[units]; - }; - - RelativeFormat.prototype._getRelativeUnits = function (diff, units) { - var field = this._fields[units]; - - if (field.relative) { - return field.relative[diff]; - } + MessageFormat.prototype._compilePattern = function (ast, locales, formats, pluralFn) { + var compiler = new src$compiler$$["default"](locales, formats, pluralFn); + return compiler.compile(ast); }; - RelativeFormat.prototype._findFields = function (locale) { - var localeData = RelativeFormat.__localeData__; + MessageFormat.prototype._findPluralRuleFunction = function (locale) { + var localeData = MessageFormat.__localeData__; var data = localeData[locale.toLowerCase()]; // The locale data is de-duplicated, so we have to traverse the locale's - // hierarchy until we find `fields` to return. + // hierarchy until we find a `pluralRuleFunction` to return. while (data) { - if (data.fields) { - return data.fields; + if (data.pluralRuleFunction) { + return data.pluralRuleFunction; } data = data.parentLocale && localeData[data.parentLocale.toLowerCase()]; } throw new Error( - 'Locale data added to IntlRelativeFormat is missing `fields` for :' + - locale + 'Locale data added to IntlMessageFormat is missing a ' + + '`pluralRuleFunction` for :' + locale ); }; - RelativeFormat.prototype._format = function (date, options) { - var now = options && options.now !== undefined ? options.now : src$es5$$.dateNow(); + MessageFormat.prototype._format = function (pattern, values) { + var result = '', + i, len, part, id, value; - if (date === undefined) { - date = now; - } + for (i = 0, len = pattern.length; i < len; i += 1) { + part = pattern[i]; - // Determine if the `date` and optional `now` values are valid, and throw a - // similar error to what `Intl.DateTimeFormat#format()` would throw. - if (!isFinite(now)) { - throw new RangeError( - 'The `now` option provided to IntlRelativeFormat#format() is not ' + - 'in valid range.' - ); - } + // Exist early for string parts. + if (typeof part === 'string') { + result += part; + continue; + } - if (!isFinite(date)) { - throw new RangeError( - 'The date value provided to IntlRelativeFormat#format() is not ' + - 'in valid range.' - ); - } + id = part.id; - var diffReport = src$diff$$["default"](now, date); - var units = this._options.units || this._selectUnits(diffReport); - var diffInUnits = diffReport[units]; + // Enforce that all required values are provided by the caller. + if (!(values && src$utils$$.hop.call(values, id))) { + throw new Error('A value must be provided for: ' + id); + } - if (this._options.style !== 'numeric') { - var relativeUnits = this._getRelativeUnits(diffInUnits, units); - if (relativeUnits) { - return relativeUnits; + value = values[id]; + + // Recursively format plural and select parts' option — which can be a + // nested pattern structure. The choosing of the option to use is + // abstracted-by and delegated-to the part helper object. + if (part.options) { + result += this._format(part.getOption(value), values); + } else { + result += part.format(value); } } - return this._getMessage(units).format({ - '0' : Math.abs(diffInUnits), - when: diffInUnits < 0 ? 'past' : 'future' - }); + return result; }; - RelativeFormat.prototype._isValidUnits = function (units) { - if (!units || src$es5$$.arrIndexOf.call(FIELDS, units) >= 0) { - return true; - } + MessageFormat.prototype._mergeFormats = function (defaults, formats) { + var mergedFormats = {}, + type, mergedType; - if (typeof units === 'string') { - var suggestion = /s$/.test(units) && units.substr(0, units.length - 1); - if (suggestion && src$es5$$.arrIndexOf.call(FIELDS, suggestion) >= 0) { - throw new Error( - '"' + units + '" is not a valid IntlRelativeFormat `units` ' + - 'value, did you mean: ' + suggestion - ); + for (type in defaults) { + if (!src$utils$$.hop.call(defaults, type)) { continue; } + + mergedFormats[type] = mergedType = src$es5$$.objCreate(defaults[type]); + + if (formats && src$utils$$.hop.call(formats, type)) { + src$utils$$.extend(mergedType, formats[type]); } } - throw new Error( - '"' + units + '" is not a valid IntlRelativeFormat `units` value, it ' + - 'must be one of: "' + FIELDS.join('", "') + '"' - ); + return mergedFormats; }; - RelativeFormat.prototype._resolveLocale = function (locales) { + MessageFormat.prototype._resolveLocale = function (locales) { if (typeof locales === 'string') { locales = [locales]; } // Create a copy of the array so we can push on the default locale. - locales = (locales || []).concat(RelativeFormat.defaultLocale); + locales = (locales || []).concat(MessageFormat.defaultLocale); - var localeData = RelativeFormat.__localeData__; + var localeData = MessageFormat.__localeData__; var i, len, localeParts, data; // Using the set of locales + the default locale, we look for the first one @@ -2861,45 +2316,15 @@ var Grommet = var defaultLocale = locales.pop(); throw new Error( - 'No locale data has been added to IntlRelativeFormat for: ' + + 'No locale data has been added to IntlMessageFormat for: ' + locales.join(', ') + ', or the default locale: ' + defaultLocale ); }; - RelativeFormat.prototype._resolveStyle = function (style) { - // Default to "best fit" style. - if (!style) { - return STYLES[0]; - } - - if (src$es5$$.arrIndexOf.call(STYLES, style) >= 0) { - return style; - } - - throw new Error( - '"' + style + '" is not a valid IntlRelativeFormat `style` value, it ' + - 'must be one of: "' + STYLES.join('", "') + '"' - ); - }; - - RelativeFormat.prototype._selectUnits = function (diffReport) { - var i, l, units; - - for (i = 0, l = FIELDS.length; i < l; i += 1) { - units = FIELDS[i]; - - if (Math.abs(diffReport[units]) < RelativeFormat.thresholds[units]) { - break; - } - } - - return units; - }; - //# sourceMappingURL=core.js.map /***/ }, -/* 20 */ +/* 12 */ /***/ function(module, exports) { /* @@ -2911,47 +2336,33 @@ var Grommet = /* jslint esnext: true */ "use strict"; + exports.extend = extend; + var hop = Object.prototype.hasOwnProperty; - var round = Math.round; - - function daysToYears(days) { - // 400 years have 146097 days (taking into account leap year rules) - return days * 400 / 146097; - } - - exports["default"] = function (from, to) { - // Convert to ms timestamps. - from = +from; - to = +to; + function extend(obj) { + var sources = Array.prototype.slice.call(arguments, 1), + i, len, source, key; - var millisecond = round(to - from), - second = round(millisecond / 1000), - minute = round(second / 60), - hour = round(minute / 60), - day = round(hour / 24), - week = round(day / 7); + for (i = 0, len = sources.length; i < len; i += 1) { + source = sources[i]; + if (!source) { continue; } - var rawYears = daysToYears(day), - month = round(rawYears * 12), - year = round(rawYears); + for (key in source) { + if (hop.call(source, key)) { + obj[key] = source[key]; + } + } + } - return { - millisecond: millisecond, - second : second, - minute : minute, - hour : hour, - day : day, - week : week, - month : month, - year : year - }; - }; + return obj; + } + exports.hop = hop; - //# sourceMappingURL=diff.js.map + //# sourceMappingURL=utils.js.map /***/ }, -/* 21 */ -/***/ function(module, exports) { +/* 13 */ +/***/ function(module, exports, __webpack_require__) { /* Copyright (c) 2014, Yahoo! Inc. All rights reserved. @@ -2962,13 +2373,11 @@ var Grommet = /* jslint esnext: true */ "use strict"; + var src$utils$$ = __webpack_require__(12); // Purposely using the same implementation as the Intl.js `Intl` polyfill. // Copyright 2013 Andy Earnshaw, MIT License - var hop = Object.prototype.hasOwnProperty; - var toString = Object.prototype.toString; - var realDefineProp = (function () { try { return !!Object.defineProperty({}, 'a', {}); } catch (e) { return false; } @@ -2981,7 +2390,7 @@ var Grommet = if ('get' in desc && obj.__defineGetter__) { obj.__defineGetter__(name, desc.get); - } else if (!hop.call(obj, name) || 'value' in desc) { + } else if (!src$utils$$.hop.call(obj, name) || 'value' in desc) { obj[name] = desc.value; } }; @@ -2994,1805 +2403,2358 @@ var Grommet = obj = new F(); for (k in props) { - if (hop.call(props, k)) { + if (src$utils$$.hop.call(props, k)) { defineProperty(obj, k, props[k]); } } return obj; }; + exports.defineProperty = defineProperty, exports.objCreate = objCreate; - var arrIndexOf = Array.prototype.indexOf || function (search, fromIndex) { - /*jshint validthis:true */ - var arr = this; - if (!arr.length) { - return -1; - } + //# sourceMappingURL=es5.js.map - for (var i = fromIndex || 0, max = arr.length; i < max; i++) { - if (arr[i] === search) { - return i; - } - } +/***/ }, +/* 14 */ +/***/ function(module, exports) { - return -1; - }; + /* + Copyright (c) 2014, Yahoo! Inc. All rights reserved. + Copyrights licensed under the New BSD License. + See the accompanying LICENSE file for terms. + */ - var isArray = Array.isArray || function (obj) { - return toString.call(obj) === '[object Array]'; + /* jslint esnext: true */ + + "use strict"; + exports["default"] = Compiler; + + function Compiler(locales, formats, pluralFn) { + this.locales = locales; + this.formats = formats; + this.pluralFn = pluralFn; + } + + Compiler.prototype.compile = function (ast) { + this.pluralStack = []; + this.currentPlural = null; + this.pluralNumberFormat = null; + + return this.compileMessage(ast); }; - var dateNow = Date.now || function () { - return new Date().getTime(); + Compiler.prototype.compileMessage = function (ast) { + if (!(ast && ast.type === 'messageFormatPattern')) { + throw new Error('Message AST is not of type: "messageFormatPattern"'); + } + + var elements = ast.elements, + pattern = []; + + var i, len, element; + + for (i = 0, len = elements.length; i < len; i += 1) { + element = elements[i]; + + switch (element.type) { + case 'messageTextElement': + pattern.push(this.compileMessageText(element)); + break; + + case 'argumentElement': + pattern.push(this.compileArgument(element)); + break; + + default: + throw new Error('Message element does not have a valid type'); + } + } + + return pattern; }; - exports.defineProperty = defineProperty, exports.objCreate = objCreate, exports.arrIndexOf = arrIndexOf, exports.isArray = isArray, exports.dateNow = dateNow; - //# sourceMappingURL=es5.js.map + Compiler.prototype.compileMessageText = function (element) { + // When this `element` is part of plural sub-pattern and its value contains + // an unescaped '#', use a `PluralOffsetString` helper to properly output + // the number with the correct offset in the string. + if (this.currentPlural && /(^|[^\\])#/g.test(element.value)) { + // Create a cache a NumberFormat instance that can be reused for any + // PluralOffsetString instance in this message. + if (!this.pluralNumberFormat) { + this.pluralNumberFormat = new Intl.NumberFormat(this.locales); + } -/***/ }, -/* 22 */ -/***/ function(module, exports) { + return new PluralOffsetString( + this.currentPlural.id, + this.currentPlural.format.offset, + this.pluralNumberFormat, + element.value); + } - // GENERATED FILE - "use strict"; - exports["default"] = {"locale":"en","pluralRuleFunction":function (n,ord){var s=String(n).split("."),v0=!s[1],t0=Number(s[0])==n,n10=t0&&s[0].slice(-1),n100=t0&&s[0].slice(-2);if(ord)return n10==1&&n100!=11?"one":n10==2&&n100!=12?"two":n10==3&&n100!=13?"few":"other";return n==1&&v0?"one":"other"},"fields":{"year":{"displayName":"Year","relative":{"0":"this year","1":"next year","-1":"last year"},"relativeTime":{"future":{"one":"in {0} year","other":"in {0} years"},"past":{"one":"{0} year ago","other":"{0} years ago"}}},"month":{"displayName":"Month","relative":{"0":"this month","1":"next month","-1":"last month"},"relativeTime":{"future":{"one":"in {0} month","other":"in {0} months"},"past":{"one":"{0} month ago","other":"{0} months ago"}}},"day":{"displayName":"Day","relative":{"0":"today","1":"tomorrow","-1":"yesterday"},"relativeTime":{"future":{"one":"in {0} day","other":"in {0} days"},"past":{"one":"{0} day ago","other":"{0} days ago"}}},"hour":{"displayName":"Hour","relativeTime":{"future":{"one":"in {0} hour","other":"in {0} hours"},"past":{"one":"{0} hour ago","other":"{0} hours ago"}}},"minute":{"displayName":"Minute","relativeTime":{"future":{"one":"in {0} minute","other":"in {0} minutes"},"past":{"one":"{0} minute ago","other":"{0} minutes ago"}}},"second":{"displayName":"Second","relative":{"0":"now"},"relativeTime":{"future":{"one":"in {0} second","other":"in {0} seconds"},"past":{"one":"{0} second ago","other":"{0} seconds ago"}}}}}; + // Unescape the escaped '#'s in the message text. + return element.value.replace(/\\#/g, '#'); + }; - //# sourceMappingURL=en.js.map + Compiler.prototype.compileArgument = function (element) { + var format = element.format; -/***/ }, -/* 23 */ -/***/ function(module, exports) { + if (!format) { + return new StringFormat(element.id); + } - /* (ignored) */ + var formats = this.formats, + locales = this.locales, + pluralFn = this.pluralFn, + options; -/***/ }, -/* 24 */ -/***/ function(module, exports) { + switch (format.type) { + case 'numberFormat': + options = formats.number[format.style]; + return { + id : element.id, + format: new Intl.NumberFormat(locales, options).format + }; - // GENERATED FILE - "use strict"; + case 'dateFormat': + options = formats.date[format.style]; + return { + id : element.id, + format: new Intl.DateTimeFormat(locales, options).format + }; - exports.__esModule = true; - exports["default"] = { "locale": "en", "pluralRuleFunction": function pluralRuleFunction(n, ord) { - var s = String(n).split("."), - v0 = !s[1], - t0 = Number(s[0]) == n, - n10 = t0 && s[0].slice(-1), - n100 = t0 && s[0].slice(-2);if (ord) return n10 == 1 && n100 != 11 ? "one" : n10 == 2 && n100 != 12 ? "two" : n10 == 3 && n100 != 13 ? "few" : "other";return n == 1 && v0 ? "one" : "other"; - }, "fields": { "year": { "displayName": "Year", "relative": { "0": "this year", "1": "next year", "-1": "last year" }, "relativeTime": { "future": { "one": "in {0} year", "other": "in {0} years" }, "past": { "one": "{0} year ago", "other": "{0} years ago" } } }, "month": { "displayName": "Month", "relative": { "0": "this month", "1": "next month", "-1": "last month" }, "relativeTime": { "future": { "one": "in {0} month", "other": "in {0} months" }, "past": { "one": "{0} month ago", "other": "{0} months ago" } } }, "day": { "displayName": "Day", "relative": { "0": "today", "1": "tomorrow", "-1": "yesterday" }, "relativeTime": { "future": { "one": "in {0} day", "other": "in {0} days" }, "past": { "one": "{0} day ago", "other": "{0} days ago" } } }, "hour": { "displayName": "Hour", "relativeTime": { "future": { "one": "in {0} hour", "other": "in {0} hours" }, "past": { "one": "{0} hour ago", "other": "{0} hours ago" } } }, "minute": { "displayName": "Minute", "relativeTime": { "future": { "one": "in {0} minute", "other": "in {0} minutes" }, "past": { "one": "{0} minute ago", "other": "{0} minutes ago" } } }, "second": { "displayName": "Second", "relative": { "0": "now" }, "relativeTime": { "future": { "one": "in {0} second", "other": "in {0} seconds" }, "past": { "one": "{0} second ago", "other": "{0} seconds ago" } } } } }; - module.exports = exports["default"]; + case 'timeFormat': + options = formats.time[format.style]; + return { + id : element.id, + format: new Intl.DateTimeFormat(locales, options).format + }; -/***/ }, -/* 25 */ -/***/ function(module, exports, __webpack_require__) { + case 'pluralFormat': + options = this.compileOptions(element); + return new PluralFormat( + element.id, format.ordinal, format.offset, options, pluralFn + ); - /* - * Copyright 2015, Yahoo Inc. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ + case 'selectFormat': + options = this.compileOptions(element); + return new SelectFormat(element.id, options); - 'use strict'; + default: + throw new Error('Message element does not have a valid format type'); + } + }; - exports.__esModule = true; + Compiler.prototype.compileOptions = function (element) { + var format = element.format, + options = format.options, + optionsHash = {}; - var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + // Save the current plural element, if any, then set it to a new value when + // compiling the options sub-patterns. This conforms the spec's algorithm + // for handling `"#"` syntax in message text. + this.pluralStack.push(this.currentPlural); + this.currentPlural = format.type === 'pluralFormat' ? element : null; - function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj['default'] = obj; return newObj; } } + var i, len, option; - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } + for (i = 0, len = options.length; i < len; i += 1) { + option = options[i]; - function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } + // Compile the sub-pattern and save it under the options's selector. + optionsHash[option.selector] = this.compileMessage(option.value); + } - function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + // Pop the plural stack to put back the original current plural value. + this.currentPlural = this.pluralStack.pop(); - var _react = __webpack_require__(2); + return optionsHash; + }; - var _intlMessageformat = __webpack_require__(7); + // -- Compiler Helper Classes -------------------------------------------------- - var _intlMessageformat2 = _interopRequireDefault(_intlMessageformat); + function StringFormat(id) { + this.id = id; + } - var _intlRelativeformat = __webpack_require__(17); + StringFormat.prototype.format = function (value) { + if (!value) { + return ''; + } - var _intlRelativeformat2 = _interopRequireDefault(_intlRelativeformat); + return typeof value === 'string' ? value : String(value); + }; - var _plural = __webpack_require__(26); + function PluralFormat(id, useOrdinal, offset, options, pluralFn) { + this.id = id; + this.useOrdinal = useOrdinal; + this.offset = offset; + this.options = options; + this.pluralFn = pluralFn; + } - var _plural2 = _interopRequireDefault(_plural); + PluralFormat.prototype.getOption = function (value) { + var options = this.options; - var _intlFormatCache = __webpack_require__(27); + var option = options['=' + value] || + options[this.pluralFn(value - this.offset, this.useOrdinal)]; - var _intlFormatCache2 = _interopRequireDefault(_intlFormatCache); + return option || options.other; + }; - var _utils = __webpack_require__(30); + function PluralOffsetString(id, offset, numberFormat, string) { + this.id = id; + this.offset = offset; + this.numberFormat = numberFormat; + this.string = string; + } - var _types = __webpack_require__(32); + PluralOffsetString.prototype.format = function (value) { + var number = this.numberFormat.format(value - this.offset); - var _format = __webpack_require__(33); + return this.string + .replace(/(^|[^\\])#/g, '$1' + number) + .replace(/\\#/g, '#'); + }; - var format = _interopRequireWildcard(_format); + function SelectFormat(id, options) { + this.id = id; + this.options = options; + } - var intlPropNames = Object.keys(_types.intlPropTypes); - var intlFormatPropNames = Object.keys(_types.intlFormatPropTypes); + SelectFormat.prototype.getOption = function (value) { + var options = this.options; + return options[value] || options.other; + }; - var IntlProvider = (function (_Component) { - _inherits(IntlProvider, _Component); + //# sourceMappingURL=compiler.js.map - function IntlProvider(props) { - _classCallCheck(this, IntlProvider); +/***/ }, +/* 15 */ +/***/ function(module, exports, __webpack_require__) { - _Component.call(this, props); + 'use strict'; - // Creating `Intl*` formatters is expensive so these format caches - // memoize the `Intl*` constructors and have the same lifecycle as this - // IntlProvider instance. - this.state = { - getDateTimeFormat: _intlFormatCache2['default'](Intl.DateTimeFormat), - getNumberFormat: _intlFormatCache2['default'](Intl.NumberFormat), - getMessageFormat: _intlFormatCache2['default'](_intlMessageformat2['default']), - getRelativeFormat: _intlFormatCache2['default'](_intlRelativeformat2['default']), - getPluralFormat: _intlFormatCache2['default'](_plural2['default']) - }; - } + exports = module.exports = __webpack_require__(16)['default']; + exports['default'] = exports; - IntlProvider.prototype.getConfig = function getConfig() { - var props = arguments.length <= 0 || arguments[0] === undefined ? this.props : arguments[0]; - return intlPropNames.reduce(function (config, name) { - config[name] = props[name]; - return config; - }, {}); - }; +/***/ }, +/* 16 */ +/***/ function(module, exports) { - IntlProvider.prototype.getBoundFormatFns = function getBoundFormatFns(intl, config) { - return intlFormatPropNames.reduce(function (boundFormatFns, name) { - boundFormatFns[name] = format[name].bind(null, intl, config); - return boundFormatFns; - }, {}); - }; + "use strict"; - IntlProvider.prototype.getChildContext = function getChildContext() { - var intl = this.state; - var config = this.getConfig(); + exports["default"] = (function() { + /* + * Generated by PEG.js 0.8.0. + * + * http://pegjs.majda.cz/ + */ - // Bind intl factories and current config to the format functions. - var boundFormatFns = this.getBoundFormatFns(intl, config); + function peg$subclass(child, parent) { + function ctor() { this.constructor = child; } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } - return { - intl: _extends({}, config, boundFormatFns) - }; - }; + function SyntaxError(message, expected, found, offset, line, column) { + this.message = message; + this.expected = expected; + this.found = found; + this.offset = offset; + this.line = line; + this.column = column; - IntlProvider.prototype.shouldComponentUpdate = function shouldComponentUpdate() { - for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) { - next[_key] = arguments[_key]; - } + this.name = "SyntaxError"; + } - return _utils.shouldIntlComponentUpdate.apply(undefined, [this].concat(next)); - }; + peg$subclass(SyntaxError, Error); - IntlProvider.prototype.render = function render() { - var children = this.props.children; + function parse(input) { + var options = arguments.length > 1 ? arguments[1] : {}, - if (typeof children === 'function') { - // TODO: Pass the result of `this.getChildContext()` to the child fn? - // Or just `{...this.props, ...this.state}`? Or nothing!? Passing - // stuff would expose the underlying info and make it part of the - // public API. - return children(); - } + peg$FAILED = {}, - return children; - }; + peg$startRuleFunctions = { start: peg$parsestart }, + peg$startRuleFunction = peg$parsestart, - return IntlProvider; - })(_react.Component); + peg$c0 = [], + peg$c1 = function(elements) { + return { + type : 'messageFormatPattern', + elements: elements + }; + }, + peg$c2 = peg$FAILED, + peg$c3 = function(text) { + var string = '', + i, j, outerLen, inner, innerLen; - exports['default'] = IntlProvider; + for (i = 0, outerLen = text.length; i < outerLen; i += 1) { + inner = text[i]; - IntlProvider.propTypes = _types.intlPropTypes; + for (j = 0, innerLen = inner.length; j < innerLen; j += 1) { + string += inner[j]; + } + } - IntlProvider.defaultProps = { - // TODO: Should `locale` default to 'en'? Or would that cause issues with - // the meaning of no-locale, which means the user's default. - formats: {}, - messages: {}, + return string; + }, + peg$c4 = function(messageText) { + return { + type : 'messageTextElement', + value: messageText + }; + }, + peg$c5 = /^[^ \t\n\r,.+={}#]/, + peg$c6 = { type: "class", value: "[^ \\t\\n\\r,.+={}#]", description: "[^ \\t\\n\\r,.+={}#]" }, + peg$c7 = "{", + peg$c8 = { type: "literal", value: "{", description: "\"{\"" }, + peg$c9 = null, + peg$c10 = ",", + peg$c11 = { type: "literal", value: ",", description: "\",\"" }, + peg$c12 = "}", + peg$c13 = { type: "literal", value: "}", description: "\"}\"" }, + peg$c14 = function(id, format) { + return { + type : 'argumentElement', + id : id, + format: format && format[2] + }; + }, + peg$c15 = "number", + peg$c16 = { type: "literal", value: "number", description: "\"number\"" }, + peg$c17 = "date", + peg$c18 = { type: "literal", value: "date", description: "\"date\"" }, + peg$c19 = "time", + peg$c20 = { type: "literal", value: "time", description: "\"time\"" }, + peg$c21 = function(type, style) { + return { + type : type + 'Format', + style: style && style[2] + }; + }, + peg$c22 = "plural", + peg$c23 = { type: "literal", value: "plural", description: "\"plural\"" }, + peg$c24 = function(pluralStyle) { + return { + type : pluralStyle.type, + ordinal: false, + offset : pluralStyle.offset || 0, + options: pluralStyle.options + }; + }, + peg$c25 = "selectordinal", + peg$c26 = { type: "literal", value: "selectordinal", description: "\"selectordinal\"" }, + peg$c27 = function(pluralStyle) { + return { + type : pluralStyle.type, + ordinal: true, + offset : pluralStyle.offset || 0, + options: pluralStyle.options + } + }, + peg$c28 = "select", + peg$c29 = { type: "literal", value: "select", description: "\"select\"" }, + peg$c30 = function(options) { + return { + type : 'selectFormat', + options: options + }; + }, + peg$c31 = "=", + peg$c32 = { type: "literal", value: "=", description: "\"=\"" }, + peg$c33 = function(selector, pattern) { + return { + type : 'optionalFormatPattern', + selector: selector, + value : pattern + }; + }, + peg$c34 = "offset:", + peg$c35 = { type: "literal", value: "offset:", description: "\"offset:\"" }, + peg$c36 = function(number) { + return number; + }, + peg$c37 = function(offset, options) { + return { + type : 'pluralFormat', + offset : offset, + options: options + }; + }, + peg$c38 = { type: "other", description: "whitespace" }, + peg$c39 = /^[ \t\n\r]/, + peg$c40 = { type: "class", value: "[ \\t\\n\\r]", description: "[ \\t\\n\\r]" }, + peg$c41 = { type: "other", description: "optionalWhitespace" }, + peg$c42 = /^[0-9]/, + peg$c43 = { type: "class", value: "[0-9]", description: "[0-9]" }, + peg$c44 = /^[0-9a-f]/i, + peg$c45 = { type: "class", value: "[0-9a-f]i", description: "[0-9a-f]i" }, + peg$c46 = "0", + peg$c47 = { type: "literal", value: "0", description: "\"0\"" }, + peg$c48 = /^[1-9]/, + peg$c49 = { type: "class", value: "[1-9]", description: "[1-9]" }, + peg$c50 = function(digits) { + return parseInt(digits, 10); + }, + peg$c51 = /^[^{}\\\0-\x1F \t\n\r]/, + peg$c52 = { type: "class", value: "[^{}\\\\\\0-\\x1F \\t\\n\\r]", description: "[^{}\\\\\\0-\\x1F \\t\\n\\r]" }, + peg$c53 = "\\\\", + peg$c54 = { type: "literal", value: "\\\\", description: "\"\\\\\\\\\"" }, + peg$c55 = function() { return '\\'; }, + peg$c56 = "\\#", + peg$c57 = { type: "literal", value: "\\#", description: "\"\\\\#\"" }, + peg$c58 = function() { return '\\#'; }, + peg$c59 = "\\{", + peg$c60 = { type: "literal", value: "\\{", description: "\"\\\\{\"" }, + peg$c61 = function() { return '\u007B'; }, + peg$c62 = "\\}", + peg$c63 = { type: "literal", value: "\\}", description: "\"\\\\}\"" }, + peg$c64 = function() { return '\u007D'; }, + peg$c65 = "\\u", + peg$c66 = { type: "literal", value: "\\u", description: "\"\\\\u\"" }, + peg$c67 = function(digits) { + return String.fromCharCode(parseInt(digits, 16)); + }, + peg$c68 = function(chars) { return chars.join(''); }, - defaultLocale: 'en', - defaultFormats: {} - }; + peg$currPos = 0, + peg$reportedPos = 0, + peg$cachedPos = 0, + peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }, + peg$maxFailPos = 0, + peg$maxFailExpected = [], + peg$silentFails = 0, - IntlProvider.childContextTypes = { - intl: _types.intlShape.isRequired - }; - module.exports = exports['default']; + peg$result; -/***/ }, -/* 26 */ -/***/ function(module, exports, __webpack_require__) { + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleFunctions)) { + throw new Error("Can't start parsing from rule \"" + options.startRule + "\"."); + } - /* - * Copyright 2015, Yahoo Inc. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ + peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; + } - // This is a "hack" until a proper `intl-pluralformat` package is created. + function text() { + return input.substring(peg$reportedPos, peg$currPos); + } - 'use strict'; + function offset() { + return peg$reportedPos; + } - exports.__esModule = true; + function line() { + return peg$computePosDetails(peg$reportedPos).line; + } - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } + function column() { + return peg$computePosDetails(peg$reportedPos).column; + } - function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } + function expected(description) { + throw peg$buildException( + null, + [{ type: "other", description: description }], + peg$reportedPos + ); + } - var _intlMessageformat = __webpack_require__(7); + function error(message) { + throw peg$buildException(message, null, peg$reportedPos); + } - var _intlMessageformat2 = _interopRequireDefault(_intlMessageformat); + function peg$computePosDetails(pos) { + function advance(details, startPos, endPos) { + var p, ch; - function resolveLocale(locales) { - // IntlMessageFormat#_resolveLocale() does not depend on `this`. - return _intlMessageformat2['default'].prototype._resolveLocale(locales); - } + for (p = startPos; p < endPos; p++) { + ch = input.charAt(p); + if (ch === "\n") { + if (!details.seenCR) { details.line++; } + details.column = 1; + details.seenCR = false; + } else if (ch === "\r" || ch === "\u2028" || ch === "\u2029") { + details.line++; + details.column = 1; + details.seenCR = true; + } else { + details.column++; + details.seenCR = false; + } + } + } - function findPluralFunction(locale) { - // IntlMessageFormat#_findPluralFunction() does not depend on `this`. - return _intlMessageformat2['default'].prototype._findPluralRuleFunction(locale); - } + if (peg$cachedPos !== pos) { + if (peg$cachedPos > pos) { + peg$cachedPos = 0; + peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }; + } + advance(peg$cachedPosDetails, peg$cachedPos, pos); + peg$cachedPos = pos; + } - var IntlPluralFormat = function IntlPluralFormat(locales) { - var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; + return peg$cachedPosDetails; + } - _classCallCheck(this, IntlPluralFormat); + function peg$fail(expected) { + if (peg$currPos < peg$maxFailPos) { return; } - var useOrdinal = options.style === 'ordinal'; - var pluralFn = findPluralFunction(resolveLocale(locales)); + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; + } - this.format = function (value) { - return pluralFn(value, useOrdinal); - }; - }; + peg$maxFailExpected.push(expected); + } - exports['default'] = IntlPluralFormat; - module.exports = exports['default']; + function peg$buildException(message, expected, pos) { + function cleanupExpected(expected) { + var i = 1; -/***/ }, -/* 27 */ -/***/ function(module, exports, __webpack_require__) { + expected.sort(function(a, b) { + if (a.description < b.description) { + return -1; + } else if (a.description > b.description) { + return 1; + } else { + return 0; + } + }); - 'use strict'; + while (i < expected.length) { + if (expected[i - 1] === expected[i]) { + expected.splice(i, 1); + } else { + i++; + } + } + } - exports = module.exports = __webpack_require__(28)['default']; - exports['default'] = exports; + function buildMessage(expected, found) { + function stringEscape(s) { + function hex(ch) { return ch.charCodeAt(0).toString(16).toUpperCase(); } + return s + .replace(/\\/g, '\\\\') + .replace(/"/g, '\\"') + .replace(/\x08/g, '\\b') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\f/g, '\\f') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x07\x0B\x0E\x0F]/g, function(ch) { return '\\x0' + hex(ch); }) + .replace(/[\x10-\x1F\x80-\xFF]/g, function(ch) { return '\\x' + hex(ch); }) + .replace(/[\u0180-\u0FFF]/g, function(ch) { return '\\u0' + hex(ch); }) + .replace(/[\u1080-\uFFFF]/g, function(ch) { return '\\u' + hex(ch); }); + } -/***/ }, -/* 28 */ -/***/ function(module, exports, __webpack_require__) { + var expectedDescs = new Array(expected.length), + expectedDesc, foundDesc, i; - "use strict"; - var src$es5$$ = __webpack_require__(29); - exports["default"] = createFormatCache; + for (i = 0; i < expected.length; i++) { + expectedDescs[i] = expected[i].description; + } - // ----------------------------------------------------------------------------- + expectedDesc = expected.length > 1 + ? expectedDescs.slice(0, -1).join(", ") + + " or " + + expectedDescs[expected.length - 1] + : expectedDescs[0]; - function createFormatCache(FormatConstructor) { - var cache = src$es5$$.objCreate(null); + foundDesc = found ? "\"" + stringEscape(found) + "\"" : "end of input"; - return function () { - var args = Array.prototype.slice.call(arguments); - var cacheId = getCacheId(args); - var format = cacheId && cache[cacheId]; + return "Expected " + expectedDesc + " but " + foundDesc + " found."; + } - if (!format) { - format = src$es5$$.objCreate(FormatConstructor.prototype); - FormatConstructor.apply(format, args); + var posDetails = peg$computePosDetails(pos), + found = pos < input.length ? input.charAt(pos) : null; - if (cacheId) { - cache[cacheId] = format; - } - } + if (expected !== null) { + cleanupExpected(expected); + } - return format; - }; - } + return new SyntaxError( + message !== null ? message : buildMessage(expected, found), + expected, + found, + pos, + posDetails.line, + posDetails.column + ); + } - // -- Utilities ---------------------------------------------------------------- + function peg$parsestart() { + var s0; - function getCacheId(inputs) { - // When JSON is not available in the runtime, we will not create a cache id. - if (typeof JSON === 'undefined') { return; } + s0 = peg$parsemessageFormatPattern(); - var cacheId = []; + return s0; + } - var i, len, input; + function peg$parsemessageFormatPattern() { + var s0, s1, s2; - for (i = 0, len = inputs.length; i < len; i += 1) { - input = inputs[i]; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsemessageFormatElement(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsemessageFormatElement(); + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c1(s1); + } + s0 = s1; - if (input && typeof input === 'object') { - cacheId.push(orderedProps(input)); - } else { - cacheId.push(input); - } + return s0; } - return JSON.stringify(cacheId); - } - - function orderedProps(obj) { - var props = [], - keys = []; + function peg$parsemessageFormatElement() { + var s0; - var key, i, len, prop; + s0 = peg$parsemessageTextElement(); + if (s0 === peg$FAILED) { + s0 = peg$parseargumentElement(); + } - for (key in obj) { - if (obj.hasOwnProperty(key)) { - keys.push(key); - } + return s0; } - var orderedKeys = keys.sort(); + function peg$parsemessageText() { + var s0, s1, s2, s3, s4, s5; - for (i = 0, len = orderedKeys.length; i < len; i += 1) { - key = orderedKeys[i]; - prop = {}; + s0 = peg$currPos; + s1 = []; + s2 = peg$currPos; + s3 = peg$parse_(); + if (s3 !== peg$FAILED) { + s4 = peg$parsechars(); + if (s4 !== peg$FAILED) { + s5 = peg$parse_(); + if (s5 !== peg$FAILED) { + s3 = [s3, s4, s5]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$c2; + } + } else { + peg$currPos = s2; + s2 = peg$c2; + } + } else { + peg$currPos = s2; + s2 = peg$c2; + } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$currPos; + s3 = peg$parse_(); + if (s3 !== peg$FAILED) { + s4 = peg$parsechars(); + if (s4 !== peg$FAILED) { + s5 = peg$parse_(); + if (s5 !== peg$FAILED) { + s3 = [s3, s4, s5]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$c2; + } + } else { + peg$currPos = s2; + s2 = peg$c2; + } + } else { + peg$currPos = s2; + s2 = peg$c2; + } + } + } else { + s1 = peg$c2; + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c3(s1); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parsews(); + if (s1 !== peg$FAILED) { + s1 = input.substring(s0, peg$currPos); + } + s0 = s1; + } - prop[key] = obj[key]; - props[i] = prop; + return s0; } - return props; - } - - //# sourceMappingURL=memoizer.js.map - -/***/ }, -/* 29 */ -/***/ function(module, exports) { - - "use strict"; - - // Purposely using the same implementation as the Intl.js `Intl` polyfill. - // Copyright 2013 Andy Earnshaw, MIT License - - var hop = Object.prototype.hasOwnProperty; - - var realDefineProp = (function () { - try { return !!Object.defineProperty({}, 'a', {}); } - catch (e) { return false; } - })(); - - var es3 = !realDefineProp && !Object.prototype.__defineGetter__; + function peg$parsemessageTextElement() { + var s0, s1; - var defineProperty = realDefineProp ? Object.defineProperty : - function (obj, name, desc) { + s0 = peg$currPos; + s1 = peg$parsemessageText(); + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c4(s1); + } + s0 = s1; - if ('get' in desc && obj.__defineGetter__) { - obj.__defineGetter__(name, desc.get); - } else if (!hop.call(obj, name) || 'value' in desc) { - obj[name] = desc.value; + return s0; } - }; - - var objCreate = Object.create || function (proto, props) { - var obj, k; - function F() {} - F.prototype = proto; - obj = new F(); + function peg$parseargument() { + var s0, s1, s2; - for (k in props) { - if (hop.call(props, k)) { - defineProperty(obj, k, props[k]); + s0 = peg$parsenumber(); + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = []; + if (peg$c5.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c6); } } - } - - return obj; - }; - exports.defineProperty = defineProperty, exports.objCreate = objCreate; - - //# sourceMappingURL=es5.js.map - -/***/ }, -/* 30 */ -/***/ function(module, exports, __webpack_require__) { - - /* WEBPACK VAR INJECTION */(function(process) {/* - HTML escaping and shallow-equals implementations are the same as React's - (on purpose.) Therefore, it has the following Copyright and Licensing: - - Copyright 2013-2014, Facebook, Inc. - All rights reserved. - - This source code is licensed under the BSD-style license found in the LICENSE - file in the root directory of React's source tree. - */ - - 'use strict'; - - exports.__esModule = true; - exports.escape = escape; - exports.shallowEquals = shallowEquals; - exports.assertIntlContext = assertIntlContext; - exports.shouldIntlComponentUpdate = shouldIntlComponentUpdate; - var ESCAPED_CHARS = { - '&': '&', - '>': '>', - '<': '<', - '"': '"', - '\'': ''' - }; - - var UNSAFE_CHARS_REGEX = /[&><"']/g; - - function escape(str) { - return ('' + str).replace(UNSAFE_CHARS_REGEX, function (match) { - return ESCAPED_CHARS[match]; - }); - } - - function shallowEquals(objA, objB) { - if (objA === objB) { - return true; - } + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + if (peg$c5.test(input.charAt(peg$currPos))) { + s2 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c6); } + } + } + } else { + s1 = peg$c2; + } + if (s1 !== peg$FAILED) { + s1 = input.substring(s0, peg$currPos); + } + s0 = s1; + } - if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) { - return false; + return s0; } - var keysA = Object.keys(objA); - var keysB = Object.keys(objB); - - if (keysA.length !== keysB.length) { - return false; - } + function peg$parseargumentElement() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8; - // Test for A's keys different from B. - var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB); - for (var i = 0; i < keysA.length; i++) { - if (!bHasOwnProperty(keysA[i]) || objA[keysA[i]] !== objB[keysA[i]]) { - return false; + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 123) { + s1 = peg$c7; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c8); } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + s3 = peg$parseargument(); + if (s3 !== peg$FAILED) { + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + s5 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 44) { + s6 = peg$c10; + peg$currPos++; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c11); } + } + if (s6 !== peg$FAILED) { + s7 = peg$parse_(); + if (s7 !== peg$FAILED) { + s8 = peg$parseelementFormat(); + if (s8 !== peg$FAILED) { + s6 = [s6, s7, s8]; + s5 = s6; + } else { + peg$currPos = s5; + s5 = peg$c2; + } + } else { + peg$currPos = s5; + s5 = peg$c2; + } + } else { + peg$currPos = s5; + s5 = peg$c2; + } + if (s5 === peg$FAILED) { + s5 = peg$c9; + } + if (s5 !== peg$FAILED) { + s6 = peg$parse_(); + if (s6 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s7 = peg$c12; + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c13); } + } + if (s7 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c14(s3, s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; } - } - - return true; - } + } else { + peg$currPos = s0; + s0 = peg$c2; + } - function assertIntlContext() { - var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; + return s0; + } - var intl = _ref.intl; + function peg$parseelementFormat() { + var s0; - if (process.env.NODE_ENV !== 'production') { - if (!intl) { - console.error('[React Intl] Could not find required `intl` object. ' + '`IntlProvider` needs to exist in the component ancestry.'); + s0 = peg$parsesimpleFormat(); + if (s0 === peg$FAILED) { + s0 = peg$parsepluralFormat(); + if (s0 === peg$FAILED) { + s0 = peg$parseselectOrdinalFormat(); + if (s0 === peg$FAILED) { + s0 = peg$parseselectFormat(); + } } - } - } + } - function shouldIntlComponentUpdate(instance, nextProps, nextState) { - var nextContext = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; + return s0; + } - var context = instance.context || {}; - var intl = context.intl || {}; - var nextIntl = nextContext.intl || {}; + function peg$parsesimpleFormat() { + var s0, s1, s2, s3, s4, s5, s6; - return !shallowEquals(nextProps, instance.props) || !shallowEquals(nextState, instance.state) || !shallowEquals(nextIntl, intl); - } - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(31))) + s0 = peg$currPos; + if (input.substr(peg$currPos, 6) === peg$c15) { + s1 = peg$c15; + peg$currPos += 6; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c16); } + } + if (s1 === peg$FAILED) { + if (input.substr(peg$currPos, 4) === peg$c17) { + s1 = peg$c17; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c18); } + } + if (s1 === peg$FAILED) { + if (input.substr(peg$currPos, 4) === peg$c19) { + s1 = peg$c19; + peg$currPos += 4; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c20); } + } + } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + s3 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 44) { + s4 = peg$c10; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c11); } + } + if (s4 !== peg$FAILED) { + s5 = peg$parse_(); + if (s5 !== peg$FAILED) { + s6 = peg$parsechars(); + if (s6 !== peg$FAILED) { + s4 = [s4, s5, s6]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$c2; + } + } else { + peg$currPos = s3; + s3 = peg$c2; + } + } else { + peg$currPos = s3; + s3 = peg$c2; + } + if (s3 === peg$FAILED) { + s3 = peg$c9; + } + if (s3 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c21(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } -/***/ }, -/* 31 */ -/***/ function(module, exports) { + return s0; + } - // shim for using process in browser + function peg$parsepluralFormat() { + var s0, s1, s2, s3, s4, s5; - var process = module.exports = {}; - var queue = []; - var draining = false; - var currentQueue; - var queueIndex = -1; + s0 = peg$currPos; + if (input.substr(peg$currPos, 6) === peg$c22) { + s1 = peg$c22; + peg$currPos += 6; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c23); } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s3 = peg$c10; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c11); } + } + if (s3 !== peg$FAILED) { + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + s5 = peg$parsepluralStyle(); + if (s5 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c24(s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } - function cleanUpNextTick() { - draining = false; - if (currentQueue.length) { - queue = currentQueue.concat(queue); - } else { - queueIndex = -1; - } - if (queue.length) { - drainQueue(); + return s0; } - } - function drainQueue() { - if (draining) { - return; - } - var timeout = setTimeout(cleanUpNextTick); - draining = true; + function peg$parseselectOrdinalFormat() { + var s0, s1, s2, s3, s4, s5; - var len = queue.length; - while(len) { - currentQueue = queue; - queue = []; - while (++queueIndex < len) { - if (currentQueue) { - currentQueue[queueIndex].run(); + s0 = peg$currPos; + if (input.substr(peg$currPos, 13) === peg$c25) { + s1 = peg$c25; + peg$currPos += 13; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c26); } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s3 = peg$c10; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c11); } + } + if (s3 !== peg$FAILED) { + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + s5 = peg$parsepluralStyle(); + if (s5 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c27(s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; } - queueIndex = -1; - len = queue.length; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + + return s0; } - currentQueue = null; - draining = false; - clearTimeout(timeout); - } - process.nextTick = function (fun) { - var args = new Array(arguments.length - 1); - if (arguments.length > 1) { - for (var i = 1; i < arguments.length; i++) { - args[i - 1] = arguments[i]; + function peg$parseselectFormat() { + var s0, s1, s2, s3, s4, s5, s6; + + s0 = peg$currPos; + if (input.substr(peg$currPos, 6) === peg$c28) { + s1 = peg$c28; + peg$currPos += 6; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c29); } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s3 = peg$c10; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c11); } + } + if (s3 !== peg$FAILED) { + s4 = peg$parse_(); + if (s4 !== peg$FAILED) { + s5 = []; + s6 = peg$parseoptionalFormatPattern(); + if (s6 !== peg$FAILED) { + while (s6 !== peg$FAILED) { + s5.push(s6); + s6 = peg$parseoptionalFormatPattern(); + } + } else { + s5 = peg$c2; + } + if (s5 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c30(s5); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; } - } - queue.push(new Item(fun, args)); - if (queue.length === 1 && !draining) { - setTimeout(drainQueue, 0); - } - }; - - // v8 likes predictible objects - function Item(fun, array) { - this.fun = fun; - this.array = array; - } - Item.prototype.run = function () { - this.fun.apply(null, this.array); - }; - process.title = 'browser'; - process.browser = true; - process.env = {}; - process.argv = []; - process.version = ''; // empty string to avoid regexp issues - process.versions = {}; - - function noop() {} - - process.on = noop; - process.addListener = noop; - process.once = noop; - process.off = noop; - process.removeListener = noop; - process.removeAllListeners = noop; - process.emit = noop; + } else { + peg$currPos = s0; + s0 = peg$c2; + } - process.binding = function (name) { - throw new Error('process.binding is not supported'); - }; + return s0; + } - process.cwd = function () { return '/' }; - process.chdir = function (dir) { - throw new Error('process.chdir is not supported'); - }; - process.umask = function() { return 0; }; + function peg$parseselector() { + var s0, s1, s2, s3; + s0 = peg$currPos; + s1 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 61) { + s2 = peg$c31; + peg$currPos++; + } else { + s2 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c32); } + } + if (s2 !== peg$FAILED) { + s3 = peg$parsenumber(); + if (s3 !== peg$FAILED) { + s2 = [s2, s3]; + s1 = s2; + } else { + peg$currPos = s1; + s1 = peg$c2; + } + } else { + peg$currPos = s1; + s1 = peg$c2; + } + if (s1 !== peg$FAILED) { + s1 = input.substring(s0, peg$currPos); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$parsechars(); + } -/***/ }, -/* 32 */ -/***/ function(module, exports, __webpack_require__) { + return s0; + } - /* - * Copyright 2015, Yahoo Inc. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ + function peg$parseoptionalFormatPattern() { + var s0, s1, s2, s3, s4, s5, s6, s7, s8; - 'use strict'; + s0 = peg$currPos; + s1 = peg$parse_(); + if (s1 !== peg$FAILED) { + s2 = peg$parseselector(); + if (s2 !== peg$FAILED) { + s3 = peg$parse_(); + if (s3 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 123) { + s4 = peg$c7; + peg$currPos++; + } else { + s4 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c8); } + } + if (s4 !== peg$FAILED) { + s5 = peg$parse_(); + if (s5 !== peg$FAILED) { + s6 = peg$parsemessageFormatPattern(); + if (s6 !== peg$FAILED) { + s7 = peg$parse_(); + if (s7 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s8 = peg$c12; + peg$currPos++; + } else { + s8 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c13); } + } + if (s8 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c33(s2, s6); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } - exports.__esModule = true; + return s0; + } - var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; + function peg$parseoffset() { + var s0, s1, s2, s3; - var _react = __webpack_require__(2); + s0 = peg$currPos; + if (input.substr(peg$currPos, 7) === peg$c34) { + s1 = peg$c34; + peg$currPos += 7; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c35); } + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + s3 = peg$parsenumber(); + if (s3 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c36(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } - var bool = _react.PropTypes.bool; - var number = _react.PropTypes.number; - var string = _react.PropTypes.string; - var func = _react.PropTypes.func; - var object = _react.PropTypes.object; - var oneOf = _react.PropTypes.oneOf; - var shape = _react.PropTypes.shape; - var intlPropTypes = { - locale: string, - formats: object, - messages: object, + return s0; + } - defaultLocale: string, - defaultFormats: object - }; + function peg$parsepluralStyle() { + var s0, s1, s2, s3, s4; - exports.intlPropTypes = intlPropTypes; - var intlFormatPropTypes = { - formatDate: func.isRequired, - formatTime: func.isRequired, - formatRelative: func.isRequired, - formatNumber: func.isRequired, - formatPlural: func.isRequired, - formatMessage: func.isRequired, - formatHTMLMessage: func.isRequired - }; + s0 = peg$currPos; + s1 = peg$parseoffset(); + if (s1 === peg$FAILED) { + s1 = peg$c9; + } + if (s1 !== peg$FAILED) { + s2 = peg$parse_(); + if (s2 !== peg$FAILED) { + s3 = []; + s4 = peg$parseoptionalFormatPattern(); + if (s4 !== peg$FAILED) { + while (s4 !== peg$FAILED) { + s3.push(s4); + s4 = peg$parseoptionalFormatPattern(); + } + } else { + s3 = peg$c2; + } + if (s3 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c37(s1, s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } - exports.intlFormatPropTypes = intlFormatPropTypes; - var intlShape = shape(_extends({}, intlPropTypes, intlFormatPropTypes)); + return s0; + } - exports.intlShape = intlShape; - var dateTimeFormatPropTypes = { - localeMatcher: oneOf(['best fit', 'lookup']), - formatMatcher: oneOf(['basic', 'best fit']), + function peg$parsews() { + var s0, s1; - timeZone: string, - hour12: bool, + peg$silentFails++; + s0 = []; + if (peg$c39.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c40); } + } + if (s1 !== peg$FAILED) { + while (s1 !== peg$FAILED) { + s0.push(s1); + if (peg$c39.test(input.charAt(peg$currPos))) { + s1 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c40); } + } + } + } else { + s0 = peg$c2; + } + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c38); } + } - weekday: oneOf(['narrow', 'short', 'long']), - era: oneOf(['narrow', 'short', 'long']), - year: oneOf(['numeric', '2-digit']), - month: oneOf(['numeric', '2-digit', 'narrow', 'short', 'long']), - day: oneOf(['numeric', '2-digit']), - hour: oneOf(['numeric', '2-digit']), - minute: oneOf(['numeric', '2-digit']), - second: oneOf(['numeric', '2-digit']), - timeZoneName: oneOf(['short', 'long']) - }; + return s0; + } - exports.dateTimeFormatPropTypes = dateTimeFormatPropTypes; - var numberFormatPropTypes = { - localeMatcher: oneOf(['best fit', 'lookup']), + function peg$parse_() { + var s0, s1, s2; - style: oneOf(['decimal', 'currency', 'percent']), - currency: string, - currencyDisplay: oneOf(['symbol', 'code', 'name']), - useGrouping: bool, + peg$silentFails++; + s0 = peg$currPos; + s1 = []; + s2 = peg$parsews(); + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsews(); + } + if (s1 !== peg$FAILED) { + s1 = input.substring(s0, peg$currPos); + } + s0 = s1; + peg$silentFails--; + if (s0 === peg$FAILED) { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c41); } + } - minimumIntegerDigits: number, - minimumFractionDigits: number, - maximumFractionDigits: number, - minimumSignificantDigits: number, - maximumSignificantDigits: number - }; + return s0; + } - exports.numberFormatPropTypes = numberFormatPropTypes; - var relativeFormatPropTypes = { - style: oneOf(['best fit', 'numeric']), - units: oneOf(['second', 'minute', 'hour', 'day', 'month', 'year']) - }; + function peg$parsedigit() { + var s0; - exports.relativeFormatPropTypes = relativeFormatPropTypes; - var pluralFormatPropTypes = { - style: oneOf(['cardinal', 'ordinal']) - }; - exports.pluralFormatPropTypes = pluralFormatPropTypes; + if (peg$c42.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c43); } + } -/***/ }, -/* 33 */ -/***/ function(module, exports, __webpack_require__) { + return s0; + } - /* WEBPACK VAR INJECTION */(function(process) {/* - * Copyright 2015, Yahoo Inc. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ + function peg$parsehexDigit() { + var s0; - 'use strict'; + if (peg$c44.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c45); } + } - exports.__esModule = true; - exports.formatDate = formatDate; - exports.formatTime = formatTime; - exports.formatRelative = formatRelative; - exports.formatNumber = formatNumber; - exports.formatPlural = formatPlural; - exports.formatMessage = formatMessage; - exports.formatHTMLMessage = formatHTMLMessage; + return s0; + } - var _types = __webpack_require__(32); + function peg$parsenumber() { + var s0, s1, s2, s3, s4, s5; - var _utils = __webpack_require__(30); + s0 = peg$currPos; + if (input.charCodeAt(peg$currPos) === 48) { + s1 = peg$c46; + peg$currPos++; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c47); } + } + if (s1 === peg$FAILED) { + s1 = peg$currPos; + s2 = peg$currPos; + if (peg$c48.test(input.charAt(peg$currPos))) { + s3 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c49); } + } + if (s3 !== peg$FAILED) { + s4 = []; + s5 = peg$parsedigit(); + while (s5 !== peg$FAILED) { + s4.push(s5); + s5 = peg$parsedigit(); + } + if (s4 !== peg$FAILED) { + s3 = [s3, s4]; + s2 = s3; + } else { + peg$currPos = s2; + s2 = peg$c2; + } + } else { + peg$currPos = s2; + s2 = peg$c2; + } + if (s2 !== peg$FAILED) { + s2 = input.substring(s1, peg$currPos); + } + s1 = s2; + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c50(s1); + } + s0 = s1; - var DATE_TIME_FORMAT_OPTIONS = Object.keys(_types.dateTimeFormatPropTypes); - var NUMBER_FORMAT_OPTIONS = Object.keys(_types.numberFormatPropTypes); - var RELATIVE_FORMAT_OPTIONS = Object.keys(_types.relativeFormatPropTypes); - var PLURAL_FORMAT_OPTIONS = Object.keys(_types.pluralFormatPropTypes); + return s0; + } - function filterFormatOptions(whitelist, obj) { - var defaults = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2]; + function peg$parsechar() { + var s0, s1, s2, s3, s4, s5, s6, s7; - return whitelist.reduce(function (opts, name) { - if (obj.hasOwnProperty(name)) { - opts[name] = obj[name]; - } else if (defaults.hasOwnProperty(name)) { - opts[name] = defaults[name]; + if (peg$c51.test(input.charAt(peg$currPos))) { + s0 = input.charAt(peg$currPos); + peg$currPos++; + } else { + s0 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c52); } + } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c53) { + s1 = peg$c53; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c54); } + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c55(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c56) { + s1 = peg$c56; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c57); } + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c58(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c59) { + s1 = peg$c59; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c60); } + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c61(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c62) { + s1 = peg$c62; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c63); } + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c64(); + } + s0 = s1; + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c65) { + s1 = peg$c65; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c66); } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parsehexDigit(); + if (s4 !== peg$FAILED) { + s5 = peg$parsehexDigit(); + if (s5 !== peg$FAILED) { + s6 = peg$parsehexDigit(); + if (s6 !== peg$FAILED) { + s7 = peg$parsehexDigit(); + if (s7 !== peg$FAILED) { + s4 = [s4, s5, s6, s7]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$c2; + } + } else { + peg$currPos = s3; + s3 = peg$c2; + } + } else { + peg$currPos = s3; + s3 = peg$c2; + } + } else { + peg$currPos = s3; + s3 = peg$c2; + } + if (s3 !== peg$FAILED) { + s3 = input.substring(s2, peg$currPos); + } + s2 = s3; + if (s2 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c67(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } else { + peg$currPos = s0; + s0 = peg$c2; + } + } + } + } } + } - return opts; - }, {}); - } - - function getNamedFormat(formats, type, name) { - var format = formats && formats[type] && formats[type][name]; - if (format) { - return format; - } - - if (process.env.NODE_ENV !== 'production') { - console.error('[React Intl] No ' + type + ' format named: ' + name); + return s0; } - } - - function formatDate(intl, config, value) { - var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - var locale = config.locale; - var formats = config.formats; - var format = options.format; - - var date = new Date(value); - var defaults = format && getNamedFormat(formats, 'date', format); - - var filteredOptions = filterFormatOptions(DATE_TIME_FORMAT_OPTIONS, options, defaults); - - return intl.getDateTimeFormat(locale, filteredOptions).format(date); - } - - function formatTime(intl, config, value) { - var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - var locale = config.locale; - var formats = config.formats; - var format = options.format; - - var date = new Date(value); - var defaults = format && getNamedFormat(formats, 'time', format); - - var filteredOptions = filterFormatOptions(DATE_TIME_FORMAT_OPTIONS, options, defaults); - - return intl.getDateTimeFormat(locale, filteredOptions).format(date); - } - - function formatRelative(intl, config, value) { - var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - var locale = config.locale; - var formats = config.formats; - var now = options.now; - var format = options.format; - - var date = new Date(value); - var defaults = format && getNamedFormat(formats, 'relative', format); - - var filteredOptions = filterFormatOptions(RELATIVE_FORMAT_OPTIONS, options, defaults); - - return intl.getRelativeFormat(locale, filteredOptions).format(date, { now: now }); - } - - function formatNumber(intl, config, value) { - var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - var locale = config.locale; - var formats = config.formats; - var format = options.format; - - var defaults = format && getNamedFormat(formats, 'number', format); - - var filteredOptions = filterFormatOptions(NUMBER_FORMAT_OPTIONS, options, defaults); - - return intl.getNumberFormat(locale, filteredOptions).format(value); - } - - function formatPlural(intl, config, value) { - var options = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - var locale = config.locale; - - var filteredOptions = filterFormatOptions(PLURAL_FORMAT_OPTIONS, options); - return intl.getPluralFormat(locale, filteredOptions).format(value); - } - function formatMessage(intl, config, messageDescriptor) { - var values = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; - var locale = config.locale; - var formats = config.formats; - var messages = config.messages; - var defaultLocale = config.defaultLocale; - var defaultFormats = config.defaultFormats; - var id = messageDescriptor.id; - var defaultMessage = messageDescriptor.defaultMessage; - - // TODO: What should we do when the message descriptor doesn't have an `id`? - // Should we return some placeholder value, not care, or throw? - - var message = messages && messages[id]; + function peg$parsechars() { + var s0, s1, s2; - if (!(message || defaultMessage)) { - if (process.env.NODE_ENV !== 'production') { - console.error('[React Intl] Cannot format message. ' + ('Missing message: "' + id + '" for locale: "' + locale + '", ') + 'and no default message was provided.'); + s0 = peg$currPos; + s1 = []; + s2 = peg$parsechar(); + if (s2 !== peg$FAILED) { + while (s2 !== peg$FAILED) { + s1.push(s2); + s2 = peg$parsechar(); } + } else { + s1 = peg$c2; + } + if (s1 !== peg$FAILED) { + peg$reportedPos = s0; + s1 = peg$c68(s1); + } + s0 = s1; - return id; + return s0; } - var formattedMessage = undefined; + peg$result = peg$startRuleFunction(); - if (message) { - try { - var formatter = intl.getMessageFormat(message, locale, formats); + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail({ type: "end", description: "end of input" }); + } - formattedMessage = formatter.format(values); - } catch (e) { - if (process.env.NODE_ENV !== 'production') { - console.error('[React Intl] Error formatting message: "' + id + '"\n' + e); - } - } + throw peg$buildException(null, peg$maxFailExpected, peg$maxFailPos); } + } - if (!formattedMessage && defaultMessage) { - try { - var formatter = intl.getMessageFormat(defaultMessage, defaultLocale, defaultFormats); + return { + SyntaxError: SyntaxError, + parse: parse + }; + })(); - formattedMessage = formatter.format(values); - } catch (e) { - if (process.env.NODE_ENV !== 'production') { - console.error('[React Intl] Error formatting the default message for: ' + ('"' + id + '"\n' + e)); - } - } - } + //# sourceMappingURL=parser.js.map - if (!formattedMessage) { - if (process.env.NODE_ENV !== 'production') { - console.warn('[React Intl] Using source fallback for message: "' + id + '"'); - } - } +/***/ }, +/* 17 */ +/***/ function(module, exports) { - // TODO: Should the string first be trimmed? This will support strings - // defined using template literals.
 rendering would be the counter.
-	    return formattedMessage || message || defaultMessage || id;
-	}
+	// GENERATED FILE
+	"use strict";
+	exports["default"] = {"locale":"en","pluralRuleFunction":function (n,ord){var s=String(n).split("."),v0=!s[1],t0=Number(s[0])==n,n10=t0&&s[0].slice(-1),n100=t0&&s[0].slice(-2);if(ord)return n10==1&&n100!=11?"one":n10==2&&n100!=12?"two":n10==3&&n100!=13?"few":"other";return n==1&&v0?"one":"other"}};
 
-	function formatHTMLMessage(intl, config, messageDescriptor) {
-	    var rawValues = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3];
+	//# sourceMappingURL=en.js.map
 
-	    // Process all the values before they are used when formatting the ICU
-	    // Message string. Since the formatted message might be injected via
-	    // `innerHTML`, all String-based values need to be HTML-escaped.
-	    var escapedValues = Object.keys(rawValues).reduce(function (escaped, name) {
-	        var value = rawValues[name];
-	        escaped[name] = typeof value === 'string' ? _utils.escape(value) : value;
-	        return escaped;
-	    }, {});
+/***/ },
+/* 18 */
+/***/ function(module, exports) {
 
-	    return formatMessage(intl, config, messageDescriptor, escapedValues);
-	}
-	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(31)))
+	/* (ignored) */
 
 /***/ },
-/* 34 */
+/* 19 */
 /***/ function(module, exports, __webpack_require__) {
 
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
+	/* jshint node:true */
 
 	'use strict';
 
-	exports.__esModule = true;
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-	var _react = __webpack_require__(2);
-
-	var Group = (function (_Component) {
-	    _inherits(Group, _Component);
+	var IntlRelativeFormat = __webpack_require__(20)['default'];
 
-	    function Group() {
-	        _classCallCheck(this, Group);
+	// Add all locale data to `IntlRelativeFormat`. This module will be ignored when
+	// bundling for the browser with Browserify/Webpack.
+	__webpack_require__(25);
 
-	        _Component.apply(this, arguments);
-	    }
+	// Re-export `IntlRelativeFormat` as the CommonJS default exports with all the
+	// locale data registered, and with English set as the default locale. Define
+	// the `default` prop for use with other compiled ES6 Modules.
+	exports = module.exports = IntlRelativeFormat;
+	exports['default'] = exports;
 
-	    Group.prototype.render = function render() {
-	        var props = this.props;
 
-	        var renderDelegate = Object.keys(props).filter(function (prop) {
-	            return _react.isValidElement(props[prop]);
-	        }).reduceRight(function (renderDelegate, prop) {
-	            return function () {
-	                var nodes = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
+/***/ },
+/* 20 */
+/***/ function(module, exports, __webpack_require__) {
 
-	                return _react.cloneElement(props[prop], null, function (node) {
-	                    nodes[prop] = node;
-	                    return renderDelegate(nodes);
-	                });
-	            };
-	        }, props.children);
+	/* jslint esnext: true */
 
-	        return renderDelegate();
-	    };
+	"use strict";
+	var src$core$$ = __webpack_require__(21), src$en$$ = __webpack_require__(24);
 
-	    return Group;
-	})(_react.Component);
+	src$core$$["default"].__addLocaleData(src$en$$["default"]);
+	src$core$$["default"].defaultLocale = 'en';
 
-	exports['default'] = Group;
+	exports["default"] = src$core$$["default"];
 
-	Group.propTypes = {
-	    children: _react.PropTypes.func.isRequired
-	};
-	module.exports = exports['default'];
+	//# sourceMappingURL=main.js.map
 
 /***/ },
-/* 35 */
+/* 21 */
 /***/ function(module, exports, __webpack_require__) {
 
 	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
-
-	'use strict';
-
-	exports.__esModule = true;
-
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+	Copyright (c) 2014, Yahoo! Inc. All rights reserved.
+	Copyrights licensed under the New BSD License.
+	See the accompanying LICENSE file for terms.
+	*/
 
-	var _react = __webpack_require__(2);
+	/* jslint esnext: true */
 
-	var _react2 = _interopRequireDefault(_react);
+	"use strict";
+	var intl$messageformat$$ = __webpack_require__(9), src$diff$$ = __webpack_require__(22), src$es5$$ = __webpack_require__(23);
+	exports["default"] = RelativeFormat;
 
-	var _types = __webpack_require__(32);
+	// -----------------------------------------------------------------------------
 
-	var _utils = __webpack_require__(30);
+	var FIELDS = ['second', 'minute', 'hour', 'day', 'month', 'year'];
+	var STYLES = ['best fit', 'numeric'];
 
-	var FormattedDate = (function (_Component) {
-	    _inherits(FormattedDate, _Component);
+	// -- RelativeFormat -----------------------------------------------------------
 
-	    function FormattedDate(props, context) {
-	        _classCallCheck(this, FormattedDate);
+	function RelativeFormat(locales, options) {
+	    options = options || {};
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
+	    // Make a copy of `locales` if it's an array, so that it doesn't change
+	    // since it's used lazily.
+	    if (src$es5$$.isArray(locales)) {
+	        locales = locales.concat();
 	    }
 
-	    FormattedDate.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
-	        for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) {
-	            next[_key] = arguments[_key];
-	        }
-
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this].concat(next));
-	    };
-
-	    FormattedDate.prototype.render = function render() {
-	        var formatDate = this.context.intl.formatDate;
-
-	        var props = this.props;
+	    src$es5$$.defineProperty(this, '_locale', {value: this._resolveLocale(locales)});
+	    src$es5$$.defineProperty(this, '_options', {value: {
+	        style: this._resolveStyle(options.style),
+	        units: this._isValidUnits(options.units) && options.units
+	    }});
 
-	        var formattedDate = formatDate(props.value, props);
+	    src$es5$$.defineProperty(this, '_locales', {value: locales});
+	    src$es5$$.defineProperty(this, '_fields', {value: this._findFields(this._locale)});
+	    src$es5$$.defineProperty(this, '_messages', {value: src$es5$$.objCreate(null)});
 
-	        if (typeof props.children === 'function') {
-	            return props.children(formattedDate);
-	        }
+	    // "Bind" `format()` method to `this` so it can be passed by reference like
+	    // the other `Intl` APIs.
+	    var relativeFormat = this;
+	    this.format = function format(date, options) {
+	        return relativeFormat._format(date, options);
+	    };
+	}
 
-	        return _react2['default'].createElement(
-	            'span',
-	            null,
-	            formattedDate
+	// Define internal private properties for dealing with locale data.
+	src$es5$$.defineProperty(RelativeFormat, '__localeData__', {value: src$es5$$.objCreate(null)});
+	src$es5$$.defineProperty(RelativeFormat, '__addLocaleData', {value: function (data) {
+	    if (!(data && data.locale)) {
+	        throw new Error(
+	            'Locale data provided to IntlRelativeFormat is missing a ' +
+	            '`locale` property value'
 	        );
-	    };
+	    }
 
-	    return FormattedDate;
-	})(_react.Component);
+	    RelativeFormat.__localeData__[data.locale.toLowerCase()] = data;
 
-	exports['default'] = FormattedDate;
+	    // Add data to IntlMessageFormat.
+	    intl$messageformat$$["default"].__addLocaleData(data);
+	}});
 
-	FormattedDate.propTypes = _extends({}, _types.dateTimeFormatPropTypes, {
-	    format: _react.PropTypes.string,
-	    value: _react.PropTypes.any.isRequired
+	// Define public `defaultLocale` property which can be set by the developer, or
+	// it will be set when the first RelativeFormat instance is created by
+	// leveraging the resolved locale from `Intl`.
+	src$es5$$.defineProperty(RelativeFormat, 'defaultLocale', {
+	    enumerable: true,
+	    writable  : true,
+	    value     : undefined
 	});
 
-	FormattedDate.contextTypes = {
-	    intl: _types.intlShape
-	};
-	module.exports = exports['default'];
-
-/***/ },
-/* 36 */
-/***/ function(module, exports, __webpack_require__) {
-
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
-
-	'use strict';
-
-	exports.__esModule = true;
-
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _types = __webpack_require__(32);
-
-	var _utils = __webpack_require__(30);
-
-	var FormattedTime = (function (_Component) {
-	    _inherits(FormattedTime, _Component);
-
-	    function FormattedTime(props, context) {
-	        _classCallCheck(this, FormattedTime);
+	// Define public `thresholds` property which can be set by the developer, and
+	// defaults to relative time thresholds from moment.js.
+	src$es5$$.defineProperty(RelativeFormat, 'thresholds', {
+	    enumerable: true,
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
+	    value: {
+	        second: 45,  // seconds to minute
+	        minute: 45,  // minutes to hour
+	        hour  : 22,  // hours to day
+	        day   : 26,  // days to month
+	        month : 11   // months to year
 	    }
+	});
 
-	    FormattedTime.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
-	        for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) {
-	            next[_key] = arguments[_key];
-	        }
-
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this].concat(next));
+	RelativeFormat.prototype.resolvedOptions = function () {
+	    return {
+	        locale: this._locale,
+	        style : this._options.style,
+	        units : this._options.units
 	    };
+	};
 
-	    FormattedTime.prototype.render = function render() {
-	        var formatTime = this.context.intl.formatTime;
-
-	        var props = this.props;
+	RelativeFormat.prototype._compileMessage = function (units) {
+	    // `this._locales` is the original set of locales the user specified to the
+	    // constructor, while `this._locale` is the resolved root locale.
+	    var locales        = this._locales;
+	    var resolvedLocale = this._locale;
 
-	        var formattedTime = formatTime(props.value, props);
+	    var field        = this._fields[units];
+	    var relativeTime = field.relativeTime;
+	    var future       = '';
+	    var past         = '';
+	    var i;
 
-	        if (typeof props.children === 'function') {
-	            return props.children(formattedTime);
+	    for (i in relativeTime.future) {
+	        if (relativeTime.future.hasOwnProperty(i)) {
+	            future += ' ' + i + ' {' +
+	                relativeTime.future[i].replace('{0}', '#') + '}';
 	        }
+	    }
 
-	        return _react2['default'].createElement(
-	            'span',
-	            null,
-	            formattedTime
-	        );
-	    };
-
-	    return FormattedTime;
-	})(_react.Component);
-
-	exports['default'] = FormattedTime;
+	    for (i in relativeTime.past) {
+	        if (relativeTime.past.hasOwnProperty(i)) {
+	            past += ' ' + i + ' {' +
+	                relativeTime.past[i].replace('{0}', '#') + '}';
+	        }
+	    }
 
-	FormattedTime.propTypes = _extends({}, _types.dateTimeFormatPropTypes, {
-	    format: _react.PropTypes.string,
-	    value: _react.PropTypes.any.isRequired
-	});
+	    var message = '{when, select, future {{0, plural, ' + future + '}}' +
+	                                 'past {{0, plural, ' + past + '}}}';
 
-	FormattedTime.contextTypes = {
-	    intl: _types.intlShape
+	    // Create the synthetic IntlMessageFormat instance using the original
+	    // locales value specified by the user when constructing the the parent
+	    // IntlRelativeFormat instance.
+	    return new intl$messageformat$$["default"](message, locales);
 	};
-	module.exports = exports['default'];
-
-/***/ },
-/* 37 */
-/***/ function(module, exports, __webpack_require__) {
-
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
-
-	'use strict';
-
-	exports.__esModule = true;
-
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
 
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _types = __webpack_require__(32);
-
-	var _utils = __webpack_require__(30);
-
-	var FormattedRelative = (function (_Component) {
-	    _inherits(FormattedRelative, _Component);
-
-	    function FormattedRelative(props, context) {
-	        _classCallCheck(this, FormattedRelative);
+	RelativeFormat.prototype._getMessage = function (units) {
+	    var messages = this._messages;
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
+	    // Create a new synthetic message based on the locale data from CLDR.
+	    if (!messages[units]) {
+	        messages[units] = this._compileMessage(units);
 	    }
 
-	    FormattedRelative.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
-	        for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) {
-	            next[_key] = arguments[_key];
-	        }
-
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this].concat(next));
-	    };
+	    return messages[units];
+	};
 
-	    FormattedRelative.prototype.render = function render() {
-	        var formatRelative = this.context.intl.formatRelative;
+	RelativeFormat.prototype._getRelativeUnits = function (diff, units) {
+	    var field = this._fields[units];
 
-	        var props = this.props;
+	    if (field.relative) {
+	        return field.relative[diff];
+	    }
+	};
 
-	        var formattedRelative = formatRelative(props.value, props);
+	RelativeFormat.prototype._findFields = function (locale) {
+	    var localeData = RelativeFormat.__localeData__;
+	    var data       = localeData[locale.toLowerCase()];
 
-	        if (typeof props.children === 'function') {
-	            return props.children(formattedRelative);
+	    // The locale data is de-duplicated, so we have to traverse the locale's
+	    // hierarchy until we find `fields` to return.
+	    while (data) {
+	        if (data.fields) {
+	            return data.fields;
 	        }
 
-	        return _react2['default'].createElement(
-	            'span',
-	            null,
-	            formattedRelative
-	        );
-	    };
-
-	    return FormattedRelative;
-	})(_react.Component);
-
-	exports['default'] = FormattedRelative;
-
-	FormattedRelative.propTypes = _extends({}, _types.relativeFormatPropTypes, {
-	    format: _react.PropTypes.string,
-	    value: _react.PropTypes.any.isRequired,
-	    now: _react.PropTypes.any
-	});
+	        data = data.parentLocale && localeData[data.parentLocale.toLowerCase()];
+	    }
 
-	FormattedRelative.contextTypes = {
-	    intl: _types.intlShape
+	    throw new Error(
+	        'Locale data added to IntlRelativeFormat is missing `fields` for :' +
+	        locale
+	    );
 	};
-	module.exports = exports['default'];
-
-/***/ },
-/* 38 */
-/***/ function(module, exports, __webpack_require__) {
-
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
-
-	'use strict';
-
-	exports.__esModule = true;
-
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _types = __webpack_require__(32);
-
-	var _utils = __webpack_require__(30);
-
-	var FormattedNumber = (function (_Component) {
-	    _inherits(FormattedNumber, _Component);
-
-	    function FormattedNumber(props, context) {
-	        _classCallCheck(this, FormattedNumber);
+	RelativeFormat.prototype._format = function (date, options) {
+	    var now = options && options.now !== undefined ? options.now : src$es5$$.dateNow();
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
+	    if (date === undefined) {
+	        date = now;
 	    }
 
-	    FormattedNumber.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
-	        for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) {
-	            next[_key] = arguments[_key];
-	        }
-
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this].concat(next));
-	    };
-
-	    FormattedNumber.prototype.render = function render() {
-	        var formatNumber = this.context.intl.formatNumber;
-
-	        var props = this.props;
-
-	        var formattedNumber = formatNumber(props.value, props);
-
-	        if (typeof props.children === 'function') {
-	            return props.children(formattedNumber);
-	        }
-
-	        return _react2['default'].createElement(
-	            'span',
-	            null,
-	            formattedNumber
+	    // Determine if the `date` and optional `now` values are valid, and throw a
+	    // similar error to what `Intl.DateTimeFormat#format()` would throw.
+	    if (!isFinite(now)) {
+	        throw new RangeError(
+	            'The `now` option provided to IntlRelativeFormat#format() is not ' +
+	            'in valid range.'
 	        );
-	    };
+	    }
 
-	    return FormattedNumber;
-	})(_react.Component);
+	    if (!isFinite(date)) {
+	        throw new RangeError(
+	            'The date value provided to IntlRelativeFormat#format() is not ' +
+	            'in valid range.'
+	        );
+	    }
 
-	exports['default'] = FormattedNumber;
+	    var diffReport  = src$diff$$["default"](now, date);
+	    var units       = this._options.units || this._selectUnits(diffReport);
+	    var diffInUnits = diffReport[units];
 
-	FormattedNumber.propTypes = _extends({}, _types.numberFormatPropTypes, {
-	    format: _react.PropTypes.string,
-	    value: _react.PropTypes.any.isRequired
-	});
+	    if (this._options.style !== 'numeric') {
+	        var relativeUnits = this._getRelativeUnits(diffInUnits, units);
+	        if (relativeUnits) {
+	            return relativeUnits;
+	        }
+	    }
 
-	FormattedNumber.contextTypes = {
-	    intl: _types.intlShape
+	    return this._getMessage(units).format({
+	        '0' : Math.abs(diffInUnits),
+	        when: diffInUnits < 0 ? 'past' : 'future'
+	    });
 	};
-	module.exports = exports['default'];
-
-/***/ },
-/* 39 */
-/***/ function(module, exports, __webpack_require__) {
-
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
-
-	'use strict';
-
-	exports.__esModule = true;
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+	RelativeFormat.prototype._isValidUnits = function (units) {
+	    if (!units || src$es5$$.arrIndexOf.call(FIELDS, units) >= 0) {
+	        return true;
+	    }
 
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
+	    if (typeof units === 'string') {
+	        var suggestion = /s$/.test(units) && units.substr(0, units.length - 1);
+	        if (suggestion && src$es5$$.arrIndexOf.call(FIELDS, suggestion) >= 0) {
+	            throw new Error(
+	                '"' + units + '" is not a valid IntlRelativeFormat `units` ' +
+	                'value, did you mean: ' + suggestion
+	            );
+	        }
+	    }
 
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
+	    throw new Error(
+	        '"' + units + '" is not a valid IntlRelativeFormat `units` value, it ' +
+	        'must be one of: "' + FIELDS.join('", "') + '"'
+	    );
+	};
 
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+	RelativeFormat.prototype._resolveLocale = function (locales) {
+	    if (typeof locales === 'string') {
+	        locales = [locales];
+	    }
 
-	var _react = __webpack_require__(2);
+	    // Create a copy of the array so we can push on the default locale.
+	    locales = (locales || []).concat(RelativeFormat.defaultLocale);
 
-	var _react2 = _interopRequireDefault(_react);
+	    var localeData = RelativeFormat.__localeData__;
+	    var i, len, localeParts, data;
 
-	var _types = __webpack_require__(32);
+	    // Using the set of locales + the default locale, we look for the first one
+	    // which that has been registered. When data does not exist for a locale, we
+	    // traverse its ancestors to find something that's been registered within
+	    // its hierarchy of locales. Since we lack the proper `parentLocale` data
+	    // here, we must take a naive approach to traversal.
+	    for (i = 0, len = locales.length; i < len; i += 1) {
+	        localeParts = locales[i].toLowerCase().split('-');
 
-	var _utils = __webpack_require__(30);
+	        while (localeParts.length) {
+	            data = localeData[localeParts.join('-')];
+	            if (data) {
+	                // Return the normalized locale string; e.g., we return "en-US",
+	                // instead of "en-us".
+	                return data.locale;
+	            }
 
-	var FormattedPlural = (function (_Component) {
-	    _inherits(FormattedPlural, _Component);
+	            localeParts.pop();
+	        }
+	    }
 
-	    function FormattedPlural(props, context) {
-	        _classCallCheck(this, FormattedPlural);
+	    var defaultLocale = locales.pop();
+	    throw new Error(
+	        'No locale data has been added to IntlRelativeFormat for: ' +
+	        locales.join(', ') + ', or the default locale: ' + defaultLocale
+	    );
+	};
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
+	RelativeFormat.prototype._resolveStyle = function (style) {
+	    // Default to "best fit" style.
+	    if (!style) {
+	        return STYLES[0];
 	    }
 
-	    FormattedPlural.prototype.shouldComponentUpdate = function shouldComponentUpdate() {
-	        for (var _len = arguments.length, next = Array(_len), _key = 0; _key < _len; _key++) {
-	            next[_key] = arguments[_key];
-	        }
-
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this].concat(next));
-	    };
+	    if (src$es5$$.arrIndexOf.call(STYLES, style) >= 0) {
+	        return style;
+	    }
 
-	    FormattedPlural.prototype.render = function render() {
-	        var formatPlural = this.context.intl.formatPlural;
+	    throw new Error(
+	        '"' + style + '" is not a valid IntlRelativeFormat `style` value, it ' +
+	        'must be one of: "' + STYLES.join('", "') + '"'
+	    );
+	};
 
-	        var props = this.props;
+	RelativeFormat.prototype._selectUnits = function (diffReport) {
+	    var i, l, units;
 
-	        var pluralCategory = formatPlural(props.value, props);
-	        var formattedPlural = props[pluralCategory] || props.other;
+	    for (i = 0, l = FIELDS.length; i < l; i += 1) {
+	        units = FIELDS[i];
 
-	        if (typeof props.children === 'function') {
-	            return props.children(formattedPlural);
+	        if (Math.abs(diffReport[units]) < RelativeFormat.thresholds[units]) {
+	            break;
 	        }
+	    }
 
-	        return _react2['default'].createElement(
-	            'span',
-	            null,
-	            formattedPlural
-	        );
-	    };
-
-	    return FormattedPlural;
-	})(_react.Component);
-
-	exports['default'] = FormattedPlural;
-
-	FormattedPlural.propTypes = _extends({}, _types.pluralFormatPropTypes, {
-	    value: _react.PropTypes.any.isRequired,
-
-	    // TODO: Should these be functions instead nodes (or?), so that complex
-	    // nested elements don't have to incur the cost of rendering when they are
-	    // not used?
-	    other: _react.PropTypes.node.isRequired,
-	    zero: _react.PropTypes.node,
-	    one: _react.PropTypes.node,
-	    two: _react.PropTypes.node,
-	    few: _react.PropTypes.node,
-	    many: _react.PropTypes.node
-	});
-
-	FormattedPlural.defaultProps = {
-	    style: 'cardinal'
+	    return units;
 	};
 
-	FormattedPlural.contextTypes = {
-	    intl: _types.intlShape
-	};
-	module.exports = exports['default'];
+	//# sourceMappingURL=core.js.map
 
 /***/ },
-/* 40 */
-/***/ function(module, exports, __webpack_require__) {
+/* 22 */
+/***/ function(module, exports) {
 
 	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
-
-	'use strict';
-
-	exports.__esModule = true;
-
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+	Copyright (c) 2014, Yahoo! Inc. All rights reserved.
+	Copyrights licensed under the New BSD License.
+	See the accompanying LICENSE file for terms.
+	*/
 
-	function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } }
+	/* jslint esnext: true */
 
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
+	"use strict";
 
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+	var round = Math.round;
 
-	var _react = __webpack_require__(2);
+	function daysToYears(days) {
+	    // 400 years have 146097 days (taking into account leap year rules)
+	    return days * 400 / 146097;
+	}
 
-	var _types = __webpack_require__(32);
+	exports["default"] = function (from, to) {
+	    // Convert to ms timestamps.
+	    from = +from;
+	    to   = +to;
 
-	var _utils = __webpack_require__(30);
+	    var millisecond = round(to - from),
+	        second      = round(millisecond / 1000),
+	        minute      = round(second / 60),
+	        hour        = round(minute / 60),
+	        day         = round(hour / 24),
+	        week        = round(day / 7);
 
-	var FormattedMessage = (function (_Component) {
-	    _inherits(FormattedMessage, _Component);
+	    var rawYears = daysToYears(day),
+	        month    = round(rawYears * 12),
+	        year     = round(rawYears);
 
-	    function FormattedMessage(props, context) {
-	        _classCallCheck(this, FormattedMessage);
+	    return {
+	        millisecond: millisecond,
+	        second     : second,
+	        minute     : minute,
+	        hour       : hour,
+	        day        : day,
+	        week       : week,
+	        month      : month,
+	        year       : year
+	    };
+	};
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
-	    }
+	//# sourceMappingURL=diff.js.map
 
-	    FormattedMessage.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {
-	        var values = this.props.values;
-	        var nextValues = nextProps.values;
+/***/ },
+/* 23 */
+/***/ function(module, exports) {
 
-	        if (!_utils.shallowEquals(nextValues, values)) {
-	            return true;
-	        }
+	/*
+	Copyright (c) 2014, Yahoo! Inc. All rights reserved.
+	Copyrights licensed under the New BSD License.
+	See the accompanying LICENSE file for terms.
+	*/
 
-	        var nextPropsToCheck = _extends({}, nextProps, {
-	            values: null
-	        });
+	/* jslint esnext: true */
 
-	        for (var _len = arguments.length, next = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
-	            next[_key - 1] = arguments[_key];
-	        }
+	"use strict";
 
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this, nextPropsToCheck].concat(next));
-	    };
+	// Purposely using the same implementation as the Intl.js `Intl` polyfill.
+	// Copyright 2013 Andy Earnshaw, MIT License
 
-	    FormattedMessage.prototype.render = function render() {
-	        var formatMessage = this.context.intl.formatMessage;
+	var hop = Object.prototype.hasOwnProperty;
+	var toString = Object.prototype.toString;
 
-	        var props = this.props;
+	var realDefineProp = (function () {
+	    try { return !!Object.defineProperty({}, 'a', {}); }
+	    catch (e) { return false; }
+	})();
 
-	        var id = props.id;
-	        var description = props.description;
-	        var defaultMessage = props.defaultMessage;
-	        var values = props.values;
-	        var tagName = props.tagName;
+	var es3 = !realDefineProp && !Object.prototype.__defineGetter__;
 
-	        // Creates a token with a random UID that should not be guessable or
-	        // conflict with other parts of the `message` string.
-	        var uid = Math.floor(Math.random() * 0x10000000000).toString(16);
-	        var tokenRegexp = new RegExp('(@__ELEMENT-' + uid + '-\\d+__@)', 'g');
+	var defineProperty = realDefineProp ? Object.defineProperty :
+	        function (obj, name, desc) {
 
-	        var generateToken = (function () {
-	            var counter = 0;
-	            return function () {
-	                return '@__ELEMENT-' + uid + '-' + (counter += 1) + '__@';
-	            };
-	        })();
+	    if ('get' in desc && obj.__defineGetter__) {
+	        obj.__defineGetter__(name, desc.get);
+	    } else if (!hop.call(obj, name) || 'value' in desc) {
+	        obj[name] = desc.value;
+	    }
+	};
 
-	        var tokenizedValues = {};
-	        var elements = {};
-
-	        // Iterates over the `props` to keep track of any React Element values
-	        // so they can be represented by the `token` as a placeholder when the
-	        // `message` is formatted. This allows the formatted message to then be
-	        // broken-up into parts with references to the React Elements inserted
-	        // back in.
-	        Object.keys(values).forEach(function (name) {
-	            var value = values[name];
-
-	            if (_react.isValidElement(value)) {
-	                var token = generateToken();
-	                tokenizedValues[name] = token;
-	                elements[token] = value;
-	            } else {
-	                tokenizedValues[name] = value;
-	            }
-	        });
+	var objCreate = Object.create || function (proto, props) {
+	    var obj, k;
 
-	        var descriptor = { id: id, description: description, defaultMessage: defaultMessage };
-	        var formattedMessage = formatMessage(descriptor, tokenizedValues);
-
-	        // Split the message into parts so the React Element values captured
-	        // above can be inserted back into the rendered message. This approach
-	        // allows messages to render with React Elements while keeping React's
-	        // virtual diffing working properly.
-	        var nodes = formattedMessage.split(tokenRegexp).filter(function (part) {
-	            return !!part;
-	        }).map(function (part) {
-	            return elements[part] || part;
-	        });
+	    function F() {}
+	    F.prototype = proto;
+	    obj = new F();
 
-	        if (typeof props.children === 'function') {
-	            return props.children.apply(props, _toConsumableArray(nodes));
+	    for (k in props) {
+	        if (hop.call(props, k)) {
+	            defineProperty(obj, k, props[k]);
 	        }
+	    }
 
-	        return _react.createElement.apply(undefined, [tagName, null].concat(_toConsumableArray(nodes)));
-	    };
-
-	    return FormattedMessage;
-	})(_react.Component);
+	    return obj;
+	};
 
-	exports['default'] = FormattedMessage;
+	var arrIndexOf = Array.prototype.indexOf || function (search, fromIndex) {
+	    /*jshint validthis:true */
+	    var arr = this;
+	    if (!arr.length) {
+	        return -1;
+	    }
 
-	FormattedMessage.propTypes = {
-	    id: _react.PropTypes.string.isRequired,
-	    description: _react.PropTypes.string,
-	    defaultMessage: _react.PropTypes.string,
+	    for (var i = fromIndex || 0, max = arr.length; i < max; i++) {
+	        if (arr[i] === search) {
+	            return i;
+	        }
+	    }
 
-	    values: _react.PropTypes.object,
-	    tagName: _react.PropTypes.string
+	    return -1;
 	};
 
-	FormattedMessage.contextTypes = {
-	    intl: _types.intlShape
+	var isArray = Array.isArray || function (obj) {
+	    return toString.call(obj) === '[object Array]';
 	};
 
-	FormattedMessage.defaultProps = {
-	    tagName: 'span',
-	    values: {}
+	var dateNow = Date.now || function () {
+	    return new Date().getTime();
 	};
-	module.exports = exports['default'];
-
-/***/ },
-/* 41 */
-/***/ function(module, exports, __webpack_require__) {
-
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
+	exports.defineProperty = defineProperty, exports.objCreate = objCreate, exports.arrIndexOf = arrIndexOf, exports.isArray = isArray, exports.dateNow = dateNow;
 
-	'use strict';
+	//# sourceMappingURL=es5.js.map
 
-	exports.__esModule = true;
+/***/ },
+/* 24 */
+/***/ function(module, exports) {
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+	// GENERATED FILE
+	"use strict";
+	exports["default"] = {"locale":"en","pluralRuleFunction":function (n,ord){var s=String(n).split("."),v0=!s[1],t0=Number(s[0])==n,n10=t0&&s[0].slice(-1),n100=t0&&s[0].slice(-2);if(ord)return n10==1&&n100!=11?"one":n10==2&&n100!=12?"two":n10==3&&n100!=13?"few":"other";return n==1&&v0?"one":"other"},"fields":{"year":{"displayName":"year","relative":{"0":"this year","1":"next year","-1":"last year"},"relativeTime":{"future":{"one":"in {0} year","other":"in {0} years"},"past":{"one":"{0} year ago","other":"{0} years ago"}}},"month":{"displayName":"month","relative":{"0":"this month","1":"next month","-1":"last month"},"relativeTime":{"future":{"one":"in {0} month","other":"in {0} months"},"past":{"one":"{0} month ago","other":"{0} months ago"}}},"day":{"displayName":"day","relative":{"0":"today","1":"tomorrow","-1":"yesterday"},"relativeTime":{"future":{"one":"in {0} day","other":"in {0} days"},"past":{"one":"{0} day ago","other":"{0} days ago"}}},"hour":{"displayName":"hour","relativeTime":{"future":{"one":"in {0} hour","other":"in {0} hours"},"past":{"one":"{0} hour ago","other":"{0} hours ago"}}},"minute":{"displayName":"minute","relativeTime":{"future":{"one":"in {0} minute","other":"in {0} minutes"},"past":{"one":"{0} minute ago","other":"{0} minutes ago"}}},"second":{"displayName":"second","relative":{"0":"now"},"relativeTime":{"future":{"one":"in {0} second","other":"in {0} seconds"},"past":{"one":"{0} second ago","other":"{0} seconds ago"}}}}};
 
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
+	//# sourceMappingURL=en.js.map
 
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+/***/ },
+/* 25 */
+/***/ function(module, exports) {
 
-	var _react = __webpack_require__(2);
+	/* (ignored) */
 
-	var _types = __webpack_require__(32);
+/***/ },
+/* 26 */
+/***/ function(module, exports, __webpack_require__) {
 
-	var _utils = __webpack_require__(30);
+	/* WEBPACK VAR INJECTION */(function(process) {/**
+	 * Copyright 2013-2015, Facebook, Inc.
+	 * All rights reserved.
+	 *
+	 * This source code is licensed under the BSD-style license found in the
+	 * LICENSE file in the root directory of this source tree. An additional grant
+	 * of patent rights can be found in the PATENTS file in the same directory.
+	 */
 
-	var FormattedHTMLMessage = (function (_Component) {
-	    _inherits(FormattedHTMLMessage, _Component);
+	'use strict';
 
-	    function FormattedHTMLMessage(props, context) {
-	        _classCallCheck(this, FormattedHTMLMessage);
+	/**
+	 * Use invariant() to assert state which your program assumes to be true.
+	 *
+	 * Provide sprintf-style format (only %s is supported) and arguments
+	 * to provide information about what broke and what you were
+	 * expecting.
+	 *
+	 * The invariant message will be stripped in production, but the invariant
+	 * will remain to ensure logic does not differ in production.
+	 */
 
-	        _Component.call(this, props, context);
-	        _utils.assertIntlContext(context);
+	var invariant = function(condition, format, a, b, c, d, e, f) {
+	  if (process.env.NODE_ENV !== 'production') {
+	    if (format === undefined) {
+	      throw new Error('invariant requires an error message argument');
 	    }
+	  }
 
-	    FormattedHTMLMessage.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {
-	        var values = this.props.values;
-	        var nextValues = nextProps.values;
-
-	        if (!_utils.shallowEquals(nextValues, values)) {
-	            return true;
-	        }
-
-	        var nextPropsToCheck = _extends({}, nextProps, {
-	            values: null
-	        });
-
-	        for (var _len = arguments.length, next = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
-	            next[_key - 1] = arguments[_key];
-	        }
-
-	        return _utils.shouldIntlComponentUpdate.apply(undefined, [this, nextPropsToCheck].concat(next));
-	    };
-
-	    FormattedHTMLMessage.prototype.render = function render() {
-	        var formatHTMLMessage = this.context.intl.formatHTMLMessage;
-
-	        var props = this.props;
-
-	        var id = props.id;
-	        var description = props.description;
-	        var defaultMessage = props.defaultMessage;
-	        var values = props.values;
-	        var tagName = props.tagName;
-
-	        var descriptor = { id: id, description: description, defaultMessage: defaultMessage };
-	        var formattedHTMLMessage = formatHTMLMessage(descriptor, values);
-
-	        if (typeof props.children === 'function') {
-	            return props.children(formattedHTMLMessage);
-	        }
+	  if (!condition) {
+	    var error;
+	    if (format === undefined) {
+	      error = new Error(
+	        'Minified exception occurred; use the non-minified dev environment ' +
+	        'for the full error message and additional helpful warnings.'
+	      );
+	    } else {
+	      var args = [a, b, c, d, e, f];
+	      var argIndex = 0;
+	      error = new Error(
+	        format.replace(/%s/g, function() { return args[argIndex++]; })
+	      );
+	      error.name = 'Invariant Violation';
+	    }
 
-	        // Since the message presumably has HTML in it, we need to set
-	        // `innerHTML` in order for it to be rendered and not escaped by React.
-	        // To be safe, all string prop values were escaped before formatting the
-	        // message. It is assumed that the message is not UGC, and came from the
-	        // developer making it more like a template.
-	        //
-	        // Note: There's a perf impact of using this component since there's no
-	        // way for React to do its virtual DOM diffing.
-	        return _react.createElement(tagName, {
-	            dangerouslySetInnerHTML: {
-	                __html: formattedHTMLMessage
-	            }
-	        });
-	    };
+	    error.framesToPop = 1; // we don't care about invariant's own frame
+	    throw error;
+	  }
+	};
 
-	    return FormattedHTMLMessage;
-	})(_react.Component);
+	module.exports = invariant;
 
-	exports['default'] = FormattedHTMLMessage;
+	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(7)))
 
-	FormattedHTMLMessage.propTypes = {
-	    id: _react.PropTypes.string,
-	    description: _react.PropTypes.string,
-	    defaultMessage: _react.PropTypes.string,
+/***/ },
+/* 27 */
+/***/ function(module, exports, __webpack_require__) {
 
-	    values: _react.PropTypes.object,
-	    tagName: _react.PropTypes.string
-	};
+	'use strict';
 
-	FormattedHTMLMessage.contextTypes = {
-	    intl: _types.intlShape
-	};
+	exports = module.exports = __webpack_require__(28)['default'];
+	exports['default'] = exports;
 
-	FormattedHTMLMessage.defaultProps = {
-	    tagName: 'span',
-	    values: {}
-	};
-	module.exports = exports['default'];
 
 /***/ },
-/* 42 */
+/* 28 */
 /***/ function(module, exports, __webpack_require__) {
 
-	/*
-	 * Copyright 2015, Yahoo Inc.
-	 * Copyrights licensed under the New BSD License.
-	 * See the accompanying LICENSE file for terms.
-	 */
+	"use strict";
+	var src$es5$$ = __webpack_require__(29);
+	exports["default"] = createFormatCache;
 
-	'use strict';
+	// -----------------------------------------------------------------------------
 
-	exports.__esModule = true;
+	function createFormatCache(FormatConstructor) {
+	    var cache = src$es5$$.objCreate(null);
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+	    return function () {
+	        var args    = Array.prototype.slice.call(arguments);
+	        var cacheId = getCacheId(args);
+	        var format  = cacheId && cache[cacheId];
 
-	exports['default'] = injectIntl;
+	        if (!format) {
+	            format = new (src$es5$$.bind.apply(FormatConstructor, [null].concat(args)))();
 
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
+	            if (cacheId) {
+	                cache[cacheId] = format;
+	            }
+	        }
 
-	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+	        return format;
+	    };
+	}
 
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
+	// -- Utilities ----------------------------------------------------------------
 
-	function _inherits(subClass, superClass) { if (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
+	function getCacheId(inputs) {
+	    // When JSON is not available in the runtime, we will not create a cache id.
+	    if (typeof JSON === 'undefined') { return; }
 
-	var _react = __webpack_require__(2);
+	    var cacheId = [];
 
-	var _react2 = _interopRequireDefault(_react);
+	    var i, len, input;
 
-	var _types = __webpack_require__(32);
+	    for (i = 0, len = inputs.length; i < len; i += 1) {
+	        input = inputs[i];
 
-	var _utils = __webpack_require__(30);
+	        if (input && typeof input === 'object') {
+	            cacheId.push(orderedProps(input));
+	        } else {
+	            cacheId.push(input);
+	        }
+	    }
 
-	function getDisplayName(Component) {
-	    return Component.displayName || Component.name || 'Component';
+	    return JSON.stringify(cacheId);
 	}
 
-	function injectIntl(WrappedComponent) {
-	    var options = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1];
-	    var _options$intlPropName = options.intlPropName;
-	    var intlPropName = _options$intlPropName === undefined ? 'intl' : _options$intlPropName;
-
-	    var InjectIntl = (function (_Component) {
-	        _inherits(InjectIntl, _Component);
+	function orderedProps(obj) {
+	    var props = [],
+	        keys  = [];
 
-	        function InjectIntl(props, context) {
-	            _classCallCheck(this, InjectIntl);
+	    var key, i, len, prop;
 
-	            _Component.call(this, props, context);
-	            _utils.assertIntlContext(context);
+	    for (key in obj) {
+	        if (obj.hasOwnProperty(key)) {
+	            keys.push(key);
 	        }
+	    }
 
-	        InjectIntl.prototype.render = function render() {
-	            return _react2['default'].createElement(WrappedComponent, _extends({}, this.props, _defineProperty({}, intlPropName, this.context.intl), {
-	                ref: 'wrappedElement'
-	            }));
-	        };
-
-	        return InjectIntl;
-	    })(_react.Component);
+	    var orderedKeys = keys.sort();
 
-	    InjectIntl.displayName = 'IntjectIntl(' + getDisplayName(WrappedComponent) + ')';
+	    for (i = 0, len = orderedKeys.length; i < len; i += 1) {
+	        key  = orderedKeys[i];
+	        prop = {};
 
-	    InjectIntl.contextTypes = {
-	        intl: _types.intlShape
-	    };
+	        prop[key] = obj[key];
+	        props[i]  = prop;
+	    }
 
-	    return InjectIntl;
+	    return props;
 	}
 
-	module.exports = exports['default'];
+	//# sourceMappingURL=memoizer.js.map
 
 /***/ },
-/* 43 */
-/***/ function(module, exports, __webpack_require__) {
-
-	'use strict';
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+/* 29 */
+/***/ function(module, exports) {
 
-	Object.defineProperty(exports, "__esModule", {
-	  value: true
-	});
+	"use strict";
+	/*
+	Copyright (c) 2014, Yahoo! Inc. All rights reserved.
+	Copyrights licensed under the New BSD License.
+	See the accompanying LICENSE file for terms.
+	*/
 
-	var _react = __webpack_require__(2);
+	/* jslint esnext: true */
 
-	var _react2 = _interopRequireDefault(_react);
+	// Function.prototype.bind implementation from Mozilla Developer Network:
+	// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind#Polyfill
 
-	var _FormattedMessage = __webpack_require__(5);
+	var bind = Function.prototype.bind || function (oThis) {
+	    if (typeof this !== 'function') {
+	      // closest thing possible to the ECMAScript 5
+	      // internal IsCallable function
+	      throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');
+	    }
 
-	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
+	    var aArgs   = Array.prototype.slice.call(arguments, 1),
+	        fToBind = this,
+	        fNOP    = function() {},
+	        fBound  = function() {
+	          return fToBind.apply(this instanceof fNOP
+	                 ? this
+	                 : oThis,
+	                 aArgs.concat(Array.prototype.slice.call(arguments)));
+	        };
 
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+	    if (this.prototype) {
+	      // native functions don't have a prototype
+	      fNOP.prototype = this.prototype;
+	    }
+	    fBound.prototype = new fNOP();
 
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+	    return fBound;
+	};
 
-	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+	// Purposely using the same implementation as the Intl.js `Intl` polyfill.
+	// Copyright 2013 Andy Earnshaw, MIT License
 
-	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+	var hop = Object.prototype.hasOwnProperty;
 
-	var CLASS_ROOT = "control-icon";
+	var realDefineProp = (function () {
+	    try { return !!Object.defineProperty({}, 'a', {}); }
+	    catch (e) { return false; }
+	})();
 
-	var Icon = function (_Component) {
-	  _inherits(Icon, _Component);
+	var es3 = !realDefineProp && !Object.prototype.__defineGetter__;
 
-	  function Icon() {
-	    _classCallCheck(this, Icon);
+	var defineProperty = realDefineProp ? Object.defineProperty :
+	        function (obj, name, desc) {
 
-	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Icon).apply(this, arguments));
-	  }
+	    if ('get' in desc && obj.__defineGetter__) {
+	        obj.__defineGetter__(name, desc.get);
+	    } else if (!hop.call(obj, name) || 'value' in desc) {
+	        obj[name] = desc.value;
+	    }
+	};
 
-	  _createClass(Icon, [{
-	    key: 'render',
-	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-link-previous'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	var objCreate = Object.create || function (proto, props) {
+	    var obj, k;
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link-previous";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	    function F() {}
+	    F.prototype = proto;
+	    obj = new F();
 
-	      return _react2.default.createElement(
-	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
-	        _react2.default.createElement(
-	          'title',
-	          { id: this.props.a11yTitleId },
-	          a11yTitle
-	        ),
-	        _react2.default.createElement(
-	          'g',
-	          { id: 'link-previous' },
-	          _react2.default.createElement('rect', { id: '_x2E_svg_250_', y: '0', fill: 'none', width: '24', height: '24' }),
-	          _react2.default.createElement('path', { fill: 'none', stroke: '#000000', strokeWidth: '2', strokeMiterlimit: '10', d: 'M11.1397,20l-8-8l8-8 M3.1397,12h19' })
-	        )
-	      );
+	    for (k in props) {
+	        if (hop.call(props, k)) {
+	            defineProperty(obj, k, props[k]);
+	        }
 	    }
-	  }]);
-
-	  return Icon;
-	}(_react.Component);
-
-	exports.default = Icon;
 
-	Icon.propTypes = {
-	  a11yTitle: _react.PropTypes.string,
-	  a11yTitleId: _react.PropTypes.string,
-	  colorIndex: _react.PropTypes.string,
-	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	    return obj;
 	};
 
-	Icon.defaultProps = {
-	  a11yTitleId: 'link-previous-title'
-	};
+	exports.bind = bind, exports.defineProperty = defineProperty, exports.objCreate = objCreate;
 
-	Icon.icon = true;
-	module.exports = exports.default;
-	module.exports = exports['default'];
+	//# sourceMappingURL=es5.js.map
 
 /***/ },
-/* 44 */
+/* 30 */
 /***/ function(module, exports, __webpack_require__) {
 
 	/* WEBPACK VAR INJECTION */(function(global) {'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Locale = __webpack_require__(45);
+	var _Locale = __webpack_require__(31);
 
-	var _SkipLinks = __webpack_require__(51);
+	var _SkipLinks = __webpack_require__(37);
 
 	var _SkipLinks2 = _interopRequireDefault(_SkipLinks);
 
@@ -4804,6 +4766,8 @@ var Grommet =
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
+	var CLASS_ROOT = 'app';
+
 	var supportedLocales = ['en-US', 'pt-BR'];
 
 	function localesSupported() {
@@ -4813,9 +4777,9 @@ var Grommet =
 	}
 
 	if (!localesSupported()) {
-	  __webpack_require__(92);
-	  __webpack_require__(97);
-	  __webpack_require__(98);
+	  __webpack_require__(53);
+	  __webpack_require__(58);
+	  __webpack_require__(59);
 	  Intl.NumberFormat = IntlPolyfill.NumberFormat;
 	  Intl.DateTimeFormat = IntlPolyfill.DateTimeFormat;
 	}
@@ -4841,22 +4805,23 @@ var Grommet =
 	      if (this.props.lang) {
 	        lang = this.props.lang;
 	      }
-
 	      if (!document.documentElement.getAttribute('lang')) {
 	        document.documentElement.setAttribute('lang', lang);
 	      }
-
 	      this.setState({ lang: lang });
+
+	      // Put the grommet class on the html element.
+	      document.documentElement.classList.add('grommet');
 	    }
 	  }, {
 	    key: 'render',
 	    value: function render() {
-	      var classes = ["app"];
+	      var classes = ["grommet", CLASS_ROOT];
 	      if (this.props.centered) {
-	        classes.push("app--centered");
+	        classes.push(CLASS_ROOT + '--centered');
 	      }
 	      if (this.props.inline) {
-	        classes.push("app--inline");
+	        classes.push(CLASS_ROOT + '--inline');
 	      }
 
 	      if (this.props.className) {
@@ -4877,6 +4842,7 @@ var Grommet =
 
 	exports.default = App;
 
+
 	App.defaultProps = {
 	  centered: true
 	};
@@ -4888,7 +4854,7 @@ var Grommet =
 	/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
 
 /***/ },
-/* 45 */
+/* 31 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
@@ -4896,17 +4862,20 @@ var Grommet =
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
+
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
 	exports.setLocale = setLocale;
 	exports.getCurrentLocale = getCurrentLocale;
 	exports.getLocaleData = getLocaleData;
 
-	var _Cookies = __webpack_require__(46);
+	var _Cookies = __webpack_require__(32);
 
 	var _Cookies2 = _interopRequireDefault(_Cookies);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
-	var currentLocale = 'en-US'; // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+	var currentLocale = 'en-US';
 
 	function normalizeLocale(locale) {
 	  var locales = locale.replace(/_/g, '-').split('-');
@@ -4940,20 +4909,20 @@ var Grommet =
 	  var appMessages = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
 	  var locale = arguments.length <= 1 || arguments[1] === undefined ? getCurrentLocale() : arguments[1];
 
-	  var grommetMessages = undefined;
+	  var grommetMessages = void 0;
 	  try {
-	    grommetMessages = __webpack_require__(47)("./" + locale);
+	    grommetMessages = __webpack_require__(33)("./" + locale);
 	  } catch (e) {
 	    grommetMessages = {};
 	  }
 
-	  var messages = Object.assign(grommetMessages, appMessages);
+	  var messages = _extends({}, grommetMessages, appMessages);
 
 	  return { locale: locale, messages: messages };
 	}
 
 /***/ },
-/* 46 */
+/* 32 */
 /***/ function(module, exports) {
 
 	"use strict";
@@ -5042,16 +5011,16 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 47 */
+/* 33 */
 /***/ function(module, exports, __webpack_require__) {
 
 	var map = {
-		"./en": 48,
-		"./en-US": 49,
-		"./en-US.js": 49,
-		"./en.js": 48,
-		"./pt-BR": 50,
-		"./pt-BR.js": 50
+		"./en": 34,
+		"./en-US": 35,
+		"./en-US.js": 35,
+		"./en.js": 34,
+		"./pt-BR": 36,
+		"./pt-BR.js": 36
 	};
 	function webpackContext(req) {
 		return __webpack_require__(webpackContextResolve(req));
@@ -5064,21 +5033,21 @@ var Grommet =
 	};
 	webpackContext.resolve = webpackContextResolve;
 	module.exports = webpackContext;
-	webpackContext.id = 47;
+	webpackContext.id = 33;
 
 
 /***/ },
-/* 48 */
+/* 34 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
 	// (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	module.exports = __webpack_require__(49);
+	module.exports = __webpack_require__(35);
 
 /***/ },
-/* 49 */
+/* 35 */
 /***/ function(module, exports) {
 
 	'use strict';
@@ -5096,9 +5065,12 @@ var Grommet =
 	  add: 'add',
 	  Alerts: 'Alerts',
 	  All: 'All',
+	  archive: 'archive',
 	  area: 'area',
 	  Bar: 'Bar',
+	  bar: 'bar',
 	  Box: 'Box',
+	  camera: 'camera',
 	  Category: 'Category',
 	  Circle: 'Circle',
 	  Chart: 'Chart',
@@ -5107,12 +5079,14 @@ var Grommet =
 	  Close: 'Close',
 	  close: 'close',
 	  'Close Menu': 'Close Menu',
+	  'command-line': 'command line',
 	  Completed: 'Completed',
 	  created: 'Created',
 	  Critical: 'Critical',
 	  Disabled: 'Disabled',
 	  Distribution: 'Distribution',
 	  down: 'down',
+	  download: 'download',
 	  edit: 'edit',
 	  Email: 'Email',
 	  Error: 'Error',
@@ -5120,6 +5094,8 @@ var Grommet =
 	  filter: 'filter',
 	  Footer: 'Footer',
 	  'Grommet Logo': 'Grommet Logo',
+	  'Layer': 'Layer',
+	  line: 'line',
 	  'link-next': 'link-next',
 	  'link-previous': 'link-previous',
 	  'Loading': 'Loading',
@@ -5135,6 +5111,7 @@ var Grommet =
 	  model: 'Model',
 	  modified: 'Modified',
 	  monitor: 'monitor',
+	  more: 'more',
 	  Name: 'Name',
 	  OK: 'OK',
 	  Open: 'Open',
@@ -5149,13 +5126,17 @@ var Grommet =
 	  State: 'State',
 	  Status: 'Status',
 	  subtract: 'subtract',
+	  support: 'support',
+	  sync: 'sync',
 	  'Tab Contents': '{activeTitle} Tab Contents',
 	  Tasks: 'Tasks',
 	  Time: 'Time',
 	  Title: 'Title',
 	  Total: 'Total',
+	  trash: 'trash',
 	  Threshold: 'Threshold',
 	  Unknown: 'Unknown',
+	  upload: 'upload',
 	  user: 'user',
 	  Username: 'Username',
 	  uri: 'URI',
@@ -5166,7 +5147,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 50 */
+/* 36 */
 /***/ function(module, exports) {
 
 	'use strict';
@@ -5186,7 +5167,9 @@ var Grommet =
 	  All: 'Todos',
 	  area: 'Área',
 	  Bar: 'Bar',
+	  bar: 'bar',
 	  Box: 'Box',
+	  camera: 'Câmera',
 	  Category: 'Categoria',
 	  Circle: 'Círculo',
 	  Chart: 'Gráfico',
@@ -5195,6 +5178,7 @@ var Grommet =
 	  Close: 'Fechar',
 	  close: 'fechar',
 	  'Close Menu': 'Fechar Menu',
+	  'command-line': 'linha de comando',
 	  Completed: 'Completado',
 	  created: 'Criado',
 	  Critical: 'Crítico',
@@ -5207,6 +5191,8 @@ var Grommet =
 	  filter: 'filtro',
 	  Footer: 'Rodapé',
 	  'Grommet Logo': 'Gromment Logomarca',
+	  'Layer': 'Modal',
+	  line: 'linha',
 	  'link-next': 'link-next',
 	  'link-previous': 'link-previous',
 	  'Loading': 'Carregando',
@@ -5222,6 +5208,7 @@ var Grommet =
 	  model: 'Modelo',
 	  modified: 'Modificado',
 	  monitor: 'monitor',
+	  more: 'mais',
 	  Name: 'Nome',
 	  OK: 'OK',
 	  Open: 'Abrir',
@@ -5241,6 +5228,7 @@ var Grommet =
 	  Time: 'Data',
 	  Title: 'Título',
 	  Total: 'Total',
+	  trash: 'lixeira',
 	  Threshold: 'Limiar',
 	  Unknown: 'Desconhecido',
 	  user: 'user',
@@ -5253,17 +5241,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 51 */
+/* 37 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -5272,23 +5260,23 @@ var Grommet =
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Layer = __webpack_require__(71);
+	var _Layer = __webpack_require__(43);
 
 	var _Layer2 = _interopRequireDefault(_Layer);
 
-	var _Menu = __webpack_require__(75);
+	var _Menu = __webpack_require__(47);
 
 	var _Menu2 = _interopRequireDefault(_Menu);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
@@ -5324,6 +5312,8 @@ var Grommet =
 	        tab: this._processTab
 	      };
 	      _KeyboardAccelerators2.default.startListeningToKeyboard(this, this._keyboardHandlers);
+
+	      document.addEventListener('DOMNodeInserted', this._updateAnchors);
 	    }
 	  }, {
 	    key: 'componentWillReceiveProps',
@@ -5341,6 +5331,7 @@ var Grommet =
 	    key: 'componentWillUnmount',
 	    value: function componentWillUnmount() {
 	      _KeyboardAccelerators2.default.stopListeningToKeyboard(this, this._keyboardHandlers);
+	      document.removeEventListener('DOMNodeInserted', this._updateAnchors);
 	    }
 	  }, {
 	    key: '_updateAnchors',
@@ -5407,11 +5398,11 @@ var Grommet =
 	        );
 	      }.bind(this));
 
-	      var menuComponent = undefined;
+	      var menuComponent = void 0;
 	      if (anchorElements.length > 0) {
 	        menuComponent = _react2.default.createElement(
 	          _Menu2.default,
-	          { direction: 'row' },
+	          { direction: 'row', responsive: false },
 	          anchorElements
 	        );
 	      }
@@ -5439,43 +5430,44 @@ var Grommet =
 
 	exports.default = SkipLinks;
 
+
 	SkipLinks.contextTypes = {
 	  intl: _react.PropTypes.object
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 52 */
+/* 38 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
+
 	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
 	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
 
 	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
-	Object.defineProperty(exports, "__esModule", {
-	  value: true
-	});
-
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _keys = __webpack_require__(53);
-
-	var _keys2 = _interopRequireDefault(_keys);
-
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
+	var _SkipLinkAnchor = __webpack_require__(42);
+
+	var _SkipLinkAnchor2 = _interopRequireDefault(_SkipLinkAnchor);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -5527,7 +5519,7 @@ var Grommet =
 	        if (typeof choice === 'string') {
 	          classes.push(prefix + '--' + propertyPrefix + '-' + choice);
 	        } else if ((typeof choice === 'undefined' ? 'undefined' : _typeof(choice)) === 'object') {
-	          (0, _keys2.default)(choice).forEach(function (key) {
+	          Object.keys(choice).forEach(function (key) {
 	            classes.push(prefix + '--' + propertyPrefix + '-' + key + '-' + choice[key]);
 	          });
 	        } else {
@@ -5542,11 +5534,11 @@ var Grommet =
 
 	      var classes = [CLASS_ROOT];
 	      var containerClasses = [CLASS_ROOT + "__container"];
-	      this._addPropertyClass(classes, CLASS_ROOT, 'flush');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'full');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'direction');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'justify');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'align');
+	      this._addPropertyClass(classes, CLASS_ROOT, 'alignContent', 'align-content');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'reverse');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'responsive');
 	      this._addPropertyClass(classes, CLASS_ROOT, 'pad');
@@ -5568,6 +5560,23 @@ var Grommet =
 	        }
 	      }
 
+	      var a11yProps = {};
+	      if (this.props.onClick) {
+	        classes.push(CLASS_ROOT + "--clickable");
+	        if (this.props.focusable) {
+	          var boxLabel = this.props.a11yTitle || _Intl2.default.getMessage(this.context.intl, 'Box');
+	          a11yProps.tabIndex = 0;
+	          a11yProps["aria-label"] = boxLabel;
+	          a11yProps.role = this.props.role || 'link';
+	        }
+	      }
+
+	      var skipLinkAnchor = void 0;
+	      if (this.props.primary) {
+	        var mainContentLabel = _Intl2.default.getMessage(this.context.intl, 'Main Content');
+	        skipLinkAnchor = _react2.default.createElement(_SkipLinkAnchor2.default, { label: mainContentLabel });
+	      }
+
 	      if (this.props.className) {
 	        classes.push(this.props.className);
 	      }
@@ -5579,7 +5588,7 @@ var Grommet =
 	        style.background = this.props.backgroundImage + " no-repeat center center";
 	        style.backgroundSize = "cover";
 	      }
-	      var texture;
+	      var texture = void 0;
 	      if ('object' === _typeof(this.props.texture)) {
 	        texture = _react2.default.createElement(
 	          'div',
@@ -5588,14 +5597,6 @@ var Grommet =
 	        );
 	      }
 
-	      var a11yProps = {};
-	      if (this.props.onClick) {
-	        var boxLabel = _Intl2.default.getMessage(this.context.intl, this.props.a11yTitle);
-	        a11yProps.tabIndex = 0;
-	        a11yProps["aria-label"] = boxLabel;
-	        a11yProps.role = this.props.role || 'link';
-	      }
-
 	      var eventRegex = /^on[A-Z].*$/;
 	      var eventListeners = {};
 	      Object.keys(this.props).forEach(function (prop) {
@@ -5609,6 +5610,7 @@ var Grommet =
 	          'div',
 	          _extends({ ref: 'boxContainer', className: containerClasses.join(' '),
 	            style: style, role: this.props.role }, a11yProps, eventListeners),
+	          skipLinkAnchor,
 	          _react2.default.createElement(
 	            this.props.tag,
 	            { id: this.props.id, className: classes.join(' ') },
@@ -5622,6 +5624,7 @@ var Grommet =
 	          _extends({ ref: 'boxContainer', id: this.props.id,
 	            className: classes.join(' '), style: style,
 	            role: this.props.role, tabIndex: this.props.tabIndex }, a11yProps, eventListeners),
+	          skipLinkAnchor,
 	          texture,
 	          this.props.children
 	        );
@@ -5634,14 +5637,17 @@ var Grommet =
 
 	exports.default = Box;
 
+
 	Box.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
-	  align: _react.PropTypes.oneOf(['start', 'center', 'end', 'stretch']),
+	  align: _react.PropTypes.oneOf(['start', 'center', 'end', 'baseline', 'stretch']),
+	  alignContent: _react.PropTypes.oneOf(['start', 'center', 'end', 'between', 'around', 'stretch']),
 	  appCentered: _react.PropTypes.bool,
 	  backgroundImage: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  containerClassName: _react.PropTypes.string,
 	  direction: _react.PropTypes.oneOf(['row', 'column']),
+	  focusable: _react.PropTypes.bool,
 	  full: _react.PropTypes.oneOf([true, 'horizontal', 'vertical', false]),
 	  onClick: _react.PropTypes.func,
 	  justify: _react.PropTypes.oneOf(['start', 'center', 'between', 'end']),
@@ -5650,10 +5656,11 @@ var Grommet =
 	    horizontal: _react.PropTypes.oneOf(['none', 'small', 'medium', 'large']),
 	    vertical: _react.PropTypes.oneOf(['none', 'small', 'medium', 'large'])
 	  })]),
+	  primary: _react.PropTypes.bool,
 	  reverse: _react.PropTypes.bool,
 	  responsive: _react.PropTypes.bool,
 	  role: _react.PropTypes.string,
-	  separator: _react.PropTypes.oneOf(['top', 'bottom', 'left', 'right', 'horizontal', 'vertical', 'all']),
+	  separator: _react.PropTypes.oneOf(['top', 'bottom', 'left', 'right', 'horizontal', 'vertical', 'all', 'none']),
 	  tag: _react.PropTypes.string,
 	  textAlign: _react.PropTypes.oneOf(['left', 'center', 'right']),
 	  texture: _react.PropTypes.oneOfType([_react.PropTypes.node, _react.PropTypes.string]),
@@ -5665,560 +5672,16 @@ var Grommet =
 	};
 
 	Box.defaultProps = {
-	  a11yTitle: 'Box',
 	  direction: 'column',
 	  pad: 'none',
 	  tag: 'div',
-	  responsive: true
+	  responsive: true,
+	  focusable: true
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 53 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var getNative = __webpack_require__(54),
-	    isArrayLike = __webpack_require__(59),
-	    isObject = __webpack_require__(57),
-	    shimKeys = __webpack_require__(63);
-
-	/* Native method references for those with the same name as other `lodash` methods. */
-	var nativeKeys = getNative(Object, 'keys');
-
-	/**
-	 * Creates an array of the own enumerable property names of `object`.
-	 *
-	 * **Note:** Non-object values are coerced to objects. See the
-	 * [ES spec](http://ecma-international.org/ecma-262/6.0/#sec-object.keys)
-	 * for more details.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Object
-	 * @param {Object} object The object to query.
-	 * @returns {Array} Returns the array of property names.
-	 * @example
-	 *
-	 * function Foo() {
-	 *   this.a = 1;
-	 *   this.b = 2;
-	 * }
-	 *
-	 * Foo.prototype.c = 3;
-	 *
-	 * _.keys(new Foo);
-	 * // => ['a', 'b'] (iteration order is not guaranteed)
-	 *
-	 * _.keys('hi');
-	 * // => ['0', '1']
-	 */
-	var keys = !nativeKeys ? shimKeys : function(object) {
-	  var Ctor = object == null ? undefined : object.constructor;
-	  if ((typeof Ctor == 'function' && Ctor.prototype === object) ||
-	      (typeof object != 'function' && isArrayLike(object))) {
-	    return shimKeys(object);
-	  }
-	  return isObject(object) ? nativeKeys(object) : [];
-	};
-
-	module.exports = keys;
-
-
-/***/ },
-/* 54 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isNative = __webpack_require__(55);
-
-	/**
-	 * Gets the native function at `key` of `object`.
-	 *
-	 * @private
-	 * @param {Object} object The object to query.
-	 * @param {string} key The key of the method to get.
-	 * @returns {*} Returns the function if it's native, else `undefined`.
-	 */
-	function getNative(object, key) {
-	  var value = object == null ? undefined : object[key];
-	  return isNative(value) ? value : undefined;
-	}
-
-	module.exports = getNative;
-
-
-/***/ },
-/* 55 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isFunction = __webpack_require__(56),
-	    isObjectLike = __webpack_require__(58);
-
-	/** Used to detect host constructors (Safari > 5). */
-	var reIsHostCtor = /^\[object .+?Constructor\]$/;
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to resolve the decompiled source of functions. */
-	var fnToString = Function.prototype.toString;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/** Used to detect if a method is native. */
-	var reIsNative = RegExp('^' +
-	  fnToString.call(hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g, '\\$&')
-	  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
-	);
-
-	/**
-	 * Checks if `value` is a native function.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is a native function, else `false`.
-	 * @example
-	 *
-	 * _.isNative(Array.prototype.push);
-	 * // => true
-	 *
-	 * _.isNative(_);
-	 * // => false
-	 */
-	function isNative(value) {
-	  if (value == null) {
-	    return false;
-	  }
-	  if (isFunction(value)) {
-	    return reIsNative.test(fnToString.call(value));
-	  }
-	  return isObjectLike(value) && reIsHostCtor.test(value);
-	}
-
-	module.exports = isNative;
-
-
-/***/ },
-/* 56 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isObject = __webpack_require__(57);
-
-	/** `Object#toString` result references. */
-	var funcTag = '[object Function]';
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/**
-	 * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
-	 * of values.
-	 */
-	var objToString = objectProto.toString;
-
-	/**
-	 * Checks if `value` is classified as a `Function` object.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-	 * @example
-	 *
-	 * _.isFunction(_);
-	 * // => true
-	 *
-	 * _.isFunction(/abc/);
-	 * // => false
-	 */
-	function isFunction(value) {
-	  // The use of `Object#toString` avoids issues with the `typeof` operator
-	  // in older versions of Chrome and Safari which return 'function' for regexes
-	  // and Safari 8 which returns 'object' for typed array constructors.
-	  return isObject(value) && objToString.call(value) == funcTag;
-	}
-
-	module.exports = isFunction;
-
-
-/***/ },
-/* 57 */
-/***/ function(module, exports) {
-
-	/**
-	 * Checks if `value` is the [language type](https://es5.github.io/#x8) of `Object`.
-	 * (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is an object, else `false`.
-	 * @example
-	 *
-	 * _.isObject({});
-	 * // => true
-	 *
-	 * _.isObject([1, 2, 3]);
-	 * // => true
-	 *
-	 * _.isObject(1);
-	 * // => false
-	 */
-	function isObject(value) {
-	  // Avoid a V8 JIT bug in Chrome 19-20.
-	  // See https://code.google.com/p/v8/issues/detail?id=2291 for more details.
-	  var type = typeof value;
-	  return !!value && (type == 'object' || type == 'function');
-	}
-
-	module.exports = isObject;
-
-
-/***/ },
-/* 58 */
-/***/ function(module, exports) {
-
-	/**
-	 * Checks if `value` is object-like.
-	 *
-	 * @private
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
-	 */
-	function isObjectLike(value) {
-	  return !!value && typeof value == 'object';
-	}
-
-	module.exports = isObjectLike;
-
-
-/***/ },
-/* 59 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var getLength = __webpack_require__(60),
-	    isLength = __webpack_require__(62);
-
-	/**
-	 * Checks if `value` is array-like.
-	 *
-	 * @private
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
-	 */
-	function isArrayLike(value) {
-	  return value != null && isLength(getLength(value));
-	}
-
-	module.exports = isArrayLike;
-
-
-/***/ },
-/* 60 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseProperty = __webpack_require__(61);
-
-	/**
-	 * Gets the "length" property value of `object`.
-	 *
-	 * **Note:** This function is used to avoid a [JIT bug](https://bugs.webkit.org/show_bug.cgi?id=142792)
-	 * that affects Safari on at least iOS 8.1-8.3 ARM64.
-	 *
-	 * @private
-	 * @param {Object} object The object to query.
-	 * @returns {*} Returns the "length" value.
-	 */
-	var getLength = baseProperty('length');
-
-	module.exports = getLength;
-
-
-/***/ },
-/* 61 */
-/***/ function(module, exports) {
-
-	/**
-	 * The base implementation of `_.property` without support for deep paths.
-	 *
-	 * @private
-	 * @param {string} key The key of the property to get.
-	 * @returns {Function} Returns the new function.
-	 */
-	function baseProperty(key) {
-	  return function(object) {
-	    return object == null ? undefined : object[key];
-	  };
-	}
-
-	module.exports = baseProperty;
-
-
-/***/ },
-/* 62 */
-/***/ function(module, exports) {
-
-	/**
-	 * Used as the [maximum length](http://ecma-international.org/ecma-262/6.0/#sec-number.max_safe_integer)
-	 * of an array-like value.
-	 */
-	var MAX_SAFE_INTEGER = 9007199254740991;
-
-	/**
-	 * Checks if `value` is a valid array-like length.
-	 *
-	 * **Note:** This function is based on [`ToLength`](http://ecma-international.org/ecma-262/6.0/#sec-tolength).
-	 *
-	 * @private
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
-	 */
-	function isLength(value) {
-	  return typeof value == 'number' && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
-	}
-
-	module.exports = isLength;
-
-
-/***/ },
-/* 63 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isArguments = __webpack_require__(64),
-	    isArray = __webpack_require__(65),
-	    isIndex = __webpack_require__(66),
-	    isLength = __webpack_require__(62),
-	    keysIn = __webpack_require__(67);
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/**
-	 * A fallback implementation of `Object.keys` which creates an array of the
-	 * own enumerable property names of `object`.
-	 *
-	 * @private
-	 * @param {Object} object The object to query.
-	 * @returns {Array} Returns the array of property names.
-	 */
-	function shimKeys(object) {
-	  var props = keysIn(object),
-	      propsLength = props.length,
-	      length = propsLength && object.length;
-
-	  var allowIndexes = !!length && isLength(length) &&
-	    (isArray(object) || isArguments(object));
-
-	  var index = -1,
-	      result = [];
-
-	  while (++index < propsLength) {
-	    var key = props[index];
-	    if ((allowIndexes && isIndex(key, length)) || hasOwnProperty.call(object, key)) {
-	      result.push(key);
-	    }
-	  }
-	  return result;
-	}
-
-	module.exports = shimKeys;
-
-
-/***/ },
-/* 64 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isArrayLike = __webpack_require__(59),
-	    isObjectLike = __webpack_require__(58);
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/** Native method references. */
-	var propertyIsEnumerable = objectProto.propertyIsEnumerable;
-
-	/**
-	 * Checks if `value` is classified as an `arguments` object.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-	 * @example
-	 *
-	 * _.isArguments(function() { return arguments; }());
-	 * // => true
-	 *
-	 * _.isArguments([1, 2, 3]);
-	 * // => false
-	 */
-	function isArguments(value) {
-	  return isObjectLike(value) && isArrayLike(value) &&
-	    hasOwnProperty.call(value, 'callee') && !propertyIsEnumerable.call(value, 'callee');
-	}
-
-	module.exports = isArguments;
-
-
-/***/ },
-/* 65 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var getNative = __webpack_require__(54),
-	    isLength = __webpack_require__(62),
-	    isObjectLike = __webpack_require__(58);
-
-	/** `Object#toString` result references. */
-	var arrayTag = '[object Array]';
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/**
-	 * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
-	 * of values.
-	 */
-	var objToString = objectProto.toString;
-
-	/* Native method references for those with the same name as other `lodash` methods. */
-	var nativeIsArray = getNative(Array, 'isArray');
-
-	/**
-	 * Checks if `value` is classified as an `Array` object.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-	 * @example
-	 *
-	 * _.isArray([1, 2, 3]);
-	 * // => true
-	 *
-	 * _.isArray(function() { return arguments; }());
-	 * // => false
-	 */
-	var isArray = nativeIsArray || function(value) {
-	  return isObjectLike(value) && isLength(value.length) && objToString.call(value) == arrayTag;
-	};
-
-	module.exports = isArray;
-
-
-/***/ },
-/* 66 */
-/***/ function(module, exports) {
-
-	/** Used to detect unsigned integer values. */
-	var reIsUint = /^\d+$/;
-
-	/**
-	 * Used as the [maximum length](http://ecma-international.org/ecma-262/6.0/#sec-number.max_safe_integer)
-	 * of an array-like value.
-	 */
-	var MAX_SAFE_INTEGER = 9007199254740991;
-
-	/**
-	 * Checks if `value` is a valid array-like index.
-	 *
-	 * @private
-	 * @param {*} value The value to check.
-	 * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
-	 * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
-	 */
-	function isIndex(value, length) {
-	  value = (typeof value == 'number' || reIsUint.test(value)) ? +value : -1;
-	  length = length == null ? MAX_SAFE_INTEGER : length;
-	  return value > -1 && value % 1 == 0 && value < length;
-	}
-
-	module.exports = isIndex;
-
-
-/***/ },
-/* 67 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isArguments = __webpack_require__(64),
-	    isArray = __webpack_require__(65),
-	    isIndex = __webpack_require__(66),
-	    isLength = __webpack_require__(62),
-	    isObject = __webpack_require__(57);
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/**
-	 * Creates an array of the own and inherited enumerable property names of `object`.
-	 *
-	 * **Note:** Non-object values are coerced to objects.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Object
-	 * @param {Object} object The object to query.
-	 * @returns {Array} Returns the array of property names.
-	 * @example
-	 *
-	 * function Foo() {
-	 *   this.a = 1;
-	 *   this.b = 2;
-	 * }
-	 *
-	 * Foo.prototype.c = 3;
-	 *
-	 * _.keysIn(new Foo);
-	 * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
-	 */
-	function keysIn(object) {
-	  if (object == null) {
-	    return [];
-	  }
-	  if (!isObject(object)) {
-	    object = Object(object);
-	  }
-	  var length = object.length;
-	  length = (length && isLength(length) &&
-	    (isArray(object) || isArguments(object)) && length) || 0;
-
-	  var Ctor = object.constructor,
-	      index = -1,
-	      isProto = typeof Ctor == 'function' && Ctor.prototype === object,
-	      result = Array(length),
-	      skipIndexes = length > 0;
-
-	  while (++index < length) {
-	    result[index] = (index + '');
-	  }
-	  for (var key in object) {
-	    if (!(skipIndexes && isIndex(key, length)) &&
-	        !(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
-	      result.push(key);
-	    }
-	  }
-	  return result;
-	}
-
-	module.exports = keysIn;
-
-
-/***/ },
-/* 68 */
+/* 39 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
@@ -6227,7 +5690,7 @@ var Grommet =
 	  value: true
 	});
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	// Allow callers to use key labels instead of key code numbers.
 	// This makes their code easier to read.
@@ -6253,10 +5716,12 @@ var Grommet =
 	var _onKeyboardAcceleratorKeyPress = function _onKeyboardAcceleratorKeyPress(e) {
 	  var key = e.keyCode ? e.keyCode : e.which;
 	  _listeners.slice().reverse().some(function (listener) {
-	    var handlers = _keyboardAccelerators[listener].handlers;
-	    if (handlers.hasOwnProperty(key)) {
-	      if (handlers[key](e)) {
-	        return true;
+	    if (_keyboardAccelerators[listener]) {
+	      var handlers = _keyboardAccelerators[listener].handlers;
+	      if (handlers.hasOwnProperty(key)) {
+	        if (handlers[key](e)) {
+	          return true;
+	        }
 	      }
 	    }
 	    return false;
@@ -6301,6 +5766,7 @@ var Grommet =
 	    delete _keyboardAccelerators[id];
 	  },
 
+
 	  // Add handlers for specific keys.
 	  // This function can be called multiple times, existing handlers will
 	  // be replaced, new handlers will be added.
@@ -6330,6 +5796,7 @@ var Grommet =
 	    }
 	  },
 
+
 	  // Remove handlers for all keys or specific keys.
 	  // If no argument is passed in, all handlers are removed.
 	  // This function can be called multiple times, only the handlers
@@ -6372,13 +5839,13 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 69 */
+/* 40 */
 /***/ function(module, exports) {
 
 	module.exports = ReactDOM;
 
 /***/ },
-/* 70 */
+/* 41 */
 /***/ function(module, exports) {
 
 	"use strict";
@@ -6402,43 +5869,104 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 71 */
+/* 42 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
 
 	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
+	var _react = __webpack_require__(2);
+
+	var _react2 = _interopRequireDefault(_react);
+
+	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
+	var SkipLinkAnchor = function (_Component) {
+	  _inherits(SkipLinkAnchor, _Component);
+
+	  function SkipLinkAnchor() {
+	    _classCallCheck(this, SkipLinkAnchor);
+
+	    return _possibleConstructorReturn(this, Object.getPrototypeOf(SkipLinkAnchor).apply(this, arguments));
+	  }
+
+	  _createClass(SkipLinkAnchor, [{
+	    key: 'render',
+	    value: function render() {
+	      var id = 'skip-link-' + this.props.label.toLowerCase().replace(/ /g, '_');
+
+	      return _react2.default.createElement(
+	        'a',
+	        { tabIndex: '-1', 'aria-hidden': 'true', id: id, className: 'skip-link-anchor' },
+	        this.props.label
+	      );
+	    }
+	  }]);
+
+	  return SkipLinkAnchor;
+	}(_react.Component);
+
+	exports.default = SkipLinkAnchor;
+	;
+
+	SkipLinkAnchor.propTypes = {
+	  label: _react.PropTypes.node.isRequired
+	};
+	module.exports = exports['default'];
+
+/***/ },
+/* 43 */
+/***/ function(module, exports, __webpack_require__) {
+
+	'use strict';
+
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _Close = __webpack_require__(72);
+	var _Close = __webpack_require__(44);
 
 	var _Close2 = _interopRequireDefault(_Close);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _DOM = __webpack_require__(73);
+	var _DOM = __webpack_require__(45);
 
 	var _DOM2 = _interopRequireDefault(_DOM);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
+	var _Intl = __webpack_require__(41);
+
+	var _Intl2 = _interopRequireDefault(_Intl);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -6465,36 +5993,46 @@ var Grommet =
 	    key: 'getChildContext',
 	    value: function getChildContext() {
 	      return {
-	        router: this.props.router,
 	        history: this.props.history,
 	        intl: this.props.intl,
+	        router: this.props.router,
 	        store: this.props.store
 	      };
 	    }
 	  }, {
 	    key: 'componentDidMount',
 	    value: function componentDidMount() {
-
 	      var items = this.refs.container.getElementsByTagName('*');
 	      var firstFocusable = _DOM2.default.getBestFirstFocusable(items);
 	      if (firstFocusable) {
 	        firstFocusable.focus();
 	      }
 
+	      this._keyboardHandlers = {
+	        tab: this._processTab
+	      };
+
 	      if (this.props.onClose) {
-	        this._keyboardHandlers = {
-	          tab: this._processTab,
-	          esc: this.props.onClose
-	        };
-	        _KeyboardAccelerators2.default.startListeningToKeyboard(this, this._keyboardHandlers);
+	        this._keyboardHandlers.esc = this.props.onClose;
+	      }
+
+	      _KeyboardAccelerators2.default.startListeningToKeyboard(this, this._keyboardHandlers);
+
+	      if (this.props.a11yCloserTitle) {
+	        console.log('a11yCloserTitle prop has been deprecated. Please use a11yTitle instead.');
 	      }
 	    }
+	  }, {
+	    key: 'componentDidUpdate',
+	    value: function componentDidUpdate() {
+	      if (this.props.hidden) {
+	        _KeyboardAccelerators2.default.stopListeningToKeyboard(this, this._keyboardHandlers);
+	      };
+	    }
 	  }, {
 	    key: 'componentWillUnmount',
 	    value: function componentWillUnmount() {
-	      if (this.props.onClose) {
-	        _KeyboardAccelerators2.default.stopListeningToKeyboard(this, this._keyboardHandlers);
-	      }
+	      _KeyboardAccelerators2.default.stopListeningToKeyboard(this, this._keyboardHandlers);
 	    }
 	  }, {
 	    key: '_processTab',
@@ -6520,14 +6058,19 @@ var Grommet =
 	    key: 'render',
 	    value: function render() {
 	      var closer = null;
-	      if (this.props.closer) {
+	      if (this.props.onClose && this.props.closer) {
+	        //TODO: remove a11yCloserTitle after 0.6 release
+	        var closeLabel = _Intl2.default.getMessage(this.context.intl, 'Close');
+	        var layerLabel = _Intl2.default.getMessage(this.context.intl, 'Layer');
+	        var a11yTitle = this.props.a11yCloserTitle || closeLabel + ' ' + (this.props.a11yTitle || '') + ' ' + layerLabel;
+
 	        closer = _react2.default.createElement(
 	          'div',
 	          { className: CLASS_ROOT + "__closer" },
 	          _react2.default.createElement(
 	            _Button2.default,
-	            { type: 'icon', onClick: this.props.onClose },
-	            _react2.default.createElement(_Close2.default, { a11yTitle: this.props.a11yCloserTitle })
+	            { plain: true, onClick: this.props.onClose },
+	            _react2.default.createElement(_Close2.default, { a11yTitle: a11yTitle })
 	          )
 	        );
 	      }
@@ -6545,12 +6088,15 @@ var Grommet =
 	}(_react.Component);
 
 	LayerContents.propTypes = {
+	  //deprecated
+	  a11yCloserTitle: _react.PropTypes.string,
+	  a11yTitle: _react.PropTypes.string,
 	  closer: _react.PropTypes.oneOfType([_react.PropTypes.node, _react.PropTypes.bool]),
-	  onClose: _react.PropTypes.func,
 	  history: _react.PropTypes.object,
-	  router: _react.PropTypes.func,
 	  intl: _react.PropTypes.object,
-	  a11yCloserTitle: _react.PropTypes.string
+	  onClose: _react.PropTypes.func,
+	  router: _react.PropTypes.any,
+	  store: _react.PropTypes.any
 	};
 
 	// Because Layer creates a new DOM render context, the context
@@ -6559,9 +6105,9 @@ var Grommet =
 	// whatever we find or have callers explicitly indicate which parts
 	// of the context to transfer somehow.
 	LayerContents.childContextTypes = {
-	  router: _react.PropTypes.func,
 	  history: _react.PropTypes.object,
 	  intl: _react.PropTypes.object,
+	  router: _react.PropTypes.any,
 	  store: _react.PropTypes.object
 	};
 
@@ -6599,7 +6145,7 @@ var Grommet =
 	  }, {
 	    key: '_classesFromProps',
 	    value: function _classesFromProps() {
-	      var classes = [CLASS_ROOT];
+	      var classes = ['grommet', CLASS_ROOT];
 	      if (this.props.align) {
 	        classes.push(CLASS_ROOT + "--align-" + this.props.align);
 	      }
@@ -6641,16 +6187,16 @@ var Grommet =
 	  }, {
 	    key: '_handleAriaHidden',
 	    value: function _handleAriaHidden(hideOverlay) {
-	      this._element.setAttribute('aria-hidden', hideOverlay);
+	      this._element.setAttribute('aria-hidden', hideOverlay || false);
 	    }
 	  }, {
 	    key: '_renderLayer',
 	    value: function _renderLayer() {
 	      this._element.className = this._classesFromProps().join(' ');
 	      var contents = _react2.default.createElement(LayerContents, _extends({}, this.props, {
-	        router: this.context.router,
 	        history: this.context.history,
 	        intl: this.context.intl,
+	        router: this.context.router,
 	        store: this.context.store }));
 	      _reactDom2.default.render(contents, this._element);
 	      this._handleAriaHidden(this.props.hidden);
@@ -6677,6 +6223,7 @@ var Grommet =
 
 	exports.default = Layer;
 
+
 	Layer.propTypes = {
 	  align: _react.PropTypes.oneOf(['center', 'top', 'bottom', 'left', 'right']),
 	  closer: _react.PropTypes.oneOfType([_react.PropTypes.node, _react.PropTypes.bool]),
@@ -6687,7 +6234,7 @@ var Grommet =
 	};
 
 	Layer.contextTypes = {
-	  router: _react.PropTypes.func,
+	  router: _react.PropTypes.any,
 	  history: _react.PropTypes.object,
 	  intl: _react.PropTypes.object,
 	  store: _react.PropTypes.object
@@ -6699,34 +6246,40 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 72 */
+/* 44 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -6740,28 +6293,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-close'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "close";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-close', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'close';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -6778,13 +6335,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -6792,11 +6350,12 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Close';
 	module.exports = exports['default'];
 
 /***/ },
-/* 73 */
+/* 45 */
 /***/ function(module, exports) {
 
 	'use strict';
@@ -6809,14 +6368,15 @@ var Grommet =
 	  findScrollParents: function findScrollParents(element, horizontal) {
 	    var result = [];
 	    var parent = element.parentNode;
-	    while (parent) {
+	    while (parent && parent.getBoundingClientRect) {
+	      var rect = parent.getBoundingClientRect();
 	      // 10px is to account for borders and scrollbars in a lazy way
 	      if (horizontal) {
-	        if (parent.clientWidth && parent.scrollWidth > parent.clientWidth + 10) {
+	        if (rect.width && parent.scrollWidth > rect.width + 10) {
 	          result.push(parent);
 	        }
 	      } else {
-	        if (parent.clientHeight && parent.scrollHeight > parent.clientHeight + 10) {
+	        if (rect.height && parent.scrollHeight > rect.height + 10) {
 	          result.push(parent);
 	        }
 	      }
@@ -6837,6 +6397,16 @@ var Grommet =
 	    }
 	    return false;
 	  },
+	  findAncestor: function findAncestor(element, className) {
+	    var node = element.parentNode;
+	    while (node != null) {
+	      if (node.classList && node.classList.contains(className)) {
+	        break;
+	      }
+	      node = node.parentNode;
+	    }
+	    return node;
+	  },
 	  filterByFocusable: function filterByFocusable(elements) {
 	    return Array.prototype.filter.call(elements || [], function (element) {
 	      var currentTag = element.tagName.toLowerCase();
@@ -6871,30 +6441,36 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 74 */
+/* 46 */
 /***/ function(module, exports, __webpack_require__) {
 
-	"use strict";
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
-	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2016 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "button";
+	var CLASS_ROOT = 'button';
 
 	var Button = function (_Component) {
 	  _inherits(Button, _Component);
@@ -6906,54 +6482,46 @@ var Grommet =
 	  }
 
 	  _createClass(Button, [{
-	    key: "render",
+	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.primary) {
-	        classes.push(CLASS_ROOT + "--primary");
-	      }
-	      if (this.props.secondary) {
-	        classes.push(CLASS_ROOT + "--secondary");
-	      }
-	      if (this.props.accent) {
-	        classes.push(CLASS_ROOT + "--accent");
-	      }
-	      if (!this.props.onClick) {
-	        classes.push(CLASS_ROOT + "--disabled");
-	      }
-	      if (this.props.fill) {
-	        classes.push(CLASS_ROOT + "--fill");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
 
-	      var type = this.props.type;
-	      if (this.props.type === 'icon') {
-	        classes.push(CLASS_ROOT + "--icon");
-	        type = 'button';
+	      var plain = this.props.plain !== undefined ? this.props.plain : this.props.icon && !this.props.label;
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--primary', this.props.primary), _defineProperty(_classnames, CLASS_ROOT + '--secondary', this.props.secondary), _defineProperty(_classnames, CLASS_ROOT + '--accent', this.props.accent), _defineProperty(_classnames, CLASS_ROOT + '--disabled', !this.props.onClick && !this.props.href), _defineProperty(_classnames, CLASS_ROOT + '--fill', this.props.fill), _defineProperty(_classnames, CLASS_ROOT + '--plain', plain), _defineProperty(_classnames, CLASS_ROOT + '--icon', this.props.icon), _classnames));
+
+	      var icon = void 0;
+	      if (this.props.icon) {
+	        icon = _react2.default.createElement(
+	          'span',
+	          { className: CLASS_ROOT + '__icon' },
+	          this.props.icon
+	        );
 	      }
 
 	      var children = _react2.default.Children.map(this.props.children, function (child) {
 	        if (child && child.type && child.type.icon) {
-	          return _react2.default.createElement(
-	            "span",
-	            { className: CLASS_ROOT + "__icon" },
+	          child = _react2.default.createElement(
+	            'span',
+	            { className: CLASS_ROOT + '__icon' },
 	            child
 	          );
-	        } else {
-	          return child;
 	        }
+
+	        return child;
 	      });
+
 	      if (!children) {
 	        children = this.props.label;
 	      }
 
+	      var Tag = this.props.href ? 'a' : 'button';
+
 	      return _react2.default.createElement(
-	        "button",
-	        { id: this.props.id, type: type, className: classes.join(' '),
-	          onClick: this.props.onClick, disabled: !this.props.onClick,
-	          "aria-label": this.props.a11yTitle },
+	        Tag,
+	        { href: this.props.href, id: this.props.id, type: this.props.type,
+	          className: classes, 'aria-label': this.props.a11yTitle,
+	          onClick: this.props.onClick, disabled: !this.props.onClick },
+	        icon,
 	        children
 	      );
 	    }
@@ -6963,93 +6531,97 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Button;
+	;
 
 	Button.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  accent: _react.PropTypes.bool,
 	  fill: _react.PropTypes.bool,
-	  icon: _react.PropTypes.bool,
+	  icon: _react.PropTypes.element,
 	  id: _react.PropTypes.string,
 	  label: _react.PropTypes.node,
 	  onClick: _react.PropTypes.func,
+	  plain: _react.PropTypes.bool,
 	  primary: _react.PropTypes.bool,
 	  secondary: _react.PropTypes.bool,
-	  type: _react.PropTypes.oneOf(['button', 'reset', 'submit', 'icon'])
+	  type: _react.PropTypes.oneOf(['button', 'reset', 'submit'])
 	};
 
 	Button.defaultProps = {
-	  type: "button"
+	  type: 'button'
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 75 */
+/* 47 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _pick = __webpack_require__(76);
+	var _classnames3 = __webpack_require__(3);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _classnames4 = _interopRequireDefault(_classnames3);
 
-	var _keys = __webpack_require__(53);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _DOM = __webpack_require__(45);
 
-	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
+	var _DOM2 = _interopRequireDefault(_DOM);
 
-	var _Drop = __webpack_require__(88);
+	var _Drop = __webpack_require__(48);
 
 	var _Drop2 = _interopRequireDefault(_Drop);
 
-	var _Responsive = __webpack_require__(89);
+	var _Intl = __webpack_require__(41);
 
-	var _Responsive2 = _interopRequireDefault(_Responsive);
+	var _Intl2 = _interopRequireDefault(_Intl);
 
-	var _Box = __webpack_require__(52);
+	var _Props = __webpack_require__(49);
 
-	var _Box2 = _interopRequireDefault(_Box);
+	var _Props2 = _interopRequireDefault(_Props);
 
-	var _Button = __webpack_require__(74);
+	var _Responsive = __webpack_require__(50);
 
-	var _Button2 = _interopRequireDefault(_Button);
+	var _Responsive2 = _interopRequireDefault(_Responsive);
 
-	var _More = __webpack_require__(90);
+	var _Box = __webpack_require__(38);
 
-	var _More2 = _interopRequireDefault(_More);
+	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Down = __webpack_require__(91);
+	var _Button = __webpack_require__(46);
 
-	var _Down2 = _interopRequireDefault(_Down);
+	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Intl = __webpack_require__(70);
+	var _Down = __webpack_require__(51);
 
-	var _Intl2 = _interopRequireDefault(_Intl);
+	var _Down2 = _interopRequireDefault(_Down);
 
-	var _DOM = __webpack_require__(73);
+	var _More = __webpack_require__(52);
 
-	var _DOM2 = _interopRequireDefault(_DOM);
+	var _More2 = _interopRequireDefault(_More);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
@@ -7058,6 +6630,10 @@ var Grommet =
 
 	var CLASS_ROOT = 'menu';
 
+	function isFunction(obj) {
+	  return obj && obj.constructor && obj.call && obj.apply;
+	}
+
 	// We have a separate module for the drop component
 	// so we can transfer the router context.
 
@@ -7081,7 +6657,8 @@ var Grommet =
 	      return {
 	        intl: this.props.intl,
 	        history: this.props.history,
-	        router: this.props.router
+	        router: this.props.router,
+	        store: this.props.store
 	      };
 	    }
 	  }, {
@@ -7213,34 +6790,48 @@ var Grommet =
 	  }, {
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT + '__drop'];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
+	      var _classnames;
+
+	      var _props = this.props;
+	      var dropAlign = _props.dropAlign;
+	      var size = _props.size;
+	      var control = _props.control;
+	      var id = _props.id;
+	      var colorIndex = _props.colorIndex;
+	      var onClick = _props.onClick;
 
-	      delete other.onClick;
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
+	      delete boxProps.colorIndex; // manage colorIndex at the outer menuDrop element
 
-	      var contents = [_react2.default.cloneElement(this.props.control, { key: 'control' }), _react2.default.createElement(
+	      delete boxProps.onClick;
+
+	      // Put nested Menus inline
+	      var children = _react2.default.Children.map(this.props.children, function (child) {
+	        var result = child;
+	        if (child && isFunction(child.type) && child.type.prototype._renderMenuDrop) {
+	          result = _react2.default.cloneElement(child, { inline: 'explode', direction: 'column' });
+	        }
+	        return result;
+	      });
+
+	      var contents = [_react2.default.cloneElement(control, { key: 'control', fill: true }), _react2.default.createElement(
 	        _Box2.default,
-	        _extends({ key: 'nav', ref: 'navContainer',
-	          role: 'menu', tag: 'nav' }, other, { className: CLASS_ROOT + '__contents' }),
-	        this.props.children
+	        _extends({}, boxProps, { key: 'nav', ref: 'navContainer',
+	          role: 'menu', tag: 'nav', className: CLASS_ROOT + '__contents',
+	          primary: false }),
+	        children
 	      )];
-	      if (this.props.dropAlign.bottom) {
+
+	      if (dropAlign.bottom) {
 	        contents.reverse();
 	      }
-	      if (this.props.dropAlign.right) {
-	        classes.push(CLASS_ROOT + '__drop--align-right');
-	      }
-	      if (this.props.dropColorIndex) {
-	        classes.push('background-color-index-' + this.props.dropColorIndex);
-	      }
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + '__drop--' + this.props.size);
-	      }
+
+	      var classes = (0, _classnames4.default)(CLASS_ROOT + '__drop', (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '__drop--align-right', dropAlign.right), _defineProperty(_classnames, CLASS_ROOT + '__drop--' + size, size), _classnames));
 
 	      return _react2.default.createElement(
-	        'div',
-	        { ref: 'menuDrop', id: this.props.id, className: classes.join(' '),
-	          onClick: this.props.onClick },
+	        _Box2.default,
+	        { ref: 'menuDrop', id: id, className: classes, colorIndex: colorIndex,
+	          onClick: onClick },
 	        contents
 	      );
 	    }
@@ -7249,20 +6840,21 @@ var Grommet =
 	  return MenuDrop;
 	}(_react.Component);
 
-	MenuDrop.propTypes = _extends({
+	MenuDrop.propTypes = _extends({}, _Box2.default.propTypes, {
 	  control: _react.PropTypes.node,
 	  dropAlign: _Drop2.default.alignPropType,
-	  dropColorIndex: _react.PropTypes.string,
 	  id: _react.PropTypes.string.isRequired,
 	  onClick: _react.PropTypes.func.isRequired,
-	  router: _react.PropTypes.func,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
-	}, _Box2.default.propTypes);
+	  router: _react.PropTypes.any,
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large']),
+	  store: _react.PropTypes.any
+	});
 
 	MenuDrop.childContextTypes = {
-	  intl: _react.PropTypes.object,
-	  history: _react.PropTypes.object,
-	  router: _react.PropTypes.func
+	  intl: _react.PropTypes.any,
+	  history: _react.PropTypes.any,
+	  router: _react.PropTypes.any,
+	  store: _react.PropTypes.any
 	};
 
 	var Menu = function (_Component2) {
@@ -7280,13 +6872,13 @@ var Grommet =
 	    _this2._onFocusControl = _this2._onFocusControl.bind(_this2);
 	    _this2._onBlurControl = _this2._onBlurControl.bind(_this2);
 
-	    var inline = undefined;
+	    var inline = void 0;
 	    if (props.hasOwnProperty('inline')) {
 	      inline = props.inline;
 	    } else {
 	      inline = !props.label && !props.icon;
 	    }
-	    var responsive = undefined;
+	    var responsive = void 0;
 	    if (props.hasOwnProperty('responsive')) {
 	      responsive = props.responsive;
 	    } else {
@@ -7307,7 +6899,7 @@ var Grommet =
 	    key: 'componentDidMount',
 	    value: function componentDidMount() {
 	      if (this.refs.control) {
-	        var controlElement = _reactDom2.default.findDOMNode(this.refs.control);
+	        var controlElement = this.refs.control.firstChild;
 	        this.setState({
 	          dropId: 'menu-drop-' + controlElement.getAttribute('data-reactid'),
 	          controlHeight: controlElement.clientHeight
@@ -7349,12 +6941,15 @@ var Grommet =
 	            _KeyboardAccelerators2.default.stopListeningToKeyboard(this, focusedKeyboardHandlers);
 	            _KeyboardAccelerators2.default.startListeningToKeyboard(this, activeKeyboardHandlers);
 	            document.addEventListener('click', this._onClose);
-	            this._drop = _Drop2.default.add(_reactDom2.default.findDOMNode(this.refs.control), this._renderDrop(), this.props.dropAlign);
-	            this._drop.render(this._renderDrop());
+	            this._drop = _Drop2.default.add(this.refs.control, this._renderMenuDrop(), {
+	              align: this.props.dropAlign,
+	              colorIndex: this.props.dropColorIndex
+	            });
+	            this._drop.render(this._renderMenuDrop());
 	            break;
 	        }
 	      } else if (this.state.state === 'expanded') {
-	        this._drop.render(this._renderDrop());
+	        this._drop.render(this._renderMenuDrop());
 	      }
 	    }
 	  }, {
@@ -7419,131 +7014,103 @@ var Grommet =
 	    }
 	  }, {
 	    key: '_renderControlContents',
-	    value: function _renderControlContents(clickable) {
-	      var icon = undefined;
-	      var label = undefined;
-
-	      var controlClassName = CLASS_ROOT + '__control';
+	    value: function _renderControlContents() {
+	      var icon = void 0,
+	          label = void 0;
 
+	      // If this is a collapsed inline Menu, use any icon and/or label provided,
+	      // revert to default icon if neither.
 	      if (this.props.icon) {
 	        icon = _react2.default.cloneElement(this.props.icon, { key: 'icon' });
-	        // icon = this.props.icon;
 	      }
-	      if (this.state.controlCollapsed) {
-	        if (!icon) {
-	          icon = _react2.default.createElement(_More2.default, { key: 'icon' });
-	        }
-	      } else if (this.props.label) {
+	      if (this.props.label) {
 	        label = [_react2.default.createElement(
 	          'span',
-	          { key: 'label', className: controlClassName + "-label" },
+	          { key: 'label', className: CLASS_ROOT + '__control-label' },
 	          this.props.label
 	        ), _react2.default.createElement(_Down2.default, { key: 'caret' })];
-	      } else if (!icon) {
+	      }
+	      if (!icon && !label) {
 	        icon = _react2.default.createElement(_More2.default, { key: 'icon' });
 	      }
 	      return [icon, label];
 	    }
 	  }, {
-	    key: '_renderDrop',
-	    value: function _renderDrop() {
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
-
+	    key: '_renderMenuDrop',
+	    value: function _renderMenuDrop() {
 	      var closeLabel = _Intl2.default.getMessage(this.context.intl, 'Close');
 	      var menuLabel = _Intl2.default.getMessage(this.context.intl, 'Menu');
 	      var menuTitle = closeLabel + ' ' + (this.props.a11yTitle || this.props.label || '') + ' ' + menuLabel;
 
 	      var control = _react2.default.createElement(
 	        _Button2.default,
-	        { type: 'icon', className: CLASS_ROOT + '__control',
+	        { plain: true, className: CLASS_ROOT + '__control',
 	          a11yTitle: menuTitle,
 	          style: { lineHeight: this.state.controlHeight + 'px' },
 	          onClick: this._onClose },
 	        this._renderControlContents()
 	      );
 
-	      var onClick = undefined;
-	      if (this.props.closeOnClick) {
-	        onClick = this._onClose;
-	      } else {
-	        onClick = this._onSink;
-	      }
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
+	      var onClick = this.props.closeOnClick ? this._onClose : this._onSink;
+
 	      return _react2.default.createElement(
 	        MenuDrop,
-	        _extends({ intl: this.context.intl,
-	          history: this.context.history,
-	          router: this.context.router,
+	        _extends({}, boxProps, this.context, {
 	          dropAlign: this.props.dropAlign,
-	          dropColorIndex: this.props.dropColorIndex,
-	          size: this.state.size
-	        }, other, {
+	          size: this.props.size,
 	          onClick: onClick,
 	          id: this.state.dropId,
 	          control: control }),
 	        this.props.children
 	      );
 	    }
-	  }, {
-	    key: '_classes',
-	    value: function _classes(prefix) {
-	      var classes = [prefix];
-
-	      if (this.props.direction) {
-	        classes.push(prefix + "--" + this.props.direction);
-	      }
-	      if (this.state.size) {
-	        classes.push(prefix + "--" + this.state.size);
-	      }
-	      if (this.props.primary) {
-	        classes.push(prefix + "--primary");
-	      }
-
-	      return classes;
-	    }
 	  }, {
 	    key: 'render',
 	    value: function render() {
-	      var classes = this._classes(CLASS_ROOT);
-	      if (this.state.inline) {
-	        classes.push(CLASS_ROOT + '--inline');
-	      } else {
-	        classes.push(CLASS_ROOT + '--controlled');
-	        if (this.props.label) {
-	          classes.push(CLASS_ROOT + '--labelled');
-	        }
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames2;
+
+	      var classes = (0, _classnames4.default)(CLASS_ROOT, this.props.className, (_classnames2 = {}, _defineProperty(_classnames2, CLASS_ROOT + '--' + this.props.direction, this.props.direction), _defineProperty(_classnames2, CLASS_ROOT + '--' + this.props.size, this.props.size), _defineProperty(_classnames2, CLASS_ROOT + '--primary', this.props.primary), _defineProperty(_classnames2, CLASS_ROOT + '--inline', this.state.inline), _defineProperty(_classnames2, CLASS_ROOT + '--explode', 'explode' === this.state.inline), _defineProperty(_classnames2, CLASS_ROOT + '--controlled', !this.state.inline), _defineProperty(_classnames2, CLASS_ROOT + '__control', !this.state.inline), _defineProperty(_classnames2, CLASS_ROOT + '--labelled', !this.state.inline && this.props.label), _classnames2));
 
 	      if (this.state.inline) {
-	        var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
+	        var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
+	        var label = void 0;
+	        if ('explode' === this.state.inline) {
+	          label = _react2.default.createElement(
+	            'div',
+	            { className: CLASS_ROOT + '__label' },
+	            this.props.label
+	          );
+	        }
 
 	        return _react2.default.createElement(
 	          _Box2.default,
-	          _extends({ tag: 'nav', id: this.props.id }, other, {
-	            className: classes.join(' ') }),
+	          _extends({}, boxProps, { tag: 'nav', id: this.props.id,
+	            className: classes, primary: false }),
+	          label,
 	          this.props.children
 	        );
 	      } else {
-	        classes.push(CLASS_ROOT + '__control');
-
 	        var controlContents = this._renderControlContents();
 	        var openLabel = _Intl2.default.getMessage(this.context.intl, 'Open');
 	        var menuLabel = _Intl2.default.getMessage(this.context.intl, 'Menu');
 	        var menuTitle = openLabel + ' ' + (this.props.a11yTitle || this.props.label || '') + ' ' + menuLabel;
 
 	        return _react2.default.createElement(
-	          _Button2.default,
-	          { ref: 'control', type: 'icon', id: this.props.id,
-	            className: classes.join(' '),
-	            tabIndex: '0',
-	            style: { lineHeight: this.state.controlHeight + 'px' },
-	            onClick: this._onOpen,
-	            a11yTitle: menuTitle,
-	            onFocus: this._onFocusControl,
-	            onBlur: this._onBlurControl },
-	          controlContents
+	          'div',
+	          { ref: 'control' },
+	          _react2.default.createElement(
+	            _Button2.default,
+	            { plain: true, id: this.props.id,
+	              className: classes,
+	              tabIndex: '0',
+	              style: { lineHeight: this.state.controlHeight + 'px' },
+	              onClick: this._onOpen,
+	              a11yTitle: menuTitle,
+	              onFocus: this._onFocusControl,
+	              onBlur: this._onBlurControl },
+	            controlContents
+	          )
 	        );
 	      }
 	    }
@@ -7554,22 +7121,23 @@ var Grommet =
 
 	exports.default = Menu;
 
+
 	Menu.propTypes = _extends({
 	  closeOnClick: _react.PropTypes.bool,
 	  dropAlign: _Drop2.default.alignPropType,
 	  dropColorIndex: _react.PropTypes.string,
 	  icon: _react.PropTypes.node,
 	  id: _react.PropTypes.string,
-	  inline: _react.PropTypes.bool,
+	  inline: _react.PropTypes.oneOfType([_react.PropTypes.bool, _react.PropTypes.oneOf('expand')]),
 	  label: _react.PropTypes.string,
-	  primary: _react.PropTypes.bool,
 	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
 	}, _Box2.default.propTypes);
 
 	Menu.contextTypes = {
-	  intl: _react.PropTypes.object,
-	  history: _react.PropTypes.object,
-	  router: _react.PropTypes.func
+	  intl: _react.PropTypes.any,
+	  history: _react.PropTypes.any,
+	  router: _react.PropTypes.any,
+	  store: _react.PropTypes.any
 	};
 
 	Menu.defaultProps = {
@@ -7581,424 +7149,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 76 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseFlatten = __webpack_require__(77),
-	    bindCallback = __webpack_require__(79),
-	    pickByArray = __webpack_require__(81),
-	    pickByCallback = __webpack_require__(83),
-	    restParam = __webpack_require__(87);
-
-	/**
-	 * Creates an object composed of the picked `object` properties. Property
-	 * names may be specified as individual arguments or as arrays of property
-	 * names. If `predicate` is provided it's invoked for each property of `object`
-	 * picking the properties `predicate` returns truthy for. The predicate is
-	 * bound to `thisArg` and invoked with three arguments: (value, key, object).
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Object
-	 * @param {Object} object The source object.
-	 * @param {Function|...(string|string[])} [predicate] The function invoked per
-	 *  iteration or property names to pick, specified as individual property
-	 *  names or arrays of property names.
-	 * @param {*} [thisArg] The `this` binding of `predicate`.
-	 * @returns {Object} Returns the new object.
-	 * @example
-	 *
-	 * var object = { 'user': 'fred', 'age': 40 };
-	 *
-	 * _.pick(object, 'user');
-	 * // => { 'user': 'fred' }
-	 *
-	 * _.pick(object, _.isString);
-	 * // => { 'user': 'fred' }
-	 */
-	var pick = restParam(function(object, props) {
-	  if (object == null) {
-	    return {};
-	  }
-	  return typeof props[0] == 'function'
-	    ? pickByCallback(object, bindCallback(props[0], props[1], 3))
-	    : pickByArray(object, baseFlatten(props));
-	});
-
-	module.exports = pick;
-
-
-/***/ },
-/* 77 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var arrayPush = __webpack_require__(78),
-	    isArguments = __webpack_require__(64),
-	    isArray = __webpack_require__(65),
-	    isArrayLike = __webpack_require__(59),
-	    isObjectLike = __webpack_require__(58);
-
-	/**
-	 * The base implementation of `_.flatten` with added support for restricting
-	 * flattening and specifying the start index.
-	 *
-	 * @private
-	 * @param {Array} array The array to flatten.
-	 * @param {boolean} [isDeep] Specify a deep flatten.
-	 * @param {boolean} [isStrict] Restrict flattening to arrays-like objects.
-	 * @param {Array} [result=[]] The initial result value.
-	 * @returns {Array} Returns the new flattened array.
-	 */
-	function baseFlatten(array, isDeep, isStrict, result) {
-	  result || (result = []);
-
-	  var index = -1,
-	      length = array.length;
-
-	  while (++index < length) {
-	    var value = array[index];
-	    if (isObjectLike(value) && isArrayLike(value) &&
-	        (isStrict || isArray(value) || isArguments(value))) {
-	      if (isDeep) {
-	        // Recursively flatten arrays (susceptible to call stack limits).
-	        baseFlatten(value, isDeep, isStrict, result);
-	      } else {
-	        arrayPush(result, value);
-	      }
-	    } else if (!isStrict) {
-	      result[result.length] = value;
-	    }
-	  }
-	  return result;
-	}
-
-	module.exports = baseFlatten;
-
-
-/***/ },
-/* 78 */
-/***/ function(module, exports) {
-
-	/**
-	 * Appends the elements of `values` to `array`.
-	 *
-	 * @private
-	 * @param {Array} array The array to modify.
-	 * @param {Array} values The values to append.
-	 * @returns {Array} Returns `array`.
-	 */
-	function arrayPush(array, values) {
-	  var index = -1,
-	      length = values.length,
-	      offset = array.length;
-
-	  while (++index < length) {
-	    array[offset + index] = values[index];
-	  }
-	  return array;
-	}
-
-	module.exports = arrayPush;
-
-
-/***/ },
-/* 79 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var identity = __webpack_require__(80);
-
-	/**
-	 * A specialized version of `baseCallback` which only supports `this` binding
-	 * and specifying the number of arguments to provide to `func`.
-	 *
-	 * @private
-	 * @param {Function} func The function to bind.
-	 * @param {*} thisArg The `this` binding of `func`.
-	 * @param {number} [argCount] The number of arguments to provide to `func`.
-	 * @returns {Function} Returns the callback.
-	 */
-	function bindCallback(func, thisArg, argCount) {
-	  if (typeof func != 'function') {
-	    return identity;
-	  }
-	  if (thisArg === undefined) {
-	    return func;
-	  }
-	  switch (argCount) {
-	    case 1: return function(value) {
-	      return func.call(thisArg, value);
-	    };
-	    case 3: return function(value, index, collection) {
-	      return func.call(thisArg, value, index, collection);
-	    };
-	    case 4: return function(accumulator, value, index, collection) {
-	      return func.call(thisArg, accumulator, value, index, collection);
-	    };
-	    case 5: return function(value, other, key, object, source) {
-	      return func.call(thisArg, value, other, key, object, source);
-	    };
-	  }
-	  return function() {
-	    return func.apply(thisArg, arguments);
-	  };
-	}
-
-	module.exports = bindCallback;
-
-
-/***/ },
-/* 80 */
-/***/ function(module, exports) {
-
-	/**
-	 * This method returns the first argument provided to it.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Utility
-	 * @param {*} value Any value.
-	 * @returns {*} Returns `value`.
-	 * @example
-	 *
-	 * var object = { 'user': 'fred' };
-	 *
-	 * _.identity(object) === object;
-	 * // => true
-	 */
-	function identity(value) {
-	  return value;
-	}
-
-	module.exports = identity;
-
-
-/***/ },
-/* 81 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var toObject = __webpack_require__(82);
-
-	/**
-	 * A specialized version of `_.pick` which picks `object` properties specified
-	 * by `props`.
-	 *
-	 * @private
-	 * @param {Object} object The source object.
-	 * @param {string[]} props The property names to pick.
-	 * @returns {Object} Returns the new object.
-	 */
-	function pickByArray(object, props) {
-	  object = toObject(object);
-
-	  var index = -1,
-	      length = props.length,
-	      result = {};
-
-	  while (++index < length) {
-	    var key = props[index];
-	    if (key in object) {
-	      result[key] = object[key];
-	    }
-	  }
-	  return result;
-	}
-
-	module.exports = pickByArray;
-
-
-/***/ },
-/* 82 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isObject = __webpack_require__(57);
-
-	/**
-	 * Converts `value` to an object if it's not one.
-	 *
-	 * @private
-	 * @param {*} value The value to process.
-	 * @returns {Object} Returns the object.
-	 */
-	function toObject(value) {
-	  return isObject(value) ? value : Object(value);
-	}
-
-	module.exports = toObject;
-
-
-/***/ },
-/* 83 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseForIn = __webpack_require__(84);
-
-	/**
-	 * A specialized version of `_.pick` which picks `object` properties `predicate`
-	 * returns truthy for.
-	 *
-	 * @private
-	 * @param {Object} object The source object.
-	 * @param {Function} predicate The function invoked per iteration.
-	 * @returns {Object} Returns the new object.
-	 */
-	function pickByCallback(object, predicate) {
-	  var result = {};
-	  baseForIn(object, function(value, key, object) {
-	    if (predicate(value, key, object)) {
-	      result[key] = value;
-	    }
-	  });
-	  return result;
-	}
-
-	module.exports = pickByCallback;
-
-
-/***/ },
-/* 84 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseFor = __webpack_require__(85),
-	    keysIn = __webpack_require__(67);
-
-	/**
-	 * The base implementation of `_.forIn` without support for callback
-	 * shorthands and `this` binding.
-	 *
-	 * @private
-	 * @param {Object} object The object to iterate over.
-	 * @param {Function} iteratee The function invoked per iteration.
-	 * @returns {Object} Returns `object`.
-	 */
-	function baseForIn(object, iteratee) {
-	  return baseFor(object, iteratee, keysIn);
-	}
-
-	module.exports = baseForIn;
-
-
-/***/ },
-/* 85 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var createBaseFor = __webpack_require__(86);
-
-	/**
-	 * The base implementation of `baseForIn` and `baseForOwn` which iterates
-	 * over `object` properties returned by `keysFunc` invoking `iteratee` for
-	 * each property. Iteratee functions may exit iteration early by explicitly
-	 * returning `false`.
-	 *
-	 * @private
-	 * @param {Object} object The object to iterate over.
-	 * @param {Function} iteratee The function invoked per iteration.
-	 * @param {Function} keysFunc The function to get the keys of `object`.
-	 * @returns {Object} Returns `object`.
-	 */
-	var baseFor = createBaseFor();
-
-	module.exports = baseFor;
-
-
-/***/ },
-/* 86 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var toObject = __webpack_require__(82);
-
-	/**
-	 * Creates a base function for `_.forIn` or `_.forInRight`.
-	 *
-	 * @private
-	 * @param {boolean} [fromRight] Specify iterating from right to left.
-	 * @returns {Function} Returns the new base function.
-	 */
-	function createBaseFor(fromRight) {
-	  return function(object, iteratee, keysFunc) {
-	    var iterable = toObject(object),
-	        props = keysFunc(object),
-	        length = props.length,
-	        index = fromRight ? length : -1;
-
-	    while ((fromRight ? index-- : ++index < length)) {
-	      var key = props[index];
-	      if (iteratee(iterable[key], key, iterable) === false) {
-	        break;
-	      }
-	    }
-	    return object;
-	  };
-	}
-
-	module.exports = createBaseFor;
-
-
-/***/ },
-/* 87 */
-/***/ function(module, exports) {
-
-	/** Used as the `TypeError` message for "Functions" methods. */
-	var FUNC_ERROR_TEXT = 'Expected a function';
-
-	/* Native method references for those with the same name as other `lodash` methods. */
-	var nativeMax = Math.max;
-
-	/**
-	 * Creates a function that invokes `func` with the `this` binding of the
-	 * created function and arguments from `start` and beyond provided as an array.
-	 *
-	 * **Note:** This method is based on the [rest parameter](https://developer.mozilla.org/Web/JavaScript/Reference/Functions/rest_parameters).
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Function
-	 * @param {Function} func The function to apply a rest parameter to.
-	 * @param {number} [start=func.length-1] The start position of the rest parameter.
-	 * @returns {Function} Returns the new function.
-	 * @example
-	 *
-	 * var say = _.restParam(function(what, names) {
-	 *   return what + ' ' + _.initial(names).join(', ') +
-	 *     (_.size(names) > 1 ? ', & ' : '') + _.last(names);
-	 * });
-	 *
-	 * say('hello', 'fred', 'barney', 'pebbles');
-	 * // => 'hello fred, barney, & pebbles'
-	 */
-	function restParam(func, start) {
-	  if (typeof func != 'function') {
-	    throw new TypeError(FUNC_ERROR_TEXT);
-	  }
-	  start = nativeMax(start === undefined ? (func.length - 1) : (+start || 0), 0);
-	  return function() {
-	    var args = arguments,
-	        index = -1,
-	        length = nativeMax(args.length - start, 0),
-	        rest = Array(length);
-
-	    while (++index < length) {
-	      rest[index] = args[start + index];
-	    }
-	    switch (start) {
-	      case 0: return func.call(this, rest);
-	      case 1: return func.call(this, args[0], rest);
-	      case 2: return func.call(this, args[0], args[1], rest);
-	    }
-	    var otherArgs = Array(start + 1);
-	    index = -1;
-	    while (++index < start) {
-	      otherArgs[index] = args[index];
-	    }
-	    otherArgs[start] = rest;
-	    return func.apply(this, otherArgs);
-	  };
-	}
-
-	module.exports = restParam;
-
-
-/***/ },
-/* 88 */
+/* 48 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
@@ -8007,11 +7158,13 @@ var Grommet =
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; // (C) Copyright 2014 Hewlett Packard Enterprise Development LP
+
 	var _react = __webpack_require__(2);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
-	var _DOM = __webpack_require__(73);
+	var _DOM = __webpack_require__(45);
 
 	var _DOM2 = _interopRequireDefault(_DOM);
 
@@ -8022,8 +7175,7 @@ var Grommet =
 	 * their initiating controls.
 	 */
 
-	var VERTICAL_ALIGN_OPTIONS = ['top', 'bottom']; // (C) Copyright 2014 Hewlett Packard Enterprise Development LP
-
+	var VERTICAL_ALIGN_OPTIONS = ['top', 'bottom'];
 	var HORIZONTAL_ALIGN_OPTIONS = ['right', 'left'];
 
 	exports.default = {
@@ -8040,51 +7192,64 @@ var Grommet =
 	  //
 	  // control - DOM element to anchor the overlay on
 	  // content - React node to render
-	  // align -
-	  // {
-	  //    top: top|bottom
-	  //    bottom: top|bottom
-	  //    left: left|right
-	  //    right: left|right
+	  // options - {
+	  //   align: {
+	  //     top: top|bottom
+	  //     bottom: top|bottom
+	  //     left: left|right
+	  //     right: left|right
+	  //   },
+	  //   className: 
+	  //   colorIndex: 
 	  // }
 
-	  add: function add(control, content, align) {
+	  add: function add(control, content, options) {
+	    // normalize for older interface that just had align content
+	    if (options.top || options.bottom || options.left || options.right) {
+	      options = { align: options };
+	    }
 	    // validate align
-	    if (align && align.top && VERTICAL_ALIGN_OPTIONS.indexOf(align.top) === -1) {
-	      console.warn("Warning: Invalid align.top value '" + align.top + "' supplied to Drop," + "expected one of [" + VERTICAL_ALIGN_OPTIONS.join(',') + "]");
+	    if (options && options.align && options.align.top && VERTICAL_ALIGN_OPTIONS.indexOf(options.align.top) === -1) {
+	      console.warn("Warning: Invalid align.top value '" + options.align.top + "' supplied to Drop," + "expected one of [" + VERTICAL_ALIGN_OPTIONS.join(',') + "]");
 	    }
-	    if (align && align.bottom && VERTICAL_ALIGN_OPTIONS.indexOf(align.bottom) === -1) {
-	      console.warn("Warning: Invalid align.bottom value '" + align.bottom + "' supplied to Drop," + "expected one of [" + VERTICAL_ALIGN_OPTIONS.join(',') + "]");
+	    if (options.align && options.align.bottom && VERTICAL_ALIGN_OPTIONS.indexOf(options.align.bottom) === -1) {
+	      console.warn("Warning: Invalid align.bottom value '" + options.align.bottom + "' supplied to Drop," + "expected one of [" + VERTICAL_ALIGN_OPTIONS.join(',') + "]");
 	    }
-	    if (align && align.left && HORIZONTAL_ALIGN_OPTIONS.indexOf(align.left) === -1) {
-	      console.warn("Warning: Invalid align.left value '" + align.left + "' supplied to Drop," + "expected one of [" + HORIZONTAL_ALIGN_OPTIONS.join(',') + "]");
+	    if (options.align && options.align.left && HORIZONTAL_ALIGN_OPTIONS.indexOf(options.align.left) === -1) {
+	      console.warn("Warning: Invalid align.left value '" + options.align.left + "' supplied to Drop," + "expected one of [" + HORIZONTAL_ALIGN_OPTIONS.join(',') + "]");
 	    }
-	    if (align && align.right && HORIZONTAL_ALIGN_OPTIONS.indexOf(align.right) === -1) {
-	      console.warn("Warning: Invalid align.right value '" + align.right + "' supplied to Drop," + "expected one of [" + HORIZONTAL_ALIGN_OPTIONS.join(',') + "]");
+	    if (options.align && options.align.right && HORIZONTAL_ALIGN_OPTIONS.indexOf(options.align.right) === -1) {
+	      console.warn("Warning: Invalid align.right value '" + options.align.right + "' supplied to Drop," + "expected one of [" + HORIZONTAL_ALIGN_OPTIONS.join(',') + "]");
 	    }
-	    align = align || {};
+	    var align = options.align || {};
 
 	    // initialize data
 	    var drop = {
 	      control: control,
-	      align: {
-	        top: align.top,
-	        bottom: align.bottom,
-	        left: align.left,
-	        right: align.right
-	      }
+	      options: _extends({}, options, {
+	        align: {
+	          top: align.top,
+	          bottom: align.bottom,
+	          left: align.left,
+	          right: align.right
+	        }
+	      })
 	    };
-	    if (!drop.align.top && !drop.align.bottom) {
-	      drop.align.top = "top";
+	    if (!drop.options.align.top && !drop.options.align.bottom) {
+	      drop.options.align.top = "top";
 	    }
-	    if (!drop.align.left && !drop.align.right) {
-	      drop.align.left = "left";
+	    if (!drop.options.align.left && !drop.options.align.right) {
+	      drop.options.align.left = "left";
 	    }
 
 	    // setup DOM
 	    drop.container = document.createElement('div');
-	    drop.container.className = 'drop';
-	    document.body.appendChild(drop.container);
+	    drop.container.className = 'grommet drop ' + (drop.options.className || '');
+	    if (drop.options.colorIndex) {
+	      drop.container.className += ' background-color-index-' + drop.options.colorIndex;
+	    }
+	    // prepend in body to avoid browser scroll issues
+	    document.body.insertBefore(drop.container, document.body.firstChild);
 	    (0, _reactDom.render)(content, drop.container);
 
 	    drop.scrollParents = _DOM2.default.findScrollParents(drop.control);
@@ -8119,9 +7284,7 @@ var Grommet =
 	  _place: function _place(drop) {
 	    var control = drop.control;
 	    var container = drop.container;
-	    var align = drop.align;
-	    var controlRect = control.getBoundingClientRect();
-	    var containerRect = container.getBoundingClientRect();
+	    var align = drop.options.align;
 	    var windowWidth = window.innerWidth;
 	    var windowHeight = window.innerHeight;
 
@@ -8129,11 +7292,18 @@ var Grommet =
 	    container.style.left = '';
 	    container.style.width = '';
 	    container.style.top = '';
+	    container.style.maxHeight = '';
+
+	    // get bounds
+	    var controlRect = control.getBoundingClientRect();
+	    var containerRect = container.getBoundingClientRect();
+	    var bodyRect = document.body.getBoundingClientRect();
 
+	    // set width
 	    var width = Math.min(Math.max(controlRect.width, containerRect.width), windowWidth);
-	    var left;
-	    var top;
 
+	    // set left position
+	    var left;
 	    if (align.left) {
 	      if ('left' === align.left) {
 	        left = controlRect.left;
@@ -8153,41 +7323,89 @@ var Grommet =
 	      left = 0;
 	    }
 
+	    // set top position
+	    var top;
+	    var maxHeight;
 	    if (align.top) {
 	      if ('top' === align.top) {
 	        top = controlRect.top;
-	      } else if ('bottom' === align.top) {
-	        top = controlRect.top + controlRect.height;
+	        maxHeight = Math.min(windowHeight - controlRect.top, windowHeight);
+	      } else {
+	        top = controlRect.bottom;
+	        maxHeight = Math.min(windowHeight - controlRect.bottom, windowHeight - controlRect.height);
 	      }
 	    } else if (align.bottom) {
-	      if ('top' === align.bottom) {
-	        top = controlRect.top - containerRect.height;
-	      } else if ('bottom' === align.bottom) {
-	        top = controlRect.top + controlRect.height - containerRect.height;
-	      }
-	    }
-	    if (top + containerRect.height > windowHeight) {
-	      // For now, just slide up so we can see it.
-	      // TODO: when we don't want to cover the control, like with SearchInput and Calendar,
-	      // add bottom margin to the control to allow the user to scroll down if needed.
-	      if (align.top === 'bottom') {
-	        top = controlRect.top - containerRect.height;
+	      if ('bottom' === align.bottom) {
+	        top = Math.max(0, controlRect.bottom - containerRect.height);
+	        maxHeight = Math.max(controlRect.bottom, 0);
 	      } else {
-	        top = Math.max(controlRect.bottom - containerRect.height, top - (top + containerRect.height - windowHeight));
+	        top = Math.max(0, controlRect.top - containerRect.height);
+	        maxHeight = Math.max(controlRect.top, 0);
+	      }
+	    }
+
+	    // if we can't fit it all, see if there's more room the other direction
+	    if (containerRect.height > maxHeight) {
+	      // We need more room than we have.
+	      if (align.top && top > windowHeight / 2) {
+	        // We put it below, but there's more room above, put it above
+	        if (align.top === 'bottom') {
+	          top = Math.max(controlRect.top - containerRect.height, 0);
+	          maxHeight = controlRect.top;
+	        } else {
+	          top = Math.max(controlRect.bottom - containerRect.height, 0);
+	          maxHeight = controlRect.bottom;
+	        }
+	      } else if (align.bottom && maxHeight < windowHeight / 2) {
+	        // We put it above but there's more room below, put it below
+	        if (align.bottom === 'bottom') {
+	          top = controlRect.top;
+	          maxHeight = Math.min(windowHeight - top, windowHeight);
+	        } else {
+	          top = controlRect.bottom;
+	          maxHeight = Math.min(windowHeight - top, windowHeight - controlRect.height);
+	        }
 	      }
-	    } else if (top < 0) {
-	      top = 0;
 	    }
 
-	    container.style.left = '' + left + 'px';
-	    container.style.width = '' + width + 'px';
-	    container.style.top = '' + top + 'px';
+	    container.style.left = left + 'px';
+	    container.style.width = width + 'px';
+	    // We use position:absolute and the body element's position
+	    // to handle mobile browsers better. We used to use position:fixed
+	    // but that didn't work on mobile browsers as well.
+	    container.style.top = top - bodyRect.top + 'px';
+	    container.style.maxHeight = maxHeight + 'px';
 	  }
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 89 */
+/* 49 */
+/***/ function(module, exports) {
+
+	"use strict";
+
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
+	// (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
+	exports.default = {
+	  pick: function pick(props, fields) {
+	    var has = function has(p) {
+	      return props.hasOwnProperty(p);
+	    };
+	    var obj = {};
+	    (fields || []).forEach(function (field) {
+	      if (has(field)) obj[field] = props[field];
+	    });
+	    return obj;
+	  }
+	};
+	module.exports = exports['default'];
+
+/***/ },
+/* 50 */
 /***/ function(module, exports) {
 
 	'use strict';
@@ -8242,12 +7460,12 @@ var Grommet =
 	    window.removeEventListener('resize', responsive.onResize);
 	  },
 	  _onResize: function _onResize(responsive) {
-	    // debounce
-	    clearTimeout(responsive.timer);
-	    responsive.timer = setTimeout(responsive.layout, 50);
+	    // Don't debounce so we align more closely with how the stylesheets are
+	    // processed.
+	    responsive.layout();
 	  },
 	  _check: function _check(responsive) {
-	    if (window.innerWidth < responsive.smallSize) {
+	    if (window.innerWidth <= responsive.smallSize) {
 	      if (!responsive.small) {
 	        responsive.small = true;
 	        responsive.func(true);
@@ -8263,34 +7481,149 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 90 */
+/* 51 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
+
 	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
+	var _react = __webpack_require__(2);
+
+	var _react2 = _interopRequireDefault(_react);
+
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
+	var _FormattedMessage = __webpack_require__(5);
+
+	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
+
+	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
+	var CLASS_ROOT = 'control-icon';
+
+	var Icon = function (_Component) {
+	  _inherits(Icon, _Component);
+
+	  function Icon() {
+	    _classCallCheck(this, Icon);
+
+	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Icon).apply(this, arguments));
+	  }
+
+	  _createClass(Icon, [{
+	    key: 'render',
+	    value: function render() {
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
+	      }
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-down', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'down';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+
+	      return _react2.default.createElement(
+	        'svg',
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
+	        _react2.default.createElement(
+	          'title',
+	          { id: a11yTitleId },
+	          a11yTitle
+	        ),
+	        _react2.default.createElement(
+	          'g',
+	          { id: 'down' },
+	          _react2.default.createElement('rect', { id: '_x2E_svg_260_', y: '0', fill: 'none', width: '24', height: '24' }),
+	          _react2.default.createElement('polyline', { fill: 'none', stroke: '#000000', strokeWidth: '2', strokeMiterlimit: '10', points: '23,6.5 12,17.5 1,6.5 \t' })
+	        )
+	      );
+	    }
+	  }]);
+
+	  return Icon;
+	}(_react.Component);
+
+	exports.default = Icon;
+	;
+
+	Icon.propTypes = {
+	  a11yTitle: _react.PropTypes.string,
+	  a11yTitleId: _react.PropTypes.string,
+	  colorIndex: _react.PropTypes.string,
+	  large: _react.PropTypes.bool,
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
+	};
+
+	Icon.defaultProps = {
+	  a11yTitleId: 'down-title'
+	};
+
+	Icon.icon = true;
+
+	Icon.displayName = 'Down';
+	module.exports = exports['default'];
+
+/***/ },
+/* 52 */
+/***/ function(module, exports, __webpack_require__) {
+
+	'use strict';
+
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -8304,28 +7637,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-more'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "more";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-more', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'more';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -8344,13 +7681,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -8358,111 +7696,15 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
-	module.exports = exports['default'];
 
-/***/ },
-/* 91 */
-/***/ function(module, exports, __webpack_require__) {
-
-	'use strict';
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
-	Object.defineProperty(exports, "__esModule", {
-	  value: true
-	});
-
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _FormattedMessage = __webpack_require__(5);
-
-	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
-
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
-
-	var CLASS_ROOT = "control-icon";
-
-	var Icon = function (_Component) {
-	  _inherits(Icon, _Component);
-
-	  function Icon() {
-	    _classCallCheck(this, Icon);
-
-	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Icon).apply(this, arguments));
-	  }
-
-	  _createClass(Icon, [{
-	    key: 'render',
-	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-down'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
-
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "down";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
-
-	      return _react2.default.createElement(
-	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
-	        _react2.default.createElement(
-	          'title',
-	          { id: this.props.a11yTitleId },
-	          a11yTitle
-	        ),
-	        _react2.default.createElement(
-	          'g',
-	          { id: 'down' },
-	          _react2.default.createElement('rect', { id: '_x2E_svg_260_', y: '0', fill: 'none', width: '24', height: '24' }),
-	          _react2.default.createElement('polyline', { fill: 'none', stroke: '#000000', strokeWidth: '2', strokeMiterlimit: '10', points: '23,6.5 12,17.5 1,6.5 \t' })
-	        )
-	      );
-	    }
-	  }]);
-
-	  return Icon;
-	}(_react.Component);
-
-	exports.default = Icon;
-
-	Icon.propTypes = {
-	  a11yTitle: _react.PropTypes.string,
-	  a11yTitleId: _react.PropTypes.string,
-	  colorIndex: _react.PropTypes.string,
-	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
-	};
-
-	Icon.defaultProps = {
-	  a11yTitleId: 'down-title'
-	};
-
-	Icon.icon = true;
-	module.exports = exports.default;
+	Icon.displayName = 'More';
 	module.exports = exports['default'];
 
 /***/ },
-/* 92 */
+/* 53 */
 /***/ function(module, exports, __webpack_require__) {
 
-	/* WEBPACK VAR INJECTION */(function(global) {var m = __webpack_require__(93),
+	/* WEBPACK VAR INJECTION */(function(global) {var m = __webpack_require__(54),
 	    IntlPolyfill = m['default'];
 
 	// Expose `IntlPolyfill` as global to add locale data into runtime later on.
@@ -8470,7 +7712,7 @@ var Grommet =
 
 	// Require all locale data for `Intl`. This module will be
 	// ignored when bundling for the browser with Browserify/Webpack.
-	__webpack_require__(96);
+	__webpack_require__(57);
 
 	// hack to export the polyfill as global Intl if needed
 	if (!global.Intl) {
@@ -8486,7 +7728,7 @@ var Grommet =
 	/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
 
 /***/ },
-/* 93 */
+/* 54 */
 /***/ function(module, exports, __webpack_require__) {
 
 	/**
@@ -8502,7 +7744,7 @@ var Grommet =
 	/*jshint esnext: true, proto:true, eqnull:true, boss:true, laxbreak:true, newcap:false, shadow:true, funcscope:true */
 
 	"use strict";
-	var src$exp$$ = __webpack_require__(94), src$cldr$$ = __webpack_require__(95);
+	var src$exp$$ = __webpack_require__(55), src$cldr$$ = __webpack_require__(56);
 
 	var Intl = {},
 
@@ -10418,7 +9660,9 @@ var Grommet =
 	                p = bestFormat[prop];
 
 	            // ii. Set the [[]] internal property of dateTimeFormat to p.
-	            internal['[['+prop+']]'] = p;
+	            // Diverging from spec becuase of bug #58
+	            // https://github.com/tc39/ecma402/issues/58
+	            internal['[['+prop+']]'] = opt['[['+prop+']]'] || p;
 	        }
 	    }
 
@@ -11457,7 +10701,7 @@ var Grommet =
 	//# sourceMappingURL=core.js.map
 
 /***/ },
-/* 94 */
+/* 55 */
 /***/ function(module, exports) {
 
 	/* jshint esnext: true, laxbreak:true */
@@ -11565,7 +10809,7 @@ var Grommet =
 	//# sourceMappingURL=exp.js.map
 
 /***/ },
-/* 95 */
+/* 56 */
 /***/ function(module, exports) {
 
 	/* jslint esnext: true */
@@ -11573,20 +10817,16 @@ var Grommet =
 	// Match these datetime components in a CLDR pattern, except those in single quotes
 	"use strict";
 	exports.createDateTimeFormat = createDateTimeFormat, exports.createDateTimeFormats = createDateTimeFormats;
-	var expDTComponents = /(?:[Eec]{1,6}|G{1,5}|(?:[yYu]+|U{1,5})|[ML]{1,5}|d{1,2}|a|[hkHK]{1,2}|m{1,2}|s{1,2}|z{1,4})(?=([^']*'[^']*')*[^']*$)/g;
+	var expDTComponents = /(?:[Eec]{1,6}|G{1,5}|[Qq]{1,5}|(?:[yYur]+|U{1,5})|[ML]{1,5}|d{1,2}|D{1,3}|F{1}|[abB]{1,5}|[hkHK]{1,2}|w{1,2}|W{1}|m{1,2}|s{1,2}|[zZOvVxX]{1,4})(?=([^']*'[^']*')*[^']*$)/g;
+	// trim patterns after transformations
+	var expPatternTrimmer = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
+	// Skip over patterns with these datetime components because we don't have data
+	// to back them up:
+	// timezone, weekday, amoung others
+	var unwantedDTCs = /[rqQxXVOvZASjJgwWIQq]/;
 
-	// Skip over patterns with these datetime components
-	var unwantedDTCs = /[QxXVOvZASjgFDwWIQqH]/;
-
-	// Maps the number of characters in a CLDR pattern to the specification
-	var dtcLengthMap = {
-	        month:   [ 'numeric', '2-digit', 'short', 'long', 'narrow' ],
-	        weekday: [ 'short', 'short', 'short', 'long', 'narrow' ],
-	        era:     [ 'short', 'short', 'short', 'long', 'narrow' ]
-	    };
-
-	var dtKeys = ["weekday", "era", "year", "month", "day"];
-	var tmKeys = ["hour", "minute", "second", "timeZoneName"];
+	var dtKeys = ["weekday", "era", "year", "month", "day", "weekday", "quarter"];
+	var tmKeys = ["hour", "minute", "second", "hour12", "timeZoneName"];
 
 	function isDateFormatOnly(obj) {
 	    for (var i = 0; i < tmKeys.length; i += 1) {
@@ -11606,168 +10846,324 @@ var Grommet =
 	    return true;
 	}
 
-	function createDateTimeFormat(format) {
-	    if (unwantedDTCs.test(format))
+	function joinDateAndTimeFormats(dateFormatObj, timeFormatObj) {
+	    var o = {};
+	    for (var i = 0; i < dtKeys.length; i += 1) {
+	        if (dateFormatObj[dtKeys[i]]) {
+	            o[dtKeys[i]] = dateFormatObj[dtKeys[i]];
+	        }
+	    }
+	    for (var j = 0; j < tmKeys.length; j += 1) {
+	        if (timeFormatObj[tmKeys[j]]) {
+	            o[tmKeys[j]] = timeFormatObj[tmKeys[j]];
+	        }
+	    }
+	    return o;
+	}
+
+	function computeFinalPatterns(formatObj) {
+	    // From http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns:
+	    //  'In patterns, two single quotes represents a literal single quote, either
+	    //   inside or outside single quotes. Text within single quotes is not
+	    //   interpreted in any way (except for two adjacent single quotes).'
+	    formatObj.pattern12 = formatObj.extendedPattern.replace(/'([^']*)'/g, function ($0, literal) {
+	        return literal ? literal : "'";
+	    });
+
+	    // pattern 12 is always the default. we can produce the 24 by removing {ampm}
+	    formatObj.pattern = formatObj.pattern12.replace('{ampm}', '').replace(expPatternTrimmer, '');
+	    return formatObj;
+	}
+
+	function createDateTimeFormat(skeleton, pattern) {
+	    // we ignore certain patterns that are unsupported to avoid this expensive op.
+	    if (unwantedDTCs.test(pattern))
 	        return undefined;
 
-	    var formatObj = {};
+	    var formatObj = {
+	        originalPattern: pattern
+	    };
 
 	    // Replace the pattern string with the one required by the specification, whilst
 	    // at the same time evaluating it for the subsets and formats
-	    formatObj.pattern = format.replace(expDTComponents, function ($0) {
+	    formatObj.extendedPattern = pattern.replace(expDTComponents, function ($0) {
 	        // See which symbol we're dealing with
 	        switch ($0.charAt(0)) {
-	            case 'E':
-	            case 'e':
-	            case 'c':
-	                formatObj.weekday = dtcLengthMap.weekday[$0.length-1];
-	                return '{weekday}';
 
-	            // Not supported yet
+	            // --- Era
 	            case 'G':
-	                formatObj.era = dtcLengthMap.era[$0.length-1];
 	                return '{era}';
 
+	            // --- Year
 	            case 'y':
 	            case 'Y':
 	            case 'u':
 	            case 'U':
-	                formatObj.year = $0.length === 2 ? '2-digit' : 'numeric';
+	            case 'r':
 	                return '{year}';
 
+	            // --- Quarter (not supported in this polyfill)
+	            case 'Q':
+	            case 'q':
+	                return '{quarter}';
+
+	            // --- Month
 	            case 'M':
 	            case 'L':
-	                formatObj.month = dtcLengthMap.month[$0.length-1];
 	                return '{month}';
 
+	            // --- Week (not supported in this polyfill)
+	            case 'w':
+	            case 'W':
+	                return '{weekday}';
+
+	            // --- Day
 	            case 'd':
-	                formatObj.day = $0.length === 2 ? '2-digit' : 'numeric';
+	            case 'D':
+	            case 'F':
+	            case 'g':
 	                return '{day}';
 
+	            // --- Week Day
+	            case 'E':
+	            case 'e':
+	            case 'c':
+	                return '{weekday}';
+
+	            // --- Period
 	            case 'a':
+	            case 'b':
+	            case 'B':
 	                return '{ampm}';
 
+	            // --- Hour
 	            case 'h':
 	            case 'H':
 	            case 'k':
 	            case 'K':
-	                formatObj.hour = $0.length === 2 ? '2-digit' : 'numeric';
 	                return '{hour}';
 
+	            // --- Minute
 	            case 'm':
-	                formatObj.minute = $0.length === 2 ? '2-digit' : 'numeric';
 	                return '{minute}';
 
+	            // --- Second
 	            case 's':
-	                formatObj.second = $0.length === 2 ? '2-digit' : 'numeric';
+	            case 'S':
+	            case 'A':
 	                return '{second}';
 
+	            // --- Timezone
 	            case 'z':
-	                formatObj.timeZoneName = $0.length < 4 ? 'short' : 'long';
+	            case 'Z':
+	            case 'O':
+	            case 'v':
+	            case 'V':
+	            case 'X':
+	            case 'x':
 	                return '{timeZoneName}';
+
 	        }
 	    });
 
-	    // From http://www.unicode.org/reports/tr35/tr35-dates.html#Date_Format_Patterns:
-	    //  'In patterns, two single quotes represents a literal single quote, either
-	    //   inside or outside single quotes. Text within single quotes is not
-	    //   interpreted in any way (except for two adjacent single quotes).'
-	    formatObj.pattern = formatObj.pattern.replace(/'([^']*)'/g, function ($0, literal) {
-	        return literal ? literal : "'";
-	    });
+	    // Match the skeleton string with the one required by the specification
+	    // this implementation is based on the Date Field Symbol Table:
+	    // http://unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
+	    // Note: we are adding extra data to the formatObject even though this polyfill
+	    //       might not support it.
+	    skeleton.replace(expDTComponents, function ($0) {
+	        // See which symbol we're dealing with
+	        switch ($0.charAt(0)) {
 
-	    if (formatObj.pattern.indexOf('{ampm}') > -1) {
-	        formatObj.hour12 = true;
-	        formatObj.pattern12 = formatObj.pattern;
-	        formatObj.pattern = formatObj.pattern.replace('{ampm}', '').replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
-	    }
+	            // --- Era
+	            case 'G':
+	                formatObj.era = [ 'short', 'short', 'short', 'long', 'narrow' ][$0.length-1];
+	                break;
 
-	    return formatObj;
+	            // --- Year
+	            case 'y':
+	            case 'Y':
+	            case 'u':
+	            case 'U':
+	                formatObj.year = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+	            // case 'r':
+	                // r: 1..n - For the Gregorian calendar, the 'r' year is the same as the 'u' year.
+	                // break;
+
+	            // --- Quarter (not supported in this polyfill)
+	            case 'Q':
+	            case 'q':
+	                formatObj.quarter = [ 'numeric', '2-digit', 'short', 'long', 'narrow' ][$0.length-1];
+	                break;
+
+	            // --- Month
+	            case 'M':
+	            case 'L':
+	                formatObj.month = [ 'numeric', '2-digit', 'short', 'long', 'narrow' ][$0.length-1];
+	                break;
+
+	            // --- Week (not supported in this polyfill)
+	            case 'w':
+	                // week of the year
+	                formatObj.week = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+	            case 'W':
+	                // week of the month
+	                formatObj.week = 'numeric';
+	                break;
+
+	            // --- Day
+	            case 'd':
+	                // day of the month
+	                formatObj.day = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+	            case 'D':
+	                // day of the year
+	                formatObj.day = 'numeric';
+	                break;
+	            case 'F':
+	                // day of the week
+	                formatObj.day = 'numeric';
+	                break;
+	            // case 'g':
+	                // 1..n: Modified Julian day
+	                // break;
+
+	            // --- Week Day
+	            case 'E':
+	                // day of the week
+	                formatObj.weekday = [ 'short', 'short', 'short', 'long', 'narrow', 'short' ][$0.length-1];
+	                break;
+	            case 'e':
+	                // local day of the week
+	                formatObj.weekday = [ 'numeric', '2-digit', 'short', 'long', 'narrow', 'short' ][$0.length-1];
+	                break;
+	            case 'c':
+	                // stand alone local day of the week
+	                formatObj.weekday = [ 'numeric', undefined, 'short', 'long', 'narrow', 'short' ][$0.length-1];
+	                break;
+
+	            // --- Period
+	            case 'a': // AM, PM
+	            case 'b': // am, pm, noon, midnight
+	            case 'B': // flexible day periods
+	                formatObj.hour12 = true;
+	                break;
+
+	            // --- Hour
+	            case 'H':
+	            case 'k':
+	                formatObj.hour = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+	            case 'h':
+	            case 'K':
+	                formatObj.hour12 = true; // 12-hour-cycle time formats (using h or K)
+	                formatObj.hour = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+
+	            // --- Minute
+	            case 'm':
+	                formatObj.minute = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+
+	            // --- Second
+	            case 's':
+	                formatObj.second = $0.length === 2 ? '2-digit' : 'numeric';
+	                break;
+	            // case 'S': // 1..n: factional seconds
+	            // case 'A': // 1..n: miliseconds in day
+
+	            // --- Timezone
+	            case 'z': // 1..3, 4: specific non-location format
+	            case 'Z': // 1..3, 4, 5: The ISO8601 varios formats
+	            case 'O': // 1, 4: miliseconds in day short, long
+	            case 'v': // 1, 4: generic non-location format
+	            case 'V': // 1, 2, 3, 4: time zone ID or city
+	            case 'X': // 1, 2, 3, 4: The ISO8601 varios formats
+	            case 'x': // 1, 2, 3, 4: The ISO8601 varios formats
+	                // this polyfill only supports much, for now, we are just doing something dummy
+	                formatObj.timeZoneName = $0.length < 4 ? 'short' : 'long';
+	                break;
+
+	        }
+	    });
+
+	    return computeFinalPatterns(formatObj);
 	}
 
 	function createDateTimeFormats(formats) {
 	    var availableFormats = formats.availableFormats;
 	    var timeFormats = formats.timeFormats;
 	    var dateFormats = formats.dateFormats;
-	    var order = formats.medium;
 	    var result = [];
-	    var key, format, computed, i, j;
+	    var skeleton, pattern, computed, i, j;
 	    var timeRelatedFormats = [];
 	    var dateRelatedFormats = [];
 
-	    function expandFormat(key, pattern) {
-	        // Expand component lengths if necessary, as allowed in the LDML spec
-	        // Get the lengths of 'M' and 'E' substrings in the date pattern
-	        // as arrays that can be joined to create a new substring
-	        var M = new Array((key.match(/M/g)||[]).length + 1);
-	        var E = new Array((key.match(/E/g)||[]).length + 1);
-
-	        // note from caridy: I'm not sure we really need this, seems to be
-	        //                   useless since it relies on the keys from CLDR
-	        //                   instead of the actual format pattern, but I'm not sure.
-	        if (M.length > 2)
-	            pattern = pattern.replace(/(M|L)+/, M.join('$1'));
-
-	        if (E.length > 2)
-	            pattern = pattern.replace(/([Eec])+/, E.join('$1'));
-
-	        return pattern;
-	    }
-
 	    // Map available (custom) formats into a pattern for createDateTimeFormats
-	    for (key in availableFormats) {
-	        if (availableFormats.hasOwnProperty(key)) {
-	            format = expandFormat(key, availableFormats[key]);
-	            computed = createDateTimeFormat(format);
+	    for (skeleton in availableFormats) {
+	        if (availableFormats.hasOwnProperty(skeleton)) {
+	            pattern = availableFormats[skeleton];
+	            computed = createDateTimeFormat(skeleton, pattern);
 	            if (computed) {
 	                result.push(computed);
 	                // in some cases, the format is only displaying date specific props
 	                // or time specific props, in which case we need to also produce the
 	                // combined formats.
 	                if (isDateFormatOnly(computed)) {
-	                    dateRelatedFormats.push(format);
+	                    dateRelatedFormats.push(computed);
 	                } else if (isTimeFormatOnly(computed)) {
-	                    timeRelatedFormats.push(format);
+	                    timeRelatedFormats.push(computed);
 	                }
 	            }
 	        }
 	    }
 
-	    // combine custom time and custom date formats when they are orthogonals to complete the
-	    // formats supported by browsers by relying on the value of "formats.medium" which defines
-	    // how to join custom formats into a single pattern.
-	    for (i = 0; i < timeRelatedFormats.length; i += 1) {
-	        for (j = 0; j < dateRelatedFormats.length; j += 1) {
-	            format = order
-	                .replace('{0}', timeRelatedFormats[i])
-	                .replace('{1}', dateRelatedFormats[j])
-	                .replace(/^[,\s]+|[,\s]+$/gi, '');
-	            computed = createDateTimeFormat(format);
+	    // Map time formats into a pattern for createDateTimeFormats
+	    for (skeleton in timeFormats) {
+	        if (timeFormats.hasOwnProperty(skeleton)) {
+	            pattern = timeFormats[skeleton];
+	            computed = createDateTimeFormat(skeleton, pattern);
 	            if (computed) {
 	                result.push(computed);
+	                timeRelatedFormats.push(computed);
 	            }
 	        }
 	    }
 
-	    // Map time formats into a pattern for createDateTimeFormats
-	    for (key in timeFormats) {
-	        if (timeFormats.hasOwnProperty(key)) {
-	            format = expandFormat(key, timeFormats[key]);
-	            computed = createDateTimeFormat(format);
+	    // Map date formats into a pattern for createDateTimeFormats
+	    for (skeleton in dateFormats) {
+	        if (dateFormats.hasOwnProperty(skeleton)) {
+	            pattern = dateFormats[skeleton];
+	            computed = createDateTimeFormat(skeleton, pattern);
 	            if (computed) {
 	                result.push(computed);
+	                dateRelatedFormats.push(computed);
 	            }
 	        }
 	    }
 
-	    // Map date formats into a pattern for createDateTimeFormats
-	    for (key in dateFormats) {
-	        if (dateFormats.hasOwnProperty(key)) {
-	            format = expandFormat(key, dateFormats[key]);
-	            computed = createDateTimeFormat(format);
-	            if (computed) {
-	                result.push(computed);
+	    // combine custom time and custom date formats when they are orthogonals to complete the
+	    // formats supported by CLDR.
+	    // This Algo is based on section "Missing Skeleton Fields" from:
+	    // http://unicode.org/reports/tr35/tr35-dates.html#availableFormats_appendItems
+	    for (i = 0; i < timeRelatedFormats.length; i += 1) {
+	        for (j = 0; j < dateRelatedFormats.length; j += 1) {
+	            if (dateRelatedFormats[j].month === 'long') {
+	                pattern = dateRelatedFormats[j].weekday ? formats.full : formats.long;
+	            } else if (dateRelatedFormats[j].month === 'short') {
+	                pattern = formats.medium;
+	            } else {
+	                pattern = formats.short;
 	            }
+	            computed = joinDateAndTimeFormats(dateRelatedFormats[j], timeRelatedFormats[i]);
+	            computed.originalPattern = pattern;
+	            computed.extendedPattern = pattern
+	                .replace('{0}', timeRelatedFormats[i].extendedPattern)
+	                .replace('{1}', dateRelatedFormats[j].extendedPattern)
+	                .replace(/^[,\s]+|[,\s]+$/gi, '');
+	            result.push(computeFinalPatterns(computed));
 	        }
 	    }
 
@@ -11777,70 +11173,62 @@ var Grommet =
 	//# sourceMappingURL=cldr.js.map
 
 /***/ },
-/* 96 */
+/* 57 */
 /***/ function(module, exports) {
 
 	/* (ignored) */
 
 /***/ },
-/* 97 */
+/* 58 */
 /***/ function(module, exports) {
 
-	IntlPolyfill.__addLocaleData({locale:"en-US",date:{ca:["gregory","buddhist","chinese","coptic","dangi","ethioaa","ethiopic","generic","hebrew","indian","islamic","islamicc","japanese","persian","roc"],hourNo0:true,hour12:true,formats:{medium:"{1}, {0}",availableFormats:{"E":"ccc",EHm:"E HH:mm",EHms:"E HH:mm:ss",Ed:"d E",Ehm:"E h:mm a",Ehms:"E h:mm:ss a",Gy:"y G",GyMMM:"MMM y G",GyMMMEd:"E, MMM d, y G",GyMMMd:"MMM d, y G","H":"HH",Hm:"HH:mm",Hms:"HH:mm:ss",Hmsv:"HH:mm:ss v",Hmv:"HH:mm v","M":"L",MEd:"E, M/d",MMM:"LLL",MMMEd:"E, MMM d",MMMd:"MMM d",Md:"M/d","d":"d","h":"h a",hm:"h:mm a",hms:"h:mm:ss a",hmsv:"h:mm:ss a v",hmv:"h:mm a v",ms:"mm:ss","y":"y",yM:"M/y",yMEd:"E, M/d/y",yMMM:"MMM y",yMMMEd:"E, MMM d, y",yMMMd:"MMM d, y",yMd:"M/d/y",yQQQ:"QQQ y",yQQQQ:"QQQQ y"},dateFormats:{full:"EEEE, MMMM d, y",long:"MMMM d, y",medium:"MMM d, y",short:"M/d/yy"},timeFormats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"}},calendars:{buddhist:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["BE"],short:["BE"],long:["BE"]},dayPeriods:{am:"AM",pm:"PM"}},chinese:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mo1","Mo2","Mo3","Mo4","Mo5","Mo6","Mo7","Mo8","Mo9","Mo10","Mo11","Mo12"],long:["Month1","Month2","Month3","Month4","Month5","Month6","Month7","Month8","Month9","Month10","Month11","Month12"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dayPeriods:{am:"AM",pm:"PM"}},coptic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"],long:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},dangi:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mo1","Mo2","Mo3","Mo4","Mo5","Mo6","Mo7","Mo8","Mo9","Mo10","Mo11","Mo12"],long:["Month1","Month2","Month3","Month4","Month5","Month6","Month7","Month8","Month9","Month10","Month11","Month12"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dayPeriods:{am:"AM",pm:"PM"}},ethiopic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},ethioaa:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0"],short:["ERA0"],long:["ERA0"]},dayPeriods:{am:"AM",pm:"PM"}},generic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"],long:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},gregory:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["B","A","BCE","CE"],short:["BC","AD","BCE","CE"],long:["Before Christ","Anno Domini","Before Common Era","Common Era"]},dayPeriods:{am:"AM",pm:"PM"}},hebrew:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13","7"],short:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"],long:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AM"],short:["AM"],long:["AM"]},dayPeriods:{am:"AM",pm:"PM"}},indian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"],long:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["Saka"],short:["Saka"],long:["Saka"]},dayPeriods:{am:"AM",pm:"PM"}},islamic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},islamicc:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},japanese:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["Taika (645-650)","Hakuchi (650-671)","Hakuhō (672-686)","Shuchō (686-701)","Taihō (701-704)","Keiun (704-708)","Wadō (708-715)","Reiki (715-717)","Yōrō (717-724)","Jinki (724-729)","Tempyō (729-749)","Tempyō-kampō (749-749)","Tempyō-shōhō (749-757)","Tempyō-hōji (757-765)","Temphō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770-780)","Ten-ō (781-782)","Enryaku (782-806)","Daidō (806-810)","Kōnin (810-824)","Tenchō (824-834)","Jōwa (834-848)","Kajō (848-851)","Ninju (851-854)","Saiko (854-857)","Tennan (857-859)","Jōgan (859-877)","Genkei (877-885)","Ninna (885-889)","Kampyō (889-898)","Shōtai (898-901)","Engi (901-923)","Enchō (923-931)","Shōhei (931-938)","Tengyō (938-947)","Tenryaku (947-957)","Tentoku (957-961)","Ōwa (961-964)","Kōhō (964-968)","Anna (968-970)","Tenroku (970-973)","Ten-en (973-976)","Jōgen (976-978)","Tengen (978-983)","Eikan (983-985)","Kanna (985-987)","Ei-en (987-989)","Eiso (989-990)","Shōryaku (990-995)","Chōtoku (995-999)","Chōhō (999-1004)","Kankō (1004-1012)","Chōwa (1012-1017)","Kannin (1017-1021)","Jian (1021-1024)","Manju (1024-1028)","Chōgen (1028-1037)","Chōryaku (1037-1040)","Chōkyū (1040-1044)","Kantoku (1044-1046)","Eishō (1046-1053)","Tengi (1053-1058)","Kōhei (1058-1065)","Jiryaku (1065-1069)","Enkyū (1069-1074)","Shōho (1074-1077)","Shōryaku (1077-1081)","Eiho (1081-1084)","Ōtoku (1084-1087)","Kanji (1087-1094)","Kaho (1094-1096)","Eichō (1096-1097)","Shōtoku (1097-1099)","Kōwa (1099-1104)","Chōji (1104-1106)","Kashō (1106-1108)","Tennin (1108-1110)","Ten-ei (1110-1113)","Eikyū (1113-1118)","Gen-ei (1118-1120)","Hoan (1120-1124)","Tenji (1124-1126)","Daiji (1126-1131)","Tenshō (1131-1132)","Chōshō (1132-1135)","Hoen (1135-1141)","Eiji (1141-1142)","Kōji (1142-1144)","Tenyō (1144-1145)","Kyūan (1145-1151)","Ninpei (1151-1154)","Kyūju (1154-1156)","Hogen (1156-1159)","Heiji (1159-1160)","Eiryaku (1160-1161)","Ōho (1161-1163)","Chōkan (1163-1165)","Eiman (1165-1166)","Nin-an (1166-1169)","Kaō (1169-1171)","Shōan (1171-1175)","Angen (1175-1177)","Jishō (1177-1181)","Yōwa (1181-1182)","Juei (1182-1184)","Genryuku (1184-1185)","Bunji (1185-1190)","Kenkyū (1190-1199)","Shōji (1199-1201)","Kennin (1201-1204)","Genkyū (1204-1206)","Ken-ei (1206-1207)","Shōgen (1207-1211)","Kenryaku (1211-1213)","Kenpō (1213-1219)","Shōkyū (1219-1222)","Jōō (1222-1224)","Gennin (1224-1225)","Karoku (1225-1227)","Antei (1227-1229)","Kanki (1229-1232)","Jōei (1232-1233)","Tempuku (1233-1234)","Bunryaku (1234-1235)","Katei (1235-1238)","Ryakunin (1238-1239)","En-ō (1239-1240)","Ninji (1240-1243)","Kangen (1243-1247)","Hōji (1247-1249)","Kenchō (1249-1256)","Kōgen (1256-1257)","Shōka (1257-1259)","Shōgen (1259-1260)","Bun-ō (1260-1261)","Kōchō (1261-1264)","Bun-ei (1264-1275)","Kenji (1275-1278)","Kōan (1278-1288)","Shōō (1288-1293)","Einin (1293-1299)","Shōan (1299-1302)","Kengen (1302-1303)","Kagen (1303-1306)","Tokuji (1306-1308)","Enkei (1308-1311)","Ōchō (1311-1312)","Shōwa (1312-1317)","Bunpō (1317-1319)","Genō (1319-1321)","Genkyō (1321-1324)","Shōchū (1324-1326)","Kareki (1326-1329)","Gentoku (1329-1331)","Genkō (1331-1334)","Kemmu (1334-1336)","Engen (1336-1340)","Kōkoku (1340-1346)","Shōhei (1346-1370)","Kentoku (1370-1372)","Bunchũ (1372-1375)","Tenju (1375-1379)","Kōryaku (1379-1381)","Kōwa (1381-1384)","Genchũ (1384-1392)","Meitoku (1384-1387)","Kakei (1387-1389)","Kōō (1389-1390)","Meitoku (1390-1394)","Ōei (1394-1428)","Shōchō (1428-1429)","Eikyō (1429-1441)","Kakitsu (1441-1444)","Bun-an (1444-1449)","Hōtoku (1449-1452)","Kyōtoku (1452-1455)","Kōshō (1455-1457)","Chōroku (1457-1460)","Kanshō (1460-1466)","Bunshō (1466-1467)","Ōnin (1467-1469)","Bunmei (1469-1487)","Chōkyō (1487-1489)","Entoku (1489-1492)","Meiō (1492-1501)","Bunki (1501-1504)","Eishō (1504-1521)","Taiei (1521-1528)","Kyōroku (1528-1532)","Tenmon (1532-1555)","Kōji (1555-1558)","Eiroku (1558-1570)","Genki (1570-1573)","Tenshō (1573-1592)","Bunroku (1592-1596)","Keichō (1596-1615)","Genwa (1615-1624)","Kan-ei (1624-1644)","Shōho (1644-1648)","Keian (1648-1652)","Shōō (1652-1655)","Meiryaku (1655-1658)","Manji (1658-1661)","Kanbun (1661-1673)","Enpō (1673-1681)","Tenwa (1681-1684)","Jōkyō (1684-1688)","Genroku (1688-1704)","Hōei (1704-1711)","Shōtoku (1711-1716)","Kyōhō (1716-1736)","Genbun (1736-1741)","Kanpō (1741-1744)","Enkyō (1744-1748)","Kan-en (1748-1751)","Hōryaku (1751-1764)","Meiwa (1764-1772)","An-ei (1772-1781)","Tenmei (1781-1789)","Kansei (1789-1801)","Kyōwa (1801-1804)","Bunka (1804-1818)","Bunsei (1818-1830)","Tenpō (1830-1844)","Kōka (1844-1848)","Kaei (1848-1854)","Ansei (1854-1860)","Man-en (1860-1861)","Bunkyū (1861-1864)","Genji (1864-1865)","Keiō (1865-1868)","M","T","S","H"],short:["Taika (645-650)","Hakuchi (650-671)","Hakuhō (672-686)","Shuchō (686-701)","Taihō (701-704)","Keiun (704-708)","Wadō (708-715)","Reiki (715-717)","Yōrō (717-724)","Jinki (724-729)","Tempyō (729-749)","Tempyō-kampō (749-749)","Tempyō-shōhō (749-757)","Tempyō-hōji (757-765)","Temphō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770-780)","Ten-ō (781-782)","Enryaku (782-806)","Daidō (806-810)","Kōnin (810-824)","Tenchō (824-834)","Jōwa (834-848)","Kajō (848-851)","Ninju (851-854)","Saiko (854-857)","Tennan (857-859)","Jōgan (859-877)","Genkei (877-885)","Ninna (885-889)","Kampyō (889-898)","Shōtai (898-901)","Engi (901-923)","Enchō (923-931)","Shōhei (931-938)","Tengyō (938-947)","Tenryaku (947-957)","Tentoku (957-961)","Ōwa (961-964)","Kōhō (964-968)","Anna (968-970)","Tenroku (970-973)","Ten-en (973-976)","Jōgen (976-978)","Tengen (978-983)","Eikan (983-985)","Kanna (985-987)","Ei-en (987-989)","Eiso (989-990)","Shōryaku (990-995)","Chōtoku (995-999)","Chōhō (999-1004)","Kankō (1004-1012)","Chōwa (1012-1017)","Kannin (1017-1021)","Jian (1021-1024)","Manju (1024-1028)","Chōgen (1028-1037)","Chōryaku (1037-1040)","Chōkyū (1040-1044)","Kantoku (1044-1046)","Eishō (1046-1053)","Tengi (1053-1058)","Kōhei (1058-1065)","Jiryaku (1065-1069)","Enkyū (1069-1074)","Shōho (1074-1077)","Shōryaku (1077-1081)","Eiho (1081-1084)","Ōtoku (1084-1087)","Kanji (1087-1094)","Kaho (1094-1096)","Eichō (1096-1097)","Shōtoku (1097-1099)","Kōwa (1099-1104)","Chōji (1104-1106)","Kashō (1106-1108)","Tennin (1108-1110)","Ten-ei (1110-1113)","Eikyū (1113-1118)","Gen-ei (1118-1120)","Hoan (1120-1124)","Tenji (1124-1126)","Daiji (1126-1131)","Tenshō (1131-1132)","Chōshō (1132-1135)","Hoen (1135-1141)","Eiji (1141-1142)","Kōji (1142-1144)","Tenyō (1144-1145)","Kyūan (1145-1151)","Ninpei (1151-1154)","Kyūju (1154-1156)","Hogen (1156-1159)","Heiji (1159-1160)","Eiryaku (1160-1161)","Ōho (1161-1163)","Chōkan (1163-1165)","Eiman (1165-1166)","Nin-an (1166-1169)","Kaō (1169-1171)","Shōan (1171-1175)","Angen (1175-1177)","Jishō (1177-1181)","Yōwa (1181-1182)","Juei (1182-1184)","Genryuku (1184-1185)","Bunji (1185-1190)","Kenkyū (1190-1199)","Shōji (1199-1201)","Kennin (1201-1204)","Genkyū (1204-1206)","Ken-ei (1206-1207)","Shōgen (1207-1211)","Kenryaku (1211-1213)","Kenpō (1213-1219)","Shōkyū (1219-1222)","Jōō (1222-1224)","Gennin (1224-1225)","Karoku (1225-1227)","Antei (1227-1229)","Kanki (1229-1232)","Jōei (1232-1233)","Tempuku (1233-1234)","Bunryaku (1234-1235)","Katei (1235-1238)","Ryakunin (1238-1239)","En-ō (1239-1240)","Ninji (1240-1243)","Kangen (1243-1247)","Hōji (1247-1249)","Kenchō (1249-1256)","Kōgen (1256-1257)","Shōka (1257-1259)","Shōgen (1259-1260)","Bun-ō (1260-1261)","Kōchō (1261-1264)","Bun-ei (1264-1275)","Kenji (1275-1278)","Kōan (1278-1288)","Shōō (1288-1293)","Einin (1293-1299)","Shōan (1299-1302)","Kengen (1302-1303)","Kagen (1303-1306)","Tokuji (1306-1308)","Enkei (1308-1311)","Ōchō (1311-1312)","Shōwa (1312-1317)","Bunpō (1317-1319)","Genō (1319-1321)","Genkyō (1321-1324)","Shōchū (1324-1326)","Kareki (1326-1329)","Gentoku (1329-1331)","Genkō (1331-1334)","Kemmu (1334-1336)","Engen (1336-1340)","Kōkoku (1340-1346)","Shōhei (1346-1370)","Kentoku (1370-1372)","Bunchū (1372-1375)","Tenju (1375-1379)","Kōryaku (1379-1381)","Kōwa (1381-1384)","Genchū (1384-1392)","Meitoku (1384-1387)","Kakei (1387-1389)","Kōō (1389-1390)","Meitoku (1390-1394)","Ōei (1394-1428)","Shōchō (1428-1429)","Eikyō (1429-1441)","Kakitsu (1441-1444)","Bun-an (1444-1449)","Hōtoku (1449-1452)","Kyōtoku (1452-1455)","Kōshō (1455-1457)","Chōroku (1457-1460)","Kanshō (1460-1466)","Bunshō (1466-1467)","Ōnin (1467-1469)","Bunmei (1469-1487)","Chōkyō (1487-1489)","Entoku (1489-1492)","Meiō (1492-1501)","Bunki (1501-1504)","Eishō (1504-1521)","Taiei (1521-1528)","Kyōroku (1528-1532)","Tenmon (1532-1555)","Kōji (1555-1558)","Eiroku (1558-1570)","Genki (1570-1573)","Tenshō (1573-1592)","Bunroku (1592-1596)","Keichō (1596-1615)","Genwa (1615-1624)","Kan-ei (1624-1644)","Shōho (1644-1648)","Keian (1648-1652)","Shōō (1652-1655)","Meiryaku (1655-1658)","Manji (1658-1661)","Kanbun (1661-1673)","Enpō (1673-1681)","Tenwa (1681-1684)","Jōkyō (1684-1688)","Genroku (1688-1704)","Hōei (1704-1711)","Shōtoku (1711-1716)","Kyōhō (1716-1736)","Genbun (1736-1741)","Kanpō (1741-1744)","Enkyō (1744-1748)","Kan-en (1748-1751)","Hōryaku (1751-1764)","Meiwa (1764-1772)","An-ei (1772-1781)","Tenmei (1781-1789)","Kansei (1789-1801)","Kyōwa (1801-1804)","Bunka (1804-1818)","Bunsei (1818-1830)","Tenpō (1830-1844)","Kōka (1844-1848)","Kaei (1848-1854)","Ansei (1854-1860)","Man-en (1860-1861)","Bunkyū (1861-1864)","Genji (1864-1865)","Keiō (1865-1868)","Meiji","Taishō","Shōwa","Heisei"],long:["Taika (645-650)","Hakuchi (650-671)","Hakuhō (672-686)","Shuchō (686-701)","Taihō (701-704)","Keiun (704-708)","Wadō (708-715)","Reiki (715-717)","Yōrō (717-724)","Jinki (724-729)","Tempyō (729-749)","Tempyō-kampō (749-749)","Tempyō-shōhō (749-757)","Tempyō-hōji (757-765)","Temphō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770-780)","Ten-ō (781-782)","Enryaku (782-806)","Daidō (806-810)","Kōnin (810-824)","Tenchō (824-834)","Jōwa (834-848)","Kajō (848-851)","Ninju (851-854)","Saiko (854-857)","Tennan (857-859)","Jōgan (859-877)","Genkei (877-885)","Ninna (885-889)","Kampyō (889-898)","Shōtai (898-901)","Engi (901-923)","Enchō (923-931)","Shōhei (931-938)","Tengyō (938-947)","Tenryaku (947-957)","Tentoku (957-961)","Ōwa (961-964)","Kōhō (964-968)","Anna (968-970)","Tenroku (970-973)","Ten-en (973-976)","Jōgen (976-978)","Tengen (978-983)","Eikan (983-985)","Kanna (985-987)","Ei-en (987-989)","Eiso (989-990)","Shōryaku (990-995)","Chōtoku (995-999)","Chōhō (999-1004)","Kankō (1004-1012)","Chōwa (1012-1017)","Kannin (1017-1021)","Jian (1021-1024)","Manju (1024-1028)","Chōgen (1028-1037)","Chōryaku (1037-1040)","Chōkyū (1040-1044)","Kantoku (1044-1046)","Eishō (1046-1053)","Tengi (1053-1058)","Kōhei (1058-1065)","Jiryaku (1065-1069)","Enkyū (1069-1074)","Shōho (1074-1077)","Shōryaku (1077-1081)","Eiho (1081-1084)","Ōtoku (1084-1087)","Kanji (1087-1094)","Kaho (1094-1096)","Eichō (1096-1097)","Shōtoku (1097-1099)","Kōwa (1099-1104)","Chōji (1104-1106)","Kashō (1106-1108)","Tennin (1108-1110)","Ten-ei (1110-1113)","Eikyū (1113-1118)","Gen-ei (1118-1120)","Hoan (1120-1124)","Tenji (1124-1126)","Daiji (1126-1131)","Tenshō (1131-1132)","Chōshō (1132-1135)","Hoen (1135-1141)","Eiji (1141-1142)","Kōji (1142-1144)","Tenyō (1144-1145)","Kyūan (1145-1151)","Ninpei (1151-1154)","Kyūju (1154-1156)","Hogen (1156-1159)","Heiji (1159-1160)","Eiryaku (1160-1161)","Ōho (1161-1163)","Chōkan (1163-1165)","Eiman (1165-1166)","Nin-an (1166-1169)","Kaō (1169-1171)","Shōan (1171-1175)","Angen (1175-1177)","Jishō (1177-1181)","Yōwa (1181-1182)","Juei (1182-1184)","Genryuku (1184-1185)","Bunji (1185-1190)","Kenkyū (1190-1199)","Shōji (1199-1201)","Kennin (1201-1204)","Genkyū (1204-1206)","Ken-ei (1206-1207)","Shōgen (1207-1211)","Kenryaku (1211-1213)","Kenpō (1213-1219)","Shōkyū (1219-1222)","Jōō (1222-1224)","Gennin (1224-1225)","Karoku (1225-1227)","Antei (1227-1229)","Kanki (1229-1232)","Jōei (1232-1233)","Tempuku (1233-1234)","Bunryaku (1234-1235)","Katei (1235-1238)","Ryakunin (1238-1239)","En-ō (1239-1240)","Ninji (1240-1243)","Kangen (1243-1247)","Hōji (1247-1249)","Kenchō (1249-1256)","Kōgen (1256-1257)","Shōka (1257-1259)","Shōgen (1259-1260)","Bun-ō (1260-1261)","Kōchō (1261-1264)","Bun-ei (1264-1275)","Kenji (1275-1278)","Kōan (1278-1288)","Shōō (1288-1293)","Einin (1293-1299)","Shōan (1299-1302)","Kengen (1302-1303)","Kagen (1303-1306)","Tokuji (1306-1308)","Enkei (1308-1311)","Ōchō (1311-1312)","Shōwa (1312-1317)","Bunpō (1317-1319)","Genō (1319-1321)","Genkyō (1321-1324)","Shōchū (1324-1326)","Kareki (1326-1329)","Gentoku (1329-1331)","Genkō (1331-1334)","Kemmu (1334-1336)","Engen (1336-1340)","Kōkoku (1340-1346)","Shōhei (1346-1370)","Kentoku (1370-1372)","Bunchū (1372-1375)","Tenju (1375-1379)","Kōryaku (1379-1381)","Kōwa (1381-1384)","Genchū (1384-1392)","Meitoku (1384-1387)","Kakei (1387-1389)","Kōō (1389-1390)","Meitoku (1390-1394)","Ōei (1394-1428)","Shōchō (1428-1429)","Eikyō (1429-1441)","Kakitsu (1441-1444)","Bun-an (1444-1449)","Hōtoku (1449-1452)","Kyōtoku (1452-1455)","Kōshō (1455-1457)","Chōroku (1457-1460)","Kanshō (1460-1466)","Bunshō (1466-1467)","Ōnin (1467-1469)","Bunmei (1469-1487)","Chōkyō (1487-1489)","Entoku (1489-1492)","Meiō (1492-1501)","Bunki (1501-1504)","Eishō (1504-1521)","Taiei (1521-1528)","Kyōroku (1528-1532)","Tenmon (1532-1555)","Kōji (1555-1558)","Eiroku (1558-1570)","Genki (1570-1573)","Tenshō (1573-1592)","Bunroku (1592-1596)","Keichō (1596-1615)","Genwa (1615-1624)","Kan-ei (1624-1644)","Shōho (1644-1648)","Keian (1648-1652)","Shōō (1652-1655)","Meiryaku (1655-1658)","Manji (1658-1661)","Kanbun (1661-1673)","Enpō (1673-1681)","Tenwa (1681-1684)","Jōkyō (1684-1688)","Genroku (1688-1704)","Hōei (1704-1711)","Shōtoku (1711-1716)","Kyōhō (1716-1736)","Genbun (1736-1741)","Kanpō (1741-1744)","Enkyō (1744-1748)","Kan-en (1748-1751)","Hōryaku (1751-1764)","Meiwa (1764-1772)","An-ei (1772-1781)","Tenmei (1781-1789)","Kansei (1789-1801)","Kyōwa (1801-1804)","Bunka (1804-1818)","Bunsei (1818-1830)","Tenpō (1830-1844)","Kōka (1844-1848)","Kaei (1848-1854)","Ansei (1854-1860)","Man-en (1860-1861)","Bunkyū (1861-1864)","Genji (1864-1865)","Keiō (1865-1868)","Meiji","Taishō","Shōwa","Heisei"]},dayPeriods:{am:"AM",pm:"PM"}},persian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],long:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AP"],short:["AP"],long:["AP"]},dayPeriods:{am:"AM",pm:"PM"}},roc:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["Before R.O.C.","Minguo"],short:["Before R.O.C.","Minguo"],long:["Before R.O.C.","Minguo"]},dayPeriods:{am:"AM",pm:"PM"}}}},number:{nu:["latn"],patterns:{decimal:{positivePattern:"{number}",negativePattern:"-{number}"},currency:{positivePattern:"{currency}{number}",negativePattern:"-{currency}{number}"},percent:{positivePattern:"{number}%",negativePattern:"-{number}%"}},symbols:{latn:{decimal:".",group:",",nan:"NaN",percent:"%",infinity:"∞"}},currencies:{AUD:"A$",BRL:"R$",CAD:"CA$",CNY:"CN¥",EUR:"€",GBP:"£",HKD:"HK$",ILS:"₪",INR:"₹",JPY:"¥",KRW:"₩",MXN:"MX$",NZD:"NZ$",TWD:"NT$",USD:"$",VND:"₫",XAF:"FCFA",XCD:"EC$",XOF:"CFA",XPF:"CFPF"}}});
+	IntlPolyfill.__addLocaleData({locale:"en-US",date:{ca:["gregory","buddhist","chinese","coptic","dangi","ethioaa","ethiopic","generic","hebrew","indian","islamic","islamicc","japanese","persian","roc"],hourNo0:true,hour12:true,formats:{short:"{1}, {0}",medium:"{1}, {0}",full:"{1} 'at' {0}",long:"{1} 'at' {0}",availableFormats:{"d":"d","E":"ccc",Ed:"d E",Ehm:"E h:mm a",EHm:"E HH:mm",Ehms:"E h:mm:ss a",EHms:"E HH:mm:ss",Gy:"y G",GyMMM:"MMM y G",GyMMMd:"MMM d, y G",GyMMMEd:"E, MMM d, y G","h":"h a","H":"HH",hm:"h:mm a",Hm:"HH:mm",hms:"h:mm:ss a",Hms:"HH:mm:ss",hmsv:"h:mm:ss a v",Hmsv:"HH:mm:ss v",hmv:"h:mm a v",Hmv:"HH:mm v","M":"L",Md:"M/d",MEd:"E, M/d",MMM:"LLL",MMMd:"MMM d",MMMEd:"E, MMM d",MMMMd:"MMMM d",ms:"mm:ss","y":"y",yM:"M/y",yMd:"M/d/y",yMEd:"E, M/d/y",yMMM:"MMM y",yMMMd:"MMM d, y",yMMMEd:"E, MMM d, y",yMMMM:"MMMM y",yQQQ:"QQQ y",yQQQQ:"QQQQ y"},dateFormats:{yMMMMEEEEd:"EEEE, MMMM d, y",yMMMMd:"MMMM d, y",yMMMd:"MMM d, y",yMd:"M/d/yy"},timeFormats:{hmmsszzzz:"h:mm:ss a zzzz",hmsz:"h:mm:ss a z",hms:"h:mm:ss a",hm:"h:mm a"}},calendars:{buddhist:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["BE"],short:["BE"],long:["BE"]},dayPeriods:{am:"AM",pm:"PM"}},chinese:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mo1","Mo2","Mo3","Mo4","Mo5","Mo6","Mo7","Mo8","Mo9","Mo10","Mo11","Mo12"],long:["Month1","Month2","Month3","Month4","Month5","Month6","Month7","Month8","Month9","Month10","Month11","Month12"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dayPeriods:{am:"AM",pm:"PM"}},coptic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"],long:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},dangi:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mo1","Mo2","Mo3","Mo4","Mo5","Mo6","Mo7","Mo8","Mo9","Mo10","Mo11","Mo12"],long:["Month1","Month2","Month3","Month4","Month5","Month6","Month7","Month8","Month9","Month10","Month11","Month12"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},dayPeriods:{am:"AM",pm:"PM"}},ethiopic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},ethioaa:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0"],short:["ERA0"],long:["ERA0"]},dayPeriods:{am:"AM",pm:"PM"}},generic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"],long:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},gregory:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["B","A","BCE","CE"],short:["BC","AD","BCE","CE"],long:["Before Christ","Anno Domini","Before Common Era","Common Era"]},dayPeriods:{am:"AM",pm:"PM"}},hebrew:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13","7"],short:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"],long:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AM"],short:["AM"],long:["AM"]},dayPeriods:{am:"AM",pm:"PM"}},indian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"],long:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["Saka"],short:["Saka"],long:["Saka"]},dayPeriods:{am:"AM",pm:"PM"}},islamic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},islamicc:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},japanese:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["Taika (645–650)","Hakuchi (650–671)","Hakuhō (672–686)","Shuchō (686–701)","Taihō (701–704)","Keiun (704–708)","Wadō (708–715)","Reiki (715–717)","Yōrō (717–724)","Jinki (724–729)","Tenpyō (729–749)","Tenpyō-kampō (749-749)","Tenpyō-shōhō (749-757)","Tenpyō-hōji (757-765)","Tenpyō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770–780)","Ten-ō (781-782)","Enryaku (782–806)","Daidō (806–810)","Kōnin (810–824)","Tenchō (824–834)","Jōwa (834–848)","Kajō (848–851)","Ninju (851–854)","Saikō (854–857)","Ten-an (857-859)","Jōgan (859–877)","Gangyō (877–885)","Ninna (885–889)","Kanpyō (889–898)","Shōtai (898–901)","Engi (901–923)","Enchō (923–931)","Jōhei (931–938)","Tengyō (938–947)","Tenryaku (947–957)","Tentoku (957–961)","Ōwa (961–964)","Kōhō (964–968)","Anna (968–970)","Tenroku (970–973)","Ten’en (973–976)","Jōgen (976–978)","Tengen (978–983)","Eikan (983–985)","Kanna (985–987)","Eien (987–989)","Eiso (989–990)","Shōryaku (990–995)","Chōtoku (995–999)","Chōhō (999–1004)","Kankō (1004–1012)","Chōwa (1012–1017)","Kannin (1017–1021)","Jian (1021–1024)","Manju (1024–1028)","Chōgen (1028–1037)","Chōryaku (1037–1040)","Chōkyū (1040–1044)","Kantoku (1044–1046)","Eishō (1046–1053)","Tengi (1053–1058)","Kōhei (1058–1065)","Jiryaku (1065–1069)","Enkyū (1069–1074)","Shōho (1074–1077)","Shōryaku (1077–1081)","Eihō (1081–1084)","Ōtoku (1084–1087)","Kanji (1087–1094)","Kahō (1094–1096)","Eichō (1096–1097)","Jōtoku (1097–1099)","Kōwa (1099–1104)","Chōji (1104–1106)","Kashō (1106–1108)","Tennin (1108–1110)","Ten-ei (1110-1113)","Eikyū (1113–1118)","Gen’ei (1118–1120)","Hōan (1120–1124)","Tenji (1124–1126)","Daiji (1126–1131)","Tenshō (1131–1132)","Chōshō (1132–1135)","Hōen (1135–1141)","Eiji (1141–1142)","Kōji (1142–1144)","Ten’yō (1144–1145)","Kyūan (1145–1151)","Ninpei (1151–1154)","Kyūju (1154–1156)","Hōgen (1156–1159)","Heiji (1159–1160)","Eiryaku (1160–1161)","Ōho (1161–1163)","Chōkan (1163–1165)","Eiman (1165–1166)","Nin’an (1166–1169)","Kaō (1169–1171)","Shōan (1171–1175)","Angen (1175–1177)","Jishō (1177–1181)","Yōwa (1181–1182)","Juei (1182–1184)","Genryaku (1184–1185)","Bunji (1185–1190)","Kenkyū (1190–1199)","Shōji (1199–1201)","Kennin (1201–1204)","Genkyū (1204–1206)","Ken’ei (1206–1207)","Jōgen (1207–1211)","Kenryaku (1211–1213)","Kenpō (1213–1219)","Jōkyū (1219–1222)","Jōō (1222–1224)","Gennin (1224–1225)","Karoku (1225–1227)","Antei (1227–1229)","Kanki (1229–1232)","Jōei (1232–1233)","Tenpuku (1233–1234)","Bunryaku (1234–1235)","Katei (1235–1238)","Ryakunin (1238–1239)","En’ō (1239–1240)","Ninji (1240–1243)","Kangen (1243–1247)","Hōji (1247–1249)","Kenchō (1249–1256)","Kōgen (1256–1257)","Shōka (1257–1259)","Shōgen (1259–1260)","Bun’ō (1260–1261)","Kōchō (1261–1264)","Bun’ei (1264–1275)","Kenji (1275–1278)","Kōan (1278–1288)","Shōō (1288–1293)","Einin (1293–1299)","Shōan (1299–1302)","Kengen (1302–1303)","Kagen (1303–1306)","Tokuji (1306–1308)","Enkyō (1308–1311)","Ōchō (1311–1312)","Shōwa (1312–1317)","Bunpō (1317–1319)","Genō (1319–1321)","Genkō (1321–1324)","Shōchū (1324–1326)","Karyaku (1326–1329)","Gentoku (1329–1331)","Genkō (1331–1334)","Kenmu (1334–1336)","Engen (1336–1340)","Kōkoku (1340–1346)","Shōhei (1346–1370)","Kentoku (1370–1372)","Bunchū (1372–1375)","Tenju (1375–1379)","Kōryaku (1379–1381)","Kōwa (1381–1384)","Genchū (1384–1392)","Meitoku (1384–1387)","Kakei (1387–1389)","Kōō (1389–1390)","Meitoku (1390–1394)","Ōei (1394–1428)","Shōchō (1428–1429)","Eikyō (1429–1441)","Kakitsu (1441–1444)","Bun’an (1444–1449)","Hōtoku (1449–1452)","Kyōtoku (1452–1455)","Kōshō (1455–1457)","Chōroku (1457–1460)","Kanshō (1460–1466)","Bunshō (1466–1467)","Ōnin (1467–1469)","Bunmei (1469–1487)","Chōkyō (1487–1489)","Entoku (1489–1492)","Meiō (1492–1501)","Bunki (1501–1504)","Eishō (1504–1521)","Taiei (1521–1528)","Kyōroku (1528–1532)","Tenbun (1532–1555)","Kōji (1555–1558)","Eiroku (1558–1570)","Genki (1570–1573)","Tenshō (1573–1592)","Bunroku (1592–1596)","Keichō (1596–1615)","Genna (1615–1624)","Kan’ei (1624–1644)","Shōho (1644–1648)","Keian (1648–1652)","Jōō (1652–1655)","Meireki (1655–1658)","Manji (1658–1661)","Kanbun (1661–1673)","Enpō (1673–1681)","Tenna (1681–1684)","Jōkyō (1684–1688)","Genroku (1688–1704)","Hōei (1704–1711)","Shōtoku (1711–1716)","Kyōhō (1716–1736)","Genbun (1736–1741)","Kanpō (1741–1744)","Enkyō (1744–1748)","Kan’en (1748–1751)","Hōreki (1751–1764)","Meiwa (1764–1772)","An’ei (1772–1781)","Tenmei (1781–1789)","Kansei (1789–1801)","Kyōwa (1801–1804)","Bunka (1804–1818)","Bunsei (1818–1830)","Tenpō (1830–1844)","Kōka (1844–1848)","Kaei (1848–1854)","Ansei (1854–1860)","Man’en (1860–1861)","Bunkyū (1861–1864)","Genji (1864–1865)","Keiō (1865–1868)","M","T","S","H"],short:["Taika (645–650)","Hakuchi (650–671)","Hakuhō (672–686)","Shuchō (686–701)","Taihō (701–704)","Keiun (704–708)","Wadō (708–715)","Reiki (715–717)","Yōrō (717–724)","Jinki (724–729)","Tenpyō (729–749)","Tenpyō-kampō (749-749)","Tenpyō-shōhō (749-757)","Tenpyō-hōji (757-765)","Tenpyō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770–780)","Ten-ō (781-782)","Enryaku (782–806)","Daidō (806–810)","Kōnin (810–824)","Tenchō (824–834)","Jōwa (834–848)","Kajō (848–851)","Ninju (851–854)","Saikō (854–857)","Ten-an (857-859)","Jōgan (859–877)","Gangyō (877–885)","Ninna (885–889)","Kanpyō (889–898)","Shōtai (898–901)","Engi (901–923)","Enchō (923–931)","Jōhei (931–938)","Tengyō (938–947)","Tenryaku (947–957)","Tentoku (957–961)","Ōwa (961–964)","Kōhō (964–968)","Anna (968–970)","Tenroku (970–973)","Ten’en (973–976)","Jōgen (976–978)","Tengen (978–983)","Eikan (983–985)","Kanna (985–987)","Eien (987–989)","Eiso (989–990)","Shōryaku (990–995)","Chōtoku (995–999)","Chōhō (999–1004)","Kankō (1004–1012)","Chōwa (1012–1017)","Kannin (1017–1021)","Jian (1021–1024)","Manju (1024–1028)","Chōgen (1028–1037)","Chōryaku (1037–1040)","Chōkyū (1040–1044)","Kantoku (1044–1046)","Eishō (1046–1053)","Tengi (1053–1058)","Kōhei (1058–1065)","Jiryaku (1065–1069)","Enkyū (1069–1074)","Shōho (1074–1077)","Shōryaku (1077–1081)","Eihō (1081–1084)","Ōtoku (1084–1087)","Kanji (1087–1094)","Kahō (1094–1096)","Eichō (1096–1097)","Jōtoku (1097–1099)","Kōwa (1099–1104)","Chōji (1104–1106)","Kashō (1106–1108)","Tennin (1108–1110)","Ten-ei (1110-1113)","Eikyū (1113–1118)","Gen’ei (1118–1120)","Hōan (1120–1124)","Tenji (1124–1126)","Daiji (1126–1131)","Tenshō (1131–1132)","Chōshō (1132–1135)","Hōen (1135–1141)","Eiji (1141–1142)","Kōji (1142–1144)","Ten’yō (1144–1145)","Kyūan (1145–1151)","Ninpei (1151–1154)","Kyūju (1154–1156)","Hōgen (1156–1159)","Heiji (1159–1160)","Eiryaku (1160–1161)","Ōho (1161–1163)","Chōkan (1163–1165)","Eiman (1165–1166)","Nin’an (1166–1169)","Kaō (1169–1171)","Shōan (1171–1175)","Angen (1175–1177)","Jishō (1177–1181)","Yōwa (1181–1182)","Juei (1182–1184)","Genryaku (1184–1185)","Bunji (1185–1190)","Kenkyū (1190–1199)","Shōji (1199–1201)","Kennin (1201–1204)","Genkyū (1204–1206)","Ken’ei (1206–1207)","Jōgen (1207–1211)","Kenryaku (1211–1213)","Kenpō (1213–1219)","Jōkyū (1219–1222)","Jōō (1222–1224)","Gennin (1224–1225)","Karoku (1225–1227)","Antei (1227–1229)","Kanki (1229–1232)","Jōei (1232–1233)","Tenpuku (1233–1234)","Bunryaku (1234–1235)","Katei (1235–1238)","Ryakunin (1238–1239)","En’ō (1239–1240)","Ninji (1240–1243)","Kangen (1243–1247)","Hōji (1247–1249)","Kenchō (1249–1256)","Kōgen (1256–1257)","Shōka (1257–1259)","Shōgen (1259–1260)","Bun’ō (1260–1261)","Kōchō (1261–1264)","Bun’ei (1264–1275)","Kenji (1275–1278)","Kōan (1278–1288)","Shōō (1288–1293)","Einin (1293–1299)","Shōan (1299–1302)","Kengen (1302–1303)","Kagen (1303–1306)","Tokuji (1306–1308)","Enkyō (1308–1311)","Ōchō (1311–1312)","Shōwa (1312–1317)","Bunpō (1317–1319)","Genō (1319–1321)","Genkō (1321–1324)","Shōchū (1324–1326)","Karyaku (1326–1329)","Gentoku (1329–1331)","Genkō (1331–1334)","Kenmu (1334–1336)","Engen (1336–1340)","Kōkoku (1340–1346)","Shōhei (1346–1370)","Kentoku (1370–1372)","Bunchū (1372–1375)","Tenju (1375–1379)","Kōryaku (1379–1381)","Kōwa (1381–1384)","Genchū (1384–1392)","Meitoku (1384–1387)","Kakei (1387–1389)","Kōō (1389–1390)","Meitoku (1390–1394)","Ōei (1394–1428)","Shōchō (1428–1429)","Eikyō (1429–1441)","Kakitsu (1441–1444)","Bun’an (1444–1449)","Hōtoku (1449–1452)","Kyōtoku (1452–1455)","Kōshō (1455–1457)","Chōroku (1457–1460)","Kanshō (1460–1466)","Bunshō (1466–1467)","Ōnin (1467–1469)","Bunmei (1469–1487)","Chōkyō (1487–1489)","Entoku (1489–1492)","Meiō (1492–1501)","Bunki (1501–1504)","Eishō (1504–1521)","Taiei (1521–1528)","Kyōroku (1528–1532)","Tenbun (1532–1555)","Kōji (1555–1558)","Eiroku (1558–1570)","Genki (1570–1573)","Tenshō (1573–1592)","Bunroku (1592–1596)","Keichō (1596–1615)","Genna (1615–1624)","Kan’ei (1624–1644)","Shōho (1644–1648)","Keian (1648–1652)","Jōō (1652–1655)","Meireki (1655–1658)","Manji (1658–1661)","Kanbun (1661–1673)","Enpō (1673–1681)","Tenna (1681–1684)","Jōkyō (1684–1688)","Genroku (1688–1704)","Hōei (1704–1711)","Shōtoku (1711–1716)","Kyōhō (1716–1736)","Genbun (1736–1741)","Kanpō (1741–1744)","Enkyō (1744–1748)","Kan’en (1748–1751)","Hōreki (1751–1764)","Meiwa (1764–1772)","An’ei (1772–1781)","Tenmei (1781–1789)","Kansei (1789–1801)","Kyōwa (1801–1804)","Bunka (1804–1818)","Bunsei (1818–1830)","Tenpō (1830–1844)","Kōka (1844–1848)","Kaei (1848–1854)","Ansei (1854–1860)","Man’en (1860–1861)","Bunkyū (1861–1864)","Genji (1864–1865)","Keiō (1865–1868)","Meiji","Taishō","Shōwa","Heisei"],long:["Taika (645–650)","Hakuchi (650–671)","Hakuhō (672–686)","Shuchō (686–701)","Taihō (701–704)","Keiun (704–708)","Wadō (708–715)","Reiki (715–717)","Yōrō (717–724)","Jinki (724–729)","Tenpyō (729–749)","Tenpyō-kampō (749-749)","Tenpyō-shōhō (749-757)","Tenpyō-hōji (757-765)","Tenpyō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770–780)","Ten-ō (781-782)","Enryaku (782–806)","Daidō (806–810)","Kōnin (810–824)","Tenchō (824–834)","Jōwa (834–848)","Kajō (848–851)","Ninju (851–854)","Saikō (854–857)","Ten-an (857-859)","Jōgan (859–877)","Gangyō (877–885)","Ninna (885–889)","Kanpyō (889–898)","Shōtai (898–901)","Engi (901–923)","Enchō (923–931)","Jōhei (931–938)","Tengyō (938–947)","Tenryaku (947–957)","Tentoku (957–961)","Ōwa (961–964)","Kōhō (964–968)","Anna (968–970)","Tenroku (970–973)","Ten’en (973–976)","Jōgen (976–978)","Tengen (978–983)","Eikan (983–985)","Kanna (985–987)","Eien (987–989)","Eiso (989–990)","Shōryaku (990–995)","Chōtoku (995–999)","Chōhō (999–1004)","Kankō (1004–1012)","Chōwa (1012–1017)","Kannin (1017–1021)","Jian (1021–1024)","Manju (1024–1028)","Chōgen (1028–1037)","Chōryaku (1037–1040)","Chōkyū (1040–1044)","Kantoku (1044–1046)","Eishō (1046–1053)","Tengi (1053–1058)","Kōhei (1058–1065)","Jiryaku (1065–1069)","Enkyū (1069–1074)","Shōho (1074–1077)","Shōryaku (1077–1081)","Eihō (1081–1084)","Ōtoku (1084–1087)","Kanji (1087–1094)","Kahō (1094–1096)","Eichō (1096–1097)","Jōtoku (1097–1099)","Kōwa (1099–1104)","Chōji (1104–1106)","Kashō (1106–1108)","Tennin (1108–1110)","Ten-ei (1110-1113)","Eikyū (1113–1118)","Gen’ei (1118–1120)","Hōan (1120–1124)","Tenji (1124–1126)","Daiji (1126–1131)","Tenshō (1131–1132)","Chōshō (1132–1135)","Hōen (1135–1141)","Eiji (1141–1142)","Kōji (1142–1144)","Ten’yō (1144–1145)","Kyūan (1145–1151)","Ninpei (1151–1154)","Kyūju (1154–1156)","Hōgen (1156–1159)","Heiji (1159–1160)","Eiryaku (1160–1161)","Ōho (1161–1163)","Chōkan (1163–1165)","Eiman (1165–1166)","Nin’an (1166–1169)","Kaō (1169–1171)","Shōan (1171–1175)","Angen (1175–1177)","Jishō (1177–1181)","Yōwa (1181–1182)","Juei (1182–1184)","Genryaku (1184–1185)","Bunji (1185–1190)","Kenkyū (1190–1199)","Shōji (1199–1201)","Kennin (1201–1204)","Genkyū (1204–1206)","Ken’ei (1206–1207)","Jōgen (1207–1211)","Kenryaku (1211–1213)","Kenpō (1213–1219)","Jōkyū (1219–1222)","Jōō (1222–1224)","Gennin (1224–1225)","Karoku (1225–1227)","Antei (1227–1229)","Kanki (1229–1232)","Jōei (1232–1233)","Tenpuku (1233–1234)","Bunryaku (1234–1235)","Katei (1235–1238)","Ryakunin (1238–1239)","En’ō (1239–1240)","Ninji (1240–1243)","Kangen (1243–1247)","Hōji (1247–1249)","Kenchō (1249–1256)","Kōgen (1256–1257)","Shōka (1257–1259)","Shōgen (1259–1260)","Bun’ō (1260–1261)","Kōchō (1261–1264)","Bun’ei (1264–1275)","Kenji (1275–1278)","Kōan (1278–1288)","Shōō (1288–1293)","Einin (1293–1299)","Shōan (1299–1302)","Kengen (1302–1303)","Kagen (1303–1306)","Tokuji (1306–1308)","Enkyō (1308–1311)","Ōchō (1311–1312)","Shōwa (1312–1317)","Bunpō (1317–1319)","Genō (1319–1321)","Genkō (1321–1324)","Shōchū (1324–1326)","Karyaku (1326–1329)","Gentoku (1329–1331)","Genkō (1331–1334)","Kenmu (1334–1336)","Engen (1336–1340)","Kōkoku (1340–1346)","Shōhei (1346–1370)","Kentoku (1370–1372)","Bunchū (1372–1375)","Tenju (1375–1379)","Kōryaku (1379–1381)","Kōwa (1381–1384)","Genchū (1384–1392)","Meitoku (1384–1387)","Kakei (1387–1389)","Kōō (1389–1390)","Meitoku (1390–1394)","Ōei (1394–1428)","Shōchō (1428–1429)","Eikyō (1429–1441)","Kakitsu (1441–1444)","Bun’an (1444–1449)","Hōtoku (1449–1452)","Kyōtoku (1452–1455)","Kōshō (1455–1457)","Chōroku (1457–1460)","Kanshō (1460–1466)","Bunshō (1466–1467)","Ōnin (1467–1469)","Bunmei (1469–1487)","Chōkyō (1487–1489)","Entoku (1489–1492)","Meiō (1492–1501)","Bunki (1501–1504)","Eishō (1504–1521)","Taiei (1521–1528)","Kyōroku (1528–1532)","Tenbun (1532–1555)","Kōji (1555–1558)","Eiroku (1558–1570)","Genki (1570–1573)","Tenshō (1573–1592)","Bunroku (1592–1596)","Keichō (1596–1615)","Genna (1615–1624)","Kan’ei (1624–1644)","Shōho (1644–1648)","Keian (1648–1652)","Jōō (1652–1655)","Meireki (1655–1658)","Manji (1658–1661)","Kanbun (1661–1673)","Enpō (1673–1681)","Tenna (1681–1684)","Jōkyō (1684–1688)","Genroku (1688–1704)","Hōei (1704–1711)","Shōtoku (1711–1716)","Kyōhō (1716–1736)","Genbun (1736–1741)","Kanpō (1741–1744)","Enkyō (1744–1748)","Kan’en (1748–1751)","Hōreki (1751–1764)","Meiwa (1764–1772)","An’ei (1772–1781)","Tenmei (1781–1789)","Kansei (1789–1801)","Kyōwa (1801–1804)","Bunka (1804–1818)","Bunsei (1818–1830)","Tenpō (1830–1844)","Kōka (1844–1848)","Kaei (1848–1854)","Ansei (1854–1860)","Man’en (1860–1861)","Bunkyū (1861–1864)","Genji (1864–1865)","Keiō (1865–1868)","Meiji","Taishō","Shōwa","Heisei"]},dayPeriods:{am:"AM",pm:"PM"}},persian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],long:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["AP"],short:["AP"],long:["AP"]},dayPeriods:{am:"AM",pm:"PM"}},roc:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],long:["January","February","March","April","May","June","July","August","September","October","November","December"]},days:{narrow:["S","M","T","W","T","F","S"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},eras:{narrow:["Before R.O.C.","Minguo"],short:["Before R.O.C.","Minguo"],long:["Before R.O.C.","Minguo"]},dayPeriods:{am:"AM",pm:"PM"}}}},number:{nu:["latn"],patterns:{decimal:{positivePattern:"{number}",negativePattern:"-{number}"},currency:{positivePattern:"{currency}{number}",negativePattern:"-{currency}{number}"},percent:{positivePattern:"{number}%",negativePattern:"-{number}%"}},symbols:{latn:{decimal:".",group:",",nan:"NaN",percent:"%",infinity:"∞"}},currencies:{AUD:"A$",BRL:"R$",CAD:"CA$",CNY:"CN¥",EUR:"€",GBP:"£",HKD:"HK$",ILS:"₪",INR:"₹",JPY:"¥",KRW:"₩",MXN:"MX$",NZD:"NZ$",TWD:"NT$",USD:"$",VND:"₫",XAF:"FCFA",XCD:"EC$",XOF:"CFA",XPF:"CFPF"}}});
 
 /***/ },
-/* 98 */
+/* 59 */
 /***/ function(module, exports) {
 
-	IntlPolyfill.__addLocaleData({locale:"pt-BR",date:{ca:["gregory","buddhist","chinese","coptic","dangi","ethioaa","ethiopic","generic","hebrew","indian","islamic","islamicc","japanese","persian","roc"],hourNo0:true,hour12:false,formats:{medium:"{1} {0}",availableFormats:{"E":"ccc",EHm:"E, HH:mm",EHms:"E, HH:mm:ss",Ed:"E, d",Ehm:"E, h:mm a",Ehms:"E, h:mm:ss a",Gy:"y G",GyMMM:"MMM 'de' y G",GyMMMEd:"E, d 'de' MMM 'de' y G",GyMMMd:"d 'de' MMM 'de' y G","H":"HH",Hm:"HH:mm",Hms:"HH:mm:ss",Hmsv:"HH:mm:ss v",Hmv:"HH:mm v","M":"L",MEd:"E, dd/MM",MMM:"LLL",MMMEd:"E, d 'de' MMM",MMMd:"d 'de' MMM",MMdd:"dd/MM",Md:"d/M","d":"d","h":"h a",hm:"h:mm a",hms:"h:mm:ss a",hmsv:"h:mm:ss a v",hmv:"h:mm a v",ms:"mm:ss","y":"y",yM:"MM/y",yMEd:"E, dd/MM/y",yMM:"MM/y",yMMM:"MMM 'de' y",yMMMEd:"E, d 'de' MMM 'de' y",yMMMd:"d 'de' MMM 'de' y",yMd:"dd/MM/y",yQQQ:"y QQQ",yQQQQ:"y QQQQ"},dateFormats:{full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d 'de' MMM 'de' y",short:"dd/MM/yy"},timeFormats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"}},calendars:{buddhist:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["BE"],short:["BE"],long:["BE"]},dayPeriods:{am:"AM",pm:"PM"}},chinese:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"],long:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},dayPeriods:{am:"AM",pm:"PM"}},coptic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"],long:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},dangi:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"],long:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},dayPeriods:{am:"AM",pm:"PM"}},ethiopic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},ethioaa:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0"],short:["ERA0"],long:["ERA0"]},dayPeriods:{am:"AM",pm:"PM"}},generic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"],long:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},gregory:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["a.C.","d.C.","AEC","EC"],short:["a.C.","d.C.","AEC","EC"],long:["Antes de Cristo","Ano do Senhor","Antes da Era Comum","Era Comum"]},dayPeriods:{am:"AM",pm:"PM"}},hebrew:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13","7"],short:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"],long:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AM"],short:["AM"],long:["AM"]},dayPeriods:{am:"AM",pm:"PM"}},indian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"],long:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["Saka"],short:["Saka"],long:["Saka"]},dayPeriods:{am:"AM",pm:"PM"}},islamic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},islamicc:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},japanese:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["Taika (645-650)","Hakuchi (650-671)","Hakuhō (672-686)","Shuchō (686-701)","Taihō (701-704)","Keiun (704-708)","Wadō (708-715)","Reiki (715-717)","Yōrō (717-724)","Jinki (724-729)","Tempyō (729-749)","Tempyō-kampō (749-749)","Tempyō-shōhō (749-757)","Tempyō-hōji (757-765)","Temphō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770-780)","Ten-ō (781-782)","Enryaku (782-806)","Daidō (806-810)","Kōnin (810-824)","Tenchō (824-834)","Jōwa (834-848)","Kajō (848-851)","Ninju (851-854)","Saiko (854-857)","Tennan (857-859)","Jōgan (859-877)","Genkei (877-885)","Ninna (885-889)","Kampyō (889-898)","Shōtai (898-901)","Engi (901-923)","Enchō (923-931)","Shōhei (931-938)","Tengyō (938-947)","Tenryaku (947-957)","Tentoku (957-961)","Ōwa (961-964)","Kōhō (964-968)","Anna (968-970)","Tenroku (970-973)","Ten-en (973-976)","Jōgen (976-978)","Tengen (978-983)","Eikan (983-985)","Kanna (985-987)","Ei-en (987-989)","Eiso (989-990)","Shōryaku (990-995)","Chōtoku (995-999)","Chōhō (999-1004)","Kankō (1004-1012)","Chōwa (1012-1017)","Kannin (1017-1021)","Jian (1021-1024)","Manju (1024-1028)","Chōgen (1028-1037)","Chōryaku (1037-1040)","Chōkyū (1040-1044)","Kantoku (1044-1046)","Eishō (1046-1053)","Tengi (1053-1058)","Kōhei (1058-1065)","Jiryaku (1065-1069)","Enkyū (1069-1074)","Shōho (1074-1077)","Shōryaku (1077-1081)","Eiho (1081-1084)","Ōtoku (1084-1087)","Kanji (1087-1094)","Kaho (1094-1096)","Eichō (1096-1097)","Shōtoku (1097-1099)","Kōwa (1099-1104)","Chōji (1104-1106)","Kashō (1106-1108)","Tennin (1108-1110)","Ten-ei (1110-1113)","Eikyū (1113-1118)","Gen-ei (1118-1120)","Hoan (1120-1124)","Tenji (1124-1126)","Daiji (1126-1131)","Tenshō (1131-1132)","Chōshō (1132-1135)","Hoen (1135-1141)","Eiji (1141-1142)","Kōji (1142-1144)","Tenyō (1144-1145)","Kyūan (1145-1151)","Ninpei (1151-1154)","Kyūju (1154-1156)","Hogen (1156-1159)","Heiji (1159-1160)","Eiryaku (1160-1161)","Ōho (1161-1163)","Chōkan (1163-1165)","Eiman (1165-1166)","Nin-an (1166-1169)","Kaō (1169-1171)","Shōan (1171-1175)","Angen (1175-1177)","Jishō (1177-1181)","Yōwa (1181-1182)","Juei (1182-1184)","Genryuku (1184-1185)","Bunji (1185-1190)","Kenkyū (1190-1199)","Shōji (1199-1201)","Kennin (1201-1204)","Genkyū (1204-1206)","Ken-ei (1206-1207)","Shōgen (1207-1211)","Kenryaku (1211-1213)","Kenpō (1213-1219)","Shōkyū (1219-1222)","Jōō (1222-1224)","Gennin (1224-1225)","Karoku (1225-1227)","Antei (1227-1229)","Kanki (1229-1232)","Jōei (1232-1233)","Tempuku (1233-1234)","Bunryaku (1234-1235)","Katei (1235-1238)","Ryakunin (1238-1239)","En-ō (1239-1240)","Ninji (1240-1243)","Kangen (1243-1247)","Hōji (1247-1249)","Kenchō (1249-1256)","Kōgen (1256-1257)","Shōka (1257-1259)","Shōgen (1259-1260)","Bun-ō (1260-1261)","Kōchō (1261-1264)","Bun-ei (1264-1275)","Kenji (1275-1278)","Kōan (1278-1288)","Shōō (1288-1293)","Einin (1293-1299)","Shōan (1299-1302)","Kengen (1302-1303)","Kagen (1303-1306)","Tokuji (1306-1308)","Enkei (1308-1311)","Ōchō (1311-1312)","Shōwa (1312-1317)","Bunpō (1317-1319)","Genō (1319-1321)","Genkyō (1321-1324)","Shōchū (1324-1326)","Kareki (1326-1329)","Gentoku (1329-1331)","Genkō (1331-1334)","Kemmu (1334-1336)","Engen (1336-1340)","Kōkoku (1340-1346)","Shōhei (1346-1370)","Kentoku (1370-1372)","Bunchũ (1372-1375)","Tenju (1375-1379)","Kōryaku (1379-1381)","Kōwa (1381-1384)","Genchũ (1384-1392)","Meitoku (1384-1387)","Kakei (1387-1389)","Kōō (1389-1390)","Meitoku (1390-1394)","Ōei (1394-1428)","Shōchō (1428-1429)","Eikyō (1429-1441)","Kakitsu (1441-1444)","Bun-an (1444-1449)","Hōtoku (1449-1452)","Kyōtoku (1452-1455)","Kōshō (1455-1457)","Chōroku (1457-1460)","Kanshō (1460-1466)","Bunshō (1466-1467)","Ōnin (1467-1469)","Bunmei (1469-1487)","Chōkyō (1487-1489)","Entoku (1489-1492)","Meiō (1492-1501)","Bunki (1501-1504)","Eishō (1504-1521)","Taiei (1521-1528)","Kyōroku (1528-1532)","Tenmon (1532-1555)","Kōji (1555-1558)","Eiroku (1558-1570)","Genki (1570-1573)","Tenshō (1573-1592)","Bunroku (1592-1596)","Keichō (1596-1615)","Genwa (1615-1624)","Kan-ei (1624-1644)","Shōho (1644-1648)","Keian (1648-1652)","Shōō (1652-1655)","Meiryaku (1655-1658)","Manji (1658-1661)","Kanbun (1661-1673)","Enpō (1673-1681)","Tenwa (1681-1684)","Jōkyō (1684-1688)","Genroku (1688-1704)","Hōei (1704-1711)","Shōtoku (1711-1716)","Kyōhō (1716-1736)","Genbun (1736-1741)","Kanpō (1741-1744)","Enkyō (1744-1748)","Kan-en (1748-1751)","Hōryaku (1751-1764)","Meiwa (1764-1772)","An-ei (1772-1781)","Tenmei (1781-1789)","Kansei (1789-1801)","Kyōwa (1801-1804)","Bunka (1804-1818)","Bunsei (1818-1830)","Tenpō (1830-1844)","Kōka (1844-1848)","Kaei (1848-1854)","Ansei (1854-1860)","Man-en (1860-1861)","Bunkyū (1861-1864)","Genji (1864-1865)","Keiō (1865-1868)","M","T","S","H"],short:["Taika (645-650)","Hakuchi (650-671)","Hakuhō (672-686)","Shuchō (686-701)","Taihō (701-704)","Keiun (704-708)","Wadō (708-715)","Reiki (715-717)","Yōrō (717-724)","Jinki (724-729)","Tempyō (729-749)","Tempyō-kampō (749-749)","Tempyō-shōhō (749-757)","Tempyō-hōji (757-765)","Temphō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770-780)","Ten-ō (781-782)","Enryaku (782-806)","Daidō (806-810)","Kōnin (810-824)","Tenchō (824-834)","Jōwa (834-848)","Kajō (848-851)","Ninju (851-854)","Saiko (854-857)","Tennan (857-859)","Jōgan (859-877)","Genkei (877-885)","Ninna (885-889)","Kampyō (889-898)","Shōtai (898-901)","Engi (901-923)","Enchō (923-931)","Shōhei (931-938)","Tengyō (938-947)","Tenryaku (947-957)","Tentoku (957-961)","Ōwa (961-964)","Kōhō (964-968)","Anna (968-970)","Tenroku (970-973)","Ten-en (973-976)","Jōgen (976-978)","Tengen (978-983)","Eikan (983-985)","Kanna (985-987)","Ei-en (987-989)","Eiso (989-990)","Shōryaku (990-995)","Chōtoku (995-999)","Chōhō (999-1004)","Kankō (1004-1012)","Chōwa (1012-1017)","Kannin (1017-1021)","Jian (1021-1024)","Manju (1024-1028)","Chōgen (1028-1037)","Chōryaku (1037-1040)","Chōkyū (1040-1044)","Kantoku (1044-1046)","Eishō (1046-1053)","Tengi (1053-1058)","Kōhei (1058-1065)","Jiryaku (1065-1069)","Enkyū (1069-1074)","Shōho (1074-1077)","Shōryaku (1077-1081)","Eiho (1081-1084)","Ōtoku (1084-1087)","Kanji (1087-1094)","Kaho (1094-1096)","Eichō (1096-1097)","Shōtoku (1097-1099)","Kōwa (1099-1104)","Chōji (1104-1106)","Kashō (1106-1108)","Tennin (1108-1110)","Ten-ei (1110-1113)","Eikyū (1113-1118)","Gen-ei (1118-1120)","Hoan (1120-1124)","Tenji (1124-1126)","Daiji (1126-1131)","Tenshō (1131-1132)","Chōshō (1132-1135)","Hoen (1135-1141)","Eiji (1141-1142)","Kōji (1142-1144)","Tenyō (1144-1145)","Kyūan (1145-1151)","Ninpei (1151-1154)","Kyūju (1154-1156)","Hogen (1156-1159)","Heiji (1159-1160)","Eiryaku (1160-1161)","Ōho (1161-1163)","Chōkan (1163-1165)","Eiman (1165-1166)","Nin-an (1166-1169)","Kaō (1169-1171)","Shōan (1171-1175)","Angen (1175-1177)","Jishō (1177-1181)","Yōwa (1181-1182)","Juei (1182-1184)","Genryuku (1184-1185)","Bunji (1185-1190)","Kenkyū (1190-1199)","Shōji (1199-1201)","Kennin (1201-1204)","Genkyū (1204-1206)","Ken-ei (1206-1207)","Shōgen (1207-1211)","Kenryaku (1211-1213)","Kenpō (1213-1219)","Shōkyū (1219-1222)","Jōō (1222-1224)","Gennin (1224-1225)","Karoku (1225-1227)","Antei (1227-1229)","Kanki (1229-1232)","Jōei (1232-1233)","Tempuku (1233-1234)","Bunryaku (1234-1235)","Katei (1235-1238)","Ryakunin (1238-1239)","En-ō (1239-1240)","Ninji (1240-1243)","Kangen (1243-1247)","Hōji (1247-1249)","Kenchō (1249-1256)","Kōgen (1256-1257)","Shōka (1257-1259)","Shōgen (1259-1260)","Bun-ō (1260-1261)","Kōchō (1261-1264)","Bun-ei (1264-1275)","Kenji (1275-1278)","Kōan (1278-1288)","Shōō (1288-1293)","Einin (1293-1299)","Shōan (1299-1302)","Kengen (1302-1303)","Kagen (1303-1306)","Tokuji (1306-1308)","Enkei (1308-1311)","Ōchō (1311-1312)","Shōwa (1312-1317)","Bunpō (1317-1319)","Genō (1319-1321)","Genkyō (1321-1324)","Shōchū (1324-1326)","Kareki (1326-1329)","Gentoku (1329-1331)","Genkō (1331-1334)","Kemmu (1334-1336)","Engen (1336-1340)","Kōkoku (1340-1346)","Shōhei (1346-1370)","Kentoku (1370-1372)","Bunchū (1372-1375)","Tenju (1375-1379)","Kōryaku (1379-1381)","Kōwa (1381-1384)","Genchū (1384-1392)","Meitoku (1384-1387)","Kakei (1387-1389)","Kōō (1389-1390)","Meitoku (1390-1394)","Ōei (1394-1428)","Shōchō (1428-1429)","Eikyō (1429-1441)","Kakitsu (1441-1444)","Bun-an (1444-1449)","Hōtoku (1449-1452)","Kyōtoku (1452-1455)","Kōshō (1455-1457)","Chōroku (1457-1460)","Kanshō (1460-1466)","Bunshō (1466-1467)","Ōnin (1467-1469)","Bunmei (1469-1487)","Chōkyō (1487-1489)","Entoku (1489-1492)","Meiō (1492-1501)","Bunki (1501-1504)","Eishō (1504-1521)","Taiei (1521-1528)","Kyōroku (1528-1532)","Tenmon (1532-1555)","Kōji (1555-1558)","Eiroku (1558-1570)","Genki (1570-1573)","Tenshō (1573-1592)","Bunroku (1592-1596)","Keichō (1596-1615)","Genwa (1615-1624)","Kan-ei (1624-1644)","Shōho (1644-1648)","Keian (1648-1652)","Shōō (1652-1655)","Meiryaku (1655-1658)","Manji (1658-1661)","Kanbun (1661-1673)","Enpō (1673-1681)","Tenwa (1681-1684)","Jōkyō (1684-1688)","Genroku (1688-1704)","Hōei (1704-1711)","Shōtoku (1711-1716)","Kyōhō (1716-1736)","Genbun (1736-1741)","Kanpō (1741-1744)","Enkyō (1744-1748)","Kan-en (1748-1751)","Hōryaku (1751-1764)","Meiwa (1764-1772)","An-ei (1772-1781)","Tenmei (1781-1789)","Kansei (1789-1801)","Kyōwa (1801-1804)","Bunka (1804-1818)","Bunsei (1818-1830)","Tenpō (1830-1844)","Kōka (1844-1848)","Kaei (1848-1854)","Ansei (1854-1860)","Man-en (1860-1861)","Bunkyū (1861-1864)","Genji (1864-1865)","Keiō (1865-1868)","Meiji","Taishō","Shōwa","Heisei"],long:["Taika (645-650)","Hakuchi (650-671)","Hakuhō (672-686)","Shuchō (686-701)","Taihō (701-704)","Keiun (704-708)","Wadō (708-715)","Reiki (715-717)","Yōrō (717-724)","Jinki (724-729)","Tempyō (729-749)","Tempyō-kampō (749-749)","Tempyō-shōhō (749-757)","Tempyō-hōji (757-765)","Temphō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770-780)","Ten-ō (781-782)","Enryaku (782-806)","Daidō (806-810)","Kōnin (810-824)","Tenchō (824-834)","Jōwa (834-848)","Kajō (848-851)","Ninju (851-854)","Saiko (854-857)","Tennan (857-859)","Jōgan (859-877)","Genkei (877-885)","Ninna (885-889)","Kampyō (889-898)","Shōtai (898-901)","Engi (901-923)","Enchō (923-931)","Shōhei (931-938)","Tengyō (938-947)","Tenryaku (947-957)","Tentoku (957-961)","Ōwa (961-964)","Kōhō (964-968)","Anna (968-970)","Tenroku (970-973)","Ten-en (973-976)","Jōgen (976-978)","Tengen (978-983)","Eikan (983-985)","Kanna (985-987)","Ei-en (987-989)","Eiso (989-990)","Shōryaku (990-995)","Chōtoku (995-999)","Chōhō (999-1004)","Kankō (1004-1012)","Chōwa (1012-1017)","Kannin (1017-1021)","Jian (1021-1024)","Manju (1024-1028)","Chōgen (1028-1037)","Chōryaku (1037-1040)","Chōkyū (1040-1044)","Kantoku (1044-1046)","Eishō (1046-1053)","Tengi (1053-1058)","Kōhei (1058-1065)","Jiryaku (1065-1069)","Enkyū (1069-1074)","Shōho (1074-1077)","Shōryaku (1077-1081)","Eiho (1081-1084)","Ōtoku (1084-1087)","Kanji (1087-1094)","Kaho (1094-1096)","Eichō (1096-1097)","Shōtoku (1097-1099)","Kōwa (1099-1104)","Chōji (1104-1106)","Kashō (1106-1108)","Tennin (1108-1110)","Ten-ei (1110-1113)","Eikyū (1113-1118)","Gen-ei (1118-1120)","Hoan (1120-1124)","Tenji (1124-1126)","Daiji (1126-1131)","Tenshō (1131-1132)","Chōshō (1132-1135)","Hoen (1135-1141)","Eiji (1141-1142)","Kōji (1142-1144)","Tenyō (1144-1145)","Kyūan (1145-1151)","Ninpei (1151-1154)","Kyūju (1154-1156)","Hogen (1156-1159)","Heiji (1159-1160)","Eiryaku (1160-1161)","Ōho (1161-1163)","Chōkan (1163-1165)","Eiman (1165-1166)","Nin-an (1166-1169)","Kaō (1169-1171)","Shōan (1171-1175)","Angen (1175-1177)","Jishō (1177-1181)","Yōwa (1181-1182)","Juei (1182-1184)","Genryuku (1184-1185)","Bunji (1185-1190)","Kenkyū (1190-1199)","Shōji (1199-1201)","Kennin (1201-1204)","Genkyū (1204-1206)","Ken-ei (1206-1207)","Shōgen (1207-1211)","Kenryaku (1211-1213)","Kenpō (1213-1219)","Shōkyū (1219-1222)","Jōō (1222-1224)","Gennin (1224-1225)","Karoku (1225-1227)","Antei (1227-1229)","Kanki (1229-1232)","Jōei (1232-1233)","Tempuku (1233-1234)","Bunryaku (1234-1235)","Katei (1235-1238)","Ryakunin (1238-1239)","En-ō (1239-1240)","Ninji (1240-1243)","Kangen (1243-1247)","Hōji (1247-1249)","Kenchō (1249-1256)","Kōgen (1256-1257)","Shōka (1257-1259)","Shōgen (1259-1260)","Bun-ō (1260-1261)","Kōchō (1261-1264)","Bun-ei (1264-1275)","Kenji (1275-1278)","Kōan (1278-1288)","Shōō (1288-1293)","Einin (1293-1299)","Shōan (1299-1302)","Kengen (1302-1303)","Kagen (1303-1306)","Tokuji (1306-1308)","Enkei (1308-1311)","Ōchō (1311-1312)","Shōwa (1312-1317)","Bunpō (1317-1319)","Genō (1319-1321)","Genkyō (1321-1324)","Shōchū (1324-1326)","Kareki (1326-1329)","Gentoku (1329-1331)","Genkō (1331-1334)","Kemmu (1334-1336)","Engen (1336-1340)","Kōkoku (1340-1346)","Shōhei (1346-1370)","Kentoku (1370-1372)","Bunchū (1372-1375)","Tenju (1375-1379)","Kōryaku (1379-1381)","Kōwa (1381-1384)","Genchū (1384-1392)","Meitoku (1384-1387)","Kakei (1387-1389)","Kōō (1389-1390)","Meitoku (1390-1394)","Ōei (1394-1428)","Shōchō (1428-1429)","Eikyō (1429-1441)","Kakitsu (1441-1444)","Bun-an (1444-1449)","Hōtoku (1449-1452)","Kyōtoku (1452-1455)","Kōshō (1455-1457)","Chōroku (1457-1460)","Kanshō (1460-1466)","Bunshō (1466-1467)","Ōnin (1467-1469)","Bunmei (1469-1487)","Chōkyō (1487-1489)","Entoku (1489-1492)","Meiō (1492-1501)","Bunki (1501-1504)","Eishō (1504-1521)","Taiei (1521-1528)","Kyōroku (1528-1532)","Tenmon (1532-1555)","Kōji (1555-1558)","Eiroku (1558-1570)","Genki (1570-1573)","Tenshō (1573-1592)","Bunroku (1592-1596)","Keichō (1596-1615)","Genwa (1615-1624)","Kan-ei (1624-1644)","Shōho (1644-1648)","Keian (1648-1652)","Shōō (1652-1655)","Meiryaku (1655-1658)","Manji (1658-1661)","Kanbun (1661-1673)","Enpō (1673-1681)","Tenwa (1681-1684)","Jōkyō (1684-1688)","Genroku (1688-1704)","Hōei (1704-1711)","Shōtoku (1711-1716)","Kyōhō (1716-1736)","Genbun (1736-1741)","Kanpō (1741-1744)","Enkyō (1744-1748)","Kan-en (1748-1751)","Hōryaku (1751-1764)","Meiwa (1764-1772)","An-ei (1772-1781)","Tenmei (1781-1789)","Kansei (1789-1801)","Kyōwa (1801-1804)","Bunka (1804-1818)","Bunsei (1818-1830)","Tenpō (1830-1844)","Kōka (1844-1848)","Kaei (1848-1854)","Ansei (1854-1860)","Man-en (1860-1861)","Bunkyū (1861-1864)","Genji (1864-1865)","Keiō (1865-1868)","Meiji","Taishō","Shōwa","Heisei"]},dayPeriods:{am:"AM",pm:"PM"}},persian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],long:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AP"],short:["AP"],long:["AP"]},dayPeriods:{am:"AM",pm:"PM"}},roc:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["Antes de R.O.C.","R.O.C."],short:["Antes de R.O.C.","R.O.C."],long:["Antes de R.O.C.","R.O.C."]},dayPeriods:{am:"AM",pm:"PM"}}}},number:{nu:["latn"],patterns:{decimal:{positivePattern:"{number}",negativePattern:"-{number}"},currency:{positivePattern:"{currency}{number}",negativePattern:"-{currency}{number}"},percent:{positivePattern:"{number}%",negativePattern:"-{number}%"}},symbols:{latn:{decimal:",",group:".",nan:"NaN",percent:"%",infinity:"∞"}},currencies:{AUD:"AU$",BRL:"R$",CAD:"CA$",CNY:"CN¥",EUR:"€",GBP:"£",HKD:"HK$",ILS:"₪",INR:"₹",JPY:"JP¥",KRW:"₩",MXN:"MX$",NZD:"NZ$",PTE:"Esc.",THB:"฿",TWD:"NT$",USD:"US$",VND:"₫",XAF:"FCFA",XCD:"EC$",XOF:"CFA",XPF:"CFPF"}}});
+	IntlPolyfill.__addLocaleData({locale:"pt-BR",date:{ca:["gregory","buddhist","chinese","coptic","dangi","ethioaa","ethiopic","generic","hebrew","indian","islamic","islamicc","japanese","persian","roc"],hourNo0:true,hour12:false,formats:{short:"{1} {0}",medium:"{1} {0}",full:"{1} {0}",long:"{1} {0}",availableFormats:{"d":"d","E":"ccc",Ed:"E, d",Ehm:"E, h:mm a",EHm:"E, HH:mm",Ehms:"E, h:mm:ss a",EHms:"E, HH:mm:ss",Gy:"y G",GyMMM:"MMM 'de' y G",GyMMMd:"d 'de' MMM 'de' y G",GyMMMEd:"E, d 'de' MMM 'de' y G","h":"h a","H":"HH",hm:"h:mm a",Hm:"HH:mm",hms:"h:mm:ss a",Hms:"HH:mm:ss",hmsv:"h:mm:ss a v",Hmsv:"HH:mm:ss v",hmv:"h:mm a v",Hmv:"HH:mm v","M":"L",Md:"d/M",MEd:"E, dd/MM",MMdd:"dd/MM",MMM:"LLL",MMMd:"d 'de' MMM",MMMEd:"E, d 'de' MMM",MMMMd:"d 'de' MMMM",MMMMEd:"E, d 'de' MMMM",ms:"mm:ss","y":"y",yM:"MM/y",yMd:"dd/MM/y",yMEd:"E, dd/MM/y",yMM:"MM/y",yMMM:"MMM 'de' y",yMMMd:"d 'de' MMM 'de' y",yMMMEd:"E, d 'de' MMM 'de' y",yMMMM:"MMMM 'de' y",yMMMMd:"d 'de' MMMM 'de' y",yMMMMEd:"E, d 'de' MMMM 'de' y",yQQQ:"y QQQ",yQQQQ:"y QQQQ"},dateFormats:{yMMMMEEEEd:"EEEE, d 'de' MMMM 'de' y",yMMMMd:"d 'de' MMMM 'de' y",yMMMd:"d 'de' MMM 'de' y",yMd:"dd/MM/yy"},timeFormats:{hmmsszzzz:"HH:mm:ss zzzz",hmsz:"HH:mm:ss z",hms:"HH:mm:ss",hm:"HH:mm"}},calendars:{buddhist:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["BE"],short:["BE"],long:["BE"]},dayPeriods:{am:"AM",pm:"PM"}},chinese:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"],long:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},dayPeriods:{am:"AM",pm:"PM"}},coptic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"],long:["Tout","Baba","Hator","Kiahk","Toba","Amshir","Baramhat","Baramouda","Bashans","Paona","Epep","Mesra","Nasie"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},dangi:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"],long:["Mês 1","Mês 2","Mês 3","Mês 4","Mês 5","Mês 6","Mês 7","Mês 8","Mês 9","Mês 10","Mês 11","Mês 12"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},dayPeriods:{am:"AM",pm:"PM"}},ethiopic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},ethioaa:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13"],short:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"],long:["Meskerem","Tekemt","Hedar","Tahsas","Ter","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehasse","Pagumen"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0"],short:["ERA0"],long:["ERA0"]},dayPeriods:{am:"AM",pm:"PM"}},generic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"],long:["M01","M02","M03","M04","M05","M06","M07","M08","M09","M10","M11","M12"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["ERA0","ERA1"],short:["ERA0","ERA1"],long:["ERA0","ERA1"]},dayPeriods:{am:"AM",pm:"PM"}},gregory:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["a.C.","d.C.","AEC","EC"],short:["a.C.","d.C.","AEC","EC"],long:["antes de Cristo","depois de Cristo","antes da Era Comum","Era Comum"]},dayPeriods:{am:"AM",pm:"PM"}},hebrew:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12","13","7"],short:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"],long:["Tishri","Heshvan","Kislev","Tevet","Shevat","Adar I","Adar","Nisan","Iyar","Sivan","Tamuz","Av","Elul","Adar II"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AM"],short:["AM"],long:["AM"]},dayPeriods:{am:"AM",pm:"PM"}},indian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"],long:["Chaitra","Vaisakha","Jyaistha","Asadha","Sravana","Bhadra","Asvina","Kartika","Agrahayana","Pausa","Magha","Phalguna"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["Saka"],short:["Saka"],long:["Saka"]},dayPeriods:{am:"AM",pm:"PM"}},islamic:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},islamicc:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],long:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AH"],short:["AH"],long:["AH"]},dayPeriods:{am:"AM",pm:"PM"}},japanese:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["Taika (645–650)","Hakuchi (650–671)","Hakuhō (672–686)","Shuchō (686–701)","Taihō (701–704)","Keiun (704–708)","Wadō (708–715)","Reiki (715–717)","Yōrō (717–724)","Jinki (724–729)","Tenpyō (729–749)","Tenpyō-kampō (749-749)","Tenpyō-shōhō (749-757)","Tenpyō-hōji (757-765)","Tenpyō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770–780)","Ten-ō (781-782)","Enryaku (782–806)","Daidō (806–810)","Kōnin (810–824)","Tenchō (824–834)","Jōwa (834–848)","Kajō (848–851)","Ninju (851–854)","Saikō (854–857)","Ten-an (857-859)","Jōgan (859–877)","Gangyō (877–885)","Ninna (885–889)","Kanpyō (889–898)","Shōtai (898–901)","Engi (901–923)","Enchō (923–931)","Jōhei (931–938)","Tengyō (938–947)","Tenryaku (947–957)","Tentoku (957–961)","Ōwa (961–964)","Kōhō (964–968)","Anna (968–970)","Tenroku (970–973)","Ten’en (973–976)","Jōgen (976–978)","Tengen (978–983)","Eikan (983–985)","Kanna (985–987)","Eien (987–989)","Eiso (989–990)","Shōryaku (990–995)","Chōtoku (995–999)","Chōhō (999–1004)","Kankō (1004–1012)","Chōwa (1012–1017)","Kannin (1017–1021)","Jian (1021–1024)","Manju (1024–1028)","Chōgen (1028–1037)","Chōryaku (1037–1040)","Chōkyū (1040–1044)","Kantoku (1044–1046)","Eishō (1046–1053)","Tengi (1053–1058)","Kōhei (1058–1065)","Jiryaku (1065–1069)","Enkyū (1069–1074)","Shōho (1074–1077)","Shōryaku (1077–1081)","Eihō (1081–1084)","Ōtoku (1084–1087)","Kanji (1087–1094)","Kahō (1094–1096)","Eichō (1096–1097)","Jōtoku (1097–1099)","Kōwa (1099–1104)","Chōji (1104–1106)","Kashō (1106–1108)","Tennin (1108–1110)","Ten-ei (1110-1113)","Eikyū (1113–1118)","Gen’ei (1118–1120)","Hōan (1120–1124)","Tenji (1124–1126)","Daiji (1126–1131)","Tenshō (1131–1132)","Chōshō (1132–1135)","Hōen (1135–1141)","Eiji (1141–1142)","Kōji (1142–1144)","Ten’yō (1144–1145)","Kyūan (1145–1151)","Ninpei (1151–1154)","Kyūju (1154–1156)","Hōgen (1156–1159)","Heiji (1159–1160)","Eiryaku (1160–1161)","Ōho (1161–1163)","Chōkan (1163–1165)","Eiman (1165–1166)","Nin’an (1166–1169)","Kaō (1169–1171)","Shōan (1171–1175)","Angen (1175–1177)","Jishō (1177–1181)","Yōwa (1181–1182)","Juei (1182–1184)","Genryaku (1184–1185)","Bunji (1185–1190)","Kenkyū (1190–1199)","Shōji (1199–1201)","Kennin (1201–1204)","Genkyū (1204–1206)","Ken’ei (1206–1207)","Jōgen (1207–1211)","Kenryaku (1211–1213)","Kenpō (1213–1219)","Jōkyū (1219–1222)","Jōō (1222–1224)","Gennin (1224–1225)","Karoku (1225–1227)","Antei (1227–1229)","Kanki (1229–1232)","Jōei (1232–1233)","Tenpuku (1233–1234)","Bunryaku (1234–1235)","Katei (1235–1238)","Ryakunin (1238–1239)","En’ō (1239–1240)","Ninji (1240–1243)","Kangen (1243–1247)","Hōji (1247–1249)","Kenchō (1249–1256)","Kōgen (1256–1257)","Shōka (1257–1259)","Shōgen (1259–1260)","Bun’ō (1260–1261)","Kōchō (1261–1264)","Bun’ei (1264–1275)","Kenji (1275–1278)","Kōan (1278–1288)","Shōō (1288–1293)","Einin (1293–1299)","Shōan (1299–1302)","Kengen (1302–1303)","Kagen (1303–1306)","Tokuji (1306–1308)","Enkyō (1308–1311)","Ōchō (1311–1312)","Shōwa (1312–1317)","Bunpō (1317–1319)","Genō (1319–1321)","Genkō (1321–1324)","Shōchū (1324–1326)","Karyaku (1326–1329)","Gentoku (1329–1331)","Genkō (1331–1334)","Kenmu (1334–1336)","Engen (1336–1340)","Kōkoku (1340–1346)","Shōhei (1346–1370)","Kentoku (1370–1372)","Bunchū (1372–1375)","Tenju (1375–1379)","Kōryaku (1379–1381)","Kōwa (1381–1384)","Genchū (1384–1392)","Meitoku (1384–1387)","Kakei (1387–1389)","Kōō (1389–1390)","Meitoku (1390–1394)","Ōei (1394–1428)","Shōchō (1428–1429)","Eikyō (1429–1441)","Kakitsu (1441–1444)","Bun’an (1444–1449)","Hōtoku (1449–1452)","Kyōtoku (1452–1455)","Kōshō (1455–1457)","Chōroku (1457–1460)","Kanshō (1460–1466)","Bunshō (1466–1467)","Ōnin (1467–1469)","Bunmei (1469–1487)","Chōkyō (1487–1489)","Entoku (1489–1492)","Meiō (1492–1501)","Bunki (1501–1504)","Eishō (1504–1521)","Taiei (1521–1528)","Kyōroku (1528–1532)","Tenbun (1532–1555)","Kōji (1555–1558)","Eiroku (1558–1570)","Genki (1570–1573)","Tenshō (1573–1592)","Bunroku (1592–1596)","Keichō (1596–1615)","Genna (1615–1624)","Kan’ei (1624–1644)","Shōho (1644–1648)","Keian (1648–1652)","Jōō (1652–1655)","Meireki (1655–1658)","Manji (1658–1661)","Kanbun (1661–1673)","Enpō (1673–1681)","Tenna (1681–1684)","Jōkyō (1684–1688)","Genroku (1688–1704)","Hōei (1704–1711)","Shōtoku (1711–1716)","Kyōhō (1716–1736)","Genbun (1736–1741)","Kanpō (1741–1744)","Enkyō (1744–1748)","Kan’en (1748–1751)","Hōreki (1751–1764)","Meiwa (1764–1772)","An’ei (1772–1781)","Tenmei (1781–1789)","Kansei (1789–1801)","Kyōwa (1801–1804)","Bunka (1804–1818)","Bunsei (1818–1830)","Tenpō (1830–1844)","Kōka (1844–1848)","Kaei (1848–1854)","Ansei (1854–1860)","Man’en (1860–1861)","Bunkyū (1861–1864)","Genji (1864–1865)","Keiō (1865–1868)","M","T","S","H"],short:["Taika (645–650)","Hakuchi (650–671)","Hakuhō (672–686)","Shuchō (686–701)","Taihō (701–704)","Keiun (704–708)","Wadō (708–715)","Reiki (715–717)","Yōrō (717–724)","Jinki (724–729)","Tenpyō (729–749)","Tenpyō-kampō (749-749)","Tenpyō-shōhō (749-757)","Tenpyō-hōji (757-765)","Tenpyō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770–780)","Ten-ō (781-782)","Enryaku (782–806)","Daidō (806–810)","Kōnin (810–824)","Tenchō (824–834)","Jōwa (834–848)","Kajō (848–851)","Ninju (851–854)","Saikō (854–857)","Ten-an (857-859)","Jōgan (859–877)","Gangyō (877–885)","Ninna (885–889)","Kanpyō (889–898)","Shōtai (898–901)","Engi (901–923)","Enchō (923–931)","Jōhei (931–938)","Tengyō (938–947)","Tenryaku (947–957)","Tentoku (957–961)","Ōwa (961–964)","Kōhō (964–968)","Anna (968–970)","Tenroku (970–973)","Ten’en (973–976)","Jōgen (976–978)","Tengen (978–983)","Eikan (983–985)","Kanna (985–987)","Eien (987–989)","Eiso (989–990)","Shōryaku (990–995)","Chōtoku (995–999)","Chōhō (999–1004)","Kankō (1004–1012)","Chōwa (1012–1017)","Kannin (1017–1021)","Jian (1021–1024)","Manju (1024–1028)","Chōgen (1028–1037)","Chōryaku (1037–1040)","Chōkyū (1040–1044)","Kantoku (1044–1046)","Eishō (1046–1053)","Tengi (1053–1058)","Kōhei (1058–1065)","Jiryaku (1065–1069)","Enkyū (1069–1074)","Shōho (1074–1077)","Shōryaku (1077–1081)","Eihō (1081–1084)","Ōtoku (1084–1087)","Kanji (1087–1094)","Kahō (1094–1096)","Eichō (1096–1097)","Jōtoku (1097–1099)","Kōwa (1099–1104)","Chōji (1104–1106)","Kashō (1106–1108)","Tennin (1108–1110)","Ten-ei (1110-1113)","Eikyū (1113–1118)","Gen’ei (1118–1120)","Hōan (1120–1124)","Tenji (1124–1126)","Daiji (1126–1131)","Tenshō (1131–1132)","Chōshō (1132–1135)","Hōen (1135–1141)","Eiji (1141–1142)","Kōji (1142–1144)","Ten’yō (1144–1145)","Kyūan (1145–1151)","Ninpei (1151–1154)","Kyūju (1154–1156)","Hōgen (1156–1159)","Heiji (1159–1160)","Eiryaku (1160–1161)","Ōho (1161–1163)","Chōkan (1163–1165)","Eiman (1165–1166)","Nin’an (1166–1169)","Kaō (1169–1171)","Shōan (1171–1175)","Angen (1175–1177)","Jishō (1177–1181)","Yōwa (1181–1182)","Juei (1182–1184)","Genryaku (1184–1185)","Bunji (1185–1190)","Kenkyū (1190–1199)","Shōji (1199–1201)","Kennin (1201–1204)","Genkyū (1204–1206)","Ken’ei (1206–1207)","Jōgen (1207–1211)","Kenryaku (1211–1213)","Kenpō (1213–1219)","Jōkyū (1219–1222)","Jōō (1222–1224)","Gennin (1224–1225)","Karoku (1225–1227)","Antei (1227–1229)","Kanki (1229–1232)","Jōei (1232–1233)","Tenpuku (1233–1234)","Bunryaku (1234–1235)","Katei (1235–1238)","Ryakunin (1238–1239)","En’ō (1239–1240)","Ninji (1240–1243)","Kangen (1243–1247)","Hōji (1247–1249)","Kenchō (1249–1256)","Kōgen (1256–1257)","Shōka (1257–1259)","Shōgen (1259–1260)","Bun’ō (1260–1261)","Kōchō (1261–1264)","Bun’ei (1264–1275)","Kenji (1275–1278)","Kōan (1278–1288)","Shōō (1288–1293)","Einin (1293–1299)","Shōan (1299–1302)","Kengen (1302–1303)","Kagen (1303–1306)","Tokuji (1306–1308)","Enkyō (1308–1311)","Ōchō (1311–1312)","Shōwa (1312–1317)","Bunpō (1317–1319)","Genō (1319–1321)","Genkō (1321–1324)","Shōchū (1324–1326)","Karyaku (1326–1329)","Gentoku (1329–1331)","Genkō (1331–1334)","Kenmu (1334–1336)","Engen (1336–1340)","Kōkoku (1340–1346)","Shōhei (1346–1370)","Kentoku (1370–1372)","Bunchū (1372–1375)","Tenju (1375–1379)","Kōryaku (1379–1381)","Kōwa (1381–1384)","Genchū (1384–1392)","Meitoku (1384–1387)","Kakei (1387–1389)","Kōō (1389–1390)","Meitoku (1390–1394)","Ōei (1394–1428)","Shōchō (1428–1429)","Eikyō (1429–1441)","Kakitsu (1441–1444)","Bun’an (1444–1449)","Hōtoku (1449–1452)","Kyōtoku (1452–1455)","Kōshō (1455–1457)","Chōroku (1457–1460)","Kanshō (1460–1466)","Bunshō (1466–1467)","Ōnin (1467–1469)","Bunmei (1469–1487)","Chōkyō (1487–1489)","Entoku (1489–1492)","Meiō (1492–1501)","Bunki (1501–1504)","Eishō (1504–1521)","Taiei (1521–1528)","Kyōroku (1528–1532)","Tenbun (1532–1555)","Kōji (1555–1558)","Eiroku (1558–1570)","Genki (1570–1573)","Tenshō (1573–1592)","Bunroku (1592–1596)","Keichō (1596–1615)","Genna (1615–1624)","Kan’ei (1624–1644)","Shōho (1644–1648)","Keian (1648–1652)","Jōō (1652–1655)","Meireki (1655–1658)","Manji (1658–1661)","Kanbun (1661–1673)","Enpō (1673–1681)","Tenna (1681–1684)","Jōkyō (1684–1688)","Genroku (1688–1704)","Hōei (1704–1711)","Shōtoku (1711–1716)","Kyōhō (1716–1736)","Genbun (1736–1741)","Kanpō (1741–1744)","Enkyō (1744–1748)","Kan’en (1748–1751)","Hōreki (1751–1764)","Meiwa (1764–1772)","An’ei (1772–1781)","Tenmei (1781–1789)","Kansei (1789–1801)","Kyōwa (1801–1804)","Bunka (1804–1818)","Bunsei (1818–1830)","Tenpō (1830–1844)","Kōka (1844–1848)","Kaei (1848–1854)","Ansei (1854–1860)","Man’en (1860–1861)","Bunkyū (1861–1864)","Genji (1864–1865)","Keiō (1865–1868)","Meiji","Taishō","Shōwa","Heisei"],long:["Taika (645–650)","Hakuchi (650–671)","Hakuhō (672–686)","Shuchō (686–701)","Taihō (701–704)","Keiun (704–708)","Wadō (708–715)","Reiki (715–717)","Yōrō (717–724)","Jinki (724–729)","Tenpyō (729–749)","Tenpyō-kampō (749-749)","Tenpyō-shōhō (749-757)","Tenpyō-hōji (757-765)","Tenpyō-jingo (765-767)","Jingo-keiun (767-770)","Hōki (770–780)","Ten-ō (781-782)","Enryaku (782–806)","Daidō (806–810)","Kōnin (810–824)","Tenchō (824–834)","Jōwa (834–848)","Kajō (848–851)","Ninju (851–854)","Saikō (854–857)","Ten-an (857-859)","Jōgan (859–877)","Gangyō (877–885)","Ninna (885–889)","Kanpyō (889–898)","Shōtai (898–901)","Engi (901–923)","Enchō (923–931)","Jōhei (931–938)","Tengyō (938–947)","Tenryaku (947–957)","Tentoku (957–961)","Ōwa (961–964)","Kōhō (964–968)","Anna (968–970)","Tenroku (970–973)","Ten’en (973–976)","Jōgen (976–978)","Tengen (978–983)","Eikan (983–985)","Kanna (985–987)","Eien (987–989)","Eiso (989–990)","Shōryaku (990–995)","Chōtoku (995–999)","Chōhō (999–1004)","Kankō (1004–1012)","Chōwa (1012–1017)","Kannin (1017–1021)","Jian (1021–1024)","Manju (1024–1028)","Chōgen (1028–1037)","Chōryaku (1037–1040)","Chōkyū (1040–1044)","Kantoku (1044–1046)","Eishō (1046–1053)","Tengi (1053–1058)","Kōhei (1058–1065)","Jiryaku (1065–1069)","Enkyū (1069–1074)","Shōho (1074–1077)","Shōryaku (1077–1081)","Eihō (1081–1084)","Ōtoku (1084–1087)","Kanji (1087–1094)","Kahō (1094–1096)","Eichō (1096–1097)","Jōtoku (1097–1099)","Kōwa (1099–1104)","Chōji (1104–1106)","Kashō (1106–1108)","Tennin (1108–1110)","Ten-ei (1110-1113)","Eikyū (1113–1118)","Gen’ei (1118–1120)","Hōan (1120–1124)","Tenji (1124–1126)","Daiji (1126–1131)","Tenshō (1131–1132)","Chōshō (1132–1135)","Hōen (1135–1141)","Eiji (1141–1142)","Kōji (1142–1144)","Ten’yō (1144–1145)","Kyūan (1145–1151)","Ninpei (1151–1154)","Kyūju (1154–1156)","Hōgen (1156–1159)","Heiji (1159–1160)","Eiryaku (1160–1161)","Ōho (1161–1163)","Chōkan (1163–1165)","Eiman (1165–1166)","Nin’an (1166–1169)","Kaō (1169–1171)","Shōan (1171–1175)","Angen (1175–1177)","Jishō (1177–1181)","Yōwa (1181–1182)","Juei (1182–1184)","Genryaku (1184–1185)","Bunji (1185–1190)","Kenkyū (1190–1199)","Shōji (1199–1201)","Kennin (1201–1204)","Genkyū (1204–1206)","Ken’ei (1206–1207)","Jōgen (1207–1211)","Kenryaku (1211–1213)","Kenpō (1213–1219)","Jōkyū (1219–1222)","Jōō (1222–1224)","Gennin (1224–1225)","Karoku (1225–1227)","Antei (1227–1229)","Kanki (1229–1232)","Jōei (1232–1233)","Tenpuku (1233–1234)","Bunryaku (1234–1235)","Katei (1235–1238)","Ryakunin (1238–1239)","En’ō (1239–1240)","Ninji (1240–1243)","Kangen (1243–1247)","Hōji (1247–1249)","Kenchō (1249–1256)","Kōgen (1256–1257)","Shōka (1257–1259)","Shōgen (1259–1260)","Bun’ō (1260–1261)","Kōchō (1261–1264)","Bun’ei (1264–1275)","Kenji (1275–1278)","Kōan (1278–1288)","Shōō (1288–1293)","Einin (1293–1299)","Shōan (1299–1302)","Kengen (1302–1303)","Kagen (1303–1306)","Tokuji (1306–1308)","Enkyō (1308–1311)","Ōchō (1311–1312)","Shōwa (1312–1317)","Bunpō (1317–1319)","Genō (1319–1321)","Genkō (1321–1324)","Shōchū (1324–1326)","Karyaku (1326–1329)","Gentoku (1329–1331)","Genkō (1331–1334)","Kenmu (1334–1336)","Engen (1336–1340)","Kōkoku (1340–1346)","Shōhei (1346–1370)","Kentoku (1370–1372)","Bunchū (1372–1375)","Tenju (1375–1379)","Kōryaku (1379–1381)","Kōwa (1381–1384)","Genchū (1384–1392)","Meitoku (1384–1387)","Kakei (1387–1389)","Kōō (1389–1390)","Meitoku (1390–1394)","Ōei (1394–1428)","Shōchō (1428–1429)","Eikyō (1429–1441)","Kakitsu (1441–1444)","Bun’an (1444–1449)","Hōtoku (1449–1452)","Kyōtoku (1452–1455)","Kōshō (1455–1457)","Chōroku (1457–1460)","Kanshō (1460–1466)","Bunshō (1466–1467)","Ōnin (1467–1469)","Bunmei (1469–1487)","Chōkyō (1487–1489)","Entoku (1489–1492)","Meiō (1492–1501)","Bunki (1501–1504)","Eishō (1504–1521)","Taiei (1521–1528)","Kyōroku (1528–1532)","Tenbun (1532–1555)","Kōji (1555–1558)","Eiroku (1558–1570)","Genki (1570–1573)","Tenshō (1573–1592)","Bunroku (1592–1596)","Keichō (1596–1615)","Genna (1615–1624)","Kan’ei (1624–1644)","Shōho (1644–1648)","Keian (1648–1652)","Jōō (1652–1655)","Meireki (1655–1658)","Manji (1658–1661)","Kanbun (1661–1673)","Enpō (1673–1681)","Tenna (1681–1684)","Jōkyō (1684–1688)","Genroku (1688–1704)","Hōei (1704–1711)","Shōtoku (1711–1716)","Kyōhō (1716–1736)","Genbun (1736–1741)","Kanpō (1741–1744)","Enkyō (1744–1748)","Kan’en (1748–1751)","Hōreki (1751–1764)","Meiwa (1764–1772)","An’ei (1772–1781)","Tenmei (1781–1789)","Kansei (1789–1801)","Kyōwa (1801–1804)","Bunka (1804–1818)","Bunsei (1818–1830)","Tenpō (1830–1844)","Kōka (1844–1848)","Kaei (1848–1854)","Ansei (1854–1860)","Man’en (1860–1861)","Bunkyū (1861–1864)","Genji (1864–1865)","Keiō (1865–1868)","Meiji","Taishō","Shōwa","Heisei"]},dayPeriods:{am:"AM",pm:"PM"}},persian:{months:{narrow:["1","2","3","4","5","6","7","8","9","10","11","12"],short:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"],long:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","Dey","Bahman","Esfand"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["AP"],short:["AP"],long:["AP"]},dayPeriods:{am:"AM",pm:"PM"}},roc:{months:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],short:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],long:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},days:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sáb"],long:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},eras:{narrow:["Antes de R.O.C.","R.O.C."],short:["Antes de R.O.C.","R.O.C."],long:["Antes de R.O.C.","R.O.C."]},dayPeriods:{am:"AM",pm:"PM"}}}},number:{nu:["latn"],patterns:{decimal:{positivePattern:"{number}",negativePattern:"-{number}"},currency:{positivePattern:"{currency}{number}",negativePattern:"-{currency}{number}"},percent:{positivePattern:"{number}%",negativePattern:"-{number}%"}},symbols:{latn:{decimal:",",group:".",nan:"NaN",percent:"%",infinity:"∞"}},currencies:{AUD:"AU$",BRL:"R$",CAD:"CA$",CNY:"CN¥",EUR:"€",GBP:"£",HKD:"HK$",ILS:"₪",INR:"₹",JPY:"JP¥",KRW:"₩",MXN:"MX$",NZD:"NZ$",PTE:"Esc.",THB:"฿",TWD:"NT$",USD:"US$",VND:"₫",XAF:"FCFA",XCD:"EC$",XOF:"CFA",XPF:"CFPF"}}});
 
 /***/ },
-/* 99 */
+/* 60 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _pick = __webpack_require__(76);
-
-	var _pick2 = _interopRequireDefault(_pick);
-
-	var _keys = __webpack_require__(53);
-
-	var _keys2 = _interopRequireDefault(_keys);
-
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Scroll = __webpack_require__(100);
+	var _Props = __webpack_require__(49);
 
-	var _Scroll2 = _interopRequireDefault(_Scroll);
+	var _Props2 = _interopRequireDefault(_Props);
 
-	var _SkipLinkAnchor = __webpack_require__(101);
+	var _Scroll = __webpack_require__(61);
 
-	var _SkipLinkAnchor2 = _interopRequireDefault(_SkipLinkAnchor);
+	var _Scroll2 = _interopRequireDefault(_Scroll);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
@@ -11848,15 +11236,15 @@ var Grommet =
 
 	var _LinkNext2 = _interopRequireDefault(_LinkNext);
 
-	var _LinkPrevious = __webpack_require__(43);
+	var _LinkPrevious = __webpack_require__(62);
 
 	var _LinkPrevious2 = _interopRequireDefault(_LinkPrevious);
 
-	var _Up = __webpack_require__(102);
+	var _Up = __webpack_require__(63);
 
 	var _Up2 = _interopRequireDefault(_Up);
 
-	var _Down = __webpack_require__(91);
+	var _Down = __webpack_require__(51);
 
 	var _Down2 = _interopRequireDefault(_Down);
 
@@ -11870,6 +11258,7 @@ var Grommet =
 
 	// import CarouselControls from './CarouselControls';
 
+
 	var CLASS_ROOT = 'article';
 	var DEFAULT_PLAY_INTERVAL = 10000; // 10s
 
@@ -12054,7 +11443,7 @@ var Grommet =
 	        if (this.state.activeIndex > 0) {
 	          controls.push(_react2.default.createElement(
 	            _Button2.default,
-	            { key: 'previous', type: 'icon',
+	            { key: 'previous', plain: true,
 	              className: CONTROL_CLASS_PREFIX + '-left',
 	              onClick: this._onPrevious },
 	            _react2.default.createElement(_LinkPrevious2.default, { size: 'large' })
@@ -12063,7 +11452,7 @@ var Grommet =
 	        if (this.state.activeIndex < childCount - 1) {
 	          controls.push(_react2.default.createElement(
 	            _Button2.default,
-	            { key: 'next', type: 'icon',
+	            { key: 'next', plain: true,
 	              className: CONTROL_CLASS_PREFIX + '-right',
 	              onClick: this._onNext },
 	            _react2.default.createElement(_LinkNext2.default, { size: 'large' })
@@ -12073,7 +11462,7 @@ var Grommet =
 	        if (this.state.activeIndex > 0) {
 	          controls.push(_react2.default.createElement(
 	            _Button2.default,
-	            { key: 'previous', type: 'icon',
+	            { key: 'previous', plain: true,
 	              className: CONTROL_CLASS_PREFIX + '-up',
 	              onClick: this._onPrevious },
 	            _react2.default.createElement(_Up2.default, null)
@@ -12082,7 +11471,7 @@ var Grommet =
 	        if (this.state.activeIndex < childCount - 1) {
 	          controls.push(_react2.default.createElement(
 	            _Button2.default,
-	            { key: 'next', type: 'icon',
+	            { key: 'next', plain: true,
 	              className: CONTROL_CLASS_PREFIX + '-down',
 	              onClick: this._onNext },
 	            _react2.default.createElement(_Down2.default, null)
@@ -12096,7 +11485,7 @@ var Grommet =
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
+	      var other = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 	      if (this.props.scrollStep) {
 	        classes.push(CLASS_ROOT + '--scroll-step');
 	      }
@@ -12104,12 +11493,7 @@ var Grommet =
 	        classes.push(this.props.className);
 	      }
 
-	      var skipLinkAnchor = null;
-	      if (this.props.primary) {
-	        skipLinkAnchor = _react2.default.createElement(_SkipLinkAnchor2.default, { label: 'Main Content' });
-	      }
-
-	      var controls = undefined;
+	      var controls = void 0;
 	      if (this.props.controls) {
 	        controls = this._renderControls();
 	      }
@@ -12124,8 +11508,8 @@ var Grommet =
 	      return _react2.default.createElement(
 	        _Box2.default,
 	        _extends({ ref: 'component', tag: 'article' }, other, {
-	          className: classes.join(' '), onFocus: this._onFocusChange }),
-	        skipLinkAnchor,
+	          className: classes.join(' '), onFocus: this._onFocusChange,
+	          primary: this.props.primary }),
 	        children,
 	        controls
 	      );
@@ -12137,6 +11521,7 @@ var Grommet =
 
 	exports.default = Article;
 
+
 	Article.propTypes = _extends({
 	  controls: _react.PropTypes.bool,
 	  primary: _react.PropTypes.bool,
@@ -12150,7 +11535,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 100 */
+/* 61 */
 /***/ function(module, exports) {
 
 	"use strict";
@@ -12171,6 +11556,7 @@ var Grommet =
 	    return t < .5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
 	  },
 
+
 	  // component: component to scroll
 	  // property: 'scrollTop' | 'scrollLeft'
 	  // delta: amount to scroll
@@ -12204,90 +11590,149 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 101 */
+/* 62 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
+	var _FormattedMessage = __webpack_require__(5);
+
+	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var SkipLinkAnchor = function (_Component) {
-	  _inherits(SkipLinkAnchor, _Component);
+	var CLASS_ROOT = 'control-icon';
 
-	  function SkipLinkAnchor() {
-	    _classCallCheck(this, SkipLinkAnchor);
+	var Icon = function (_Component) {
+	  _inherits(Icon, _Component);
 
-	    return _possibleConstructorReturn(this, Object.getPrototypeOf(SkipLinkAnchor).apply(this, arguments));
+	  function Icon() {
+	    _classCallCheck(this, Icon);
+
+	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Icon).apply(this, arguments));
 	  }
 
-	  _createClass(SkipLinkAnchor, [{
+	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var id = 'skip-link-' + this.props.label.toLowerCase().replace(/ /g, '_');
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
+	      }
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link-previous', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'link-previous';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
-	        'a',
-	        { tabIndex: '-1', id: id, className: 'skip-link-anchor' },
-	        this.props.label
+	        'svg',
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
+	        _react2.default.createElement(
+	          'title',
+	          { id: a11yTitleId },
+	          a11yTitle
+	        ),
+	        _react2.default.createElement(
+	          'g',
+	          { id: 'link-previous' },
+	          _react2.default.createElement('rect', { id: '_x2E_svg_250_', y: '0', fill: 'none', width: '24', height: '24' }),
+	          _react2.default.createElement('path', { fill: 'none', stroke: '#000000', strokeWidth: '2', strokeMiterlimit: '10', d: 'M11.1397,20l-8-8l8-8 M3.1397,12h19' })
+	        )
 	      );
 	    }
 	  }]);
 
-	  return SkipLinkAnchor;
+	  return Icon;
 	}(_react.Component);
 
-	exports.default = SkipLinkAnchor;
+	exports.default = Icon;
+	;
 
-	SkipLinkAnchor.propTypes = {
-	  label: _react.PropTypes.node.isRequired
+	Icon.propTypes = {
+	  a11yTitle: _react.PropTypes.string,
+	  a11yTitleId: _react.PropTypes.string,
+	  colorIndex: _react.PropTypes.string,
+	  large: _react.PropTypes.bool,
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
+	};
+
+	Icon.defaultProps = {
+	  a11yTitleId: 'link-previous-title'
 	};
+
+	Icon.icon = true;
+
+	Icon.displayName = 'LinkPrevious';
 	module.exports = exports['default'];
 
 /***/ },
-/* 102 */
+/* 63 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -12301,28 +11746,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-up'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "up";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-up', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'up';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -12339,13 +11788,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -12353,64 +11803,63 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Up';
 	module.exports = exports['default'];
 
 /***/ },
-/* 103 */
+/* 64 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
-
-	var _reactDom2 = _interopRequireDefault(_reactDom);
-
-	var _moment = __webpack_require__(104);
+	var _moment = __webpack_require__(65);
 
 	var _moment2 = _interopRequireDefault(_moment);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Drop = __webpack_require__(88);
+	var _Drop = __webpack_require__(48);
 
 	var _Drop2 = _interopRequireDefault(_Drop);
 
-	var _Calendar = __webpack_require__(203);
+	var _DOM = __webpack_require__(45);
 
-	var _Calendar2 = _interopRequireDefault(_Calendar);
+	var _Header = __webpack_require__(165);
 
-	var _LinkPrevious = __webpack_require__(43);
+	var _Header2 = _interopRequireDefault(_Header);
 
-	var _LinkPrevious2 = _interopRequireDefault(_LinkPrevious);
+	var _Title = __webpack_require__(166);
 
-	var _LinkNext = __webpack_require__(4);
+	var _Title2 = _interopRequireDefault(_Title);
 
-	var _LinkNext2 = _interopRequireDefault(_LinkNext);
+	var _Button = __webpack_require__(46);
 
-	var _Header = __webpack_require__(204);
+	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Header2 = _interopRequireDefault(_Header);
+	var _Calendar = __webpack_require__(167);
 
-	var _Title = __webpack_require__(205);
+	var _Calendar2 = _interopRequireDefault(_Calendar);
 
-	var _Title2 = _interopRequireDefault(_Title);
+	var _LinkPrevious = __webpack_require__(62);
 
-	var _Button = __webpack_require__(74);
+	var _LinkPrevious2 = _interopRequireDefault(_LinkPrevious);
 
-	var _Button2 = _interopRequireDefault(_Button);
+	var _LinkNext = __webpack_require__(4);
+
+	var _LinkNext2 = _interopRequireDefault(_LinkNext);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
@@ -12612,7 +12061,9 @@ var Grommet =
 	        document.addEventListener('click', this._onClose);
 	        _KeyboardAccelerators2.default.startListeningToKeyboard(this, listeners);
 
-	        this._drop = _Drop2.default.add(_reactDom2.default.findDOMNode(this.refs.component), this._renderDrop(), { top: 'bottom', left: 'left' });
+	        // If this is inside a FormField, place the drop in reference to it.
+	        var control = (0, _DOM.findAncestor)(this.refs.component, 'form-field') || this.refs.component;
+	        this._drop = _Drop2.default.add(control, this._renderDrop(), { align: { top: 'bottom', left: 'left' } });
 	      } else {
 
 	        document.removeEventListener('click', this._onClose);
@@ -12692,23 +12143,15 @@ var Grommet =
 	        _react2.default.createElement(
 	          _Header2.default,
 	          { justify: 'between' },
-	          _react2.default.createElement(
-	            _Button2.default,
-	            { className: CLASS_ROOT + "__previous", type: 'icon',
-	              onClick: this._onPrevious },
-	            _react2.default.createElement(_LinkPrevious2.default, null)
-	          ),
+	          _react2.default.createElement(_Button2.default, { className: CLASS_ROOT + "__previous", icon: _react2.default.createElement(_LinkPrevious2.default, null),
+	            onClick: this._onPrevious }),
 	          _react2.default.createElement(
 	            _Title2.default,
 	            { className: CLASS_ROOT + "__title", responsive: false },
 	            this.state.reference.format('MMMM YYYY')
 	          ),
-	          _react2.default.createElement(
-	            _Button2.default,
-	            { className: CLASS_ROOT + "__next", type: 'icon',
-	              onClick: this._onNext },
-	            _react2.default.createElement(_LinkNext2.default, null)
-	          )
+	          _react2.default.createElement(_Button2.default, { className: CLASS_ROOT + "__next", icon: _react2.default.createElement(_LinkNext2.default, null),
+	            onClick: this._onNext })
 	        ),
 	        _react2.default.createElement(
 	          'div',
@@ -12752,11 +12195,8 @@ var Grommet =
 	          id: this.props.id, ref: 'calendarInput', name: this.props.name,
 	          value: this.props.value,
 	          onChange: this._onInputChange }),
-	        _react2.default.createElement(
-	          _Button2.default,
-	          { className: CLASS_ROOT + "__control", type: 'icon', onClick: this._onOpen },
-	          _react2.default.createElement(_Calendar2.default, null)
-	        )
+	        _react2.default.createElement(_Button2.default, { className: CLASS_ROOT + "__control", icon: _react2.default.createElement(_Calendar2.default, null),
+	          onClick: this._onOpen })
 	      );
 	    }
 	  }]);
@@ -12766,6 +12206,7 @@ var Grommet =
 
 	exports.default = Calendar;
 
+
 	Calendar.propTypes = {
 	  id: _react.PropTypes.string,
 	  name: _react.PropTypes.string,
@@ -12779,11 +12220,11 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 104 */
+/* 65 */
 /***/ function(module, exports, __webpack_require__) {
 
 	/* WEBPACK VAR INJECTION */(function(module) {//! moment.js
-	//! version : 2.11.1
+	//! version : 2.12.0
 	//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
 	//! license : MIT
 	//! momentjs.com
@@ -12807,7 +12248,7 @@ var Grommet =
 	    }
 
 	    function isArray(input) {
-	        return Object.prototype.toString.call(input) === '[object Array]';
+	        return input instanceof Array || Object.prototype.toString.call(input) === '[object Array]';
 	    }
 
 	    function isDate(input) {
@@ -13013,7 +12454,82 @@ var Grommet =
 	        return diffs + lengthDiff;
 	    }
 
-	    function Locale() {
+	    function warn(msg) {
+	        if (utils_hooks__hooks.suppressDeprecationWarnings === false &&
+	                (typeof console !==  'undefined') && console.warn) {
+	            console.warn('Deprecation warning: ' + msg);
+	        }
+	    }
+
+	    function deprecate(msg, fn) {
+	        var firstTime = true;
+
+	        return extend(function () {
+	            if (firstTime) {
+	                warn(msg + '\nArguments: ' + Array.prototype.slice.call(arguments).join(', ') + '\n' + (new Error()).stack);
+	                firstTime = false;
+	            }
+	            return fn.apply(this, arguments);
+	        }, fn);
+	    }
+
+	    var deprecations = {};
+
+	    function deprecateSimple(name, msg) {
+	        if (!deprecations[name]) {
+	            warn(msg);
+	            deprecations[name] = true;
+	        }
+	    }
+
+	    utils_hooks__hooks.suppressDeprecationWarnings = false;
+
+	    function isFunction(input) {
+	        return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';
+	    }
+
+	    function isObject(input) {
+	        return Object.prototype.toString.call(input) === '[object Object]';
+	    }
+
+	    function locale_set__set (config) {
+	        var prop, i;
+	        for (i in config) {
+	            prop = config[i];
+	            if (isFunction(prop)) {
+	                this[i] = prop;
+	            } else {
+	                this['_' + i] = prop;
+	            }
+	        }
+	        this._config = config;
+	        // Lenient ordinal parsing accepts just a number in addition to
+	        // number + (possibly) stuff coming from _ordinalParseLenient.
+	        this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + (/\d{1,2}/).source);
+	    }
+
+	    function mergeConfigs(parentConfig, childConfig) {
+	        var res = extend({}, parentConfig), prop;
+	        for (prop in childConfig) {
+	            if (hasOwnProp(childConfig, prop)) {
+	                if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {
+	                    res[prop] = {};
+	                    extend(res[prop], parentConfig[prop]);
+	                    extend(res[prop], childConfig[prop]);
+	                } else if (childConfig[prop] != null) {
+	                    res[prop] = childConfig[prop];
+	                } else {
+	                    delete res[prop];
+	                }
+	            }
+	        }
+	        return res;
+	    }
+
+	    function Locale(config) {
+	        if (config != null) {
+	            this.set(config);
+	        }
 	    }
 
 	    // internal storage for locale config files
@@ -13058,7 +12574,7 @@ var Grommet =
 	                module && module.exports) {
 	            try {
 	                oldLocale = globalLocale._abbr;
-	                __webpack_require__(106)("./" + name);
+	                __webpack_require__(67)("./" + name);
 	                // because defineLocale currently also sets the global locale, we
 	                // want to undo that for lazy loaded locales
 	                locale_locales__getSetGlobalLocale(oldLocale);
@@ -13089,11 +12605,25 @@ var Grommet =
 	        return globalLocale._abbr;
 	    }
 
-	    function defineLocale (name, values) {
-	        if (values !== null) {
-	            values.abbr = name;
-	            locales[name] = locales[name] || new Locale();
-	            locales[name].set(values);
+	    function defineLocale (name, config) {
+	        if (config !== null) {
+	            config.abbr = name;
+	            if (locales[name] != null) {
+	                deprecateSimple('defineLocaleOverride',
+	                        'use moment.updateLocale(localeName, config) to change ' +
+	                        'an existing locale. moment.defineLocale(localeName, ' +
+	                        'config) should only be used for creating a new locale');
+	                config = mergeConfigs(locales[name]._config, config);
+	            } else if (config.parentLocale != null) {
+	                if (locales[config.parentLocale] != null) {
+	                    config = mergeConfigs(locales[config.parentLocale]._config, config);
+	                } else {
+	                    // treat as if there is no base config
+	                    deprecateSimple('parentLocaleUndefined',
+	                            'specified parentLocale is not defined yet');
+	                }
+	            }
+	            locales[name] = new Locale(config);
 
 	            // backwards compat for now: also set the locale
 	            locale_locales__getSetGlobalLocale(name);
@@ -13106,6 +12636,31 @@ var Grommet =
 	        }
 	    }
 
+	    function updateLocale(name, config) {
+	        if (config != null) {
+	            var locale;
+	            if (locales[name] != null) {
+	                config = mergeConfigs(locales[name]._config, config);
+	            }
+	            locale = new Locale(config);
+	            locale.parentLocale = locales[name];
+	            locales[name] = locale;
+
+	            // backwards compat for now: also set the locale
+	            locale_locales__getSetGlobalLocale(name);
+	        } else {
+	            // pass null for config to unupdate, useful for tests
+	            if (locales[name] != null) {
+	                if (locales[name].parentLocale != null) {
+	                    locales[name] = locales[name].parentLocale;
+	                } else if (locales[name] != null) {
+	                    delete locales[name];
+	                }
+	            }
+	        }
+	        return locales[name];
+	    }
+
 	    // returns locale data
 	    function locale_locales__getLocale (key) {
 	        var locale;
@@ -13130,6 +12685,10 @@ var Grommet =
 	        return chooseLocale(key);
 	    }
 
+	    function locale_locales__listLocales() {
+	        return Object.keys(locales);
+	    }
+
 	    var aliases = {};
 
 	    function addUnitAlias (unit, shorthand) {
@@ -13158,10 +12717,6 @@ var Grommet =
 	        return normalizedInput;
 	    }
 
-	    function isFunction(input) {
-	        return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';
-	    }
-
 	    function makeGetSet (unit, keepTime) {
 	        return function (value) {
 	            if (value != null) {
@@ -13495,12 +13050,15 @@ var Grommet =
 	            return mom;
 	        }
 
-	        // TODO: Move this out of here!
 	        if (typeof value === 'string') {
-	            value = mom.localeData().monthsParse(value);
-	            // TODO: Another silent failure?
-	            if (typeof value !== 'number') {
-	                return mom;
+	            if (/^\d+$/.test(value)) {
+	                value = toInt(value);
+	            } else {
+	                value = mom.localeData().monthsParse(value);
+	                // TODO: Another silent failure?
+	                if (typeof value !== 'number') {
+	                    return mom;
+	                }
 	            }
 	        }
 
@@ -13619,36 +13177,6 @@ var Grommet =
 	        return m;
 	    }
 
-	    function warn(msg) {
-	        if (utils_hooks__hooks.suppressDeprecationWarnings === false &&
-	                (typeof console !==  'undefined') && console.warn) {
-	            console.warn('Deprecation warning: ' + msg);
-	        }
-	    }
-
-	    function deprecate(msg, fn) {
-	        var firstTime = true;
-
-	        return extend(function () {
-	            if (firstTime) {
-	                warn(msg + '\nArguments: ' + Array.prototype.slice.call(arguments).join(', ') + '\n' + (new Error()).stack);
-	                firstTime = false;
-	            }
-	            return fn.apply(this, arguments);
-	        }, fn);
-	    }
-
-	    var deprecations = {};
-
-	    function deprecateSimple(name, msg) {
-	        if (!deprecations[name]) {
-	            warn(msg);
-	            deprecations[name] = true;
-	        }
-	    }
-
-	    utils_hooks__hooks.suppressDeprecationWarnings = false;
-
 	    // iso 8601 regex
 	    // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)
 	    var extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;
@@ -14294,7 +13822,7 @@ var Grommet =
 	    }
 
 	    var prototypeMin = deprecate(
-	         'moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548',
+	         'moment().min is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548',
 	         function () {
 	             var other = local__createLocal.apply(null, arguments);
 	             if (this.isValid() && other.isValid()) {
@@ -14306,7 +13834,7 @@ var Grommet =
 	     );
 
 	    var prototypeMax = deprecate(
-	        'moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548',
+	        'moment().max is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548',
 	        function () {
 	            var other = local__createLocal.apply(null, arguments);
 	            if (this.isValid() && other.isValid()) {
@@ -14600,11 +14128,12 @@ var Grommet =
 	    }
 
 	    // ASP.NET json date format regex
-	    var aspNetRegex = /(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/;
+	    var aspNetRegex = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?\d*)?$/;
 
 	    // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html
 	    // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere
-	    var isoRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;
+	    // and further modified to allow for strings containing both week and day
+	    var isoRegex = /^(-)?P(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)W)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?$/;
 
 	    function create__createDuration (input, key) {
 	        var duration = input,
@@ -14642,11 +14171,11 @@ var Grommet =
 	            duration = {
 	                y : parseIso(match[2], sign),
 	                M : parseIso(match[3], sign),
-	                d : parseIso(match[4], sign),
-	                h : parseIso(match[5], sign),
-	                m : parseIso(match[6], sign),
-	                s : parseIso(match[7], sign),
-	                w : parseIso(match[8], sign)
+	                w : parseIso(match[4], sign),
+	                d : parseIso(match[5], sign),
+	                h : parseIso(match[6], sign),
+	                m : parseIso(match[7], sign),
+	                s : parseIso(match[8], sign)
 	            };
 	        } else if (duration == null) {// checks for null or undefined
 	            duration = {};
@@ -14710,6 +14239,14 @@ var Grommet =
 	        return res;
 	    }
 
+	    function absRound (number) {
+	        if (number < 0) {
+	            return Math.round(-1 * number) * -1;
+	        } else {
+	            return Math.round(number);
+	        }
+	    }
+
 	    // TODO: remove 'name' arg after deprecation is removed
 	    function createAdder(direction, name) {
 	        return function (val, period) {
@@ -14729,8 +14266,8 @@ var Grommet =
 
 	    function add_subtract__addSubtract (mom, duration, isAdding, updateOffset) {
 	        var milliseconds = duration._milliseconds,
-	            days = duration._days,
-	            months = duration._months;
+	            days = absRound(duration._days),
+	            months = absRound(duration._months);
 
 	        if (!mom.isValid()) {
 	            // No op
@@ -15056,8 +14593,8 @@ var Grommet =
 	    }
 
 	    function toJSON () {
-	        // JSON.stringify(new Date(NaN)) === 'null'
-	        return this.isValid() ? this.toISOString() : 'null';
+	        // new Date(NaN).toJSON() === null
+	        return this.isValid() ? this.toISOString() : null;
 	    }
 
 	    function moment_valid__isValid () {
@@ -15167,7 +14704,6 @@ var Grommet =
 	        var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),
 	            date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);
 
-	        // console.log("got", weekYear, week, weekday, "set", date.toISOString());
 	        this.year(date.getUTCFullYear());
 	        this.month(date.getUTCMonth());
 	        this.date(date.getUTCDate());
@@ -15877,21 +15413,6 @@ var Grommet =
 	        return isFunction(format) ? format(output) : format.replace(/%s/i, output);
 	    }
 
-	    function locale_set__set (config) {
-	        var prop, i;
-	        for (i in config) {
-	            prop = config[i];
-	            if (isFunction(prop)) {
-	                this[i] = prop;
-	            } else {
-	                this['_' + i] = prop;
-	            }
-	        }
-	        // Lenient ordinal parsing accepts just a number in addition to
-	        // number + (possibly) stuff coming from _ordinalParseLenient.
-	        this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + (/\d{1,2}/).source);
-	    }
-
 	    var prototype__proto = Locale.prototype;
 
 	    prototype__proto._calendar       = defaultCalendar;
@@ -16355,7 +15876,7 @@ var Grommet =
 	    // Side effect imports
 
 
-	    utils_hooks__hooks.version = '2.11.1';
+	    utils_hooks__hooks.version = '2.12.0';
 
 	    setHookCallback(local__createLocal);
 
@@ -16378,6 +15899,8 @@ var Grommet =
 	    utils_hooks__hooks.monthsShort           = lists__listMonthsShort;
 	    utils_hooks__hooks.weekdaysMin           = lists__listWeekdaysMin;
 	    utils_hooks__hooks.defineLocale          = defineLocale;
+	    utils_hooks__hooks.updateLocale          = updateLocale;
+	    utils_hooks__hooks.locales               = locale_locales__listLocales;
 	    utils_hooks__hooks.weekdaysShort         = lists__listWeekdaysShort;
 	    utils_hooks__hooks.normalizeUnits        = normalizeUnits;
 	    utils_hooks__hooks.relativeTimeThreshold = duration_humanize__getSetRelativeTimeThreshold;
@@ -16388,10 +15911,10 @@ var Grommet =
 	    return _moment;
 
 	}));
-	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(105)(module)))
+	/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(66)(module)))
 
 /***/ },
-/* 105 */
+/* 66 */
 /***/ function(module, exports) {
 
 	module.exports = function(module) {
@@ -16407,202 +15930,204 @@ var Grommet =
 
 
 /***/ },
-/* 106 */
+/* 67 */
 /***/ function(module, exports, __webpack_require__) {
 
 	var map = {
-		"./af": 107,
-		"./af.js": 107,
-		"./ar": 108,
-		"./ar-ma": 109,
-		"./ar-ma.js": 109,
-		"./ar-sa": 110,
-		"./ar-sa.js": 110,
-		"./ar-tn": 111,
-		"./ar-tn.js": 111,
-		"./ar.js": 108,
-		"./az": 112,
-		"./az.js": 112,
-		"./be": 113,
-		"./be.js": 113,
-		"./bg": 114,
-		"./bg.js": 114,
-		"./bn": 115,
-		"./bn.js": 115,
-		"./bo": 116,
-		"./bo.js": 116,
-		"./br": 117,
-		"./br.js": 117,
-		"./bs": 118,
-		"./bs.js": 118,
-		"./ca": 119,
-		"./ca.js": 119,
-		"./cs": 120,
-		"./cs.js": 120,
-		"./cv": 121,
-		"./cv.js": 121,
-		"./cy": 122,
-		"./cy.js": 122,
-		"./da": 123,
-		"./da.js": 123,
-		"./de": 124,
-		"./de-at": 125,
-		"./de-at.js": 125,
-		"./de.js": 124,
-		"./dv": 126,
-		"./dv.js": 126,
-		"./el": 127,
-		"./el.js": 127,
-		"./en-au": 128,
-		"./en-au.js": 128,
-		"./en-ca": 129,
-		"./en-ca.js": 129,
-		"./en-gb": 130,
-		"./en-gb.js": 130,
-		"./en-ie": 131,
-		"./en-ie.js": 131,
-		"./en-nz": 132,
-		"./en-nz.js": 132,
-		"./eo": 133,
-		"./eo.js": 133,
-		"./es": 134,
-		"./es.js": 134,
-		"./et": 135,
-		"./et.js": 135,
-		"./eu": 136,
-		"./eu.js": 136,
-		"./fa": 137,
-		"./fa.js": 137,
-		"./fi": 138,
-		"./fi.js": 138,
-		"./fo": 139,
-		"./fo.js": 139,
-		"./fr": 140,
-		"./fr-ca": 141,
-		"./fr-ca.js": 141,
-		"./fr-ch": 142,
-		"./fr-ch.js": 142,
-		"./fr.js": 140,
-		"./fy": 143,
-		"./fy.js": 143,
-		"./gd": 144,
-		"./gd.js": 144,
-		"./gl": 145,
-		"./gl.js": 145,
-		"./he": 146,
-		"./he.js": 146,
-		"./hi": 147,
-		"./hi.js": 147,
-		"./hr": 148,
-		"./hr.js": 148,
-		"./hu": 149,
-		"./hu.js": 149,
-		"./hy-am": 150,
-		"./hy-am.js": 150,
-		"./id": 151,
-		"./id.js": 151,
-		"./is": 152,
-		"./is.js": 152,
-		"./it": 153,
-		"./it.js": 153,
-		"./ja": 154,
-		"./ja.js": 154,
-		"./jv": 155,
-		"./jv.js": 155,
-		"./ka": 156,
-		"./ka.js": 156,
-		"./kk": 157,
-		"./kk.js": 157,
-		"./km": 158,
-		"./km.js": 158,
-		"./ko": 159,
-		"./ko.js": 159,
-		"./lb": 160,
-		"./lb.js": 160,
-		"./lo": 161,
-		"./lo.js": 161,
-		"./lt": 162,
-		"./lt.js": 162,
-		"./lv": 163,
-		"./lv.js": 163,
-		"./me": 164,
-		"./me.js": 164,
-		"./mk": 165,
-		"./mk.js": 165,
-		"./ml": 166,
-		"./ml.js": 166,
-		"./mr": 167,
-		"./mr.js": 167,
-		"./ms": 168,
-		"./ms-my": 169,
-		"./ms-my.js": 169,
-		"./ms.js": 168,
-		"./my": 170,
-		"./my.js": 170,
-		"./nb": 171,
-		"./nb.js": 171,
-		"./ne": 172,
-		"./ne.js": 172,
-		"./nl": 173,
-		"./nl.js": 173,
-		"./nn": 174,
-		"./nn.js": 174,
-		"./pl": 175,
-		"./pl.js": 175,
-		"./pt": 176,
-		"./pt-br": 177,
-		"./pt-br.js": 177,
-		"./pt.js": 176,
-		"./ro": 178,
-		"./ro.js": 178,
-		"./ru": 179,
-		"./ru.js": 179,
-		"./se": 180,
-		"./se.js": 180,
-		"./si": 181,
-		"./si.js": 181,
-		"./sk": 182,
-		"./sk.js": 182,
-		"./sl": 183,
-		"./sl.js": 183,
-		"./sq": 184,
-		"./sq.js": 184,
-		"./sr": 185,
-		"./sr-cyrl": 186,
-		"./sr-cyrl.js": 186,
-		"./sr.js": 185,
-		"./sv": 187,
-		"./sv.js": 187,
-		"./sw": 188,
-		"./sw.js": 188,
-		"./ta": 189,
-		"./ta.js": 189,
-		"./te": 190,
-		"./te.js": 190,
-		"./th": 191,
-		"./th.js": 191,
-		"./tl-ph": 192,
-		"./tl-ph.js": 192,
-		"./tlh": 193,
-		"./tlh.js": 193,
-		"./tr": 194,
-		"./tr.js": 194,
-		"./tzl": 195,
-		"./tzl.js": 195,
-		"./tzm": 196,
-		"./tzm-latn": 197,
-		"./tzm-latn.js": 197,
-		"./tzm.js": 196,
-		"./uk": 198,
-		"./uk.js": 198,
-		"./uz": 199,
-		"./uz.js": 199,
-		"./vi": 200,
-		"./vi.js": 200,
-		"./zh-cn": 201,
-		"./zh-cn.js": 201,
-		"./zh-tw": 202,
-		"./zh-tw.js": 202
+		"./af": 68,
+		"./af.js": 68,
+		"./ar": 69,
+		"./ar-ma": 70,
+		"./ar-ma.js": 70,
+		"./ar-sa": 71,
+		"./ar-sa.js": 71,
+		"./ar-tn": 72,
+		"./ar-tn.js": 72,
+		"./ar.js": 69,
+		"./az": 73,
+		"./az.js": 73,
+		"./be": 74,
+		"./be.js": 74,
+		"./bg": 75,
+		"./bg.js": 75,
+		"./bn": 76,
+		"./bn.js": 76,
+		"./bo": 77,
+		"./bo.js": 77,
+		"./br": 78,
+		"./br.js": 78,
+		"./bs": 79,
+		"./bs.js": 79,
+		"./ca": 80,
+		"./ca.js": 80,
+		"./cs": 81,
+		"./cs.js": 81,
+		"./cv": 82,
+		"./cv.js": 82,
+		"./cy": 83,
+		"./cy.js": 83,
+		"./da": 84,
+		"./da.js": 84,
+		"./de": 85,
+		"./de-at": 86,
+		"./de-at.js": 86,
+		"./de.js": 85,
+		"./dv": 87,
+		"./dv.js": 87,
+		"./el": 88,
+		"./el.js": 88,
+		"./en-au": 89,
+		"./en-au.js": 89,
+		"./en-ca": 90,
+		"./en-ca.js": 90,
+		"./en-gb": 91,
+		"./en-gb.js": 91,
+		"./en-ie": 92,
+		"./en-ie.js": 92,
+		"./en-nz": 93,
+		"./en-nz.js": 93,
+		"./eo": 94,
+		"./eo.js": 94,
+		"./es": 95,
+		"./es.js": 95,
+		"./et": 96,
+		"./et.js": 96,
+		"./eu": 97,
+		"./eu.js": 97,
+		"./fa": 98,
+		"./fa.js": 98,
+		"./fi": 99,
+		"./fi.js": 99,
+		"./fo": 100,
+		"./fo.js": 100,
+		"./fr": 101,
+		"./fr-ca": 102,
+		"./fr-ca.js": 102,
+		"./fr-ch": 103,
+		"./fr-ch.js": 103,
+		"./fr.js": 101,
+		"./fy": 104,
+		"./fy.js": 104,
+		"./gd": 105,
+		"./gd.js": 105,
+		"./gl": 106,
+		"./gl.js": 106,
+		"./he": 107,
+		"./he.js": 107,
+		"./hi": 108,
+		"./hi.js": 108,
+		"./hr": 109,
+		"./hr.js": 109,
+		"./hu": 110,
+		"./hu.js": 110,
+		"./hy-am": 111,
+		"./hy-am.js": 111,
+		"./id": 112,
+		"./id.js": 112,
+		"./is": 113,
+		"./is.js": 113,
+		"./it": 114,
+		"./it.js": 114,
+		"./ja": 115,
+		"./ja.js": 115,
+		"./jv": 116,
+		"./jv.js": 116,
+		"./ka": 117,
+		"./ka.js": 117,
+		"./kk": 118,
+		"./kk.js": 118,
+		"./km": 119,
+		"./km.js": 119,
+		"./ko": 120,
+		"./ko.js": 120,
+		"./lb": 121,
+		"./lb.js": 121,
+		"./lo": 122,
+		"./lo.js": 122,
+		"./lt": 123,
+		"./lt.js": 123,
+		"./lv": 124,
+		"./lv.js": 124,
+		"./me": 125,
+		"./me.js": 125,
+		"./mk": 126,
+		"./mk.js": 126,
+		"./ml": 127,
+		"./ml.js": 127,
+		"./mr": 128,
+		"./mr.js": 128,
+		"./ms": 129,
+		"./ms-my": 130,
+		"./ms-my.js": 130,
+		"./ms.js": 129,
+		"./my": 131,
+		"./my.js": 131,
+		"./nb": 132,
+		"./nb.js": 132,
+		"./ne": 133,
+		"./ne.js": 133,
+		"./nl": 134,
+		"./nl.js": 134,
+		"./nn": 135,
+		"./nn.js": 135,
+		"./pa-in": 136,
+		"./pa-in.js": 136,
+		"./pl": 137,
+		"./pl.js": 137,
+		"./pt": 138,
+		"./pt-br": 139,
+		"./pt-br.js": 139,
+		"./pt.js": 138,
+		"./ro": 140,
+		"./ro.js": 140,
+		"./ru": 141,
+		"./ru.js": 141,
+		"./se": 142,
+		"./se.js": 142,
+		"./si": 143,
+		"./si.js": 143,
+		"./sk": 144,
+		"./sk.js": 144,
+		"./sl": 145,
+		"./sl.js": 145,
+		"./sq": 146,
+		"./sq.js": 146,
+		"./sr": 147,
+		"./sr-cyrl": 148,
+		"./sr-cyrl.js": 148,
+		"./sr.js": 147,
+		"./sv": 149,
+		"./sv.js": 149,
+		"./sw": 150,
+		"./sw.js": 150,
+		"./ta": 151,
+		"./ta.js": 151,
+		"./te": 152,
+		"./te.js": 152,
+		"./th": 153,
+		"./th.js": 153,
+		"./tl-ph": 154,
+		"./tl-ph.js": 154,
+		"./tlh": 155,
+		"./tlh.js": 155,
+		"./tr": 156,
+		"./tr.js": 156,
+		"./tzl": 157,
+		"./tzl.js": 157,
+		"./tzm": 158,
+		"./tzm-latn": 159,
+		"./tzm-latn.js": 159,
+		"./tzm.js": 158,
+		"./uk": 160,
+		"./uk.js": 160,
+		"./uz": 161,
+		"./uz.js": 161,
+		"./vi": 162,
+		"./vi.js": 162,
+		"./zh-cn": 163,
+		"./zh-cn.js": 163,
+		"./zh-tw": 164,
+		"./zh-tw.js": 164
 	};
 	function webpackContext(req) {
 		return __webpack_require__(webpackContextResolve(req));
@@ -16615,11 +16140,11 @@ var Grommet =
 	};
 	webpackContext.resolve = webpackContextResolve;
 	module.exports = webpackContext;
-	webpackContext.id = 106;
+	webpackContext.id = 67;
 
 
 /***/ },
-/* 107 */
+/* 68 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -16627,7 +16152,7 @@ var Grommet =
 	//! author : Werner Mollentze : https://github.com/wernerm
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -16696,7 +16221,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 108 */
+/* 69 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -16706,7 +16231,7 @@ var Grommet =
 	//! Native plural forms: forabi https://github.com/forabi
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -16836,7 +16361,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 109 */
+/* 70 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -16845,7 +16370,7 @@ var Grommet =
 	//! author : Abdel Said : https://github.com/abdelsaid
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -16899,7 +16424,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 110 */
+/* 71 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -16907,7 +16432,7 @@ var Grommet =
 	//! author : Suhail Alkowaileet : https://github.com/xsoh
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17006,14 +16531,14 @@ var Grommet =
 	}));
 
 /***/ },
-/* 111 */
+/* 72 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
 	//! locale  : Tunisian Arabic (ar-tn)
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17067,7 +16592,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 112 */
+/* 73 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17075,7 +16600,7 @@ var Grommet =
 	//! author : topchiyev : https://github.com/topchiyev
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17175,7 +16700,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 113 */
+/* 74 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17185,7 +16710,7 @@ var Grommet =
 	//! Author : Menelion Elensúle : https://github.com/Oire
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17313,7 +16838,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 114 */
+/* 75 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17321,7 +16846,7 @@ var Grommet =
 	//! author : Krasen Borisov : https://github.com/kraz
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17407,7 +16932,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 115 */
+/* 76 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17415,7 +16940,7 @@ var Grommet =
 	//! author : Kaushik Gandhi : https://github.com/kaushikgandhi
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17494,12 +17019,18 @@ var Grommet =
 	            });
 	        },
 	        meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,
-	        isPM: function (input) {
-	            return /^(দুপুর|বিকাল|রাত)$/.test(input);
+	        meridiemHour : function (hour, meridiem) {
+	            if (hour === 12) {
+	                hour = 0;
+	            }
+	            if ((meridiem === 'রাত' && hour >= 4) ||
+	                    (meridiem === 'দুপুর' && hour < 5) ||
+	                    meridiem === 'বিকাল') {
+	                return hour + 12;
+	            } else {
+	                return hour;
+	            }
 	        },
-	        //Bengali is a vast language its spoken
-	        //in different forms in various parts of the world.
-	        //I have just generalized with most common one used
 	        meridiem : function (hour, minute, isLower) {
 	            if (hour < 4) {
 	                return 'রাত';
@@ -17524,7 +17055,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 116 */
+/* 77 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17532,7 +17063,7 @@ var Grommet =
 	//! author : Thupten N. Chakrishar : https://github.com/vajradog
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17611,8 +17142,17 @@ var Grommet =
 	            });
 	        },
 	        meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
-	        isPM: function (input) {
-	            return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input);
+	        meridiemHour : function (hour, meridiem) {
+	            if (hour === 12) {
+	                hour = 0;
+	            }
+	            if ((meridiem === 'མཚན་མོ' && hour >= 4) ||
+	                    (meridiem === 'ཉིན་གུང' && hour < 5) ||
+	                    meridiem === 'དགོང་དག') {
+	                return hour + 12;
+	            } else {
+	                return hour;
+	            }
 	        },
 	        meridiem : function (hour, minute, isLower) {
 	            if (hour < 4) {
@@ -17638,7 +17178,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 117 */
+/* 78 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17646,7 +17186,7 @@ var Grommet =
 	//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17749,7 +17289,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 118 */
+/* 79 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17758,7 +17298,7 @@ var Grommet =
 	//! based on (hr) translation by Bojan Marković
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17894,7 +17434,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 119 */
+/* 80 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17902,7 +17442,7 @@ var Grommet =
 	//! author : Juan G. Hurtado : https://github.com/juanghurtado
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -17977,7 +17517,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 120 */
+/* 81 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -17985,7 +17525,7 @@ var Grommet =
 	//! author : petrbela : https://github.com/petrbela
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18152,7 +17692,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 121 */
+/* 82 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18160,7 +17700,7 @@ var Grommet =
 	//! author : Anatoly Mironov : https://github.com/mirontoli
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18219,7 +17759,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 122 */
+/* 83 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18227,7 +17767,7 @@ var Grommet =
 	//! author : Robert Allen
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18302,7 +17842,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 123 */
+/* 84 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18310,7 +17850,7 @@ var Grommet =
 	//! author : Ulrik Nielsen : https://github.com/mrbase
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18366,7 +17906,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 124 */
+/* 85 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18376,7 +17916,7 @@ var Grommet =
 	//! author : Mikolaj Dadela : https://github.com/mik01aj
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18446,7 +17986,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 125 */
+/* 86 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18457,7 +17997,7 @@ var Grommet =
 	//! author : Mikolaj Dadela : https://github.com/mik01aj
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18527,7 +18067,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 126 */
+/* 87 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18535,7 +18075,7 @@ var Grommet =
 	//! author : Jawish Hameed : https://github.com/jawish
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18581,7 +18121,7 @@ var Grommet =
 	        },
 	        meridiemParse: /މކ|މފ/,
 	        isPM : function (input) {
-	            return '' === input;
+	            return 'މފ' === input;
 	        },
 	        meridiem : function (hour, minute, isLower) {
 	            if (hour < 12) {
@@ -18630,7 +18170,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 127 */
+/* 88 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18638,7 +18178,7 @@ var Grommet =
 	//! author : Aggelos Karalias : https://github.com/mehiel
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18732,14 +18272,14 @@ var Grommet =
 	}));
 
 /***/ },
-/* 128 */
+/* 89 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
 	//! locale : australian english (en-au)
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18802,7 +18342,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 129 */
+/* 90 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18810,7 +18350,7 @@ var Grommet =
 	//! author : Jonathan Abourbih : https://github.com/jonbca
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18826,9 +18366,9 @@ var Grommet =
 	            LT : 'h:mm A',
 	            LTS : 'h:mm:ss A',
 	            L : 'YYYY-MM-DD',
-	            LL : 'D MMMM, YYYY',
-	            LLL : 'D MMMM, YYYY h:mm A',
-	            LLLL : 'dddd, D MMMM, YYYY h:mm A'
+	            LL : 'MMMM D, YYYY',
+	            LLL : 'MMMM D, YYYY h:mm A',
+	            LLLL : 'dddd, MMMM D, YYYY h:mm A'
 	        },
 	        calendar : {
 	            sameDay : '[Today at] LT',
@@ -18869,7 +18409,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 130 */
+/* 91 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18877,7 +18417,7 @@ var Grommet =
 	//! author : Chris Gedrim : https://github.com/chrisgedrim
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -18940,7 +18480,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 131 */
+/* 92 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -18948,7 +18488,7 @@ var Grommet =
 	//! author : Chris Cartlidge : https://github.com/chriscartlidge
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19011,14 +18551,14 @@ var Grommet =
 	}));
 
 /***/ },
-/* 132 */
+/* 93 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
 	//! locale : New Zealand english (en-nz)
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19081,7 +18621,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 133 */
+/* 94 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19091,7 +18631,7 @@ var Grommet =
 	//!          Se ne, bonvolu korekti kaj avizi min por ke mi povas lerni!
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19158,7 +18698,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 134 */
+/* 95 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19166,7 +18706,7 @@ var Grommet =
 	//! author : Julio Napurí : https://github.com/julionc
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19241,7 +18781,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 135 */
+/* 96 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19250,7 +18790,7 @@ var Grommet =
 	//! improvements : Illimar Tambek : https://github.com/ragulka
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19325,7 +18865,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 136 */
+/* 97 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19333,7 +18873,7 @@ var Grommet =
 	//! author : Eneko Illarramendi : https://github.com/eillarra
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19393,7 +18933,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 137 */
+/* 98 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19401,7 +18941,7 @@ var Grommet =
 	//! author : Ebrahim Byagowi : https://github.com/ebraminio
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19502,7 +19042,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 138 */
+/* 99 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19510,7 +19050,7 @@ var Grommet =
 	//! author : Tarmo Aidantausta : https://github.com/bleadof
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19613,7 +19153,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 139 */
+/* 100 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19621,7 +19161,7 @@ var Grommet =
 	//! author : Ragnar Johannesen : https://github.com/ragnar123
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19677,7 +19217,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 140 */
+/* 101 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19685,7 +19225,7 @@ var Grommet =
 	//! author : John Fischer : https://github.com/jfroffice
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19743,7 +19283,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 141 */
+/* 102 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19751,7 +19291,7 @@ var Grommet =
 	//! author : Jonathan Abourbih : https://github.com/jonbca
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19805,7 +19345,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 142 */
+/* 103 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19813,7 +19353,7 @@ var Grommet =
 	//! author : Gaspard Bucher : https://github.com/gaspard
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19871,7 +19411,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 143 */
+/* 104 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19879,7 +19419,7 @@ var Grommet =
 	//! author : Robin van der Vliet : https://github.com/robin0van0der0v
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -19946,7 +19486,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 144 */
+/* 105 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -19954,7 +19494,7 @@ var Grommet =
 	//! author : Jon Ashdown : https://github.com/jonashdown
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20026,7 +19566,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 145 */
+/* 106 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20034,7 +19574,7 @@ var Grommet =
 	//! author : Juan G. Hurtado : https://github.com/juanghurtado
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20105,7 +19645,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 146 */
+/* 107 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20115,7 +19655,7 @@ var Grommet =
 	//! author : Tal Ater : https://github.com/TalAter
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20183,6 +19723,23 @@ var Grommet =
 	                }
 	                return number + ' שנים';
 	            }
+	        },
+	        meridiemParse: /אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,
+	        isPM : function (input) {
+	            return /^(אחה"צ|אחרי הצהריים|בערב)$/.test(input);
+	        },
+	        meridiem : function (hour, minute, isLower) {
+	            if (hour < 5) {
+	                return 'לפנות בוקר';
+	            } else if (hour < 10) {
+	                return 'בבוקר';
+	            } else if (hour < 12) {
+	                return isLower ? 'לפנה"צ' : 'לפני הצהריים';
+	            } else if (hour < 18) {
+	                return isLower ? 'אחה"צ' : 'אחרי הצהריים';
+	            } else {
+	                return 'בערב';
+	            }
 	        }
 	    });
 
@@ -20191,7 +19748,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 147 */
+/* 108 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20199,7 +19756,7 @@ var Grommet =
 	//! author : Mayank Singhal : https://github.com/mayanksinghal
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20318,7 +19875,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 148 */
+/* 109 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20326,7 +19883,7 @@ var Grommet =
 	//! author : Bojan Marković : https://github.com/bmarkovic
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20465,7 +20022,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 149 */
+/* 110 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20473,7 +20030,7 @@ var Grommet =
 	//! author : Adam Brunner : https://github.com/adambrunner
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20578,7 +20135,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 150 */
+/* 111 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20586,7 +20143,7 @@ var Grommet =
 	//! author : Armendarabyan : https://github.com/armendarabyan
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20677,7 +20234,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 151 */
+/* 112 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20686,7 +20243,7 @@ var Grommet =
 	//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20764,7 +20321,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 152 */
+/* 113 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20772,7 +20329,7 @@ var Grommet =
 	//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20854,7 +20411,7 @@ var Grommet =
 	        longDateFormat : {
 	            LT : 'H:mm',
 	            LTS : 'H:mm:ss',
-	            L : 'DD/MM/YYYY',
+	            L : 'DD.MM.YYYY',
 	            LL : 'D. MMMM YYYY',
 	            LLL : 'D. MMMM YYYY [kl.] H:mm',
 	            LLLL : 'dddd, D. MMMM YYYY [kl.] H:mm'
@@ -20895,7 +20452,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 153 */
+/* 114 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20904,7 +20461,7 @@ var Grommet =
 	//! author: Mattia Larentis: https://github.com/nostalgiaz
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -20969,7 +20526,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 154 */
+/* 115 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -20977,7 +20534,7 @@ var Grommet =
 	//! author : LI Long : https://github.com/baryon
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21016,6 +20573,17 @@ var Grommet =
 	            lastWeek : '[前週]dddd LT',
 	            sameElse : 'L'
 	        },
+	        ordinalParse : /\d{1,2}日/,
+	        ordinal : function (number, period) {
+	            switch (period) {
+	            case 'd':
+	            case 'D':
+	            case 'DDD':
+	                return number + '日';
+	            default:
+	                return number;
+	            }
+	        },
 	        relativeTime : {
 	            future : '%s後',
 	            past : '%s前',
@@ -21038,7 +20606,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 155 */
+/* 116 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21047,7 +20615,7 @@ var Grommet =
 	//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21125,7 +20693,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 156 */
+/* 117 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21133,7 +20701,7 @@ var Grommet =
 	//! author : Irakli Janiashvili : https://github.com/irakli-janiashvili
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21218,7 +20786,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 157 */
+/* 118 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21226,7 +20794,7 @@ var Grommet =
 	//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21309,7 +20877,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 158 */
+/* 119 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21317,7 +20885,7 @@ var Grommet =
 	//! author : Kruy Vanna : https://github.com/kruyvanna
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21371,7 +20939,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 159 */
+/* 120 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21383,7 +20951,7 @@ var Grommet =
 	//! - Jeeeyul Lee 
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21443,7 +21011,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 160 */
+/* 121 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21451,7 +21019,7 @@ var Grommet =
 	//! author : mweimerskirch : https://github.com/mweimerskirch, David Raison : https://github.com/kwisatz
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21581,7 +21149,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 161 */
+/* 122 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21589,7 +21157,7 @@ var Grommet =
 	//! author : Ryan Hart : https://github.com/ryanhart2
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21654,7 +21222,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 162 */
+/* 123 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21662,7 +21230,7 @@ var Grommet =
 	//! author : Mindaugas Mozūras : https://github.com/mmozuras
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21773,7 +21341,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 163 */
+/* 124 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21782,7 +21350,7 @@ var Grommet =
 	//! author : Jānis Elmeris : https://github.com/JanisE
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21873,7 +21441,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 164 */
+/* 125 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21881,7 +21449,7 @@ var Grommet =
 	//! author : Miodrag Nikač  : https://github.com/miodragnikac
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -21986,7 +21554,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 165 */
+/* 126 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -21994,7 +21562,7 @@ var Grommet =
 	//! author : Borislav Mickov : https://github.com/B0k0
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22080,7 +21648,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 166 */
+/* 127 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22088,7 +21656,7 @@ var Grommet =
 	//! author : Floyd Pink : https://github.com/floydpink
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22132,8 +21700,17 @@ var Grommet =
 	            yy : '%d വർഷം'
 	        },
 	        meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,
-	        isPM : function (input) {
-	            return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input);
+	        meridiemHour : function (hour, meridiem) {
+	            if (hour === 12) {
+	                hour = 0;
+	            }
+	            if ((meridiem === 'രാത്രി' && hour >= 4) ||
+	                    meridiem === 'ഉച്ച കഴിഞ്ഞ്' ||
+	                    meridiem === 'വൈകുന്നേരം') {
+	                return hour + 12;
+	            } else {
+	                return hour;
+	            }
 	        },
 	        meridiem : function (hour, minute, isLower) {
 	            if (hour < 4) {
@@ -22155,7 +21732,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 167 */
+/* 128 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22164,7 +21741,7 @@ var Grommet =
 	//! author : Vivek Athalye : https://github.com/vnathalye
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22317,7 +21894,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 168 */
+/* 129 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22325,7 +21902,7 @@ var Grommet =
 	//! author : Weldan Jamili : https://github.com/weldan
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22403,7 +21980,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 169 */
+/* 130 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22411,7 +21988,7 @@ var Grommet =
 	//! author : Weldan Jamili : https://github.com/weldan
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22489,7 +22066,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 170 */
+/* 131 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22497,7 +22074,7 @@ var Grommet =
 	//! author : Squar team, mysquar.com
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22586,7 +22163,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 171 */
+/* 132 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22595,7 +22172,7 @@ var Grommet =
 	//!           Sigurd Gartmann : https://github.com/sigurdga
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22651,7 +22228,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 172 */
+/* 133 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22659,7 +22236,7 @@ var Grommet =
 	//! author : suvash : https://github.com/suvash
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22776,7 +22353,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 173 */
+/* 134 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22784,7 +22361,7 @@ var Grommet =
 	//! author : Joris Röling : https://github.com/jjupiter
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22851,7 +22428,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 174 */
+/* 135 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22859,7 +22436,7 @@ var Grommet =
 	//! author : https://github.com/mechuwind
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -22915,7 +22492,135 @@ var Grommet =
 	}));
 
 /***/ },
-/* 175 */
+/* 136 */
+/***/ function(module, exports, __webpack_require__) {
+
+	//! moment.js locale configuration
+	//! locale : punjabi india (pa-in)
+	//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit
+
+	;(function (global, factory) {
+	    true ? factory(__webpack_require__(65)) :
+	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
+	   factory(global.moment)
+	}(this, function (moment) { 'use strict';
+
+
+	    var symbolMap = {
+	        '1': '੧',
+	        '2': '੨',
+	        '3': '੩',
+	        '4': '੪',
+	        '5': '੫',
+	        '6': '੬',
+	        '7': '੭',
+	        '8': '੮',
+	        '9': '੯',
+	        '0': '੦'
+	    },
+	    numberMap = {
+	        '੧': '1',
+	        '੨': '2',
+	        '੩': '3',
+	        '੪': '4',
+	        '੫': '5',
+	        '੬': '6',
+	        '੭': '7',
+	        '੮': '8',
+	        '੯': '9',
+	        '੦': '0'
+	    };
+
+	    var pa_in = moment.defineLocale('pa-in', {
+	        // There are months name as per Nanakshahi Calender but they are not used as rigidly in modern Punjabi.
+	        months : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'),
+	        monthsShort : 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split('_'),
+	        weekdays : 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split('_'),
+	        weekdaysShort : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),
+	        weekdaysMin : 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'),
+	        longDateFormat : {
+	            LT : 'A h:mm ਵਜੇ',
+	            LTS : 'A h:mm:ss ਵਜੇ',
+	            L : 'DD/MM/YYYY',
+	            LL : 'D MMMM YYYY',
+	            LLL : 'D MMMM YYYY, A h:mm ਵਜੇ',
+	            LLLL : 'dddd, D MMMM YYYY, A h:mm ਵਜੇ'
+	        },
+	        calendar : {
+	            sameDay : '[ਅਜ] LT',
+	            nextDay : '[ਕਲ] LT',
+	            nextWeek : 'dddd, LT',
+	            lastDay : '[ਕਲ] LT',
+	            lastWeek : '[ਪਿਛਲੇ] dddd, LT',
+	            sameElse : 'L'
+	        },
+	        relativeTime : {
+	            future : '%s ਵਿੱਚ',
+	            past : '%s ਪਿਛਲੇ',
+	            s : 'ਕੁਝ ਸਕਿੰਟ',
+	            m : 'ਇਕ ਮਿੰਟ',
+	            mm : '%d ਮਿੰਟ',
+	            h : 'ਇੱਕ ਘੰਟਾ',
+	            hh : '%d ਘੰਟੇ',
+	            d : 'ਇੱਕ ਦਿਨ',
+	            dd : '%d ਦਿਨ',
+	            M : 'ਇੱਕ ਮਹੀਨਾ',
+	            MM : '%d ਮਹੀਨੇ',
+	            y : 'ਇੱਕ ਸਾਲ',
+	            yy : '%d ਸਾਲ'
+	        },
+	        preparse: function (string) {
+	            return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) {
+	                return numberMap[match];
+	            });
+	        },
+	        postformat: function (string) {
+	            return string.replace(/\d/g, function (match) {
+	                return symbolMap[match];
+	            });
+	        },
+	        // Punjabi notation for meridiems are quite fuzzy in practice. While there exists
+	        // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi.
+	        meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,
+	        meridiemHour : function (hour, meridiem) {
+	            if (hour === 12) {
+	                hour = 0;
+	            }
+	            if (meridiem === 'ਰਾਤ') {
+	                return hour < 4 ? hour : hour + 12;
+	            } else if (meridiem === 'ਸਵੇਰ') {
+	                return hour;
+	            } else if (meridiem === 'ਦੁਪਹਿਰ') {
+	                return hour >= 10 ? hour : hour + 12;
+	            } else if (meridiem === 'ਸ਼ਾਮ') {
+	                return hour + 12;
+	            }
+	        },
+	        meridiem : function (hour, minute, isLower) {
+	            if (hour < 4) {
+	                return 'ਰਾਤ';
+	            } else if (hour < 10) {
+	                return 'ਸਵੇਰ';
+	            } else if (hour < 17) {
+	                return 'ਦੁਪਹਿਰ';
+	            } else if (hour < 20) {
+	                return 'ਸ਼ਾਮ';
+	            } else {
+	                return 'ਰਾਤ';
+	            }
+	        },
+	        week : {
+	            dow : 0, // Sunday is the first day of the week.
+	            doy : 6  // The week that contains Jan 1st is the first week of the year.
+	        }
+	    });
+
+	    return pa_in;
+
+	}));
+
+/***/ },
+/* 137 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -22923,7 +22628,7 @@ var Grommet =
 	//! author : Rafal Hirsz : https://github.com/evoL
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23024,7 +22729,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 176 */
+/* 138 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23032,7 +22737,7 @@ var Grommet =
 	//! author : Jefferson : https://github.com/jalex79
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23092,7 +22797,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 177 */
+/* 139 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23100,7 +22805,7 @@ var Grommet =
 	//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23109,7 +22814,7 @@ var Grommet =
 	    var pt_br = moment.defineLocale('pt-br', {
 	        months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),
 	        monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),
-	        weekdays : 'Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado'.split('_'),
+	        weekdays : 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'),
 	        weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),
 	        weekdaysMin : 'Dom_2ª_3ª_4ª_5ª_6ª_Sáb'.split('_'),
 	        longDateFormat : {
@@ -23156,7 +22861,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 178 */
+/* 140 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23165,7 +22870,7 @@ var Grommet =
 	//! author : Valentin Agachi : https://github.com/avaly
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23234,16 +22939,17 @@ var Grommet =
 	}));
 
 /***/ },
-/* 179 */
+/* 141 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
 	//! locale : russian (ru)
 	//! author : Viktorminator : https://github.com/Viktorminator
 	//! Author : Menelion Elensúle : https://github.com/Oire
+	//! author : Коренберг Марк : https://github.com/socketpair
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23270,22 +22976,23 @@ var Grommet =
 	    }
 	    var monthsParse = [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[й|я]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i];
 
+	    // http://new.gramota.ru/spravka/rules/139-prop : § 103
 	    var ru = moment.defineLocale('ru', {
 	        months : {
-	            format: 'Января_Февраля_Марта_Апреля_Мая_Июня_Июля_Августа_Сентября_Октября_Ноября_Декабря'.split('_'),
-	            standalone: 'Январь_Февраль_Март_Апрель_Май_Июнь_Июль_Август_Сентябрь_Октябрь_Ноябрь_Декабрь'.split('_')
+	            format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_'),
+	            standalone: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_')
 	        },
 	        monthsShort : {
 	            format: 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_'),
 	            standalone: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_')
 	        },
 	        weekdays : {
-	            standalone: 'Воскресенье_Понедельник_Вторник_Среда_Четверг_Пятница_Суббота'.split('_'),
-	            format: 'Воскресенье_Понедельник_Вторник_Среду_Четверг_Пятницу_Субботу'.split('_'),
+	            standalone: 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split('_'),
+	            format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_'),
 	            isFormat: /\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/
 	        },
-	        weekdaysShort : 'Вс_Пн_Вт_Ср_Чт_Пт_Сб'.split('_'),
-	        weekdaysMin : 'Вс_Пн_Вт_Ср_Чт_Пт_Сб'.split('_'),
+	        weekdaysShort : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
+	        weekdaysMin : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
 	        monthsParse : monthsParse,
 	        longMonthsParse : monthsParse,
 	        shortMonthsParse : monthsParse,
@@ -23404,7 +23111,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 180 */
+/* 142 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23412,7 +23119,7 @@ var Grommet =
 	//! authors : Bård Rolstad Henriksen : https://github.com/karamell
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23469,7 +23176,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 181 */
+/* 143 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23477,7 +23184,7 @@ var Grommet =
 	//! author : Sampath Sitinamaluwa : https://github.com/sampathsris
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23525,6 +23232,10 @@ var Grommet =
 	        ordinal : function (number) {
 	            return number + ' වැනි';
 	        },
+	        meridiemParse : /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,
+	        isPM : function (input) {
+	            return input === 'ප.ව.' || input === 'පස් වරු';
+	        },
 	        meridiem : function (hours, minutes, isLower) {
 	            if (hours > 11) {
 	                return isLower ? 'ප.ව.' : 'පස් වරු';
@@ -23539,7 +23250,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 182 */
+/* 144 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23548,7 +23259,7 @@ var Grommet =
 	//! based on work of petrbela : https://github.com/petrbela
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23693,7 +23404,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 183 */
+/* 145 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23701,7 +23412,7 @@ var Grommet =
 	//! author : Robert Sedovšek : https://github.com/sedovsek
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23857,7 +23568,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 184 */
+/* 146 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23867,7 +23578,7 @@ var Grommet =
 	//! author : Oerd Cukalla : https://github.com/oerd (fixes)
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -23930,7 +23641,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 185 */
+/* 147 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -23938,7 +23649,7 @@ var Grommet =
 	//! author : Milan Janačković : https://github.com/milan-j
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24042,7 +23753,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 186 */
+/* 148 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24050,7 +23761,7 @@ var Grommet =
 	//! author : Milan Janačković : https://github.com/milan-j
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24154,7 +23865,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 187 */
+/* 149 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24162,7 +23873,7 @@ var Grommet =
 	//! author : Jens Alm : https://github.com/ulmus
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24225,7 +23936,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 188 */
+/* 150 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24233,7 +23944,7 @@ var Grommet =
 	//! author : Fahad Kassim : https://github.com/fadsel
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24287,7 +23998,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 189 */
+/* 151 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24295,7 +24006,7 @@ var Grommet =
 	//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24420,7 +24131,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 190 */
+/* 152 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24428,7 +24139,7 @@ var Grommet =
 	//! author : Krishna Chaitanya Thota : https://github.com/kcthota
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24512,7 +24223,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 191 */
+/* 153 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24520,7 +24231,7 @@ var Grommet =
 	//! author : Kridsada Thanabulpong : https://github.com/sirn
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24581,7 +24292,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 192 */
+/* 154 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24589,7 +24300,7 @@ var Grommet =
 	//! author : Dan Hagman
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24647,7 +24358,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 193 */
+/* 155 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24655,7 +24366,7 @@ var Grommet =
 	//! author : Dominika Kruk : https://github.com/amaranthrose
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24770,7 +24481,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 194 */
+/* 156 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24779,7 +24490,7 @@ var Grommet =
 	//!           Burak Yiğit Kaya: https://github.com/BYK
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24864,7 +24575,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 195 */
+/* 157 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24872,7 +24583,7 @@ var Grommet =
 	//! author : Robin van der Vliet : https://github.com/robin0van0der0v with the help of Iustì Canun
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -24895,6 +24606,10 @@ var Grommet =
 	            LLL : 'D. MMMM [dallas] YYYY HH.mm',
 	            LLLL : 'dddd, [li] D. MMMM [dallas] YYYY HH.mm'
 	        },
+	        meridiemParse: /d\'o|d\'a/i,
+	        isPM : function (input) {
+	            return 'd\'o' === input.toLowerCase();
+	        },
 	        meridiem : function (hours, minutes, isLower) {
 	            if (hours > 11) {
 	                return isLower ? 'd\'o' : 'D\'O';
@@ -24955,7 +24670,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 196 */
+/* 158 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -24963,7 +24678,7 @@ var Grommet =
 	//! author : Abdel Said : https://github.com/abdelsaid
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25017,7 +24732,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 197 */
+/* 159 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -25025,7 +24740,7 @@ var Grommet =
 	//! author : Abdel Said : https://github.com/abdelsaid
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25079,7 +24794,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 198 */
+/* 160 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -25088,7 +24803,7 @@ var Grommet =
 	//! Author : Menelion Elensúle : https://github.com/Oire
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25229,7 +24944,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 199 */
+/* 161 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -25237,7 +24952,7 @@ var Grommet =
 	//! author : Sardor Muminov : https://github.com/muminoff
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25291,7 +25006,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 200 */
+/* 162 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -25299,7 +25014,7 @@ var Grommet =
 	//! author : Bang Nguyen : https://github.com/bangnk
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25311,6 +25026,17 @@ var Grommet =
 	        weekdays : 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split('_'),
 	        weekdaysShort : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
 	        weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
+	        meridiemParse: /sa|ch/i,
+	        isPM : function (input) {
+	            return /^ch$/i.test(input);
+	        },
+	        meridiem : function (hours, minutes, isLower) {
+	            if (hours < 12) {
+	                return isLower ? 'sa' : 'SA';
+	            } else {
+	                return isLower ? 'ch' : 'CH';
+	            }
+	        },
 	        longDateFormat : {
 	            LT : 'HH:mm',
 	            LTS : 'HH:mm:ss',
@@ -25361,7 +25087,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 201 */
+/* 163 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -25370,7 +25096,7 @@ var Grommet =
 	//! author : Zeno Zeng : https://github.com/zenozeng
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25492,7 +25218,7 @@ var Grommet =
 	}));
 
 /***/ },
-/* 202 */
+/* 164 */
 /***/ function(module, exports, __webpack_require__) {
 
 	//! moment.js locale configuration
@@ -25500,7 +25226,7 @@ var Grommet =
 	//! author : Ben : https://github.com/ben-lin
 
 	;(function (global, factory) {
-	    true ? factory(__webpack_require__(104)) :
+	    true ? factory(__webpack_require__(65)) :
 	   typeof define === 'function' && define.amd ? define(['moment'], factory) :
 	   factory(global.moment)
 	}(this, function (moment) { 'use strict';
@@ -25597,133 +25323,32 @@ var Grommet =
 	}));
 
 /***/ },
-/* 203 */
+/* 165 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _FormattedMessage = __webpack_require__(5);
-
-	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
-
-	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
-	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
-
-	var CLASS_ROOT = "control-icon";
-
-	var Icon = function (_Component) {
-	  _inherits(Icon, _Component);
-
-	  function Icon() {
-	    _classCallCheck(this, Icon);
-
-	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Icon).apply(this, arguments));
-	  }
-
-	  _createClass(Icon, [{
-	    key: 'render',
-	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-calendar'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
-
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "calendar";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
-
-	      return _react2.default.createElement(
-	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2031', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
-	        _react2.default.createElement(
-	          'title',
-	          { id: this.props.a11yTitleId },
-	          a11yTitle
-	        ),
-	        _react2.default.createElement(
-	          'g',
-	          { id: 'calendar' },
-	          _react2.default.createElement('rect', { id: '_x2E_svg_34_', y: '0.2031', fill: 'none', width: '24', height: '24' }),
-	          _react2.default.createElement('path', { fill: 'none', stroke: '#000000', strokeWidth: '2', strokeMiterlimit: '10', d: 'M23,23H1V4h22V23z M2,10h20 M6,4V0 M18,4V0' })
-	        )
-	      );
-	    }
-	  }]);
-
-	  return Icon;
-	}(_react.Component);
-
-	exports.default = Icon;
-
-	Icon.propTypes = {
-	  a11yTitle: _react.PropTypes.string,
-	  a11yTitleId: _react.PropTypes.string,
-	  colorIndex: _react.PropTypes.string,
-	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
-	};
-
-	Icon.defaultProps = {
-	  a11yTitleId: 'calendar-title'
-	};
-
-	Icon.icon = true;
-	module.exports = exports.default;
-	module.exports = exports['default'];
-
-/***/ },
-/* 204 */
-/***/ function(module, exports, __webpack_require__) {
-
-	'use strict';
-
 	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
 	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
-	Object.defineProperty(exports, "__esModule", {
-	  value: true
-	});
-
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _pick = __webpack_require__(76);
-
-	var _pick2 = _interopRequireDefault(_pick);
+	var _Props = __webpack_require__(49);
 
-	var _keys = __webpack_require__(53);
+	var _Props2 = _interopRequireDefault(_Props);
 
-	var _keys2 = _interopRequireDefault(_keys);
-
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
@@ -25784,33 +25409,35 @@ var Grommet =
 
 	      // constrain fixed content to the width of the mirror
 	      var mirrorRect = mirrorElement.getBoundingClientRect();
-	      contentElement.style.width = '' + Math.floor(mirrorRect.width) + 'px';
+	      contentElement.style.width = Math.floor(mirrorRect.width) + 'px';
 
 	      // align the mirror height with the content's height
 	      var contentRect = contentElement.getBoundingClientRect();
-	      mirrorElement.style.height = '' + Math.floor(contentRect.height) + 'px';
+	      mirrorElement.style.height = Math.floor(contentRect.height) + 'px';
 	    }
 	  }, {
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
-	      var containerClasses = [CLASS_ROOT + "__container"];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
+	      var containerClasses = [CLASS_ROOT + '__container'];
+	      var wrapperClasses = [CLASS_ROOT + '__wrapper'];
+	      var other = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 	      if (this.props.fixed) {
-	        containerClasses.push(CLASS_ROOT + "__container--fixed");
+	        containerClasses.push(CLASS_ROOT + '__container--fixed');
 	      }
 	      if (this.props.float) {
-	        classes.push(CLASS_ROOT + "--float");
-	        containerClasses.push(CLASS_ROOT + "__container--float");
+	        classes.push(CLASS_ROOT + '--float');
+	        containerClasses.push(CLASS_ROOT + '__container--float');
 	      }
 	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
+	        classes.push(CLASS_ROOT + '--' + this.props.size);
+	        wrapperClasses.push(CLASS_ROOT + '__wrapper--' + this.props.size);
 	      }
 	      if (this.props.splash) {
-	        classes.push(CLASS_ROOT + "--splash");
+	        classes.push(CLASS_ROOT + '--splash');
 	      }
 	      if (this.props.strong) {
-	        classes.push(CLASS_ROOT + "--strong");
+	        classes.push(CLASS_ROOT + '--strong');
 	      }
 	      if (this.props.className) {
 	        classes.push(this.props.className);
@@ -25820,13 +25447,14 @@ var Grommet =
 	        return _react2.default.createElement(
 	          'div',
 	          { className: containerClasses.join(' ') },
-	          _react2.default.createElement('div', { ref: 'mirror', className: CLASS_ROOT + "__mirror" }),
+	          _react2.default.createElement('div', { ref: 'mirror', className: CLASS_ROOT + '__mirror' }),
 	          _react2.default.createElement(
 	            'div',
-	            { className: CLASS_ROOT + "__wrapper" },
+	            { className: wrapperClasses.join(' ') },
 	            _react2.default.createElement(
 	              _Box2.default,
-	              _extends({ ref: 'content', tag: this.props.header }, other, { className: classes.join(' ') }),
+	              _extends({ ref: 'content', tag: this.props.header }, other, {
+	                className: classes.join(' ') }),
 	              this.props.children
 	            )
 	          )
@@ -25847,6 +25475,7 @@ var Grommet =
 
 	exports.default = Header;
 
+
 	Header.propTypes = _extends({
 	  fixed: _react.PropTypes.bool,
 	  float: _react.PropTypes.bool,
@@ -25857,7 +25486,7 @@ var Grommet =
 	}, _Box2.default.propTypes);
 
 	Header.defaultProps = {
-	  pad: 'none',
+	  pad: { horizontal: 'none', vertical: 'none', between: 'small' },
 	  direction: 'row',
 	  align: 'center',
 	  responsive: false,
@@ -25866,26 +25495,26 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 205 */
+/* 166 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
@@ -25922,7 +25551,7 @@ var Grommet =
 	        classes.push(this.props.className);
 	      }
 
-	      var a11yTitle = _Intl2.default.getMessage(this.context.intl, this.props.a11yTitle);
+	      var a11yTitle = this.props.a11yTitle || _Intl2.default.getMessage(this.context.intl, 'Title');
 
 	      return _react2.default.createElement(
 	        _Box2.default,
@@ -25939,6 +25568,7 @@ var Grommet =
 
 	exports.default = Title;
 
+
 	Title.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  onClick: _react.PropTypes.func,
@@ -25950,51 +25580,163 @@ var Grommet =
 	};
 
 	Title.defaultProps = {
-	  responsive: true,
-	  a11yTitle: 'Title'
+	  responsive: true
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 206 */
+/* 167 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
+
 	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
+	var _react = __webpack_require__(2);
+
+	var _react2 = _interopRequireDefault(_react);
+
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
+	var _FormattedMessage = __webpack_require__(5);
+
+	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
+
+	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
+	var CLASS_ROOT = 'control-icon';
+
+	var Icon = function (_Component) {
+	  _inherits(Icon, _Component);
+
+	  function Icon() {
+	    _classCallCheck(this, Icon);
+
+	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Icon).apply(this, arguments));
+	  }
+
+	  _createClass(Icon, [{
+	    key: 'render',
+	    value: function render() {
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
+	      }
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-calendar', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'calendar';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+
+	      return _react2.default.createElement(
+	        'svg',
+	        { version: '1.1', viewBox: '0 0 24 24.2031', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
+	        _react2.default.createElement(
+	          'title',
+	          { id: a11yTitleId },
+	          a11yTitle
+	        ),
+	        _react2.default.createElement(
+	          'g',
+	          { id: 'calendar' },
+	          _react2.default.createElement('rect', { id: '_x2E_svg_34_', y: '0.2031', fill: 'none', width: '24', height: '24' }),
+	          _react2.default.createElement('path', { fill: 'none', stroke: '#000000', strokeWidth: '2', strokeMiterlimit: '10', d: 'M23,23H1V4h22V23z M2,10h20 M6,4V0 M18,4V0' })
+	        )
+	      );
+	    }
+	  }]);
+
+	  return Icon;
+	}(_react.Component);
+
+	exports.default = Icon;
+	;
+
+	Icon.propTypes = {
+	  a11yTitle: _react.PropTypes.string,
+	  a11yTitleId: _react.PropTypes.string,
+	  colorIndex: _react.PropTypes.string,
+	  large: _react.PropTypes.bool,
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
+	};
+
+	Icon.defaultProps = {
+	  a11yTitleId: 'calendar-title'
+	};
+
+	Icon.icon = true;
+
+	Icon.displayName = 'Calendar';
+	module.exports = exports['default'];
+
+/***/ },
+/* 168 */
+/***/ function(module, exports, __webpack_require__) {
+
+	'use strict';
+
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Tiles = __webpack_require__(207);
+	var _Tiles = __webpack_require__(169);
 
 	var _Tiles2 = _interopRequireDefault(_Tiles);
 
-	var _Tile = __webpack_require__(219);
+	var _Tile = __webpack_require__(173);
 
 	var _Tile2 = _interopRequireDefault(_Tile);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Previous = __webpack_require__(220);
+	var _Previous = __webpack_require__(174);
 
 	var _Previous2 = _interopRequireDefault(_Previous);
 
-	var _Next = __webpack_require__(221);
+	var _Next = __webpack_require__(175);
 
 	var _Next2 = _interopRequireDefault(_Next);
 
+	var _DOM = __webpack_require__(45);
+
+	var _DOM2 = _interopRequireDefault(_DOM);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -26003,7 +25745,13 @@ var Grommet =
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "carousel";
+	// define window obj for react tests to run properly
+	var Hammer = function Hammer() {};
+	if (typeof window !== 'undefined') {
+	  Hammer = __webpack_require__(176);
+	}
+
+	var CLASS_ROOT = 'carousel';
 
 	var Carousel = function (_Component) {
 	  _inherits(Carousel, _Component);
@@ -26019,13 +25767,15 @@ var Grommet =
 	    _this._onResize = _this._onResize.bind(_this);
 	    _this._slidePrev = _this._slidePrev.bind(_this);
 	    _this._slideNext = _this._slideNext.bind(_this);
+	    _this._handleScroll = _this._handleScroll.bind(_this);
 
 	    _this.state = {
 	      activeIndex: 0,
 	      hideControls: !props.persistentNav,
 	      priorIndex: 0,
 	      sequence: 1,
-	      width: 0
+	      width: 0,
+	      slide: false
 	    };
 	    return _this;
 	  }
@@ -26037,11 +25787,21 @@ var Grommet =
 	        width: this.refs.carousel.offsetWidth
 	      });
 
-	      if (this.props.autoplay) {
-	        this._setSlideInterval();
-	      }
-
 	      window.addEventListener('resize', this._onResize);
+
+	      this.hammer = new Hammer(this.refs.carousel);
+	      this._updateHammer();
+
+	      this._handleScroll();
+	      var scrollParents = _DOM2.default.findScrollParents(this.refs.carousel);
+	      scrollParents.forEach(function (scrollParent) {
+	        scrollParent.addEventListener('scroll', this._handleScroll);
+	      }.bind(this));
+	    }
+	  }, {
+	    key: 'componentDidUpdate',
+	    value: function componentDidUpdate() {
+	      this._updateHammer();
 	    }
 	  }, {
 	    key: 'componentWillUnmount',
@@ -26049,6 +25809,64 @@ var Grommet =
 	      clearInterval(this._slideAnimation);
 
 	      window.removeEventListener('resize', this._onResize);
+
+	      var scrollParents = _DOM2.default.findScrollParents(this.refs.carousel);
+	      scrollParents.forEach(function (scrollParent) {
+	        scrollParent.removeEventListener('scroll', this._handleScroll);
+	      }.bind(this));
+
+	      this._unmountHammer();
+	    }
+	  }, {
+	    key: '_unmountHammer',
+	    value: function _unmountHammer() {
+	      if (this.hammer) {
+	        this.hammer.stop();
+	        this.hammer.destroy();
+	      }
+	      this.hammer = undefined;
+	    }
+	  }, {
+	    key: '_updateHammer',
+	    value: function _updateHammer() {
+	      var _this2 = this;
+
+	      if (this.hammer) {
+	        this.hammer.get('swipe').set({
+	          direction: Hammer.DIRECTION_HORIZONTAL
+	        });
+
+	        this.hammer.off('panend');
+	        this.hammer.on('panend', function (event) {
+	          if (event.direction === 4) {
+	            _this2._slidePrev();
+	          } else if (event.direction === 2) {
+	            _this2._slideNext();
+	          }
+	        });
+	      }
+	    }
+	  }, {
+	    key: '_handleScroll',
+	    value: function _handleScroll() {
+	      var viewportHeight = document.documentElement.clientHeight;
+	      var carouselTopPosition = this.refs.carousel.getBoundingClientRect().top;
+	      var carouselHeight = this.refs.carousel.offsetHeight;
+	      var startScroll = viewportHeight - carouselHeight / 2;
+
+	      if (this.props.autoplay && carouselTopPosition <= startScroll && carouselTopPosition >= -carouselHeight / 2) {
+	        if (this.state.slide === false) {
+	          this._setSlideInterval();
+	          this.setState({
+	            slide: true
+	          });
+	        }
+	      } else {
+	        clearInterval(this._slideAnimation);
+	        this.setState({
+	          slide: false
+	        });
+	      }
 	    }
 	  }, {
 	    key: '_setSlideInterval',
@@ -26133,7 +25951,7 @@ var Grommet =
 	          _Button2.default,
 	          {
 	            className: CLASS_ROOT + '__arrow ' + CLASS_ROOT + '__arrow--prev',
-	            type: 'icon', onClick: this._slidePrev },
+	            plain: true, onClick: this._slidePrev },
 	          _react2.default.createElement(_Previous2.default, { size: 'large' })
 	        );
 	      }
@@ -26149,7 +25967,7 @@ var Grommet =
 	          _Button2.default,
 	          {
 	            className: CLASS_ROOT + '__arrow ' + CLASS_ROOT + '__arrow--next',
-	            type: 'icon', onClick: this._slideNext },
+	            plain: true, onClick: this._slideNext },
 	          _react2.default.createElement(_Next2.default, { size: 'large' })
 	        );
 	      }
@@ -26210,7 +26028,7 @@ var Grommet =
 	            style: { width: trackWidth, marginLeft: trackPosition } },
 	          _react2.default.createElement(
 	            _Tiles2.default,
-	            { fill: true },
+	            { fill: true, responsive: false, wrap: false, direction: 'row' },
 	            tiles
 	          )
 	        ),
@@ -26231,6 +26049,7 @@ var Grommet =
 
 	exports.default = Carousel;
 
+
 	Carousel.propTypes = {
 	  autoplay: _react.PropTypes.bool,
 	  autoplaySpeed: _react.PropTypes.number,
@@ -26247,68 +26066,60 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 207 */
+/* 169 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _reactDom = __webpack_require__(69);
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
-	var _isEqual = __webpack_require__(208);
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
-	var _isEqual2 = _interopRequireDefault(_isEqual);
+	var _react = __webpack_require__(2);
 
-	var _pick = __webpack_require__(76);
+	var _react2 = _interopRequireDefault(_react);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _reactDom = __webpack_require__(40);
 
-	var _keys = __webpack_require__(53);
+	var _Props = __webpack_require__(49);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _Props2 = _interopRequireDefault(_Props);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Spinning = __webpack_require__(216);
+	var _Spinning = __webpack_require__(170);
 
 	var _Spinning2 = _interopRequireDefault(_Spinning);
 
-	var _LinkPrevious = __webpack_require__(43);
+	var _Scroll = __webpack_require__(61);
 
-	var _LinkPrevious2 = _interopRequireDefault(_LinkPrevious);
+	var _Scroll2 = _interopRequireDefault(_Scroll);
 
-	var _LinkNext = __webpack_require__(4);
+	var _InfiniteScroll = __webpack_require__(171);
 
-	var _LinkNext2 = _interopRequireDefault(_LinkNext);
+	var _InfiniteScroll2 = _interopRequireDefault(_InfiniteScroll);
 
-	var _Scroll = __webpack_require__(100);
+	var _Selection = __webpack_require__(172);
 
-	var _Scroll2 = _interopRequireDefault(_Scroll);
+	var _Selection2 = _interopRequireDefault(_Selection);
 
-	var _InfiniteScroll = __webpack_require__(217);
+	var _LinkPrevious = __webpack_require__(62);
 
-	var _InfiniteScroll2 = _interopRequireDefault(_InfiniteScroll);
+	var _LinkPrevious2 = _interopRequireDefault(_LinkPrevious);
 
-	var _Selection = __webpack_require__(218);
+	var _LinkNext = __webpack_require__(4);
 
-	var _Selection2 = _interopRequireDefault(_Selection);
+	var _LinkNext2 = _interopRequireDefault(_LinkNext);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
@@ -26373,7 +26184,7 @@ var Grommet =
 	  }, {
 	    key: 'componentDidUpdate',
 	    value: function componentDidUpdate(prevProps, prevState) {
-	      if (!(0, _isEqual2.default)(this.state.selected, prevState.selected)) {
+	      if (JSON.stringify(this.state.selected) !== JSON.stringify(prevState.selected)) {
 	        this._setSelection();
 	      }
 	      if (this.props.onMore && !this._scroll) {
@@ -26528,7 +26339,7 @@ var Grommet =
 	        classes.push(this.props.className);
 	      }
 
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
+	      var other = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 
 	      var more = null;
 	      if (this.props.onMore) {
@@ -26540,7 +26351,7 @@ var Grommet =
 	        );
 	      }
 
-	      var onClickHandler = undefined;
+	      var onClickHandler = void 0;
 	      if (this.props.selectable) {
 	        onClickHandler = this._onClick;
 	      }
@@ -26551,7 +26362,8 @@ var Grommet =
 	          wrap: this.props.direction ? false : true,
 	          direction: this.props.direction ? this.props.direction : 'row',
 	          className: classes.join(' '),
-	          onClick: onClickHandler }),
+	          onClick: onClickHandler,
+	          focusable: false }),
 	        this.props.children,
 	        more
 	      );
@@ -26559,20 +26371,12 @@ var Grommet =
 	      if (this.state.overflow) {
 	        classes.push(CLASS_ROOT + "--overflowed");
 	        if (!this.state.overflowStart) {
-	          var left = _react2.default.createElement(
-	            _Button2.default,
-	            { className: CLASS_ROOT + "__left", type: 'icon',
-	              onClick: this._onLeft },
-	            _react2.default.createElement(_LinkPrevious2.default, null)
-	          );
+	          var left = _react2.default.createElement(_Button2.default, { className: CLASS_ROOT + "__left", icon: _react2.default.createElement(_LinkPrevious2.default, null),
+	            onClick: this._onLeft });
 	        }
 	        if (!this.state.overflowEnd) {
-	          var right = _react2.default.createElement(
-	            _Button2.default,
-	            { className: CLASS_ROOT + "__right", type: 'icon',
-	              onClick: this._onRight },
-	            _react2.default.createElement(_LinkNext2.default, null)
-	          );
+	          var right = _react2.default.createElement(_Button2.default, { className: CLASS_ROOT + "__right", icon: _react2.default.createElement(_LinkNext2.default, null),
+	            onClick: this._onRight });
 	        }
 
 	        contents = _react2.default.createElement(
@@ -26593,6 +26397,7 @@ var Grommet =
 
 	exports.default = Tiles;
 
+
 	Tiles.propTypes = _extends({
 	  fill: _react.PropTypes.bool,
 	  flush: _react.PropTypes.bool,
@@ -26610,512 +26415,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 208 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseIsEqual = __webpack_require__(209),
-	    bindCallback = __webpack_require__(79);
-
-	/**
-	 * Performs a deep comparison between two values to determine if they are
-	 * equivalent. If `customizer` is provided it's invoked to compare values.
-	 * If `customizer` returns `undefined` comparisons are handled by the method
-	 * instead. The `customizer` is bound to `thisArg` and invoked with up to
-	 * three arguments: (value, other [, index|key]).
-	 *
-	 * **Note:** This method supports comparing arrays, booleans, `Date` objects,
-	 * numbers, `Object` objects, regexes, and strings. Objects are compared by
-	 * their own, not inherited, enumerable properties. Functions and DOM nodes
-	 * are **not** supported. Provide a customizer function to extend support
-	 * for comparing other values.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @alias eq
-	 * @category Lang
-	 * @param {*} value The value to compare.
-	 * @param {*} other The other value to compare.
-	 * @param {Function} [customizer] The function to customize value comparisons.
-	 * @param {*} [thisArg] The `this` binding of `customizer`.
-	 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
-	 * @example
-	 *
-	 * var object = { 'user': 'fred' };
-	 * var other = { 'user': 'fred' };
-	 *
-	 * object == other;
-	 * // => false
-	 *
-	 * _.isEqual(object, other);
-	 * // => true
-	 *
-	 * // using a customizer callback
-	 * var array = ['hello', 'goodbye'];
-	 * var other = ['hi', 'goodbye'];
-	 *
-	 * _.isEqual(array, other, function(value, other) {
-	 *   if (_.every([value, other], RegExp.prototype.test, /^h(?:i|ello)$/)) {
-	 *     return true;
-	 *   }
-	 * });
-	 * // => true
-	 */
-	function isEqual(value, other, customizer, thisArg) {
-	  customizer = typeof customizer == 'function' ? bindCallback(customizer, thisArg, 3) : undefined;
-	  var result = customizer ? customizer(value, other) : undefined;
-	  return  result === undefined ? baseIsEqual(value, other, customizer) : !!result;
-	}
-
-	module.exports = isEqual;
-
-
-/***/ },
-/* 209 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseIsEqualDeep = __webpack_require__(210),
-	    isObject = __webpack_require__(57),
-	    isObjectLike = __webpack_require__(58);
-
-	/**
-	 * The base implementation of `_.isEqual` without support for `this` binding
-	 * `customizer` functions.
-	 *
-	 * @private
-	 * @param {*} value The value to compare.
-	 * @param {*} other The other value to compare.
-	 * @param {Function} [customizer] The function to customize comparing values.
-	 * @param {boolean} [isLoose] Specify performing partial comparisons.
-	 * @param {Array} [stackA] Tracks traversed `value` objects.
-	 * @param {Array} [stackB] Tracks traversed `other` objects.
-	 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
-	 */
-	function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
-	  if (value === other) {
-	    return true;
-	  }
-	  if (value == null || other == null || (!isObject(value) && !isObjectLike(other))) {
-	    return value !== value && other !== other;
-	  }
-	  return baseIsEqualDeep(value, other, baseIsEqual, customizer, isLoose, stackA, stackB);
-	}
-
-	module.exports = baseIsEqual;
-
-
-/***/ },
-/* 210 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var equalArrays = __webpack_require__(211),
-	    equalByTag = __webpack_require__(213),
-	    equalObjects = __webpack_require__(214),
-	    isArray = __webpack_require__(65),
-	    isTypedArray = __webpack_require__(215);
-
-	/** `Object#toString` result references. */
-	var argsTag = '[object Arguments]',
-	    arrayTag = '[object Array]',
-	    objectTag = '[object Object]';
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/**
-	 * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
-	 * of values.
-	 */
-	var objToString = objectProto.toString;
-
-	/**
-	 * A specialized version of `baseIsEqual` for arrays and objects which performs
-	 * deep comparisons and tracks traversed objects enabling objects with circular
-	 * references to be compared.
-	 *
-	 * @private
-	 * @param {Object} object The object to compare.
-	 * @param {Object} other The other object to compare.
-	 * @param {Function} equalFunc The function to determine equivalents of values.
-	 * @param {Function} [customizer] The function to customize comparing objects.
-	 * @param {boolean} [isLoose] Specify performing partial comparisons.
-	 * @param {Array} [stackA=[]] Tracks traversed `value` objects.
-	 * @param {Array} [stackB=[]] Tracks traversed `other` objects.
-	 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-	 */
-	function baseIsEqualDeep(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
-	  var objIsArr = isArray(object),
-	      othIsArr = isArray(other),
-	      objTag = arrayTag,
-	      othTag = arrayTag;
-
-	  if (!objIsArr) {
-	    objTag = objToString.call(object);
-	    if (objTag == argsTag) {
-	      objTag = objectTag;
-	    } else if (objTag != objectTag) {
-	      objIsArr = isTypedArray(object);
-	    }
-	  }
-	  if (!othIsArr) {
-	    othTag = objToString.call(other);
-	    if (othTag == argsTag) {
-	      othTag = objectTag;
-	    } else if (othTag != objectTag) {
-	      othIsArr = isTypedArray(other);
-	    }
-	  }
-	  var objIsObj = objTag == objectTag,
-	      othIsObj = othTag == objectTag,
-	      isSameTag = objTag == othTag;
-
-	  if (isSameTag && !(objIsArr || objIsObj)) {
-	    return equalByTag(object, other, objTag);
-	  }
-	  if (!isLoose) {
-	    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
-	        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
-
-	    if (objIsWrapped || othIsWrapped) {
-	      return equalFunc(objIsWrapped ? object.value() : object, othIsWrapped ? other.value() : other, customizer, isLoose, stackA, stackB);
-	    }
-	  }
-	  if (!isSameTag) {
-	    return false;
-	  }
-	  // Assume cyclic values are equal.
-	  // For more information on detecting circular references see https://es5.github.io/#JO.
-	  stackA || (stackA = []);
-	  stackB || (stackB = []);
-
-	  var length = stackA.length;
-	  while (length--) {
-	    if (stackA[length] == object) {
-	      return stackB[length] == other;
-	    }
-	  }
-	  // Add `object` and `other` to the stack of traversed objects.
-	  stackA.push(object);
-	  stackB.push(other);
-
-	  var result = (objIsArr ? equalArrays : equalObjects)(object, other, equalFunc, customizer, isLoose, stackA, stackB);
-
-	  stackA.pop();
-	  stackB.pop();
-
-	  return result;
-	}
-
-	module.exports = baseIsEqualDeep;
-
-
-/***/ },
-/* 211 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var arraySome = __webpack_require__(212);
-
-	/**
-	 * A specialized version of `baseIsEqualDeep` for arrays with support for
-	 * partial deep comparisons.
-	 *
-	 * @private
-	 * @param {Array} array The array to compare.
-	 * @param {Array} other The other array to compare.
-	 * @param {Function} equalFunc The function to determine equivalents of values.
-	 * @param {Function} [customizer] The function to customize comparing arrays.
-	 * @param {boolean} [isLoose] Specify performing partial comparisons.
-	 * @param {Array} [stackA] Tracks traversed `value` objects.
-	 * @param {Array} [stackB] Tracks traversed `other` objects.
-	 * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
-	 */
-	function equalArrays(array, other, equalFunc, customizer, isLoose, stackA, stackB) {
-	  var index = -1,
-	      arrLength = array.length,
-	      othLength = other.length;
-
-	  if (arrLength != othLength && !(isLoose && othLength > arrLength)) {
-	    return false;
-	  }
-	  // Ignore non-index properties.
-	  while (++index < arrLength) {
-	    var arrValue = array[index],
-	        othValue = other[index],
-	        result = customizer ? customizer(isLoose ? othValue : arrValue, isLoose ? arrValue : othValue, index) : undefined;
-
-	    if (result !== undefined) {
-	      if (result) {
-	        continue;
-	      }
-	      return false;
-	    }
-	    // Recursively compare arrays (susceptible to call stack limits).
-	    if (isLoose) {
-	      if (!arraySome(other, function(othValue) {
-	            return arrValue === othValue || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
-	          })) {
-	        return false;
-	      }
-	    } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB))) {
-	      return false;
-	    }
-	  }
-	  return true;
-	}
-
-	module.exports = equalArrays;
-
-
-/***/ },
-/* 212 */
-/***/ function(module, exports) {
-
-	/**
-	 * A specialized version of `_.some` for arrays without support for callback
-	 * shorthands and `this` binding.
-	 *
-	 * @private
-	 * @param {Array} array The array to iterate over.
-	 * @param {Function} predicate The function invoked per iteration.
-	 * @returns {boolean} Returns `true` if any element passes the predicate check,
-	 *  else `false`.
-	 */
-	function arraySome(array, predicate) {
-	  var index = -1,
-	      length = array.length;
-
-	  while (++index < length) {
-	    if (predicate(array[index], index, array)) {
-	      return true;
-	    }
-	  }
-	  return false;
-	}
-
-	module.exports = arraySome;
-
-
-/***/ },
-/* 213 */
-/***/ function(module, exports) {
-
-	/** `Object#toString` result references. */
-	var boolTag = '[object Boolean]',
-	    dateTag = '[object Date]',
-	    errorTag = '[object Error]',
-	    numberTag = '[object Number]',
-	    regexpTag = '[object RegExp]',
-	    stringTag = '[object String]';
-
-	/**
-	 * A specialized version of `baseIsEqualDeep` for comparing objects of
-	 * the same `toStringTag`.
-	 *
-	 * **Note:** This function only supports comparing values with tags of
-	 * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
-	 *
-	 * @private
-	 * @param {Object} object The object to compare.
-	 * @param {Object} other The other object to compare.
-	 * @param {string} tag The `toStringTag` of the objects to compare.
-	 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-	 */
-	function equalByTag(object, other, tag) {
-	  switch (tag) {
-	    case boolTag:
-	    case dateTag:
-	      // Coerce dates and booleans to numbers, dates to milliseconds and booleans
-	      // to `1` or `0` treating invalid dates coerced to `NaN` as not equal.
-	      return +object == +other;
-
-	    case errorTag:
-	      return object.name == other.name && object.message == other.message;
-
-	    case numberTag:
-	      // Treat `NaN` vs. `NaN` as equal.
-	      return (object != +object)
-	        ? other != +other
-	        : object == +other;
-
-	    case regexpTag:
-	    case stringTag:
-	      // Coerce regexes to strings and treat strings primitives and string
-	      // objects as equal. See https://es5.github.io/#x15.10.6.4 for more details.
-	      return object == (other + '');
-	  }
-	  return false;
-	}
-
-	module.exports = equalByTag;
-
-
-/***/ },
-/* 214 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var keys = __webpack_require__(53);
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/**
-	 * A specialized version of `baseIsEqualDeep` for objects with support for
-	 * partial deep comparisons.
-	 *
-	 * @private
-	 * @param {Object} object The object to compare.
-	 * @param {Object} other The other object to compare.
-	 * @param {Function} equalFunc The function to determine equivalents of values.
-	 * @param {Function} [customizer] The function to customize comparing values.
-	 * @param {boolean} [isLoose] Specify performing partial comparisons.
-	 * @param {Array} [stackA] Tracks traversed `value` objects.
-	 * @param {Array} [stackB] Tracks traversed `other` objects.
-	 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-	 */
-	function equalObjects(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
-	  var objProps = keys(object),
-	      objLength = objProps.length,
-	      othProps = keys(other),
-	      othLength = othProps.length;
-
-	  if (objLength != othLength && !isLoose) {
-	    return false;
-	  }
-	  var index = objLength;
-	  while (index--) {
-	    var key = objProps[index];
-	    if (!(isLoose ? key in other : hasOwnProperty.call(other, key))) {
-	      return false;
-	    }
-	  }
-	  var skipCtor = isLoose;
-	  while (++index < objLength) {
-	    key = objProps[index];
-	    var objValue = object[key],
-	        othValue = other[key],
-	        result = customizer ? customizer(isLoose ? othValue : objValue, isLoose? objValue : othValue, key) : undefined;
-
-	    // Recursively compare objects (susceptible to call stack limits).
-	    if (!(result === undefined ? equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB) : result)) {
-	      return false;
-	    }
-	    skipCtor || (skipCtor = key == 'constructor');
-	  }
-	  if (!skipCtor) {
-	    var objCtor = object.constructor,
-	        othCtor = other.constructor;
-
-	    // Non `Object` object instances with different constructors are not equal.
-	    if (objCtor != othCtor &&
-	        ('constructor' in object && 'constructor' in other) &&
-	        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
-	          typeof othCtor == 'function' && othCtor instanceof othCtor)) {
-	      return false;
-	    }
-	  }
-	  return true;
-	}
-
-	module.exports = equalObjects;
-
-
-/***/ },
-/* 215 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isLength = __webpack_require__(62),
-	    isObjectLike = __webpack_require__(58);
-
-	/** `Object#toString` result references. */
-	var argsTag = '[object Arguments]',
-	    arrayTag = '[object Array]',
-	    boolTag = '[object Boolean]',
-	    dateTag = '[object Date]',
-	    errorTag = '[object Error]',
-	    funcTag = '[object Function]',
-	    mapTag = '[object Map]',
-	    numberTag = '[object Number]',
-	    objectTag = '[object Object]',
-	    regexpTag = '[object RegExp]',
-	    setTag = '[object Set]',
-	    stringTag = '[object String]',
-	    weakMapTag = '[object WeakMap]';
-
-	var arrayBufferTag = '[object ArrayBuffer]',
-	    float32Tag = '[object Float32Array]',
-	    float64Tag = '[object Float64Array]',
-	    int8Tag = '[object Int8Array]',
-	    int16Tag = '[object Int16Array]',
-	    int32Tag = '[object Int32Array]',
-	    uint8Tag = '[object Uint8Array]',
-	    uint8ClampedTag = '[object Uint8ClampedArray]',
-	    uint16Tag = '[object Uint16Array]',
-	    uint32Tag = '[object Uint32Array]';
-
-	/** Used to identify `toStringTag` values of typed arrays. */
-	var typedArrayTags = {};
-	typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
-	typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
-	typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
-	typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
-	typedArrayTags[uint32Tag] = true;
-	typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
-	typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
-	typedArrayTags[dateTag] = typedArrayTags[errorTag] =
-	typedArrayTags[funcTag] = typedArrayTags[mapTag] =
-	typedArrayTags[numberTag] = typedArrayTags[objectTag] =
-	typedArrayTags[regexpTag] = typedArrayTags[setTag] =
-	typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/**
-	 * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
-	 * of values.
-	 */
-	var objToString = objectProto.toString;
-
-	/**
-	 * Checks if `value` is classified as a typed array.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is correctly classified, else `false`.
-	 * @example
-	 *
-	 * _.isTypedArray(new Uint8Array);
-	 * // => true
-	 *
-	 * _.isTypedArray([]);
-	 * // => false
-	 */
-	function isTypedArray(value) {
-	  return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[objToString.call(value)];
-	}
-
-	module.exports = isTypedArray;
-
-
-/***/ },
-/* 216 */
+/* 170 */
 /***/ function(module, exports, __webpack_require__) {
 
 	"use strict";
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -27165,7 +26475,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 217 */
+/* 171 */
 /***/ function(module, exports, __webpack_require__) {
 
 	"use strict";
@@ -27174,7 +26484,7 @@ var Grommet =
 	  value: true
 	});
 
-	var _DOM = __webpack_require__(73);
+	var _DOM = __webpack_require__(45);
 
 	var _DOM2 = _interopRequireDefault(_DOM);
 
@@ -27251,7 +26561,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 218 */
+/* 172 */
 /***/ function(module, exports) {
 
 	"use strict";
@@ -27265,7 +26575,7 @@ var Grommet =
 
 	// Ensures it is an array.
 	function normalizeIndexes(selectedIndexes) {
-	  var result = undefined;
+	  var result = void 0;
 	  if (undefined === selectedIndexes || null === selectedIndexes) {
 	    result = [];
 	  } else if (typeof selectedIndexes === 'number') {
@@ -27339,7 +26649,7 @@ var Grommet =
 	    indexInContainer += 1;
 	  }
 
-	  var selectedIndexes = undefined; // what will be returned
+	  var selectedIndexes = void 0; // what will be returned
 
 	  if (!event.ctrlKey && !event.metaKey && !event.shiftKey) {
 
@@ -27412,32 +26722,28 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 219 */
+/* 173 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
-	var _react = __webpack_require__(2);
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
-	var _react2 = _interopRequireDefault(_react);
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
-	var _pick = __webpack_require__(76);
+	var _react = __webpack_require__(2);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _react2 = _interopRequireDefault(_react);
 
-	var _keys = __webpack_require__(53);
+	var _Props = __webpack_require__(49);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _Props2 = _interopRequireDefault(_Props);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
@@ -27464,7 +26770,7 @@ var Grommet =
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 	      if (this.props.status) {
 	        classes.push(CLASS_ROOT + "--status-" + this.props.status.toLowerCase());
 	      }
@@ -27483,7 +26789,7 @@ var Grommet =
 
 	      return _react2.default.createElement(
 	        _Box2.default,
-	        _extends({ className: classes.join(' ') }, other, { onClick: this.props.onClick }),
+	        _extends({}, boxProps, { className: classes.join(' ') }),
 	        this.props.children
 	      );
 	    }
@@ -27494,10 +26800,9 @@ var Grommet =
 
 	exports.default = Tile;
 
+
 	Tile.propTypes = _extends({
-	  onClick: _react.PropTypes.func,
 	  selected: _react.PropTypes.bool,
-	  status: _react.PropTypes.string, // deprecated, will be removed
 	  wide: _react.PropTypes.bool
 	}, _Box2.default.propTypes);
 
@@ -27509,34 +26814,40 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 220 */
+/* 174 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -27550,28 +26861,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-previous'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "previous";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-previous', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'previous';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25.2071', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25.2071', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -27588,13 +26903,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -27602,38 +26918,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Previous';
 	module.exports = exports['default'];
 
 /***/ },
-/* 221 */
+/* 175 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -27647,28 +26970,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-next'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "next";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-next', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'next';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -27685,13 +27012,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -27699,38 +27027,2314 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Next';
 	module.exports = exports['default'];
 
 /***/ },
-/* 222 */
+/* 176 */
 /***/ function(module, exports, __webpack_require__) {
 
-	'use strict';
+	var __WEBPACK_AMD_DEFINE_RESULT__;(function(window, undefined) {
+	  'use strict';
+
+	var VENDOR_PREFIXES = ['', 'webkit', 'moz', 'MS', 'ms', 'o'];
+	var TEST_ELEMENT = document.createElement('div');
+
+	var TYPE_FUNCTION = 'function';
+	var TYPE_UNDEFINED = 'undefined';
+
+	var round = Math.round;
+	var abs = Math.abs;
+	var now = Date.now;
+
+	/**
+	 * set a timeout with a given scope
+	 * @param {Function} fn
+	 * @param {Number} timeout
+	 * @param {Object} context
+	 * @returns {number}
+	 */
+	function setTimeoutScope(fn, timeout, context) {
+	    return setTimeout(bindFn(fn, context), timeout);
+	}
+
+	/**
+	 * if the argument is an array, we want to execute the fn on each entry
+	 * if it aint an array we don't want to do a thing.
+	 * this is used by all the methods that accept a single and array argument.
+	 * @param {*|Array} arg
+	 * @param {String} fn
+	 * @param {Object} [context]
+	 * @returns {Boolean}
+	 */
+	function invokeArrayArg(arg, fn, context) {
+	    if (Array.isArray(arg)) {
+	        each(arg, context[fn], context);
+	        return true;
+	    }
+	    return false;
+	}
+
+	/**
+	 * walk objects and arrays
+	 * @param {Object} obj
+	 * @param {Function} iterator
+	 * @param {Object} context
+	 */
+	function each(obj, iterator, context) {
+	    var i, len;
+
+	    if (!obj) {
+	        return;
+	    }
+
+	    if (obj.forEach) {
+	        obj.forEach(iterator, context);
+	    } else if (obj.length !== undefined) {
+	        for (i = 0, len = obj.length; i < len; i++) {
+	            iterator.call(context, obj[i], i, obj);
+	        }
+	    } else {
+	        for (i in obj) {
+	            obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj);
+	        }
+	    }
+	}
+
+	/**
+	 * extend object.
+	 * means that properties in dest will be overwritten by the ones in src.
+	 * @param {Object} dest
+	 * @param {Object} src
+	 * @param {Boolean} [merge]
+	 * @returns {Object} dest
+	 */
+	function extend(dest, src, merge) {
+	    var keys = Object.keys(src);
+	    for (var i = 0, len = keys.length; i < len; i++) {
+	        if (!merge || (merge && dest[keys[i]] === undefined)) {
+	            dest[keys[i]] = src[keys[i]];
+	        }
+	    }
+	    return dest;
+	}
+
+	/**
+	 * merge the values from src in the dest.
+	 * means that properties that exist in dest will not be overwritten by src
+	 * @param {Object} dest
+	 * @param {Object} src
+	 * @returns {Object} dest
+	 */
+	function merge(dest, src) {
+	    return extend(dest, src, true);
+	}
+
+	/**
+	 * simple class inheritance
+	 * @param {Function} child
+	 * @param {Function} base
+	 * @param {Object} [properties]
+	 */
+	function inherit(child, base, properties) {
+	    var baseP = base.prototype,
+	        childP;
+
+	    childP = child.prototype = Object.create(baseP);
+	    childP.constructor = child;
+	    childP._super = baseP;
+
+	    if (properties) {
+	        extend(childP, properties);
+	    }
+	}
+
+	/**
+	 * simple function bind
+	 * @param {Function} fn
+	 * @param {Object} context
+	 * @returns {Function}
+	 */
+	function bindFn(fn, context) {
+	    return function() {
+	        return fn.apply(context, arguments);
+	    };
+	}
+
+	/**
+	 * let a boolean value also be a function that must return a boolean
+	 * this first item in args will be used as the context
+	 * @param {Boolean|Function} val
+	 * @param {Array} [args]
+	 * @returns {Boolean}
+	 */
+	function boolOrFn(val, args) {
+	    if (typeof val == TYPE_FUNCTION) {
+	        return val.apply(args ? args[0] || undefined : undefined, args);
+	    }
+	    return val;
+	}
+
+	/**
+	 * use the val2 when val1 is undefined
+	 * @param {*} val1
+	 * @param {*} val2
+	 * @returns {*}
+	 */
+	function ifUndefined(val1, val2) {
+	    return (val1 === undefined) ? val2 : val1;
+	}
+
+	/**
+	 * addEventListener with multiple events at once
+	 * @param {HTMLElement} element
+	 * @param {String} types
+	 * @param {Function} handler
+	 */
+	function addEventListeners(element, types, handler) {
+	    each(splitStr(types), function(type) {
+	        element.addEventListener(type, handler, false);
+	    });
+	}
+
+	/**
+	 * removeEventListener with multiple events at once
+	 * @param {HTMLElement} element
+	 * @param {String} types
+	 * @param {Function} handler
+	 */
+	function removeEventListeners(element, types, handler) {
+	    each(splitStr(types), function(type) {
+	        element.removeEventListener(type, handler, false);
+	    });
+	}
+
+	/**
+	 * find if a node is in the given parent
+	 * @method hasParent
+	 * @param {HTMLElement} node
+	 * @param {HTMLElement} parent
+	 * @return {Boolean} found
+	 */
+	function hasParent(node, parent) {
+	    while (node) {
+	        if (node == parent) {
+	            return true;
+	        }
+	        node = node.parentNode;
+	    }
+	    return false;
+	}
+
+	/**
+	 * small indexOf wrapper
+	 * @param {String} str
+	 * @param {String} find
+	 * @returns {Boolean} found
+	 */
+	function inStr(str, find) {
+	    return str.indexOf(find) > -1;
+	}
+
+	/**
+	 * split string on whitespace
+	 * @param {String} str
+	 * @returns {Array} words
+	 */
+	function splitStr(str) {
+	    return str.trim().split(/\s+/g);
+	}
+
+	/**
+	 * find if a array contains the object using indexOf or a simple polyFill
+	 * @param {Array} src
+	 * @param {String} find
+	 * @param {String} [findByKey]
+	 * @return {Boolean|Number} false when not found, or the index
+	 */
+	function inArray(src, find, findByKey) {
+	    if (src.indexOf && !findByKey) {
+	        return src.indexOf(find);
+	    } else {
+	        for (var i = 0, len = src.length; i < len; i++) {
+	            if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) {
+	                return i;
+	            }
+	        }
+	        return -1;
+	    }
+	}
+
+	/**
+	 * convert array-like objects to real arrays
+	 * @param {Object} obj
+	 * @returns {Array}
+	 */
+	function toArray(obj) {
+	    return Array.prototype.slice.call(obj, 0);
+	}
+
+	/**
+	 * unique array with objects based on a key (like 'id') or just by the array's value
+	 * @param {Array} src [{id:1},{id:2},{id:1}]
+	 * @param {String} [key]
+	 * @returns {Array} [{id:1},{id:2}]
+	 */
+	function uniqueArray(src, key) {
+	    var results = [];
+	    var values = [];
+	    for (var i = 0, len = src.length; i < len; i++) {
+	        var val = key ? src[i][key] : src[i];
+	        if (inArray(values, val) < 0) {
+	            results.push(src[i]);
+	        }
+	        values[i] = val;
+	    }
+	    return results;
+	}
+
+	/**
+	 * get the prefixed property
+	 * @param {Object} obj
+	 * @param {String} property
+	 * @returns {String|Undefined} prefixed
+	 */
+	function prefixed(obj, property) {
+	    var prefix, prop;
+	    var camelProp = property[0].toUpperCase() + property.slice(1);
+
+	    for (var i = 0, len = VENDOR_PREFIXES.length; i < len; i++) {
+	        prefix = VENDOR_PREFIXES[i];
+	        prop = (prefix) ? prefix + camelProp : property;
+
+	        if (prop in obj) {
+	            return prop;
+	        }
+	    }
+	    return undefined;
+	}
+
+	/**
+	 * get a unique id
+	 * @returns {number} uniqueId
+	 */
+	var _uniqueId = 1;
+	function uniqueId() {
+	    return _uniqueId++;
+	}
+
+	var MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i;
+
+	var SUPPORT_TOUCH = ('ontouchstart' in window);
+	var SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;
+	var SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);
+
+	var INPUT_TYPE_TOUCH = 'touch';
+	var INPUT_TYPE_PEN = 'pen';
+	var INPUT_TYPE_MOUSE = 'mouse';
+	var INPUT_TYPE_KINECT = 'kinect';
+
+	var COMPUTE_INTERVAL = 25;
+
+	var INPUT_START = 1;
+	var INPUT_MOVE = 2;
+	var INPUT_END = 4;
+	var INPUT_CANCEL = 8;
+
+	var DIRECTION_NONE = 1;
+	var DIRECTION_LEFT = 2;
+	var DIRECTION_RIGHT = 4;
+	var DIRECTION_UP = 8;
+	var DIRECTION_DOWN = 16;
+
+	var DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT;
+	var DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN;
+	var DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL;
+
+	var PROPS_XY = ['x', 'y'];
+	var PROPS_CLIENT_XY = ['clientX', 'clientY'];
+
+	/**
+	 * create new input type manager
+	 * @param {Manager} manager
+	 * @param {Function} callback
+	 * @returns {Input}
+	 * @constructor
+	 */
+	function Input(manager, callback) {
+	    var self = this;
+	    this.manager = manager;
+	    this.callback = callback;
+
+	    // smaller wrapper around the handler, for the scope and the enabled state of the manager,
+	    // so when disabled the input events are completely bypassed.
+	    this.domHandler = function(ev) {
+	        if (boolOrFn(self.manager.options.enable, [self.manager])) {
+	            self.handler(ev);
+	        }
+	    };
+
+	    this.evEl && addEventListeners(this.manager.element, this.evEl, this.domHandler);
+	    this.evWin && addEventListeners(window, this.evWin, this.domHandler);
+	}
+
+	Input.prototype = {
+	    /**
+	     * should handle the inputEvent data and trigger the callback
+	     * @virtual
+	     */
+	    handler: function() { },
+
+	    /**
+	     * unbind the events
+	     */
+	    destroy: function() {
+	        this.elEvents && removeEventListeners(this.manager.element, this.elEvents, this.domHandler);
+	        this.winEvents && removeEventListeners(window, this.winEvents, this.domHandler);
+	    }
+	};
+
+	/**
+	 * create new input type manager
+	 * @param {Hammer} manager
+	 * @returns {Input}
+	 */
+	function createInputInstance(manager) {
+	    var Type;
+	    if (SUPPORT_POINTER_EVENTS) {
+	        Type = PointerEventInput;
+	    } else if (SUPPORT_ONLY_TOUCH) {
+	        Type = TouchInput;
+	    } else if (!SUPPORT_TOUCH) {
+	        Type = MouseInput;
+	    } else {
+	        Type = TouchMouseInput;
+	    }
+	    return new (Type)(manager, inputHandler);
+	}
+
+	/**
+	 * handle input events
+	 * @param {Manager} manager
+	 * @param {String} eventType
+	 * @param {Object} input
+	 */
+	function inputHandler(manager, eventType, input) {
+	    var pointersLen = input.pointers.length;
+	    var changedPointersLen = input.changedPointers.length;
+	    var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0));
+	    var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0));
+
+	    input.isFirst = isFirst;
+	    input.isFinal = isFinal;
+
+	    if (isFirst) {
+	        manager.session = {};
+	    }
+	    // source event is the normalized value of the domEvents
+	    // like 'touchstart, mouseup, pointerdown'
+	    input.eventType = eventType;
+
+	    // compute scale, rotation etc
+	    computeInputData(manager, input);
+
+	    // emit secret event
+	    manager.emit('hammer.input', input);
+
+	    manager.recognize(input);
+	}
+
+	/**
+	 * extend the data with some usable properties like scale, rotate, velocity etc
+	 * @param {Object} manager
+	 * @param {Object} input
+	 */
+	function computeInputData(manager, input) {
+	    var session = manager.session;
+	    var pointers = input.pointers;
+	    var pointersLength = pointers.length;
+
+	    // store the first input to calculate the distance and direction
+	    if (!session.firstInput) {
+	        session.firstInput = simpleCloneInputData(input);
+	    }
+
+	    // to compute scale and rotation we need to store the multiple touches
+	    if (pointersLength > 1 && !session.firstMultiple) {
+	        session.firstMultiple = simpleCloneInputData(input);
+	    } else if (pointersLength === 1) {
+	        session.firstMultiple = false;
+	    }
+
+	    var firstInput = session.firstInput;
+	    var firstMultiple = session.firstMultiple;
+	    var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center;
+	    var center = getCenter(pointers);
+
+	    input.timeStamp = now();
+	    input.deltaTime = input.timeStamp - firstInput.timeStamp;
+	    input.deltaX = center.x - offsetCenter.x;
+	    input.deltaY = center.y - offsetCenter.y;
+
+	    input.center = center;
+	    input.angle = getAngle(offsetCenter, center);
+	    input.distance = getDistance(offsetCenter, center);
+	    input.offsetDirection = getDirection(input.deltaX, input.deltaY);
+
+	    input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1;
+	    input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0;
+
+	    // find the correct target
+	    var target = manager.element;
+	    if (hasParent(input.srcEvent.target, target)) {
+	        target = input.srcEvent.target;
+	    }
+	    input.target = target;
+
+	    computeIntervalInputData(session, input);
+	}
+
+	/**
+	 * velocity is calculated every x ms
+	 * @param {Object} session
+	 * @param {Object} input
+	 */
+	function computeIntervalInputData(session, input) {
+	    var last = session.lastInterval;
+	    if (!last) {
+	        last = session.lastInterval = simpleCloneInputData(input);
+	    }
+
+	    var deltaTime = input.timeStamp - last.timeStamp,
+	        velocity,
+	        velocityX,
+	        velocityY,
+	        direction;
+
+	    if (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined) {
+	        var deltaX = last.deltaX - input.deltaX;
+	        var deltaY = last.deltaY - input.deltaY;
+
+	        var v = getVelocity(deltaTime, deltaX, deltaY);
+	        velocityX = v.x;
+	        velocityY = v.y;
+	        velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y;
+	        direction = getDirection(deltaX, deltaY);
+	    } else {
+	        // use latest velocity info if it doesn't overtake a minimum period
+	        velocity = last.velocity;
+	        velocityX = last.velocityX;
+	        velocityY = last.velocityY;
+	        direction = last.direction;
+	    }
+
+	    input.velocity = velocity;
+	    input.velocityX = velocityX;
+	    input.velocityY = velocityY;
+	    input.direction = direction;
+	}
+
+	/**
+	 * create a simple clone from the input used for storage of firstInput and firstMultiple
+	 * @param {Object} input
+	 * @returns {Object} clonedInputData
+	 */
+	function simpleCloneInputData(input) {
+	    // make a simple copy of the pointers because we will get a reference if we don't
+	    // we only need clientXY for the calculations
+	    var pointers = [];
+	    for (var i = 0; i < input.pointers.length; i++) {
+	        pointers[i] = {
+	            clientX: round(input.pointers[i].clientX),
+	            clientY: round(input.pointers[i].clientY)
+	        };
+	    }
+
+	    return {
+	        timeStamp: now(),
+	        pointers: pointers,
+	        center: getCenter(pointers),
+	        deltaX: input.deltaX,
+	        deltaY: input.deltaY
+	    };
+	}
+
+	/**
+	 * get the center of all the pointers
+	 * @param {Array} pointers
+	 * @return {Object} center contains `x` and `y` properties
+	 */
+	function getCenter(pointers) {
+	    var pointersLength = pointers.length;
+
+	    // no need to loop when only one touch
+	    if (pointersLength === 1) {
+	        return {
+	            x: round(pointers[0].clientX),
+	            y: round(pointers[0].clientY)
+	        };
+	    }
+
+	    var x = 0, y = 0;
+	    for (var i = 0; i < pointersLength; i++) {
+	        x += pointers[i].clientX;
+	        y += pointers[i].clientY;
+	    }
+
+	    return {
+	        x: round(x / pointersLength),
+	        y: round(y / pointersLength)
+	    };
+	}
+
+	/**
+	 * calculate the velocity between two points. unit is in px per ms.
+	 * @param {Number} deltaTime
+	 * @param {Number} x
+	 * @param {Number} y
+	 * @return {Object} velocity `x` and `y`
+	 */
+	function getVelocity(deltaTime, x, y) {
+	    return {
+	        x: x / deltaTime || 0,
+	        y: y / deltaTime || 0
+	    };
+	}
+
+	/**
+	 * get the direction between two points
+	 * @param {Number} x
+	 * @param {Number} y
+	 * @return {Number} direction
+	 */
+	function getDirection(x, y) {
+	    if (x === y) {
+	        return DIRECTION_NONE;
+	    }
+
+	    if (abs(x) >= abs(y)) {
+	        return x > 0 ? DIRECTION_LEFT : DIRECTION_RIGHT;
+	    }
+	    return y > 0 ? DIRECTION_UP : DIRECTION_DOWN;
+	}
+
+	/**
+	 * calculate the absolute distance between two points
+	 * @param {Object} p1 {x, y}
+	 * @param {Object} p2 {x, y}
+	 * @param {Array} [props] containing x and y keys
+	 * @return {Number} distance
+	 */
+	function getDistance(p1, p2, props) {
+	    if (!props) {
+	        props = PROPS_XY;
+	    }
+	    var x = p2[props[0]] - p1[props[0]],
+	        y = p2[props[1]] - p1[props[1]];
+
+	    return Math.sqrt((x * x) + (y * y));
+	}
+
+	/**
+	 * calculate the angle between two coordinates
+	 * @param {Object} p1
+	 * @param {Object} p2
+	 * @param {Array} [props] containing x and y keys
+	 * @return {Number} angle
+	 */
+	function getAngle(p1, p2, props) {
+	    if (!props) {
+	        props = PROPS_XY;
+	    }
+	    var x = p2[props[0]] - p1[props[0]],
+	        y = p2[props[1]] - p1[props[1]];
+	    return Math.atan2(y, x) * 180 / Math.PI;
+	}
+
+	/**
+	 * calculate the rotation degrees between two pointersets
+	 * @param {Array} start array of pointers
+	 * @param {Array} end array of pointers
+	 * @return {Number} rotation
+	 */
+	function getRotation(start, end) {
+	    return getAngle(end[1], end[0], PROPS_CLIENT_XY) - getAngle(start[1], start[0], PROPS_CLIENT_XY);
+	}
+
+	/**
+	 * calculate the scale factor between two pointersets
+	 * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out
+	 * @param {Array} start array of pointers
+	 * @param {Array} end array of pointers
+	 * @return {Number} scale
+	 */
+	function getScale(start, end) {
+	    return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY);
+	}
+
+	var MOUSE_INPUT_MAP = {
+	    mousedown: INPUT_START,
+	    mousemove: INPUT_MOVE,
+	    mouseup: INPUT_END,
+	    mouseout: INPUT_CANCEL
+	};
+
+	var MOUSE_ELEMENT_EVENTS = 'mousedown';
+	var MOUSE_WINDOW_EVENTS = 'mousemove mouseout mouseup';
+
+	/**
+	 * Mouse events input
+	 * @constructor
+	 * @extends Input
+	 */
+	function MouseInput() {
+	    this.evEl = MOUSE_ELEMENT_EVENTS;
+	    this.evWin = MOUSE_WINDOW_EVENTS;
+
+	    this.allow = true; // used by Input.TouchMouse to disable mouse events
+	    this.pressed = false; // mousedown state
+
+	    Input.apply(this, arguments);
+	}
+
+	inherit(MouseInput, Input, {
+	    /**
+	     * handle mouse events
+	     * @param {Object} ev
+	     */
+	    handler: function(ev) {
+	        var eventType = MOUSE_INPUT_MAP[ev.type];
+
+	        // on start we want to have the left mouse button down
+	        if (eventType & INPUT_START && ev.button === 0) {
+	            this.pressed = true;
+	        }
+
+	        if (eventType & INPUT_MOVE && ev.which !== 1) {
+	            eventType = INPUT_END;
+	        }
+
+	        // mouse must be down, and mouse events are allowed (see the TouchMouse input)
+	        if (!this.pressed || !this.allow) {
+	            return;
+	        }
+
+	        // out of the window?
+	        var target = ev.relatedTarget || ev.toElement || ev.target;
+	        if (ev.type == 'mouseout' && target.nodeName != 'HTML') {
+	            eventType = INPUT_MOVE;
+	        }
+
+	        if (eventType & (INPUT_END | INPUT_CANCEL)) {
+	            this.pressed = false;
+	        }
+
+	        this.callback(this.manager, eventType, {
+	            pointers: [ev],
+	            changedPointers: [ev],
+	            pointerType: INPUT_TYPE_MOUSE,
+	            srcEvent: ev
+	        });
+	    },
+	});
+
+	var POINTER_INPUT_MAP = {
+	    pointerdown: INPUT_START,
+	    pointermove: INPUT_MOVE,
+	    pointerup: INPUT_END,
+	    pointercancel: INPUT_CANCEL,
+	    pointerout: INPUT_CANCEL
+	};
+
+	// in IE10 the pointer types is defined as an enum
+	var IE10_POINTER_TYPE_ENUM = {
+	    2: INPUT_TYPE_TOUCH,
+	    3: INPUT_TYPE_PEN,
+	    4: INPUT_TYPE_MOUSE,
+	    5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816
+	};
+
+	var POINTER_ELEMENT_EVENTS = 'pointerdown';
+	var POINTER_WINDOW_EVENTS = 'pointermove pointerout pointerup pointercancel';
+
+	// IE10 has prefixed support, and case-sensitive
+	if (window.MSPointerEvent) {
+	    POINTER_ELEMENT_EVENTS = 'MSPointerDown';
+	    POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerOut MSPointerUp MSPointerCancel';
+	}
+
+	/**
+	 * Pointer events input
+	 * @constructor
+	 * @extends Input
+	 */
+	function PointerEventInput() {
+	    this.evEl = POINTER_ELEMENT_EVENTS;
+	    this.evWin = POINTER_WINDOW_EVENTS;
+
+	    Input.apply(this, arguments);
+
+	    this.store = (this.manager.session.pointerEvents = []);
+	}
+
+	inherit(PointerEventInput, Input, {
+	    /**
+	     * handle mouse events
+	     * @param {Object} ev
+	     */
+	    handler: function(ev) {
+	        var store = this.store;
+	        var removePointer = false;
+
+	        var eventTypeNormalized = ev.type.toLowerCase().replace('ms', '');
+	        var eventType = POINTER_INPUT_MAP[eventTypeNormalized];
+	        var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType;
+
+	        // out of the window?
+	        var target = ev.relatedTarget || ev.toElement || ev.target;
+	        if (eventTypeNormalized == 'pointerout' && target.nodeName != 'HTML') {
+	            eventType = INPUT_MOVE;
+	        }
+
+	        // start and mouse must be down
+	        if (eventType & INPUT_START && (ev.button === 0 || pointerType == INPUT_TYPE_TOUCH)) {
+	            store.push(ev);
+	        } else if (eventType & (INPUT_END | INPUT_CANCEL)) {
+	            removePointer = true;
+	        }
+
+	        // get index of the event in the store
+	        // it not found, so the pointer hasn't been down (so it's probably a hover)
+	        var storeIndex = inArray(store, ev.pointerId, 'pointerId');
+	        if (storeIndex < 0) {
+	            return;
+	        }
+
+	        // update the event in the store
+	        store[storeIndex] = ev;
+
+	        this.callback(this.manager, eventType, {
+	            pointers: store,
+	            changedPointers: [ev],
+	            pointerType: pointerType,
+	            srcEvent: ev
+	        });
+
+	        if (removePointer) {
+	            // remove from the store
+	            store.splice(storeIndex, 1);
+	        }
+	    }
+	});
+
+	var TOUCH_INPUT_MAP = {
+	    touchstart: INPUT_START,
+	    touchmove: INPUT_MOVE,
+	    touchend: INPUT_END,
+	    touchcancel: INPUT_CANCEL
+	};
+
+	var TOUCH_EVENTS = 'touchstart touchmove touchend touchcancel';
+
+	/**
+	 * Touch events input
+	 * @constructor
+	 * @extends Input
+	 */
+	function TouchInput() {
+	    this.evEl = TOUCH_EVENTS;
+	    this.targetIds = {};
+
+	    Input.apply(this, arguments);
+	}
+
+	inherit(TouchInput, Input, {
+	    /**
+	     * handle touch events
+	     * @param {Object} ev
+	     */
+	    handler: function(ev) {
+	        var touches = normalizeTouches(ev, this);
+	        this.callback(this.manager, TOUCH_INPUT_MAP[ev.type], {
+	            pointers: touches[0],
+	            changedPointers: touches[1],
+	            pointerType: INPUT_TYPE_TOUCH,
+	            srcEvent: ev
+	        });
+	    }
+	});
+
+	/**
+	 * make sure all browsers return the same touches
+	 * @param {Object} ev
+	 * @param {TouchInput} touchInput
+	 * @returns {Array} [all, changed]
+	 */
+	function normalizeTouches(ev, touchInput) {
+	    var i, len;
+
+	    var targetIds = touchInput.targetIds;
+	    var targetTouches = toArray(ev.targetTouches);
+	    var changedTouches = toArray(ev.changedTouches);
+	    var changedTargetTouches = [];
+
+	    // collect touches
+	    if (ev.type == 'touchstart') {
+	        for (i = 0, len = targetTouches.length; i < len; i++) {
+	            targetIds[targetTouches[i].identifier] = true;
+	        }
+	    }
+
+	    // filter changed touches to only contain touches that exist in the collected target ids
+	    for (i = 0, len = changedTouches.length; i < len; i++) {
+	        if (targetIds[changedTouches[i].identifier]) {
+	            changedTargetTouches.push(changedTouches[i]);
+	        }
+
+	        // cleanup removed touches
+	        if (ev.type == 'touchend'|| ev.type == 'touchcancel') {
+	            delete targetIds[changedTouches[i].identifier];
+	        }
+	    }
+
+	    return [
+	        // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel'
+	        // also removed the duplicates
+	        uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier'),
+
+	        // only the changed :-)
+	        changedTargetTouches
+	    ];
+	}
+
+	/**
+	 * Combined touch and mouse input
+	 *
+	 * Touch has a higher priority then mouse, and while touching no mouse events are allowed.
+	 * This because touch devices also emit mouse events while doing a touch.
+	 *
+	 * @constructor
+	 * @extends Input
+	 */
+	function TouchMouseInput() {
+	    Input.apply(this, arguments);
+
+	    var handler = bindFn(this.handler, this);
+	    this.touch = new TouchInput(this.manager, handler);
+	    this.mouse = new MouseInput(this.manager, handler);
+	}
+
+	inherit(TouchMouseInput, Input, {
+	    /**
+	     * handle mouse and touch events
+	     * @param {Hammer} manager
+	     * @param {String} inputEvent
+	     * @param {Object} inputData
+	     */
+	    handler: function(manager, inputEvent, inputData) {
+	        var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH),
+	            isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE);
+
+	        // when we're in a touch event, so  block all upcoming mouse events
+	        // most mobile browser also emit mouseevents, right after touchstart
+	        if (isTouch) {
+	            this.mouse.allow = false;
+	        } else if (isMouse && !this.mouse.allow) {
+	            return;
+	        }
+
+	        // reset the allowMouse when we're done
+	        if (inputEvent & (INPUT_END | INPUT_CANCEL)) {
+	            this.mouse.allow = true;
+	        }
+
+	        this.callback(manager, inputEvent, inputData);
+	    },
+
+	    /**
+	     * remove the event listeners
+	     */
+	    destroy: function() {
+	        this.touch.destroy();
+	        this.mouse.destroy();
+	    }
+	});
+
+	var PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction');
+	var NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined;
+
+	// magical touchAction value
+	var TOUCH_ACTION_COMPUTE = 'compute';
+	var TOUCH_ACTION_AUTO = 'auto';
+	var TOUCH_ACTION_MANIPULATION = 'manipulation';
+	var TOUCH_ACTION_NONE = 'none';
+	var TOUCH_ACTION_PAN_X = 'pan-x';
+	var TOUCH_ACTION_PAN_Y = 'pan-y';
+
+	/**
+	 * Touch Action
+	 * sets the touchAction property or uses the js alternative
+	 * @param {Manager} manager
+	 * @param {String} value
+	 * @constructor
+	 */
+	function TouchAction(manager, value) {
+	    this.manager = manager;
+	    this.set(value);
+	}
+
+	TouchAction.prototype = {
+	    /**
+	     * set the touchAction value on the element or enable the polyfill
+	     * @param {String} value
+	     */
+	    set: function(value) {
+	        // find out the touch-action by the event handlers
+	        if (value == TOUCH_ACTION_COMPUTE) {
+	            value = this.compute();
+	        }
+
+	        if (NATIVE_TOUCH_ACTION) {
+	            this.manager.element.style[PREFIXED_TOUCH_ACTION] = value;
+	        }
+	        this.actions = value.toLowerCase().trim();
+	    },
+
+	    /**
+	     * just re-set the touchAction value
+	     */
+	    update: function() {
+	        this.set(this.manager.options.touchAction);
+	    },
+
+	    /**
+	     * compute the value for the touchAction property based on the recognizer's settings
+	     * @returns {String} value
+	     */
+	    compute: function() {
+	        var actions = [];
+	        each(this.manager.recognizers, function(recognizer) {
+	            if (boolOrFn(recognizer.options.enable, [recognizer])) {
+	                actions = actions.concat(recognizer.getTouchAction());
+	            }
+	        });
+	        return cleanTouchActions(actions.join(' '));
+	    },
+
+	    /**
+	     * this method is called on each input cycle and provides the preventing of the browser behavior
+	     * @param {Object} input
+	     */
+	    preventDefaults: function(input) {
+	        // not needed with native support for the touchAction property
+	        if (NATIVE_TOUCH_ACTION) {
+	            return;
+	        }
+
+	        var srcEvent = input.srcEvent;
+	        var direction = input.offsetDirection;
+
+	        // if the touch action did prevented once this session
+	        if (this.manager.session.prevented) {
+	            srcEvent.preventDefault();
+	            return;
+	        }
+
+	        var actions = this.actions;
+	        var hasNone = inStr(actions, TOUCH_ACTION_NONE);
+	        var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);
+	        var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);
+
+	        if (hasNone || (hasPanY && hasPanX) ||
+	            (hasPanY && direction & DIRECTION_HORIZONTAL) ||
+	            (hasPanX && direction & DIRECTION_VERTICAL)) {
+	            return this.preventSrc(srcEvent);
+	        }
+	    },
+
+	    /**
+	     * call preventDefault to prevent the browser's default behavior (scrolling in most cases)
+	     * @param {Object} srcEvent
+	     */
+	    preventSrc: function(srcEvent) {
+	        this.manager.session.prevented = true;
+	        srcEvent.preventDefault();
+	    }
+	};
+
+	/**
+	 * when the touchActions are collected they are not a valid value, so we need to clean things up. *
+	 * @param {String} actions
+	 * @returns {*}
+	 */
+	function cleanTouchActions(actions) {
+	    // none
+	    if (inStr(actions, TOUCH_ACTION_NONE)) {
+	        return TOUCH_ACTION_NONE;
+	    }
+
+	    var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);
+	    var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);
+
+	    // pan-x and pan-y can be combined
+	    if (hasPanX && hasPanY) {
+	        return TOUCH_ACTION_PAN_X + ' ' + TOUCH_ACTION_PAN_Y;
+	    }
+
+	    // pan-x OR pan-y
+	    if (hasPanX || hasPanY) {
+	        return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y;
+	    }
+
+	    // manipulation
+	    if (inStr(actions, TOUCH_ACTION_MANIPULATION)) {
+	        return TOUCH_ACTION_MANIPULATION;
+	    }
+
+	    return TOUCH_ACTION_AUTO;
+	}
+
+	/**
+	 * Recognizer flow explained; *
+	 * All recognizers have the initial state of POSSIBLE when a input session starts.
+	 * The definition of a input session is from the first input until the last input, with all it's movement in it. *
+	 * Example session for mouse-input: mousedown -> mousemove -> mouseup
+	 *
+	 * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed
+	 * which determines with state it should be.
+	 *
+	 * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to
+	 * POSSIBLE to give it another change on the next cycle.
+	 *
+	 *               Possible
+	 *                  |
+	 *            +-----+---------------+
+	 *            |                     |
+	 *      +-----+-----+               |
+	 *      |           |               |
+	 *   Failed      Cancelled          |
+	 *                          +-------+------+
+	 *                          |              |
+	 *                      Recognized       Began
+	 *                                         |
+	 *                                      Changed
+	 *                                         |
+	 *                                  Ended/Recognized
+	 */
+	var STATE_POSSIBLE = 1;
+	var STATE_BEGAN = 2;
+	var STATE_CHANGED = 4;
+	var STATE_ENDED = 8;
+	var STATE_RECOGNIZED = STATE_ENDED;
+	var STATE_CANCELLED = 16;
+	var STATE_FAILED = 32;
+
+	/**
+	 * Recognizer
+	 * Every recognizer needs to extend from this class.
+	 * @constructor
+	 * @param {Object} options
+	 */
+	function Recognizer(options) {
+	    this.id = uniqueId();
+
+	    this.manager = null;
+	    this.options = merge(options || {}, this.defaults);
+
+	    // default is enable true
+	    this.options.enable = ifUndefined(this.options.enable, true);
+
+	    this.state = STATE_POSSIBLE;
+
+	    this.simultaneous = {};
+	    this.requireFail = [];
+	}
+
+	Recognizer.prototype = {
+	    /**
+	     * @virtual
+	     * @type {Object}
+	     */
+	    defaults: {},
+
+	    /**
+	     * set options
+	     * @param {Object} options
+	     * @return {Recognizer}
+	     */
+	    set: function(options) {
+	        extend(this.options, options);
+
+	        // also update the touchAction, in case something changed about the directions/enabled state
+	        this.manager && this.manager.touchAction.update();
+	        return this;
+	    },
+
+	    /**
+	     * recognize simultaneous with an other recognizer.
+	     * @param {Recognizer} otherRecognizer
+	     * @returns {Recognizer} this
+	     */
+	    recognizeWith: function(otherRecognizer) {
+	        if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) {
+	            return this;
+	        }
+
+	        var simultaneous = this.simultaneous;
+	        otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);
+	        if (!simultaneous[otherRecognizer.id]) {
+	            simultaneous[otherRecognizer.id] = otherRecognizer;
+	            otherRecognizer.recognizeWith(this);
+	        }
+	        return this;
+	    },
+
+	    /**
+	     * drop the simultaneous link. it doesnt remove the link on the other recognizer.
+	     * @param {Recognizer} otherRecognizer
+	     * @returns {Recognizer} this
+	     */
+	    dropRecognizeWith: function(otherRecognizer) {
+	        if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) {
+	            return this;
+	        }
+
+	        otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);
+	        delete this.simultaneous[otherRecognizer.id];
+	        return this;
+	    },
+
+	    /**
+	     * recognizer can only run when an other is failing
+	     * @param {Recognizer} otherRecognizer
+	     * @returns {Recognizer} this
+	     */
+	    requireFailure: function(otherRecognizer) {
+	        if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) {
+	            return this;
+	        }
+
+	        var requireFail = this.requireFail;
+	        otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);
+	        if (inArray(requireFail, otherRecognizer) === -1) {
+	            requireFail.push(otherRecognizer);
+	            otherRecognizer.requireFailure(this);
+	        }
+	        return this;
+	    },
+
+	    /**
+	     * drop the requireFailure link. it does not remove the link on the other recognizer.
+	     * @param {Recognizer} otherRecognizer
+	     * @returns {Recognizer} this
+	     */
+	    dropRequireFailure: function(otherRecognizer) {
+	        if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) {
+	            return this;
+	        }
+
+	        otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);
+	        var index = inArray(this.requireFail, otherRecognizer);
+	        if (index > -1) {
+	            this.requireFail.splice(index, 1);
+	        }
+	        return this;
+	    },
+
+	    /**
+	     * has require failures boolean
+	     * @returns {boolean}
+	     */
+	    hasRequireFailures: function() {
+	        return this.requireFail.length > 0;
+	    },
+
+	    /**
+	     * if the recognizer can recognize simultaneous with an other recognizer
+	     * @param {Recognizer} otherRecognizer
+	     * @returns {Boolean}
+	     */
+	    canRecognizeWith: function(otherRecognizer) {
+	        return !!this.simultaneous[otherRecognizer.id];
+	    },
+
+	    /**
+	     * You should use `tryEmit` instead of `emit` directly to check
+	     * that all the needed recognizers has failed before emitting.
+	     * @param {Object} input
+	     */
+	    emit: function(input) {
+	        this.manager.emit(this.options.event, input); // simple 'eventName' events
+	        this.manager.emit(this.options.event + stateStr(this.state), input); // like 'panmove' and 'panstart'
+	    },
+
+	    /**
+	     * Check that all the require failure recognizers has failed,
+	     * if true, it emits a gesture event,
+	     * otherwise, setup the state to FAILED.
+	     * @param {Object} input
+	     */
+	    tryEmit: function(input) {
+	        if (this.canEmit()) {
+	            return this.emit(input);
+	        }
+	        // it's failing anyway
+	        this.state = STATE_FAILED;
+	    },
+
+	    /**
+	     * can we emit?
+	     * @returns {boolean}
+	     */
+	    canEmit: function() {
+	        for (var i = 0; i < this.requireFail.length; i++) {
+	            if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) {
+	                return false;
+	            }
+	        }
+	        return true;
+	    },
+
+	    /**
+	     * update the recognizer
+	     * @param {Object} inputData
+	     */
+	    recognize: function(inputData) {
+	        // make a new copy of the inputData
+	        // so we can change the inputData without messing up the other recognizers
+	        var inputDataClone = extend({}, inputData);
+
+	        // is is enabled and allow recognizing?
+	        if (!boolOrFn(this.options.enable, [this, inputDataClone])) {
+	            this.reset();
+	            this.state = STATE_FAILED;
+	            return;
+	        }
+
+	        // reset when we've reached the end
+	        if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) {
+	            this.state = STATE_POSSIBLE;
+	        }
+
+	        this.state = this.process(inputDataClone);
+
+	        // the recognizer has recognized a gesture
+	        // so trigger an event
+	        if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) {
+	            this.tryEmit(inputDataClone);
+	        }
+	    },
+
+	    /**
+	     * return the state of the recognizer
+	     * the actual recognizing happens in this method
+	     * @virtual
+	     * @param {Object} inputData
+	     * @returns {Const} STATE
+	     */
+	    process: function(inputData) { }, // jshint ignore:line
+
+	    /**
+	     * return the preferred touch-action
+	     * @virtual
+	     * @returns {Array}
+	     */
+	    getTouchAction: function() { },
+
+	    /**
+	     * called when the gesture isn't allowed to recognize
+	     * like when another is being recognized or it is disabled
+	     * @virtual
+	     */
+	    reset: function() { }
+	};
+
+	/**
+	 * get a usable string, used as event postfix
+	 * @param {Const} state
+	 * @returns {String} state
+	 */
+	function stateStr(state) {
+	    if (state & STATE_CANCELLED) {
+	        return 'cancel';
+	    } else if (state & STATE_ENDED) {
+	        return 'end';
+	    } else if (state & STATE_CHANGED) {
+	        return 'move';
+	    } else if (state & STATE_BEGAN) {
+	        return 'start';
+	    }
+	    return '';
+	}
+
+	/**
+	 * direction cons to string
+	 * @param {Const} direction
+	 * @returns {String}
+	 */
+	function directionStr(direction) {
+	    if (direction == DIRECTION_DOWN) {
+	        return 'down';
+	    } else if (direction == DIRECTION_UP) {
+	        return 'up';
+	    } else if (direction == DIRECTION_LEFT) {
+	        return 'left';
+	    } else if (direction == DIRECTION_RIGHT) {
+	        return 'right';
+	    }
+	    return '';
+	}
+
+	/**
+	 * get a recognizer by name if it is bound to a manager
+	 * @param {Recognizer|String} otherRecognizer
+	 * @param {Recognizer} recognizer
+	 * @returns {Recognizer}
+	 */
+	function getRecognizerByNameIfManager(otherRecognizer, recognizer) {
+	    var manager = recognizer.manager;
+	    if (manager) {
+	        return manager.get(otherRecognizer);
+	    }
+	    return otherRecognizer;
+	}
+
+	/**
+	 * This recognizer is just used as a base for the simple attribute recognizers.
+	 * @constructor
+	 * @extends Recognizer
+	 */
+	function AttrRecognizer() {
+	    Recognizer.apply(this, arguments);
+	}
+
+	inherit(AttrRecognizer, Recognizer, {
+	    /**
+	     * @namespace
+	     * @memberof AttrRecognizer
+	     */
+	    defaults: {
+	        /**
+	         * @type {Number}
+	         * @default 1
+	         */
+	        pointers: 1
+	    },
+
+	    /**
+	     * Used to check if it the recognizer receives valid input, like input.distance > 10.
+	     * @memberof AttrRecognizer
+	     * @param {Object} input
+	     * @returns {Boolean} recognized
+	     */
+	    attrTest: function(input) {
+	        var optionPointers = this.options.pointers;
+	        return optionPointers === 0 || input.pointers.length === optionPointers;
+	    },
+
+	    /**
+	     * Process the input and return the state for the recognizer
+	     * @memberof AttrRecognizer
+	     * @param {Object} input
+	     * @returns {*} State
+	     */
+	    process: function(input) {
+	        var state = this.state;
+	        var eventType = input.eventType;
+
+	        var isRecognized = state & (STATE_BEGAN | STATE_CHANGED);
+	        var isValid = this.attrTest(input);
+
+	        // on cancel input and we've recognized before, return STATE_CANCELLED
+	        if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) {
+	            return state | STATE_CANCELLED;
+	        } else if (isRecognized || isValid) {
+	            if (eventType & INPUT_END) {
+	                return state | STATE_ENDED;
+	            } else if (!(state & STATE_BEGAN)) {
+	                return STATE_BEGAN;
+	            }
+	            return state | STATE_CHANGED;
+	        }
+	        return STATE_FAILED;
+	    }
+	});
+
+	/**
+	 * Pan
+	 * Recognized when the pointer is down and moved in the allowed direction.
+	 * @constructor
+	 * @extends AttrRecognizer
+	 */
+	function PanRecognizer() {
+	    AttrRecognizer.apply(this, arguments);
+
+	    this.pX = null;
+	    this.pY = null;
+	}
+
+	inherit(PanRecognizer, AttrRecognizer, {
+	    /**
+	     * @namespace
+	     * @memberof PanRecognizer
+	     */
+	    defaults: {
+	        event: 'pan',
+	        threshold: 10,
+	        pointers: 1,
+	        direction: DIRECTION_ALL
+	    },
+
+	    getTouchAction: function() {
+	        var direction = this.options.direction;
+
+	        if (direction === DIRECTION_ALL) {
+	            return [TOUCH_ACTION_NONE];
+	        }
+
+	        var actions = [];
+	        if (direction & DIRECTION_HORIZONTAL) {
+	            actions.push(TOUCH_ACTION_PAN_Y);
+	        }
+	        if (direction & DIRECTION_VERTICAL) {
+	            actions.push(TOUCH_ACTION_PAN_X);
+	        }
+	        return actions;
+	    },
+
+	    directionTest: function(input) {
+	        var options = this.options;
+	        var hasMoved = true;
+	        var distance = input.distance;
+	        var direction = input.direction;
+	        var x = input.deltaX;
+	        var y = input.deltaY;
+
+	        // lock to axis?
+	        if (!(direction & options.direction)) {
+	            if (options.direction & DIRECTION_HORIZONTAL) {
+	                direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT;
+	                hasMoved = x != this.pX;
+	                distance = Math.abs(input.deltaX);
+	            } else {
+	                direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN;
+	                hasMoved = y != this.pY;
+	                distance = Math.abs(input.deltaY);
+	            }
+	        }
+	        input.direction = direction;
+	        return hasMoved && distance > options.threshold && direction & options.direction;
+	    },
+
+	    attrTest: function(input) {
+	        return AttrRecognizer.prototype.attrTest.call(this, input) &&
+	            (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input)));
+	    },
+
+	    emit: function(input) {
+	        this.pX = input.deltaX;
+	        this.pY = input.deltaY;
+
+	        this._super.emit.call(this, input);
+
+	        var direction = directionStr(input.direction);
+	        if (direction) {
+	            this.manager.emit(this.options.event + direction, input);
+	        }
+	    }
+	});
+
+	/**
+	 * Pinch
+	 * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out).
+	 * @constructor
+	 * @extends AttrRecognizer
+	 */
+	function PinchRecognizer() {
+	    AttrRecognizer.apply(this, arguments);
+	}
+
+	inherit(PinchRecognizer, AttrRecognizer, {
+	    /**
+	     * @namespace
+	     * @memberof PinchRecognizer
+	     */
+	    defaults: {
+	        event: 'pinch',
+	        threshold: 0,
+	        pointers: 2
+	    },
+
+	    getTouchAction: function() {
+	        return [TOUCH_ACTION_NONE];
+	    },
+
+	    attrTest: function(input) {
+	        return this._super.attrTest.call(this, input) &&
+	            (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN);
+	    },
+
+	    emit: function(input) {
+	        this._super.emit.call(this, input);
+	        if (input.scale !== 1) {
+	            var inOut = input.scale < 1 ? 'in' : 'out';
+	            this.manager.emit(this.options.event + inOut, input);
+	        }
+	    }
+	});
+
+	/**
+	 * Press
+	 * Recognized when the pointer is down for x ms without any movement.
+	 * @constructor
+	 * @extends Recognizer
+	 */
+	function PressRecognizer() {
+	    Recognizer.apply(this, arguments);
+
+	    this._timer = null;
+	    this._input = null;
+	}
+
+	inherit(PressRecognizer, Recognizer, {
+	    /**
+	     * @namespace
+	     * @memberof PressRecognizer
+	     */
+	    defaults: {
+	        event: 'press',
+	        pointers: 1,
+	        time: 500, // minimal time of the pointer to be pressed
+	        threshold: 5 // a minimal movement is ok, but keep it low
+	    },
+
+	    getTouchAction: function() {
+	        return [TOUCH_ACTION_AUTO];
+	    },
+
+	    process: function(input) {
+	        var options = this.options;
+
+	        var validPointers = input.pointers.length === options.pointers;
+	        var validMovement = input.distance < options.threshold;
+	        var validTime = input.deltaTime > options.time;
+
+	        this._input = input;
+
+	        // we only allow little movement
+	        // and we've reached an end event, so a tap is possible
+	        if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) {
+	            this.reset();
+	        } else if (input.eventType & INPUT_START) {
+	            this.reset();
+	            this._timer = setTimeoutScope(function() {
+	                this.state = STATE_RECOGNIZED;
+	                this.tryEmit();
+	            }, options.time, this);
+	        } else if (input.eventType & INPUT_END) {
+	            return STATE_RECOGNIZED;
+	        }
+	        return STATE_FAILED;
+	    },
+
+	    reset: function() {
+	        clearTimeout(this._timer);
+	    },
+
+	    emit: function(input) {
+	        if (this.state !== STATE_RECOGNIZED) {
+	            return;
+	        }
+
+	        if (input && (input.eventType & INPUT_END)) {
+	            this.manager.emit(this.options.event + 'up', input);
+	        } else {
+	            this._input.timeStamp = now();
+	            this.manager.emit(this.options.event, this._input);
+	        }
+	    }
+	});
+
+	/**
+	 * Rotate
+	 * Recognized when two or more pointer are moving in a circular motion.
+	 * @constructor
+	 * @extends AttrRecognizer
+	 */
+	function RotateRecognizer() {
+	    AttrRecognizer.apply(this, arguments);
+	}
+
+	inherit(RotateRecognizer, AttrRecognizer, {
+	    /**
+	     * @namespace
+	     * @memberof RotateRecognizer
+	     */
+	    defaults: {
+	        event: 'rotate',
+	        threshold: 0,
+	        pointers: 2
+	    },
+
+	    getTouchAction: function() {
+	        return [TOUCH_ACTION_NONE];
+	    },
+
+	    attrTest: function(input) {
+	        return this._super.attrTest.call(this, input) &&
+	            (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN);
+	    }
+	});
+
+	/**
+	 * Swipe
+	 * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction.
+	 * @constructor
+	 * @extends AttrRecognizer
+	 */
+	function SwipeRecognizer() {
+	    AttrRecognizer.apply(this, arguments);
+	}
+
+	inherit(SwipeRecognizer, AttrRecognizer, {
+	    /**
+	     * @namespace
+	     * @memberof SwipeRecognizer
+	     */
+	    defaults: {
+	        event: 'swipe',
+	        threshold: 10,
+	        velocity: 0.65,
+	        direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL,
+	        pointers: 1
+	    },
+
+	    getTouchAction: function() {
+	        return PanRecognizer.prototype.getTouchAction.call(this);
+	    },
+
+	    attrTest: function(input) {
+	        var direction = this.options.direction;
+	        var velocity;
+
+	        if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) {
+	            velocity = input.velocity;
+	        } else if (direction & DIRECTION_HORIZONTAL) {
+	            velocity = input.velocityX;
+	        } else if (direction & DIRECTION_VERTICAL) {
+	            velocity = input.velocityY;
+	        }
+
+	        return this._super.attrTest.call(this, input) &&
+	            direction & input.direction &&
+	            abs(velocity) > this.options.velocity && input.eventType & INPUT_END;
+	    },
+
+	    emit: function(input) {
+	        this.manager.emit(this.options.event, input);
+
+	        var direction = directionStr(input.direction);
+	        if (direction) {
+	            this.manager.emit(this.options.event + direction, input);
+	        }
+	    }
+	});
+
+	/**
+	 * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur
+	 * between the given interval and position. The delay option can be used to recognize multi-taps without firing
+	 * a single tap.
+	 *
+	 * The eventData from the emitted event contains the property `tapCount`, which contains the amount of
+	 * multi-taps being recognized.
+	 * @constructor
+	 * @extends Recognizer
+	 */
+	function TapRecognizer() {
+	    Recognizer.apply(this, arguments);
+
+	    // previous time and center,
+	    // used for tap counting
+	    this.pTime = false;
+	    this.pCenter = false;
+
+	    this._timer = null;
+	    this._input = null;
+	    this.count = 0;
+	}
+
+	inherit(TapRecognizer, Recognizer, {
+	    /**
+	     * @namespace
+	     * @memberof PinchRecognizer
+	     */
+	    defaults: {
+	        event: 'tap',
+	        pointers: 1,
+	        taps: 1,
+	        interval: 300, // max time between the multi-tap taps
+	        time: 250, // max time of the pointer to be down (like finger on the screen)
+	        threshold: 2, // a minimal movement is ok, but keep it low
+	        posThreshold: 10 // a multi-tap can be a bit off the initial position
+	    },
+
+	    getTouchAction: function() {
+	        return [TOUCH_ACTION_MANIPULATION];
+	    },
+
+	    process: function(input) {
+	        var options = this.options;
+
+	        var validPointers = input.pointers.length === options.pointers;
+	        var validMovement = input.distance < options.threshold;
+	        var validTouchTime = input.deltaTime < options.time;
+
+	        this.reset();
+
+	        if ((input.eventType & INPUT_START) && (this.count === 0)) {
+	            return this._failTimeout();
+	        }
+
+	        // we only allow little movement
+	        // and we've reached an end event, so a tap is possible
+	        if (validMovement && validTouchTime && validPointers) {
+	            if (input.eventType != INPUT_END) {
+	                return this._failTimeout();
+	            }
+
+	            var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true;
+	            var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold;
+
+	            this.pTime = input.timeStamp;
+	            this.pCenter = input.center;
+
+	            if (!validMultiTap || !validInterval) {
+	                this.count = 1;
+	            } else {
+	                this.count += 1;
+	            }
+
+	            this._input = input;
+
+	            // if tap count matches we have recognized it,
+	            // else it has began recognizing...
+	            var tapCount = this.count % options.taps;
+	            if (tapCount === 0) {
+	                // no failing requirements, immediately trigger the tap event
+	                // or wait as long as the multitap interval to trigger
+	                if (!this.hasRequireFailures()) {
+	                    return STATE_RECOGNIZED;
+	                } else {
+	                    this._timer = setTimeoutScope(function() {
+	                        this.state = STATE_RECOGNIZED;
+	                        this.tryEmit();
+	                    }, options.interval, this);
+	                    return STATE_BEGAN;
+	                }
+	            }
+	        }
+	        return STATE_FAILED;
+	    },
+
+	    _failTimeout: function() {
+	        this._timer = setTimeoutScope(function() {
+	            this.state = STATE_FAILED;
+	        }, this.options.interval, this);
+	        return STATE_FAILED;
+	    },
+
+	    reset: function() {
+	        clearTimeout(this._timer);
+	    },
+
+	    emit: function() {
+	        if (this.state == STATE_RECOGNIZED ) {
+	            this._input.tapCount = this.count;
+	            this.manager.emit(this.options.event, this._input);
+	        }
+	    }
+	});
+
+	/**
+	 * Simple way to create an manager with a default set of recognizers.
+	 * @param {HTMLElement} element
+	 * @param {Object} [options]
+	 * @constructor
+	 */
+	function Hammer(element, options) {
+	    options = options || {};
+	    options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset);
+	    return new Manager(element, options);
+	}
+
+	/**
+	 * @const {string}
+	 */
+	Hammer.VERSION = '2.0.1';
+
+	/**
+	 * default settings
+	 * @namespace
+	 */
+	Hammer.defaults = {
+	    /**
+	     * set if DOM events are being triggered.
+	     * But this is slower and unused by simple implementations, so disabled by default.
+	     * @type {Boolean}
+	     * @default false
+	     */
+	    domEvents: false,
+
+	    /**
+	     * The value for the touchAction property/fallback.
+	     * When set to `compute` it will magically set the correct value based on the added recognizers.
+	     * @type {String}
+	     * @default compute
+	     */
+	    touchAction: TOUCH_ACTION_COMPUTE,
+
+	    /**
+	     * @type {Boolean}
+	     * @default true
+	     */
+	    enable: true,
+
+	    /**
+	     * Default recognizer setup when calling `Hammer()`
+	     * When creating a new Manager these will be skipped.
+	     * @type {Array}
+	     */
+	    preset: [
+	        // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...]
+	        [RotateRecognizer, { enable: false }],
+	        [PinchRecognizer, { enable: false }, ['rotate']],
+	        [SwipeRecognizer,{ direction: DIRECTION_HORIZONTAL }],
+	        [PanRecognizer, { direction: DIRECTION_HORIZONTAL }, ['swipe']],
+	        [TapRecognizer],
+	        [TapRecognizer, { event: 'doubletap', taps: 2 }, ['tap']],
+	        [PressRecognizer]
+	    ],
+
+	    /**
+	     * Some CSS properties can be used to improve the working of Hammer.
+	     * Add them to this method and they will be set when creating a new Manager.
+	     * @namespace
+	     */
+	    cssProps: {
+	        /**
+	         * Disables text selection to improve the dragging gesture. When the value is `none` it also sets
+	         * `onselectstart=false` for IE9 on the element. Mainly for desktop browsers.
+	         * @type {String}
+	         * @default 'none'
+	         */
+	        userSelect: 'none',
+
+	        /**
+	         * Disable the Windows Phone grippers when pressing an element.
+	         * @type {String}
+	         * @default 'none'
+	         */
+	        touchSelect: 'none',
+
+	        /**
+	         * Disables the default callout shown when you touch and hold a touch target.
+	         * On iOS, when you touch and hold a touch target such as a link, Safari displays
+	         * a callout containing information about the link. This property allows you to disable that callout.
+	         * @type {String}
+	         * @default 'none'
+	         */
+	        touchCallout: 'none',
+
+	        /**
+	         * Specifies whether zooming is enabled. Used by IE10>
+	         * @type {String}
+	         * @default 'none'
+	         */
+	        contentZooming: 'none',
+
+	        /**
+	         * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers.
+	         * @type {String}
+	         * @default 'none'
+	         */
+	        userDrag: 'none',
+
+	        /**
+	         * Overrides the highlight color shown when the user taps a link or a JavaScript
+	         * clickable element in iOS. This property obeys the alpha value, if specified.
+	         * @type {String}
+	         * @default 'rgba(0,0,0,0)'
+	         */
+	        tapHighlightColor: 'rgba(0,0,0,0)'
+	    }
+	};
+
+	var STOP = 1;
+	var FORCED_STOP = 2;
+
+	/**
+	 * Manager
+	 * @param {HTMLElement} element
+	 * @param {Object} [options]
+	 * @constructor
+	 */
+	function Manager(element, options) {
+	    options = options || {};
+
+	    this.options = merge(options, Hammer.defaults);
+
+	    this.handlers = {};
+	    this.session = {};
+	    this.recognizers = [];
+
+	    this.element = element;
+	    this.input = createInputInstance(this);
+	    this.touchAction = new TouchAction(this, this.options.touchAction);
+
+	    toggleCssProps(this, true);
+
+	    each(options.recognizers, function(item) {
+	        var recognizer = this.add(new (item[0])(item[1]));
+	        item[2] && recognizer.recognizeWith(item[2]);
+	        item[3] && recognizer.requireFailure(item[2]);
+	    }, this);
+	}
+
+	Manager.prototype = {
+	    /**
+	     * set options
+	     * @param {Object} options
+	     * @returns {Manager}
+	     */
+	    set: function(options) {
+	        extend(this.options, options);
+	        return this;
+	    },
+
+	    /**
+	     * stop recognizing for this session.
+	     * This session will be discarded, when a new [input]start event is fired.
+	     * When forced, the recognizer cycle is stopped immediately.
+	     * @param {Boolean} [force]
+	     */
+	    stop: function(force) {
+	        this.session.stopped = force ? FORCED_STOP : STOP;
+	    },
+
+	    /**
+	     * run the recognizers!
+	     * called by the inputHandler function on every movement of the pointers (touches)
+	     * it walks through all the recognizers and tries to detect the gesture that is being made
+	     * @param {Object} inputData
+	     */
+	    recognize: function(inputData) {
+	        if (this.session.stopped) {
+	            return;
+	        }
+
+	        // run the touch-action polyfill
+	        this.touchAction.preventDefaults(inputData);
+
+	        var recognizer;
+	        var session = this.session;
+
+	        // this holds the recognizer that is being recognized.
+	        // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED
+	        // if no recognizer is detecting a thing, it is set to `null`
+	        var curRecognizer = session.curRecognizer;
+
+	        // reset when the last recognizer is recognized
+	        // or when we're in a new session
+	        if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) {
+	            curRecognizer = session.curRecognizer = null;
+	        }
+
+	        for (var i = 0, len = this.recognizers.length; i < len; i++) {
+	            recognizer = this.recognizers[i];
+
+	            // find out if we are allowed try to recognize the input for this one.
+	            // 1.   allow if the session is NOT forced stopped (see the .stop() method)
+	            // 2.   allow if we still haven't recognized a gesture in this session, or the this recognizer is the one
+	            //      that is being recognized.
+	            // 3.   allow if the recognizer is allowed to run simultaneous with the current recognized recognizer.
+	            //      this can be setup with the `recognizeWith()` method on the recognizer.
+	            if (this.session.stopped !== FORCED_STOP && ( // 1
+	                    !curRecognizer || recognizer == curRecognizer || // 2
+	                    recognizer.canRecognizeWith(curRecognizer))) { // 3
+	                recognizer.recognize(inputData);
+	            } else {
+	                recognizer.reset();
+	            }
+
+	            // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the
+	            // current active recognizer. but only if we don't already have an active recognizer
+	            if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) {
+	                curRecognizer = session.curRecognizer = recognizer;
+	            }
+	        }
+	    },
+
+	    /**
+	     * get a recognizer by its event name.
+	     * @param {Recognizer|String} recognizer
+	     * @returns {Recognizer|Null}
+	     */
+	    get: function(recognizer) {
+	        if (recognizer instanceof Recognizer) {
+	            return recognizer;
+	        }
+
+	        var recognizers = this.recognizers;
+	        for (var i = 0; i < recognizers.length; i++) {
+	            if (recognizers[i].options.event == recognizer) {
+	                return recognizers[i];
+	            }
+	        }
+	        return null;
+	    },
+
+	    /**
+	     * add a recognizer to the manager
+	     * existing recognizers with the same event name will be removed
+	     * @param {Recognizer} recognizer
+	     * @returns {Recognizer|Manager}
+	     */
+	    add: function(recognizer) {
+	        if (invokeArrayArg(recognizer, 'add', this)) {
+	            return this;
+	        }
+
+	        // remove existing
+	        var existing = this.get(recognizer.options.event);
+	        if (existing) {
+	            this.remove(existing);
+	        }
+
+	        this.recognizers.push(recognizer);
+	        recognizer.manager = this;
+
+	        this.touchAction.update();
+	        return recognizer;
+	    },
+
+	    /**
+	     * remove a recognizer by name or instance
+	     * @param {Recognizer|String} recognizer
+	     * @returns {Manager}
+	     */
+	    remove: function(recognizer) {
+	        if (invokeArrayArg(recognizer, 'remove', this)) {
+	            return this;
+	        }
+
+	        var recognizers = this.recognizers;
+	        recognizer = this.get(recognizer);
+	        recognizers.splice(inArray(recognizers, recognizer), 1);
+
+	        this.touchAction.update();
+	        return this;
+	    },
+
+	    /**
+	     * bind event
+	     * @param {String} events
+	     * @param {Function} handler
+	     * @returns {EventEmitter} this
+	     */
+	    on: function(events, handler) {
+	        var handlers = this.handlers;
+	        each(splitStr(events), function(event) {
+	            handlers[event] = handlers[event] || [];
+	            handlers[event].push(handler);
+	        });
+	        return this;
+	    },
+
+	    /**
+	     * unbind event, leave emit blank to remove all handlers
+	     * @param {String} events
+	     * @param {Function} [handler]
+	     * @returns {EventEmitter} this
+	     */
+	    off: function(events, handler) {
+	        var handlers = this.handlers;
+	        each(splitStr(events), function(event) {
+	            if (!handler) {
+	                delete handlers[event];
+	            } else {
+	                handlers[event].splice(inArray(handlers[event], handler), 1);
+	            }
+	        });
+	        return this;
+	    },
+
+	    /**
+	     * emit event to the listeners
+	     * @param {String} event
+	     * @param {Object} data
+	     */
+	    emit: function(event, data) {
+	        // we also want to trigger dom events
+	        if (this.options.domEvents) {
+	            triggerDomEvent(event, data);
+	        }
+
+	        // no handlers, so skip it all
+	        var handlers = this.handlers[event];
+	        if (!handlers || !handlers.length) {
+	            return;
+	        }
+
+	        data.type = event;
+	        data.preventDefault = function() {
+	            data.srcEvent.preventDefault();
+	        };
+
+	        for (var i = 0, len = handlers.length; i < len; i++) {
+	            handlers[i](data);
+	        }
+	    },
+
+	    /**
+	     * destroy the manager and unbinds all events
+	     * it doesn't unbind dom events, that is the user own responsibility
+	     */
+	    destroy: function() {
+	        this.element && toggleCssProps(this, false);
+
+	        this.handlers = {};
+	        this.session = {};
+	        this.input.destroy();
+	        this.element = null;
+	    }
+	};
+
+	/**
+	 * add/remove the css properties as defined in manager.options.cssProps
+	 * @param {Manager} manager
+	 * @param {Boolean} add
+	 */
+	function toggleCssProps(manager, add) {
+	    var element = manager.element;
+	    var cssProps = manager.options.cssProps;
+
+	    each(cssProps, function(value, name) {
+	        element.style[prefixed(element.style, name)] = add ? value : '';
+	    });
+
+	    var falseFn = add && function() { return false; };
+	    if (cssProps.userSelect == 'none') { element.onselectstart = falseFn; }
+	    if (cssProps.userDrag == 'none') { element.ondragstart = falseFn; }
+	}
+
+	/**
+	 * trigger dom event
+	 * @param {String} event
+	 * @param {Object} data
+	 */
+	function triggerDomEvent(event, data) {
+	    var gestureEvent = document.createEvent('Event');
+	    gestureEvent.initEvent(event, true, true);
+	    gestureEvent.gesture = data;
+	    data.target.dispatchEvent(gestureEvent);
+	}
+
+	extend(Hammer, {
+	    INPUT_START: INPUT_START,
+	    INPUT_MOVE: INPUT_MOVE,
+	    INPUT_END: INPUT_END,
+	    INPUT_CANCEL: INPUT_CANCEL,
+
+	    STATE_POSSIBLE: STATE_POSSIBLE,
+	    STATE_BEGAN: STATE_BEGAN,
+	    STATE_CHANGED: STATE_CHANGED,
+	    STATE_ENDED: STATE_ENDED,
+	    STATE_RECOGNIZED: STATE_RECOGNIZED,
+	    STATE_CANCELLED: STATE_CANCELLED,
+	    STATE_FAILED: STATE_FAILED,
+
+	    DIRECTION_NONE: DIRECTION_NONE,
+	    DIRECTION_LEFT: DIRECTION_LEFT,
+	    DIRECTION_RIGHT: DIRECTION_RIGHT,
+	    DIRECTION_UP: DIRECTION_UP,
+	    DIRECTION_DOWN: DIRECTION_DOWN,
+	    DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL,
+	    DIRECTION_VERTICAL: DIRECTION_VERTICAL,
+	    DIRECTION_ALL: DIRECTION_ALL,
+
+	    Manager: Manager,
+	    Input: Input,
+	    TouchAction: TouchAction,
+
+	    Recognizer: Recognizer,
+	    AttrRecognizer: AttrRecognizer,
+	    Tap: TapRecognizer,
+	    Pan: PanRecognizer,
+	    Swipe: SwipeRecognizer,
+	    Pinch: PinchRecognizer,
+	    Rotate: RotateRecognizer,
+	    Press: PressRecognizer,
+
+	    on: addEventListeners,
+	    off: removeEventListeners,
+	    each: each,
+	    merge: merge,
+	    extend: extend,
+	    inherit: inherit,
+	    bindFn: bindFn,
+	    prefixed: prefixed
+	});
+
+	if ("function" == TYPE_FUNCTION && __webpack_require__(177)) {
+	    !(__WEBPACK_AMD_DEFINE_RESULT__ = function() {
+	        return Hammer;
+	    }.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
+	} else if (typeof module != TYPE_UNDEFINED && module.exports) {
+	    module.exports = Hammer;
+	} else {
+	    window.Hammer = Hammer;
+	}
+
+	})(window);
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+/***/ },
+/* 177 */
+/***/ function(module, exports) {
+
+	/* WEBPACK VAR INJECTION */(function(__webpack_amd_options__) {module.exports = __webpack_amd_options__;
+
+	/* WEBPACK VAR INJECTION */}.call(exports, {}))
+
+/***/ },
+/* 178 */
+/***/ function(module, exports, __webpack_require__) {
+
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _Legend = __webpack_require__(223);
+	var _Legend = __webpack_require__(179);
 
 	var _Legend2 = _interopRequireDefault(_Legend);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
@@ -27865,7 +29469,7 @@ var Grommet =
 	    key: '_bounds',
 	    value: function _bounds(series, xAxisArg, width, height) {
 	      // normalize xAxis
-	      var xAxis = undefined;
+	      var xAxis = void 0;
 	      if (xAxisArg) {
 	        if (xAxisArg.data) {
 	          xAxis = xAxisArg;
@@ -28150,7 +29754,7 @@ var Grommet =
 
 	      // Put the control X coordinates midway between the coordinates.
 	      var deltaX = (current[0] - previous[0]) / 2;
-	      var deltaY = undefined;
+	      var deltaY = void 0;
 
 	      // Start with a flat slope. This works for peaks, valleys, and flats.
 	      var first = [current[0] - deltaX, current[1]];
@@ -28221,21 +29825,21 @@ var Grommet =
 	          previousControlCoordinates = controlCoordinates;
 	        }, this);
 
-	        var linePath = undefined;
+	        var linePath = void 0;
 	        if ('line' === this.props.type || this.props.points) {
 	          var classes = [CLASS_ROOT + "__values-line", "color-index-" + colorIndex];
 	          linePath = _react2.default.createElement('path', { fill: 'none', className: classes.join(' '), d: commands });
 	        }
 
-	        var areaPath = undefined;
+	        var areaPath = void 0;
 	        if ('area' === this.props.type) {
 	          // For area charts, close the path by drawing down to the bottom
 	          // and across to the bottom of where we started.
 	          var close = 'L' + coordinates[coordinates.length - 1][0] + ',' + bounds.graphBottom + 'L' + coordinates[0][0] + ',' + bounds.graphBottom + 'Z';
 	          var areaCommands = commands + close;
-	          var classes = [CLASS_ROOT + "__values-area", "color-index-" + colorIndex];
+	          var _classes = [CLASS_ROOT + "__values-area", "color-index-" + colorIndex];
 
-	          areaPath = _react2.default.createElement('path', { stroke: 'none', className: classes.join(' '), d: areaCommands });
+	          areaPath = _react2.default.createElement('path', { stroke: 'none', className: _classes.join(' '), d: areaCommands });
 	        }
 
 	        return _react2.default.createElement(
@@ -28312,7 +29916,7 @@ var Grommet =
 	    value: function _labelPosition(value, bounds) {
 	      var x = this._translateX(value);
 	      var startX = x;
-	      var anchor = undefined;
+	      var anchor = void 0;
 	      if ('line' === this.props.type || 'area' === this.props.type) {
 	        // Place the text in the middle for line and area type charts.
 	        anchor = 'middle';
@@ -28347,7 +29951,7 @@ var Grommet =
 	    key: '_renderXAxis',
 	    value: function _renderXAxis() {
 	      var bounds = this.state.bounds;
-	      var labelY = undefined;
+	      var labelY = void 0;
 	      if ('bottom' === bounds.xAxis.placement) {
 	        labelY = this.state.height - Math.round(XAXIS_HEIGHT * 0.3);
 	      } else {
@@ -28404,7 +30008,7 @@ var Grommet =
 	    value: function _renderYAxis() {
 	      var bounds = this.state.bounds;
 	      var start = bounds.minY;
-	      var end = undefined;
+	      var end = void 0;
 	      var width = Math.max(4, YAXIS_WIDTH / 2);
 
 	      var bars = this.props.thresholds.map(function (item, index) {
@@ -28485,8 +30089,8 @@ var Grommet =
 	          x -= bounds.xStepWidth / 2;
 	        }
 
-	        var onMouseOver = undefined;
-	        var onMouseOut = undefined;
+	        var onMouseOver = void 0;
+	        var onMouseOut = void 0;
 	        if ('front' === layer) {
 	          onMouseOver = this._onMouseOver.bind(this, xIndex);
 	          onMouseOut = this._onMouseOut.bind(this, xIndex);
@@ -28534,7 +30138,7 @@ var Grommet =
 	      var x = Math.max(1, Math.min(coordinates[0], this.state.bounds.graphWidth - 1));
 	      var line = _react2.default.createElement('line', { fill: 'none', x1: x, y1: bounds.graphTop, x2: x, y2: bounds.graphBottom });
 
-	      var points = undefined;
+	      var points = void 0;
 	      if (this.props.points) {
 	        // for area and line charts, include a dot at the intersection
 	        if ('line' === this.props.type || 'area' === this.props.type) {
@@ -28654,8 +30258,8 @@ var Grommet =
 	        yAxis = this._renderYAxis();
 	      }
 
-	      var frontBands = undefined;
-	      var activeDescendant = undefined;
+	      var frontBands = void 0;
+	      var activeDescendant = void 0;
 	      var role = 'img';
 	      if (this.props.legend) {
 	        frontBands = this._renderXBands('front');
@@ -28664,7 +30268,7 @@ var Grommet =
 	      }
 
 	      var a11yTitle = this._renderA11YTitle();
-	      var a11yTitleNode = undefined;
+	      var a11yTitleNode = void 0;
 	      if (a11yTitle) {
 	        a11yTitleNode = _react2.default.createElement(
 	          'title',
@@ -28673,7 +30277,7 @@ var Grommet =
 	        );
 	      }
 
-	      var a11yDescNode = undefined;
+	      var a11yDescNode = void 0;
 	      if (this.props.a11yDesc) {
 	        a11yDescNode = _react2.default.createElement(
 	          'desc',
@@ -28715,6 +30319,7 @@ var Grommet =
 
 	exports.default = Chart;
 
+
 	Chart.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
@@ -28775,17 +30380,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 223 */
+/* 179 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -28949,6 +30554,7 @@ var Grommet =
 
 	exports.default = Legend;
 
+
 	Legend.propTypes = {
 	  activeIndex: _react.PropTypes.number,
 	  onActive: _react.PropTypes.func,
@@ -28968,17 +30574,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 224 */
+/* 180 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -29007,7 +30613,7 @@ var Grommet =
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
 
-	      var label = undefined;
+	      var label = void 0;
 	      var labelId = CLASS_ROOT + '-label';
 	      if (this.props.label) {
 	        label = _react2.default.createElement(
@@ -29022,7 +30628,7 @@ var Grommet =
 	        classes.push(CLASS_ROOT + '--toggle');
 	      }
 
-	      var hidden = undefined;
+	      var hidden = void 0;
 	      if (this.props.disabled) {
 	        classes.push(CLASS_ROOT + '--disabled');
 	        if (this.props.checked) {
@@ -29081,6 +30687,7 @@ var Grommet =
 
 	exports.default = CheckBox;
 
+
 	CheckBox.propTypes = {
 	  checked: _react.PropTypes.bool,
 	  defaultChecked: _react.PropTypes.bool,
@@ -29095,34 +30702,159 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 225 */
+/* 181 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
+
 	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
+	var _react = __webpack_require__(2);
+
+	var _react2 = _interopRequireDefault(_react);
+
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
+	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2016 Hewlett Packard Enterprise Development LP
+
+	var CLASS_ROOT = 'columns';
+
+	var Columns = function (_Component) {
+	  _inherits(Columns, _Component);
+
+	  function Columns(props) {
+	    _classCallCheck(this, Columns);
+
+	    var _this = _possibleConstructorReturn(this, Object.getPrototypeOf(Columns).call(this, props));
+
+	    _this._onResize = _this._onResize.bind(_this);
+	    _this._layout = _this._layout.bind(_this);
+	    _this.state = { count: 1 };
+	    return _this;
+	  }
+
+	  _createClass(Columns, [{
+	    key: 'componentDidMount',
+	    value: function componentDidMount() {
+	      window.addEventListener('resize', this._onResize);
+	      this._layout();
+	    }
+	  }, {
+	    key: 'componentWillUnmount',
+	    value: function componentWillUnmount() {
+	      window.removeEventListener('resize', this._onResize);
+	      clearTimeout(this._layoutTimer);
+	    }
+	  }, {
+	    key: '_onResize',
+	    value: function _onResize() {
+	      clearTimeout(this._layoutTimer);
+	      this._layoutTimer = setTimeout(this._layout, 50);
+	    }
+	  }, {
+	    key: '_layout',
+	    value: function _layout() {
+	      var container = this.refs.container;
+	      var count = 1;
+	      var child = container.childNodes[0];
+	      if (child) {
+	        var rect = container.getBoundingClientRect();
+	        var childRect = child.getBoundingClientRect();
+	        count = Math.floor(rect.width / childRect.width);
+	      }
+
+	      if (count === 0) {
+	        count = 1;
+	      }
+
+	      this.setState({ count: count });
+	    }
+	  }, {
+	    key: 'render',
+	    value: function render() {
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, _defineProperty({}, CLASS_ROOT + '--' + this.props.size, this.props.size));
+
+	      var children = _react2.default.Children.toArray(this.props.children);
+	      var childrenPerColumn = Math.floor(children.length / this.state.count);
+	      var groups = [];
+	      var offset = 0;
+	      while (groups.length < this.state.count) {
+	        groups.push(children.slice(offset, offset + childrenPerColumn));
+	        offset += childrenPerColumn;
+	      }
+
+	      var columns = groups.map(function (group, index) {
+	        return _react2.default.createElement(
+	          'div',
+	          { key: index, className: CLASS_ROOT + '__column' },
+	          group
+	        );
+	      });
+
+	      return _react2.default.createElement(
+	        'div',
+	        { ref: 'container', className: classes },
+	        columns
+	      );
+	    }
+	  }]);
+
+	  return Columns;
+	}(_react.Component);
+
+	exports.default = Columns;
+
+
+	Columns.propTypes = {
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	};
+	module.exports = exports['default'];
+
+/***/ },
+/* 182 */
+/***/ function(module, exports, __webpack_require__) {
+
+	'use strict';
+
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _Legend = __webpack_require__(223);
+	var _Legend = __webpack_require__(179);
 
 	var _Legend2 = _interopRequireDefault(_Legend);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
@@ -29143,6 +30875,10 @@ var Grommet =
 	var THIN_HEIGHT = 72;
 
 	var GUTTER_SIZE = 4;
+	// We pad the labels here instead of CSS to keep the DOM simple for handling
+	// text overflow.
+	var LABEL_PAD_VERTICAL = 6;
+	var LABEL_PAD_HORIZONTAL = 12;
 
 	var Distribution = function (_Component) {
 	  _inherits(Distribution, _Component);
@@ -29192,7 +30928,8 @@ var Grommet =
 	      // preserve width and height we calculated already
 	      state.width = this.state.width;
 	      state.height = this.state.height;
-	      this.setState(state, this._layout);
+	      // _layout is only needed if the component area changes, just place items
+	      this.setState(state, this._placeItems);
 	    }
 	  }, {
 	    key: 'componentWillUnmount',
@@ -29217,7 +30954,7 @@ var Grommet =
 	  }, {
 	    key: '_stateFromProps',
 	    value: function _stateFromProps(props) {
-	      var total = undefined;
+	      var total = void 0;
 	      var allIcons = false;
 	      if (props.series) {
 	        total = this._seriesTotal(props.series);
@@ -29230,13 +30967,50 @@ var Grommet =
 
 	      return {
 	        allIcons: allIcons,
-	        items: null,
 	        total: total
 	      };
 	    }
+	  }, {
+	    key: '_boxRect',
+	    value: function _boxRect(itemRect, width, height) {
+	      // leave a gutter between items, if we're not at the edge
+	      var boxRect = _extends({}, itemRect);
+	      if (0 !== boxRect.x && width > boxRect.x + boxRect.width) {
+	        boxRect.x += GUTTER_SIZE / 2;
+	        boxRect.width -= GUTTER_SIZE;
+	      }
+	      if (0 !== boxRect.y && height > boxRect.y + boxRect.height) {
+	        boxRect.y += GUTTER_SIZE / 2;
+	        boxRect.height -= GUTTER_SIZE;
+	      }
+	      boxRect.width -= GUTTER_SIZE;
+	      boxRect.height -= GUTTER_SIZE;
+	      // flush the right edge
+	      if (boxRect.x + boxRect.width > width - 2 * GUTTER_SIZE) {
+	        boxRect.width = width - boxRect.x;
+	      }
+	      // flush the bottom edge
+	      if (boxRect.y + boxRect.height > height - 2 * GUTTER_SIZE) {
+	        boxRect.height = height - boxRect.y;
+	      }
+	      return boxRect;
+	    }
+	  }, {
+	    key: '_labelRect',
+	    value: function _labelRect(boxRect) {
+	      // pad the labels here to keep the DOM simple w.r.t overflow text
+	      var labelRect = _extends({}, boxRect);
+	      labelRect.x += LABEL_PAD_HORIZONTAL;
+	      labelRect.width -= LABEL_PAD_HORIZONTAL * 2;
+	      labelRect.y += LABEL_PAD_VERTICAL;
+	      labelRect.height -= LABEL_PAD_VERTICAL * 2;
+	      return labelRect;
+	    }
 	  }, {
 	    key: '_placeItems',
 	    value: function _placeItems() {
+	      var _this2 = this;
+
 	      var width = this.state.width;
 	      var height = this.state.height;
 	      var areaPer = width * height / this.state.total;
@@ -29252,13 +31026,13 @@ var Grommet =
 
 	        // Start a new group.
 	        var groupValue = datum.value;
-	        var targetGroupValue = undefined;
+	        var targetGroupValue = void 0;
 
 	        // Make the first item as square as possible.
 	        var itemArea = areaPer * datum.value;
 	        var edgeLength = Math.round(Math.sqrt(itemArea));
-	        var itemHeight = undefined;
-	        var itemWidth = undefined;
+	        var itemHeight = void 0;
+	        var itemWidth = void 0;
 
 	        // Figure out how much value we can fit inside a rectangle
 	        // that takes the full minor axis length
@@ -29284,7 +31058,7 @@ var Grommet =
 
 	        // Now that we know the actual value of the group, give it a
 	        // rectangle whose area corresponds to the actual group value.
-	        var groupRect = undefined;
+	        var groupRect = void 0;
 	        if (remainingRect.width > remainingRect.height) {
 	          // landscape, lay out left to right
 	          groupRect = { x: remainingRect.x, y: remainingRect.y,
@@ -29305,7 +31079,7 @@ var Grommet =
 	        // We take the full minor axis length and as much major axis length
 	        // as needed to match the item's area.
 	        group.forEach(function (datum) {
-	          var itemRect = undefined;
+	          var itemRect = void 0;
 	          if (groupRect.width > groupRect.height) {
 	            // landscape, use full height
 	            itemRect = { x: groupRect.x, y: groupRect.y,
@@ -29322,9 +31096,14 @@ var Grommet =
 	            groupRect.height -= itemRect.height;
 	          }
 
+	          var boxRect = _this2._boxRect(itemRect, width, height);
+	          var labelRect = _this2._labelRect(boxRect);
+
 	          // Save this so we can render the item's box and label
 	          // in the correct location.
-	          items.push({ datum: datum, rect: itemRect });
+
+	          items.push({ datum: datum, rect: itemRect,
+	            boxRect: boxRect, labelRect: labelRect });
 	        });
 	      };
 
@@ -29354,12 +31133,14 @@ var Grommet =
 	        this.setState({ legendPosition: 'right' });
 	      }
 
-	      var graphic = this.refs.distribution;
-	      var rect = graphic.getBoundingClientRect();
-	      if (rect.width !== this.state.width || rect.height !== this.state.height || !this.state.items) {
+	      var container = this.refs.container;
+	      var rect = container.getBoundingClientRect();
+	      var width = Math.round(rect.width);
+	      var height = Math.round(rect.height);
+	      if (width !== this.state.width || height !== this.state.height || !this.state.items) {
 	        this.setState({
-	          width: rect.width,
-	          height: rect.height
+	          width: width,
+	          height: height
 	        }, this._placeItems);
 	      }
 	    }
@@ -29427,7 +31208,7 @@ var Grommet =
 	  }, {
 	    key: '_renderLegend',
 	    value: function _renderLegend() {
-	      return _react2.default.createElement(_Legend2.default, { className: CLASS_ROOT + "__legend",
+	      return _react2.default.createElement(_Legend2.default, { ref: 'legend', className: CLASS_ROOT + "__legend",
 	        series: this.props.series,
 	        units: this.props.units,
 	        activeIndex: this.state.activeIndex,
@@ -29435,7 +31216,7 @@ var Grommet =
 	    }
 	  }, {
 	    key: '_renderItemLabel',
-	    value: function _renderItemLabel(datum, itemRect, index) {
+	    value: function _renderItemLabel(datum, labelRect, index) {
 	      var labelClasses = [CLASS_ROOT + '__label'];
 	      if (!datum.icon) {
 	        labelClasses.push('color-index-' + this._itemColorIndex(datum, index));
@@ -29443,10 +31224,10 @@ var Grommet =
 	      if (datum.icon) {
 	        labelClasses.push(CLASS_ROOT + '__label--icons');
 	      }
-	      if (itemRect.width < SMALL_SIZE || itemRect.height < SMALL_SIZE) {
+	      if (labelRect.width < SMALL_SIZE || labelRect.height < SMALL_SIZE) {
 	        labelClasses.push(CLASS_ROOT + '__label--small');
 	      }
-	      if (itemRect.height < THIN_HEIGHT) {
+	      if (labelRect.height < THIN_HEIGHT) {
 	        labelClasses.push(CLASS_ROOT + '__label--thin');
 	      }
 
@@ -29460,8 +31241,8 @@ var Grommet =
 	        'div',
 	        { key: index, className: labelClasses.join(' '),
 	          'data-box-index': index, role: 'tab',
-	          style: { top: itemRect.y, left: itemRect.x, maxWidth: itemRect.width,
-	            maxHeight: itemRect.height },
+	          style: { top: labelRect.y, left: labelRect.x, maxWidth: labelRect.width,
+	            maxHeight: labelRect.height },
 	          id: this.props.a11yTitleId + '_item_' + index },
 	        _react2.default.createElement(
 	          'span',
@@ -29482,17 +31263,15 @@ var Grommet =
 	    }
 	  }, {
 	    key: '_renderItemBox',
-	    value: function _renderItemBox(itemRect, colorIndex) {
+	    value: function _renderItemBox(boxRect, colorIndex) {
 	      var boxClasses = [CLASS_ROOT + '__item-box'];
 	      if (colorIndex) {
 	        boxClasses.push('color-index-' + colorIndex);
 	      }
 
 	      return _react2.default.createElement('rect', { className: boxClasses.join(' '),
-	        x: itemRect.x + GUTTER_SIZE / 2,
-	        y: itemRect.y + GUTTER_SIZE / 2,
-	        width: itemRect.width - GUTTER_SIZE,
-	        height: itemRect.height - GUTTER_SIZE });
+	        x: boxRect.x, y: boxRect.y,
+	        width: boxRect.width, height: boxRect.height });
 	    }
 	  }, {
 	    key: '_renderItemIcon',
@@ -29537,14 +31316,14 @@ var Grommet =
 	        itemClasses.push(itemClass + '--clickable');
 	      }
 
-	      var activeDistribution = undefined;
+	      var activeDistribution = void 0;
 	      if (index === this.state.activeIndex) {
 	        activeDistribution = 'activeDistribution';
 	      }
 
 	      var colorIndex = this._itemColorIndex(datum, index);
 
-	      var contents = undefined;
+	      var contents = void 0;
 	      if (datum.icon) {
 	        contents = this._renderItemIcon(datum.icon, rect, colorIndex);
 	      } else {
@@ -29564,19 +31343,19 @@ var Grommet =
 	  }, {
 	    key: '_renderBoxes',
 	    value: function _renderBoxes() {
-	      var _this2 = this;
+	      var _this3 = this;
 
 	      return this.state.items.map(function (item, index) {
-	        return _this2._renderItem(item.datum, item.rect, index);
+	        return _this3._renderItem(item.datum, item.boxRect, index);
 	      }, this);
 	    }
 	  }, {
 	    key: '_renderLabels',
 	    value: function _renderLabels() {
-	      var _this3 = this;
+	      var _this4 = this;
 
 	      return this.state.items.map(function (item, index) {
-	        return _this3._renderItemLabel(item.datum, item.rect, index);
+	        return _this4._renderItemLabel(item.datum, item.labelRect, index);
 	      }, this);
 	    }
 	  }, {
@@ -29615,19 +31394,19 @@ var Grommet =
 	        classes.push(this.props.className);
 	      }
 
-	      var legend = undefined;
+	      var legend = void 0;
 	      if (this.props.legend) {
 	        legend = this._renderLegend();
 	      }
 
-	      var background = undefined;
+	      var background = void 0;
 	      if (!this.state.allIcons) {
 	        background = _react2.default.createElement('rect', { className: CLASS_ROOT + '__background', x: 0, y: 0, stroke: 'none',
 	          width: this.state.width, height: this.state.height });
 	      }
 
 	      var boxes = [];
-	      var labels = undefined;
+	      var labels = void 0;
 	      if (this.state.items) {
 	        boxes = this._renderBoxes();
 	        labels = this._renderLabels();
@@ -29643,7 +31422,7 @@ var Grommet =
 	        a11yTitle = _Intl2.default.getMessage(this.context.intl, 'Loading');
 	      }
 
-	      var activeDescendant = undefined;
+	      var activeDescendant = void 0;
 	      if (this.state.activeIndex >= 0) {
 	        activeDescendant = this.props.a11yTitleId + '_item_' + this.state.activeIndex;
 	      }
@@ -29654,7 +31433,7 @@ var Grommet =
 	        a11yTitle
 	      );
 
-	      var a11yDescNode = undefined;
+	      var a11yDescNode = void 0;
 	      if (this.props.a11yDesc) {
 	        a11yDescNode = _react2.default.createElement(
 	          'desc',
@@ -29680,7 +31459,7 @@ var Grommet =
 	        ),
 	        _react2.default.createElement(
 	          'div',
-	          { ref: 'distributionItems' },
+	          { ref: 'distributionItems', className: CLASS_ROOT + '__labels' },
 	          labels
 	        ),
 	        legend
@@ -29693,6 +31472,7 @@ var Grommet =
 
 	exports.default = Distribution;
 
+
 	Distribution.contextTypes = {
 	  intl: _react.PropTypes.object
 	};
@@ -29706,7 +31486,7 @@ var Grommet =
 	  legend: _react.PropTypes.bool,
 	  legendTotal: _react.PropTypes.bool,
 	  series: _react.PropTypes.arrayOf(_react.PropTypes.shape({
-	    label: _react.PropTypes.string,
+	    label: _react.PropTypes.node,
 	    value: _react.PropTypes.number.isRequired,
 	    colorIndex: _react.PropTypes.string,
 	    important: _react.PropTypes.bool,
@@ -29729,48 +31509,50 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 226 */
+/* 183 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
-	var _react = __webpack_require__(2);
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
-	var _react2 = _interopRequireDefault(_react);
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
-	var _pick = __webpack_require__(76);
+	var _react = __webpack_require__(2);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _react2 = _interopRequireDefault(_react);
 
-	var _keys = __webpack_require__(53);
+	var _classnames3 = __webpack_require__(3);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _classnames4 = _interopRequireDefault(_classnames3);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _SkipLinkAnchor = __webpack_require__(101);
+	var _SkipLinkAnchor = __webpack_require__(42);
 
 	var _SkipLinkAnchor2 = _interopRequireDefault(_SkipLinkAnchor);
 
+	var _Props = __webpack_require__(49);
+
+	var _Props2 = _interopRequireDefault(_Props);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "footer";
+	var CLASS_ROOT = 'footer';
 
 	var Footer = function (_Component) {
 	  _inherits(Footer, _Component);
@@ -29784,32 +31566,24 @@ var Grommet =
 	  _createClass(Footer, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      var containerClasses = [CLASS_ROOT + "__container"];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        // Deprecated
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
-	      if (this.props.float) {
-	        classes.push(CLASS_ROOT + "--float");
-	        containerClasses.push(CLASS_ROOT + "__container--float");
-	      }
+	      var _classnames;
 
-	      var footerSkipLink;
+	      var classes = (0, _classnames4.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + this.props.size, this.props.size), _defineProperty(_classnames, CLASS_ROOT + '--float', this.props.float), _classnames));
+
+	      var containerClasses = (0, _classnames4.default)(CLASS_ROOT + '__container', _defineProperty({}, CLASS_ROOT + '__container--float', this.props.float));
+
+	      var footerSkipLink = void 0;
 	      if (this.props.primary) {
 	        footerSkipLink = _react2.default.createElement(_SkipLinkAnchor2.default, { label: 'Footer' });
 	      }
 
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
+
 	      return _react2.default.createElement(
 	        _Box2.default,
-	        _extends({ tag: 'footer' }, other, { className: classes.join(' '),
-	          containerClassName: containerClasses.join(' ') }),
+	        _extends({}, boxProps, { tag: 'footer', className: classes,
+	          containerClassName: containerClasses,
+	          primary: false }),
 	        footerSkipLink,
 	        this.props.children
 	      );
@@ -29820,53 +31594,53 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Footer;
+	;
 
 	Footer.propTypes = _extends({
-	  primary: _react.PropTypes.bool,
-	  large: _react.PropTypes.bool, // Deprecated
+	  float: _react.PropTypes.bool,
 	  size: _react.PropTypes.oneOf(['small', 'medium', 'large']),
-	  small: _react.PropTypes.bool, // Deprecated
-	  float: _react.PropTypes.bool
+	  primary: _react.PropTypes.bool
 	}, _Box2.default.propTypes);
 
 	Footer.defaultProps = {
-	  pad: 'none',
 	  direction: 'row',
 	  responsive: false
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 227 */
+/* 184 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _keys = __webpack_require__(53);
+	var _classnames2 = __webpack_require__(3);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _classnames3 = _interopRequireDefault(_classnames2);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "form";
+	var CLASS_ROOT = 'form';
 
 	var Form = function (_Component) {
 	  _inherits(Form, _Component);
@@ -29880,28 +31654,19 @@ var Grommet =
 	  _createClass(Form, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.compact) {
-	        classes.push(CLASS_ROOT + "--compact");
-	      }
-	      if (this.props.fill) {
-	        classes.push(CLASS_ROOT + "--fill");
-	      }
-	      if (this.props.pad) {
-	        if (typeof this.props.pad === 'string') {
-	          classes.push(CLASS_ROOT + "--pad-" + this.props.pad);
-	        } else if (_typeof(this.props.pad) === 'object') {
-	          (0, _keys2.default)(this.props.pad).forEach(function (key) {
-	            classes.push(CLASS_ROOT + '--pad-' + key + '-' + this.props.pad[key]);
-	          }.bind(this));
-	        }
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
+
+	      var _props = this.props;
+	      var className = _props.className;
+	      var compact = _props.compact;
+	      var fill = _props.fill;
+	      var pad = _props.pad;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--compact', compact), _defineProperty(_classnames, CLASS_ROOT + '--fill', fill), _defineProperty(_classnames, CLASS_ROOT + '--pad-' + pad, typeof pad === 'string'), _defineProperty(_classnames, CLASS_ROOT + '--pad-horizontal-' + pad.horizontal, (typeof pad === 'undefined' ? 'undefined' : _typeof(pad)) === 'object' && 'horizontal' in pad), _defineProperty(_classnames, CLASS_ROOT + '--pad-vertical-' + pad.vertical, (typeof pad === 'undefined' ? 'undefined' : _typeof(pad)) === 'object' && 'vertical' in pad), _classnames));
+
 	      return _react2.default.createElement(
 	        'form',
-	        { className: classes.join(' '), onSubmit: this.props.onSubmit },
+	        { className: classes, onSubmit: this.props.onSubmit },
 	        this.props.children
 	      );
 	    }
@@ -29911,11 +31676,11 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Form;
+	;
 
 	Form.propTypes = {
 	  compact: _react.PropTypes.bool,
 	  fill: _react.PropTypes.bool,
-	  flush: _react.PropTypes.bool,
 	  onSubmit: _react.PropTypes.func,
 	  pad: _react.PropTypes.oneOfType([_react.PropTypes.oneOf(['none', 'small', 'medium', 'large']), _react.PropTypes.shape({
 	    horizontal: _react.PropTypes.oneOf(['none', 'small', 'medium', 'large']),
@@ -29926,23 +31691,22 @@ var Grommet =
 	Form.defaultProps = {
 	  compact: false,
 	  fill: false,
-	  flush: true,
 	  pad: 'none'
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 228 */
+/* 185 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -30030,7 +31794,7 @@ var Grommet =
 	        classes.push(this.props.className);
 	      }
 
-	      var error;
+	      var error = void 0;
 	      if (this.props.error) {
 	        classes.push(CLASS_ROOT + "--error");
 	        error = _react2.default.createElement(
@@ -30039,7 +31803,7 @@ var Grommet =
 	          this.props.error
 	        );
 	      }
-	      var help;
+	      var help = void 0;
 	      if (this.props.help !== null && this.props.help !== undefined) {
 	        help = _react2.default.createElement(
 	          'span',
@@ -30048,15 +31812,19 @@ var Grommet =
 	        );
 	      }
 
+	      var labelNode = void 0;
+	      if (this.props.label) {
+	        labelNode = _react2.default.createElement(
+	          'label',
+	          { className: CLASS_ROOT + "__label", htmlFor: this.props.htmlFor },
+	          this.props.label
+	        );
+	      }
 	      return _react2.default.createElement(
 	        'div',
 	        { className: classes.join(' '), onClick: this._onClick },
 	        error,
-	        _react2.default.createElement(
-	          'label',
-	          { className: CLASS_ROOT + "__label", htmlFor: this.props.htmlFor },
-	          this.props.label
-	        ),
+	        labelNode,
 	        help,
 	        _react2.default.createElement(
 	          'span',
@@ -30072,6 +31840,7 @@ var Grommet =
 
 	exports.default = FormField;
 
+
 	FormField.propTypes = {
 	  error: _react.PropTypes.node,
 	  help: _react.PropTypes.node,
@@ -30083,21 +31852,25 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 229 */
+/* 186 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames = __webpack_require__(3);
+
+	var _classnames2 = _interopRequireDefault(_classnames);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -30106,6 +31879,8 @@ var Grommet =
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
+	var CLASS_ROOT = 'form-fields';
+
 	var FormFields = function (_Component) {
 	  _inherits(FormFields, _Component);
 
@@ -30118,13 +31893,11 @@ var Grommet =
 	  _createClass(FormFields, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = ["form-fields"];
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var classes = (0, _classnames2.default)(CLASS_ROOT, this.props.className);
+
 	      return _react2.default.createElement(
 	        'div',
-	        { className: classes.join(' ') },
+	        { className: classes },
 	        this.props.children
 	      );
 	    }
@@ -30134,20 +31907,21 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = FormFields;
+	;
 	module.exports = exports['default'];
 
 /***/ },
-/* 230 */
+/* 187 */
 /***/ function(module, exports, __webpack_require__) {
 
-	"use strict";
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -30160,37 +31934,119 @@ var Grommet =
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "headline";
+	var CLASS_ROOT = 'heading';
 
-	var Headline = function (_Component) {
-	  _inherits(Headline, _Component);
+	var Heading = function (_Component) {
+	  _inherits(Heading, _Component);
 
-	  function Headline() {
-	    _classCallCheck(this, Headline);
+	  function Heading() {
+	    _classCallCheck(this, Heading);
 
-	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Headline).apply(this, arguments));
+	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Heading).apply(this, arguments));
 	  }
 
-	  _createClass(Headline, [{
-	    key: "render",
+	  _createClass(Heading, [{
+	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
-	      if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.small) {
-	        classes.push(CLASS_ROOT + "--small");
+	      if (this.props.size) {
+	        classes.push(CLASS_ROOT + '--' + this.props.size);
 	      }
 	      if (this.props.strong) {
-	        classes.push(CLASS_ROOT + "--strong");
+	        classes.push(CLASS_ROOT + '--strong');
+	      }
+	      if (this.props.align) {
+	        classes.push(CLASS_ROOT + '--align-' + this.props.align);
+	      }
+	      if (this.props.margin) {
+	        classes.push(CLASS_ROOT + '--margin-' + this.props.margin);
 	      }
 	      if (this.props.className) {
 	        classes.push(this.props.className);
 	      }
 
 	      return _react2.default.createElement(
-	        "div",
+	        this.props.tag,
 	        { className: classes.join(' ') },
+	        _react2.default.createElement(
+	          'span',
+	          null,
+	          this.props.children
+	        )
+	      );
+	    }
+	  }]);
+
+	  return Heading;
+	}(_react.Component);
+
+	exports.default = Heading;
+
+
+	Heading.propTypes = {
+	  align: _react.PropTypes.oneOf(['start', 'center', 'end']),
+	  margin: _react.PropTypes.oneOf(['none', 'small', 'medium', 'large']),
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large']),
+	  strong: _react.PropTypes.bool,
+	  tag: _react.PropTypes.string
+	};
+
+	Heading.defaultProps = {
+	  tag: 'h1'
+	};
+	module.exports = exports['default'];
+
+/***/ },
+/* 188 */
+/***/ function(module, exports, __webpack_require__) {
+
+	'use strict';
+
+	Object.defineProperty(exports, "__esModule", {
+	  value: true
+	});
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+	var _react = __webpack_require__(2);
+
+	var _react2 = _interopRequireDefault(_react);
+
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
+	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
+	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
+
+	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
+
+	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
+	var CLASS_ROOT = 'headline';
+
+	var Headline = function (_Component) {
+	  _inherits(Headline, _Component);
+
+	  function Headline() {
+	    _classCallCheck(this, Headline);
+
+	    return _possibleConstructorReturn(this, Object.getPrototypeOf(Headline).apply(this, arguments));
+	  }
+
+	  _createClass(Headline, [{
+	    key: 'render',
+	    value: function render() {
+	      var _classnames;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + this.props.size, this.props.size), _defineProperty(_classnames, CLASS_ROOT + '--align-' + this.props.align, this.props.align), _defineProperty(_classnames, CLASS_ROOT + '--margin-' + this.props.margin, this.props.margin), _defineProperty(_classnames, CLASS_ROOT + '--strong', this.props.strong), _classnames), this.props.className);
+
+	      return _react2.default.createElement(
+	        'div',
+	        { className: classes },
 	        this.props.children
 	      );
 	    }
@@ -30200,40 +32056,47 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Headline;
+	;
 
 	Headline.propTypes = {
-	  colorIndex: _react.PropTypes.string,
-	  large: _react.PropTypes.bool,
-	  small: _react.PropTypes.bool,
+	  align: _react.PropTypes.oneOf(['start', 'center', 'end']),
+	  margin: _react.PropTypes.oneOf(['none', 'small', 'medium', 'large']),
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large']),
 	  strong: _react.PropTypes.bool
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 231 */
+/* 189 */
 /***/ function(module, exports, __webpack_require__) {
 
-	"use strict";
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "image";
+	var CLASS_ROOT = 'image';
 
 	var Image = function (_Component) {
 	  _inherits(Image, _Component);
@@ -30245,22 +32108,17 @@ var Grommet =
 	  }
 
 	  _createClass(Image, [{
-	    key: "render",
+	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      }
-	      if (this.props.full) {
-	        if ('string' === typeof this.props.full) {
-	          classes.push(CLASS_ROOT + "--full-" + this.props.full);
-	        } else {
-	          classes.push(CLASS_ROOT + "--full");
-	        }
-	      }
+	      var _classnames;
 
-	      return _react2.default.createElement("img", { id: this.props.id, className: classes.join(' '),
-	        src: this.props.src });
+	      var _props = this.props;
+	      var size = _props.size;
+	      var full = _props.full;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, CLASS_ROOT + '--full', typeof full === 'boolean' && full), _defineProperty(_classnames, CLASS_ROOT + '--full-' + full, typeof full === 'string'), _classnames));
+
+	      return _react2.default.createElement('img', { id: this.props.id, className: classes, src: this.props.src });
 	    }
 	  }]);
 
@@ -30268,38 +32126,47 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Image;
+	;
 
 	Image.propTypes = {
 	  full: _react.PropTypes.oneOf([true, 'horizontal', 'vertical', false]),
 	  src: _react.PropTypes.string,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'thumb'])
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 232 */
+/* 190 */
 /***/ function(module, exports, __webpack_require__) {
 
-	"use strict";
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
+	var CLASS_ROOT = 'label';
+
 	var Label = function (_Component) {
 	  _inherits(Label, _Component);
 
@@ -30310,29 +32177,16 @@ var Grommet =
 	  }
 
 	  _createClass(Label, [{
-	    key: "render",
+	    key: 'render',
 	    value: function render() {
-	      var icon = null;
-	      var text = null;
-	      if (this.props.icon) {
-	        icon = _react2.default.createElement(
-	          "span",
-	          { className: "label__icon control-icon" },
-	          this.props.icon
-	        );
-	      }
-	      if (this.props.text) {
-	        text = _react2.default.createElement(
-	          "span",
-	          { className: "label__text" },
-	          this.props.text
-	        );
-	      }
+	      var _classnames;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--uppercase', this.props.uppercase), _defineProperty(_classnames, CLASS_ROOT + '--margin-' + this.props.margin, this.props.margin), _classnames));
+
 	      return _react2.default.createElement(
-	        "div",
-	        { className: "label" },
-	        icon,
-	        text
+	        'label',
+	        { className: classes, htmlFor: this.props.labelFor },
+	        this.props.children
 	      );
 	    }
 	  }]);
@@ -30341,51 +32195,43 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Label;
+	;
 
 	Label.propTypes = {
-	  icon: _react.PropTypes.node,
-	  text: _react.PropTypes.string
+	  labelFor: _react.PropTypes.string,
+	  margin: _react.PropTypes.oneOf(['none', 'small', 'medium', 'large']),
+	  uppercase: _react.PropTypes.bool
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 233 */
+/* 191 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactIntl = __webpack_require__(6);
-
-	var _isEqual = __webpack_require__(208);
-
-	var _isEqual2 = _interopRequireDefault(_isEqual);
-
-	var _Spinning = __webpack_require__(216);
+	var _Spinning = __webpack_require__(170);
 
 	var _Spinning2 = _interopRequireDefault(_Spinning);
 
-	var _InfiniteScroll = __webpack_require__(217);
+	var _InfiniteScroll = __webpack_require__(171);
 
 	var _InfiniteScroll2 = _interopRequireDefault(_InfiniteScroll);
 
-	var _Selection = __webpack_require__(218);
+	var _Selection = __webpack_require__(172);
 
 	var _Selection2 = _interopRequireDefault(_Selection);
 
-	var _ListItem = __webpack_require__(234);
-
-	var _ListItem2 = _interopRequireDefault(_ListItem);
-
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -30397,128 +32243,20 @@ var Grommet =
 	var CLASS_ROOT = "list";
 	var SELECTED_CLASS = CLASS_ROOT + "-item--selected";
 
-	// SchemaPropType is deprecated
-	var SchemaPropType = _react.PropTypes.arrayOf(_react.PropTypes.shape({
-	  attribute: _react.PropTypes.string,
-	  default: _react.PropTypes.node,
-	  image: _react.PropTypes.bool,
-	  label: _react.PropTypes.string,
-	  primary: _react.PropTypes.bool,
-	  secondary: _react.PropTypes.bool,
-	  timestamp: _react.PropTypes.bool,
-	  uid: _react.PropTypes.bool
-	}));
-
-	// SchemaListItem is deprecated, use ListItem child components inside a List instead
-
-	var SchemaListItem = function (_Component) {
-	  _inherits(SchemaListItem, _Component);
-
-	  function SchemaListItem() {
-	    _classCallCheck(this, SchemaListItem);
-
-	    return _possibleConstructorReturn(this, Object.getPrototypeOf(SchemaListItem).apply(this, arguments));
-	  }
-
-	  _createClass(SchemaListItem, [{
-	    key: '_renderValue',
-	    value: function _renderValue(item, scheme) {
-	      var result;
-	      var value = item[scheme.attribute] || scheme.default;
-	      if (scheme.image) {
-	        if (typeof value === 'string') {
-	          result = _react2.default.createElement('img', { src: value, alt: scheme.label || 'image' });
-	        } else {
-	          result = value;
-	        }
-	      } else if (scheme.timestamp) {
-	        result = _react2.default.createElement(_reactIntl.FormattedTime, { value: value,
-	          day: 'numeric',
-	          month: 'narrow',
-	          hour: '2-digit',
-	          minute: '2-digit',
-	          second: '2-digit' });
-	      } else {
-	        result = value;
-	      }
-	      return result;
-	    }
-	  }, {
-	    key: 'render',
-	    value: function render() {
-	      var item = this.props.item;
-	      var classes = [];
-	      if (this.props.direction) {
-	        classes.push(CLASS_ROOT + "-item--" + this.props.direction);
-	      }
-
-	      var image = undefined;
-	      var label = undefined;
-	      var annotation = undefined;
-
-	      this.props.schema.forEach(function (scheme) {
-	        if (scheme.image) {
-	          image = _react2.default.createElement(
-	            'span',
-	            { key: 'image', className: CLASS_ROOT + "-item__image" },
-	            this._renderValue(item, scheme)
-	          );
-	        } else if (scheme.primary) {
-	          label = _react2.default.createElement(
-	            'span',
-	            { key: 'label', className: CLASS_ROOT + "-item__label" },
-	            this._renderValue(item, scheme)
-	          );
-	        } else if (scheme.secondary) {
-	          annotation = _react2.default.createElement(
-	            'span',
-	            { key: 'annotation', className: CLASS_ROOT + "-item__annotation" },
-	            this._renderValue(item, scheme)
-	          );
-	        }
-	      }, this);
-
-	      if (this.props.onClick) {
-	        classes.push(CLASS_ROOT + "-item--selectable");
-	      }
-
-	      return _react2.default.createElement(
-	        _ListItem2.default,
-	        { className: classes.join(' '), direction: this.props.direction,
-	          selected: this.props.selected, onClick: this.props.onClick },
-	        image,
-	        label,
-	        annotation
-	      );
-	    }
-	  }]);
-
-	  return SchemaListItem;
-	}(_react.Component);
-
-	SchemaListItem.propTypes = {
-	  direction: _react.PropTypes.oneOf(['row', 'column']),
-	  item: _react.PropTypes.object.isRequired,
-	  onClick: _react.PropTypes.func,
-	  schema: SchemaPropType,
-	  selected: _react.PropTypes.bool
-	};
-
-	var List = function (_Component2) {
-	  _inherits(List, _Component2);
+	var List = function (_Component) {
+	  _inherits(List, _Component);
 
 	  function List(props) {
 	    _classCallCheck(this, List);
 
-	    var _this2 = _possibleConstructorReturn(this, Object.getPrototypeOf(List).call(this, props));
+	    var _this = _possibleConstructorReturn(this, Object.getPrototypeOf(List).call(this, props));
 
-	    _this2._onClick = _this2._onClick.bind(_this2);
-	    _this2._onClickItem = _this2._onClickItem.bind(_this2);
+	    _this._onClick = _this._onClick.bind(_this);
 
-	    _this2.state = {
+	    _this.state = {
 	      selected: _Selection2.default.normalizeIndexes(props.selected)
 	    };
-	    return _this2;
+	    return _this;
 	  }
 
 	  _createClass(List, [{
@@ -30545,7 +32283,7 @@ var Grommet =
 	  }, {
 	    key: 'componentDidUpdate',
 	    value: function componentDidUpdate(prevProps, prevState) {
-	      if (!(0, _isEqual2.default)(this.state.selected, prevState.selected)) {
+	      if (JSON.stringify(this.state.selected) !== JSON.stringify(prevState.selected)) {
 	        this._setSelection();
 	      }
 	      if (this.props.onMore && !this._scroll) {
@@ -30596,44 +32334,10 @@ var Grommet =
 	        this.props.onSelect(selected);
 	      }
 	    }
-	  }, {
-	    key: '_onClickItem',
-	    value: function _onClickItem(item) {
-	      if (this.props.onSelect) {
-	        this.props.onSelect(item);
-	      }
-	    }
-	  }, {
-	    key: '_renderItem',
-	    value: function _renderItem(item) {
-	      var uid = undefined;
-	      var selected = undefined;
-	      var onClick = undefined;
-
-	      this.props.schema.forEach(function (scheme) {
-	        if (scheme.uid) {
-	          uid = item[scheme.attribute];
-	          if (uid === this.props.selected) {
-	            selected = true;
-	          }
-	        }
-	      }, this);
-
-	      if (this.props.onSelect) {
-	        onClick = this._onClickItem.bind(this, item);
-	      }
-
-	      return _react2.default.createElement(SchemaListItem, { key: uid, item: item, schema: this.props.schema,
-	        direction: this.props.itemDirection,
-	        selected: selected, onClick: onClick });
-	    }
 	  }, {
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      }
 	      if (this.props.selectable) {
 	        classes.push(CLASS_ROOT + "--selectable");
 	      }
@@ -30641,23 +32345,13 @@ var Grommet =
 	        classes.push(this.props.className);
 	      }
 
-	      var children = undefined;
-	      var empty = undefined;
-	      if (this.props.data && this.props.schema) {
-	        // Deprecated, will be removed soon.
-	        children = this.props.data.map(function (item) {
-	          return this._renderItem(item);
-	        }, this);
-	        if (this.props.data.length === 0) {
-	          empty = _react2.default.createElement(
-	            'li',
-	            { className: CLASS_ROOT + "__empty" },
-	            this.props.emptyIndicator
-	          );
-	        }
-	      } else {
-	        children = this.props.children;
-	        empty = this.props.emptyIndicator;
+	      var empty = void 0;
+	      if (this.props.emptyIndicator) {
+	        empty = _react2.default.createElement(
+	          'li',
+	          { className: CLASS_ROOT + "__empty" },
+	          this.props.emptyIndicator
+	        );
 	      }
 
 	      var more;
@@ -30674,7 +32368,7 @@ var Grommet =
 	        'ul',
 	        { ref: 'list', className: classes.join(' '), onClick: this._onClick },
 	        empty,
-	        children,
+	        this.props.children,
 	        more
 	      );
 	    }
@@ -30685,62 +32379,57 @@ var Grommet =
 
 	exports.default = List;
 
+
 	List.propTypes = {
-	  data: _react.PropTypes.arrayOf(_react.PropTypes.object), // deprecated, use child components
 	  emptyIndicator: _react.PropTypes.node,
-	  itemDirection: _react.PropTypes.oneOf(['row', 'column']), // deprecated, use child components
 	  onMore: _react.PropTypes.func,
 	  onSelect: _react.PropTypes.func,
-	  schema: SchemaPropType, // deprecated, use child components
 	  selectable: _react.PropTypes.oneOfType([_react.PropTypes.bool, _react.PropTypes.oneOf(['multiple'])]),
-	  selected: _react.PropTypes.oneOfType([_react.PropTypes.number, _react.PropTypes.arrayOf(_react.PropTypes.number)]),
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large']) // deprecated, use child components
-	};
-
-	List.defaultProps = {
-	  itemDirection: 'row' // deprecated, use child components
+	  selected: _react.PropTypes.oneOfType([_react.PropTypes.number, _react.PropTypes.arrayOf(_react.PropTypes.number)])
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 234 */
+/* 192 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _pick = __webpack_require__(76);
+	var _classnames2 = __webpack_require__(3);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _classnames3 = _interopRequireDefault(_classnames2);
 
-	var _keys = __webpack_require__(53);
+	var _Box = __webpack_require__(38);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Box = __webpack_require__(52);
+	var _Props = __webpack_require__(49);
 
-	var _Box2 = _interopRequireDefault(_Box);
+	var _Props2 = _interopRequireDefault(_Props);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "list-item";
+	var CLASS_ROOT = 'list-item';
 
 	var ListItem = function (_Component) {
 	  _inherits(ListItem, _Component);
@@ -30754,46 +32443,16 @@ var Grommet =
 	  _createClass(ListItem, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
-	      if (this.props.selected) {
-	        classes.push(CLASS_ROOT + "--selected");
-	      }
-	      if (this.props.onClick) {
-	        classes.push(CLASS_ROOT + "--selectable");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
 
-	      var children = undefined;
-	      if (this.props.label) {
-	        var image = undefined;
-	        if (this.props.image) {
-	          image = _react2.default.createElement(
-	            'span',
-	            { className: CLASS_ROOT + "__image" },
-	            this.props.image
-	          );
-	        }
-	        children = [image, _react2.default.createElement(
-	          'span',
-	          { key: 'label', className: CLASS_ROOT + "__label" },
-	          this.props.label
-	        ), _react2.default.createElement(
-	          'span',
-	          { key: 'annotation', className: CLASS_ROOT + "__annotation" },
-	          this.props.annotation
-	        )];
-	      } else {
-	        children = this.props.children;
-	      }
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--selected', this.props.selected), _defineProperty(_classnames, CLASS_ROOT + '--selectable', this.props.onClick), _classnames));
+
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 
 	      return _react2.default.createElement(
 	        _Box2.default,
-	        _extends({ tag: 'li', className: classes.join(' ') }, other, {
-	          onClick: this.props.onClick }),
-	        children
+	        _extends({}, boxProps, { tag: 'li', className: classes }),
+	        this.props.children
 	      );
 	    }
 	  }]);
@@ -30802,16 +32461,11 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = ListItem;
+	;
 
 	ListItem.propTypes = _extends({
-	  onClick: _react.PropTypes.func,
 	  selected: _react.PropTypes.bool
-	}, _Box2.default.propTypes, {
-	  // deprecated properties
-	  annotation: _react.PropTypes.node,
-	  image: _react.PropTypes.node,
-	  label: _react.PropTypes.node
-	});
+	}, _Box2.default.propTypes);
 
 	ListItem.defaultProps = {
 	  align: 'center',
@@ -30822,17 +32476,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 235 */
+/* 193 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -30922,23 +32576,24 @@ var Grommet =
 
 	exports.default = Login;
 
+
 	Login.propTypes = {
 	  background: _react.PropTypes.string
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 236 */
+/* 194 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -30947,22 +32602,26 @@ var Grommet =
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
-	var _Form = __webpack_require__(227);
+	var _Form = __webpack_require__(184);
 
 	var _Form2 = _interopRequireDefault(_Form);
 
-	var _FormField = __webpack_require__(228);
+	var _FormField = __webpack_require__(185);
 
 	var _FormField2 = _interopRequireDefault(_FormField);
 
-	var _CheckBox = __webpack_require__(224);
+	var _CheckBox = __webpack_require__(180);
 
 	var _CheckBox2 = _interopRequireDefault(_CheckBox);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
+	var _Footer = __webpack_require__(183);
+
+	var _Footer2 = _interopRequireDefault(_Footer);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
@@ -31007,20 +32666,23 @@ var Grommet =
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
+	      if (this.props.align) {
+	        classes.push(CLASS_ROOT + '--align-' + this.props.align);
+	      }
 
 	      var errors = this.props.errors.map(function (error, index) {
 	        var errorComponent = undefined;
 	        if (error) {
 	          errorComponent = _react2.default.createElement(
 	            'div',
-	            { key: index, className: CLASS_ROOT + '__error' },
+	            { key: index, className: CLASS_ROOT + '__error error' },
 	            _react2.default.createElement(_FormattedMessage2.default, { id: error, defaultMessage: error })
 	          );
 	        }
 	        return errorComponent;
 	      });
 
-	      var logo = undefined;
+	      var logo = void 0;
 	      if (this.props.logo) {
 	        logo = _react2.default.createElement(
 	          'div',
@@ -31029,7 +32691,7 @@ var Grommet =
 	        );
 	      }
 
-	      var title = undefined;
+	      var title = void 0;
 	      if (this.props.title) {
 	        title = _react2.default.createElement(
 	          'h1',
@@ -31042,16 +32704,16 @@ var Grommet =
 	        );
 	      }
 
-	      var secondaryText = undefined;
+	      var secondaryText = void 0;
 	      if (this.props.secondaryText) {
 	        secondaryText = _react2.default.createElement(
 	          'p',
-	          { className: CLASS_ROOT + '__secondary-text' },
+	          { className: CLASS_ROOT + '__secondary-text secondary' },
 	          this.props.secondaryText
 	        );
 	      }
 
-	      var rememberMe = undefined;
+	      var rememberMe = void 0;
 	      if (this.props.rememberMe) {
 
 	        var rememberMeLabel = _react2.default.createElement(_FormattedMessage2.default, { id: 'Remember me', defaultMessage: 'Remember me' });
@@ -31063,16 +32725,16 @@ var Grommet =
 	          ref: 'rememberMe' });
 	      }
 
-	      var footer = undefined;
+	      var forgot = void 0;
 	      if (this.props.forgotPassword) {
-	        footer = _react2.default.createElement(
+	        forgot = _react2.default.createElement(
 	          'div',
-	          { className: CLASS_ROOT + '__footer' },
+	          { className: CLASS_ROOT + '__forgot' },
 	          this.props.forgotPassword
 	        );
 	      }
 
-	      var username = undefined;
+	      var username = void 0;
 	      if (this.props.usernameType === 'email') {
 	        username = _react2.default.createElement(_FormattedMessage2.default, { id: 'Email', defaultMessage: 'Email' });
 	      } else {
@@ -31084,9 +32746,13 @@ var Grommet =
 	      return _react2.default.createElement(
 	        _Form2.default,
 	        { className: classes.join(' '), onSubmit: this._onSubmit },
-	        logo,
-	        title,
-	        secondaryText,
+	        _react2.default.createElement(
+	          'div',
+	          { className: CLASS_ROOT + '__header' },
+	          logo,
+	          title,
+	          secondaryText
+	        ),
 	        _react2.default.createElement(
 	          'fieldset',
 	          null,
@@ -31100,14 +32766,19 @@ var Grommet =
 	            _FormField2.default,
 	            { htmlFor: 'password', label: password },
 	            _react2.default.createElement('input', { id: 'password', ref: 'password', type: 'password' })
-	          )
+	          ),
+	          errors
 	        ),
-	        errors,
-	        rememberMe,
-	        _react2.default.createElement(_Button2.default, { id: CLASS_ROOT + '__submit', primary: true, strong: true,
-	          className: CLASS_ROOT + '__submit', type: 'submit', label: login,
-	          onClick: this.props.onSubmit ? this._onSubmit : null }),
-	        footer
+	        _react2.default.createElement(
+	          _Footer2.default,
+	          { align: this.props.align, size: 'small', direction: 'column',
+	            pad: { vertical: 'medium', between: 'medium' } },
+	          rememberMe,
+	          _react2.default.createElement(_Button2.default, { id: CLASS_ROOT + '__submit', primary: true, strong: true,
+	            className: CLASS_ROOT + '__submit', type: 'submit', label: login,
+	            onClick: this.props.onSubmit ? this._onSubmit : null }),
+	          forgot
+	        )
 	      );
 	    }
 	  }]);
@@ -31117,7 +32788,9 @@ var Grommet =
 
 	exports.default = LoginForm;
 
+
 	LoginForm.propTypes = {
+	  align: _react.PropTypes.oneOf(['start', 'center', 'end', 'stretch']),
 	  defaultValues: _react.PropTypes.shape({
 	    username: _react.PropTypes.string,
 	    rememberMe: _react.PropTypes.bool
@@ -31143,17 +32816,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 237 */
+/* 195 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -31355,6 +33028,7 @@ var Grommet =
 
 	exports.default = ResourceMap;
 
+
 	ResourceMap.propTypes = {
 	  data: _react.PropTypes.shape({
 	    categories: _react.PropTypes.arrayOf(_react.PropTypes.shape({
@@ -31374,48 +33048,48 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 238 */
+/* 196 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _Legend = __webpack_require__(223);
+	var _Legend = __webpack_require__(179);
 
 	var _Legend2 = _interopRequireDefault(_Legend);
 
-	var _Bar = __webpack_require__(239);
+	var _Bar = __webpack_require__(197);
 
 	var _Bar2 = _interopRequireDefault(_Bar);
 
-	var _Spiral = __webpack_require__(242);
+	var _Spiral = __webpack_require__(200);
 
 	var _Spiral2 = _interopRequireDefault(_Spiral);
 
-	var _Circle = __webpack_require__(243);
+	var _Circle = __webpack_require__(201);
 
 	var _Circle2 = _interopRequireDefault(_Circle);
 
-	var _Arc = __webpack_require__(244);
+	var _Arc = __webpack_require__(202);
 
 	var _Arc2 = _interopRequireDefault(_Arc);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
@@ -31650,7 +33324,7 @@ var Grommet =
 	  }, {
 	    key: '_stateFromProps',
 	    value: function _stateFromProps(props) {
-	      var total = undefined;
+	      var total = void 0;
 	      if (props.series && props.series.length > 1) {
 	        total = this._seriesTotal(props.series);
 	      } else if (props.max && props.max.value) {
@@ -31658,7 +33332,7 @@ var Grommet =
 	      } else {
 	        total = 100;
 	      }
-	      var seriesMax = undefined;
+	      var seriesMax = void 0;
 	      if (props.series && 'spiral' === props.type) {
 	        seriesMax = this._seriesMax(props.series);
 	      }
@@ -31695,15 +33369,22 @@ var Grommet =
 	  }, {
 	    key: '_getActiveFields',
 	    value: function _getActiveFields() {
-	      var fields = undefined;
+	      var fields = void 0;
 	      if (null === this.state.activeIndex) {
-	        fields = { value: this.state.total, label: _Intl2.default.getMessage(this.context.intl, 'Total') };
+	        fields = {
+	          value: this.state.total,
+	          label: _Intl2.default.getMessage(this.context.intl, 'Total')
+	        };
 	      } else {
 	        var active = this.state.series[this.state.activeIndex];
 	        if (!active) {
 	          active = this.state.series[0];
 	        }
-	        fields = { value: active.value, label: active.label, onClick: active.onClick };
+	        fields = {
+	          value: active.value,
+	          label: active.label,
+	          onClick: active.onClick
+	        };
 	      }
 	      return fields;
 	    }
@@ -31711,15 +33392,15 @@ var Grommet =
 	    key: '_renderActiveValue',
 	    value: function _renderActiveValue() {
 	      var fields = this._getActiveFields();
-	      var classes = [CLASS_ROOT + "__value"];
+	      var classes = [CLASS_ROOT + '__value'];
 	      if (fields.onClick) {
-	        classes.push(CLASS_ROOT + "__value--active");
+	        classes.push(CLASS_ROOT + '__value--active');
 	      }
-	      var units = undefined;
+	      var units = void 0;
 	      if (this.props.units) {
 	        units = _react2.default.createElement(
 	          'span',
-	          { className: CLASS_ROOT + "__value-units large-number-font" },
+	          { className: CLASS_ROOT + '__value-units large-number-font' },
 	          this.props.units
 	        );
 	      }
@@ -31731,13 +33412,13 @@ var Grommet =
 	        _react2.default.createElement(
 	          'span',
 	          {
-	            className: CLASS_ROOT + "__value-value large-number-font" },
+	            className: CLASS_ROOT + '__value-value large-number-font' },
 	          fields.value,
 	          units
 	        ),
 	        _react2.default.createElement(
 	          'span',
-	          { className: CLASS_ROOT + "__value-label" },
+	          { className: CLASS_ROOT + '__value-label' },
 	          fields.label
 	        )
 	      );
@@ -31745,35 +33426,35 @@ var Grommet =
 	  }, {
 	    key: '_renderMinMax',
 	    value: function _renderMinMax(classes) {
-	      var minLabel = undefined;
+	      var minLabel = void 0;
 	      if (this.state.min.label) {
 	        minLabel = _react2.default.createElement(
 	          'div',
-	          { className: CLASS_ROOT + "__minmax-min" },
+	          { className: CLASS_ROOT + '__minmax-min' },
 	          this.state.min.label
 	        );
 	      }
-	      var maxLabel = undefined;
+	      var maxLabel = void 0;
 	      if (this.state.max.label) {
 	        maxLabel = _react2.default.createElement(
 	          'div',
-	          { className: CLASS_ROOT + "__minmax-max" },
+	          { className: CLASS_ROOT + '__minmax-max' },
 	          this.state.max.label
 	        );
 	      }
-	      var minMax = undefined;
+	      var minMax = void 0;
 	      if (minLabel || maxLabel) {
 	        minMax = _react2.default.createElement(
 	          'div',
-	          { className: CLASS_ROOT + "__minmax-container" },
+	          { className: CLASS_ROOT + '__minmax-container' },
 	          _react2.default.createElement(
 	            'div',
-	            { className: CLASS_ROOT + "__minmax" },
+	            { className: CLASS_ROOT + '__minmax' },
 	            minLabel,
 	            maxLabel
 	          )
 	        );
-	        classes.push(CLASS_ROOT + "--minmax");
+	        classes.push(CLASS_ROOT + '--minmax');
 	      }
 	      return minMax;
 	    }
@@ -31781,7 +33462,7 @@ var Grommet =
 	    key: '_renderLegend',
 	    value: function _renderLegend() {
 	      var total = _typeof(this.props.legend) === 'object' && this.props.legend.total;
-	      return _react2.default.createElement(_Legend2.default, { ref: 'legend', className: CLASS_ROOT + "__legend",
+	      return _react2.default.createElement(_Legend2.default, { ref: 'legend', className: CLASS_ROOT + '__legend',
 	        series: this.state.series,
 	        units: this.props.units,
 	        total: total,
@@ -31792,45 +33473,55 @@ var Grommet =
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
-	      classes.push(CLASS_ROOT + "--" + this.props.type);
+	      classes.push(CLASS_ROOT + '--' + this.props.type);
 	      if (this.props.vertical) {
-	        classes.push(CLASS_ROOT + "--vertical");
+	        classes.push(CLASS_ROOT + '--vertical');
 	      }
 	      if (this.props.stacked) {
-	        classes.push(CLASS_ROOT + "--stacked");
+	        classes.push(CLASS_ROOT + '--stacked');
 	      }
 	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
+	        classes.push(CLASS_ROOT + '--' + this.props.size);
 	      }
 	      if (this.state.series.length === 0) {
-	        classes.push(CLASS_ROOT + "--loading");
+	        classes.push(CLASS_ROOT + '--loading');
 	      } else if (this.state.series.length === 1) {
-	        classes.push(CLASS_ROOT + "--single");
+	        classes.push(CLASS_ROOT + '--single');
+	      } else {
+	        classes.push(CLASS_ROOT + '--count-' + this.state.series.length);
 	      }
 	      if (this.state.activeIndex !== null) {
-	        classes.push(CLASS_ROOT + "--active");
+	        classes.push(CLASS_ROOT + '--active');
 	      }
 	      if (this.state.tallLegend) {
-	        classes.push(CLASS_ROOT + "--tall-legend");
+	        classes.push(CLASS_ROOT + '--tall-legend');
 	      }
 	      if (this.props.className) {
 	        classes.push(this.props.className);
 	      }
 
 	      var minMax = this._renderMinMax(classes);
-
 	      var activeValue = this._renderActiveValue();
+	      var legend = void 0;
+	      var a11yRole = void 0;
 
-	      var legend = undefined;
-	      var a11yRole = undefined;
-	      if (this.props.legend || this.props.type === 'spiral') {
+	      if (this.props.legend || this.props.series) {
 	        a11yRole = 'tablist';
 
 	        if (this.props.legend) {
 	          if ('inline' !== this.props.legend.placement) {
 	            legend = this._renderLegend();
+	          } else {
+	            // Hide value (displaying total), if legend is inline
+	            // and total is set to false
+	            if (!this.props.legend.total) {
+	              activeValue = null;
+	            }
+	          }
+	          classes.push(CLASS_ROOT + '--legend-' + this.state.legendPlacement);
+	          if (this.props.legend.align) {
+	            classes.push(CLASS_ROOT + '--legend-align-' + this.props.legend.align);
 	          }
-	          classes.push(CLASS_ROOT + "--legend-" + this.state.legendPlacement);
 	        }
 	      }
 
@@ -31852,11 +33543,11 @@ var Grommet =
 	        units: this.props.units,
 	        vertical: this.props.vertical });
 
-	      var graphicContainer = undefined;
+	      var graphicContainer = void 0;
 	      if (this.state.total > 0) {
 	        graphicContainer = _react2.default.createElement(
 	          'div',
-	          { className: CLASS_ROOT + "__graphic-container" },
+	          { className: CLASS_ROOT + '__graphic-container' },
 	          graphic,
 	          minMax
 	        );
@@ -31867,7 +33558,7 @@ var Grommet =
 	        { className: classes.join(' ') },
 	        _react2.default.createElement(
 	          'div',
-	          { ref: 'activeGraphic', className: CLASS_ROOT + "__value-container" },
+	          { ref: 'activeGraphic', className: CLASS_ROOT + '__value-container' },
 	          graphicContainer,
 	          activeValue
 	        ),
@@ -31881,6 +33572,7 @@ var Grommet =
 
 	exports.default = Meter;
 
+
 	Meter.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
@@ -31888,8 +33580,9 @@ var Grommet =
 	  a11yDesc: _react.PropTypes.string,
 	  important: _react.PropTypes.number,
 	  legend: _react.PropTypes.oneOfType([_react.PropTypes.bool, _react.PropTypes.shape({
-	    total: _react.PropTypes.bool,
-	    placement: _react.PropTypes.oneOf(['right', 'bottom', 'inline'])
+	    align: _react.PropTypes.oneOf(['start', 'center', 'end']),
+	    placement: _react.PropTypes.oneOf(['right', 'bottom', 'inline']),
+	    total: _react.PropTypes.bool
 	  })]),
 	  max: _react.PropTypes.oneOfType([_react.PropTypes.shape({
 	    value: _react.PropTypes.number.isRequired,
@@ -31932,24 +33625,24 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 239 */
+/* 197 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _utils = __webpack_require__(240);
+	var _utils = __webpack_require__(198);
 
-	var _Graphic2 = __webpack_require__(241);
+	var _Graphic2 = __webpack_require__(199);
 
 	var _Graphic3 = _interopRequireDefault(_Graphic2);
 
@@ -31982,8 +33675,8 @@ var Grommet =
 	  _createClass(Bar, [{
 	    key: '_viewBoxDimensions',
 	    value: function _viewBoxDimensions(props) {
-	      var viewBoxHeight = undefined;
-	      var viewBoxWidth = undefined;
+	      var viewBoxHeight = void 0;
+	      var viewBoxWidth = void 0;
 	      if (props.vertical) {
 	        if (props.stacked) {
 	          viewBoxWidth = BAR_THICKNESS;
@@ -32027,8 +33720,8 @@ var Grommet =
 	    value: function _sliceCommands(trackIndex, item, startValue) {
 	      var value = item.value - this.props.min.value;
 	      var start = this._translateBarWidth(startValue);
-	      var distance = Math.max(MID_BAR_THICKNESS, this._translateBarWidth(value));
-	      var commands = undefined;
+	      var distance = Math.max(item.value > 0 ? MID_BAR_THICKNESS : 0, this._translateBarWidth(value));
+	      var commands = void 0;
 	      if (this.props.legend && 'inline' === this.props.legend.placement) {
 	        trackIndex *= 2;
 	      }
@@ -32046,7 +33739,7 @@ var Grommet =
 	  }, {
 	    key: '_renderInlineLegend',
 	    value: function _renderInlineLegend() {
-	      var result = undefined;
+	      var result = void 0;
 	      if (this.props.legend && 'inline' === this.props.legend.placement) {
 	        result = this.props.series.map(function (item, index) {
 	          var spot = index * BAR_THICKNESS * 2 + MID_BAR_THICKNESS;
@@ -32088,22 +33781,23 @@ var Grommet =
 
 	//needed in Graphic.js to fix minification issues
 
+
 	exports.default = Bar;
 	Bar.displayName = 'Bar';
 	module.exports = exports['default'];
 
 /***/ },
-/* 240 */
+/* 198 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -32155,6 +33849,10 @@ var Grommet =
 	  polarToCartesian: polarToCartesian,
 
 	  arcCommands: function arcCommands(centerX, centerY, radius, startAngle, endAngle) {
+	    // handle that we can't draw a complete circle
+	    if (endAngle - startAngle >= 360) {
+	      endAngle = startAngle + 359.99;
+	    }
 	    var start = polarToCartesian(centerX, centerY, radius, endAngle);
 	    var end = polarToCartesian(centerX, centerY, radius, startAngle);
 	    var arcSweep = endAngle - startAngle <= 180 ? "0" : "1";
@@ -32172,8 +33870,8 @@ var Grommet =
 	      var onOut = onActivate.bind(null, null);
 
 	      var a11yRoles = {};
-	      var titleComponent = undefined;
-	      var activeSlice = undefined;
+	      var titleComponent = void 0;
+	      var activeSlice = void 0;
 	      if (a11yTitle && a11yDescId) {
 	        activeSlice = activeMeterSlice;
 	        var pathTitleId = 'title_' + a11yDescId;
@@ -32204,34 +33902,34 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 241 */
+/* 199 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
 	var _reactDom2 = _interopRequireDefault(_reactDom);
 
-	var _utils = __webpack_require__(240);
+	var _utils = __webpack_require__(198);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
@@ -32304,20 +34002,20 @@ var Grommet =
 	  }, {
 	    key: '_renderSlice',
 	    value: function _renderSlice(trackIndex, item, itemIndex, startValue, threshold) {
-	      var path = undefined;
+	      var path = void 0;
 	      if (!item.hidden) {
-	        var classes = [CLASS_ROOT + "__slice"];
-	        var activeMeterSlice = undefined;
+	        var classes = [CLASS_ROOT + '__slice'];
+	        var activeMeterSlice = void 0;
 	        if (itemIndex === this.props.activeIndex) {
 	          activeMeterSlice = 'activeMeterSlice';
-	          classes.push(CLASS_ROOT + "__slice--active");
+	          classes.push(CLASS_ROOT + '__slice--active');
 	        }
 
 	        if (item.onClick) {
 	          classes.push(CLASS_ROOT + "__slice--clickable");
 	        }
 
-	        classes.push("color-index-" + item.colorIndex);
+	        classes.push('color-index-' + item.colorIndex);
 
 	        var commands = this._sliceCommands(trackIndex, item, startValue);
 
@@ -32396,8 +34094,8 @@ var Grommet =
 	  }, {
 	    key: '_renderLoading',
 	    value: function _renderLoading() {
-	      var classes = [CLASS_ROOT + "__slice"];
-	      classes.push(CLASS_ROOT + "__slice--loading");
+	      var classes = [CLASS_ROOT + '__slice'];
+	      classes.push(CLASS_ROOT + '__slice--loading');
 	      classes.push("color-index-loading");
 	      var commands = this._loadingCommands();
 	      return [_react2.default.createElement('path', { key: 'loading', className: classes.join(' '), d: commands })];
@@ -32407,7 +34105,7 @@ var Grommet =
 	    value: function _renderValues() {
 	      var _this2 = this;
 
-	      var values = undefined;
+	      var values = void 0;
 	      if (this.props.stacked) {
 	        values = this._renderSlices(this.props.series, 0);
 	      } else {
@@ -32420,7 +34118,7 @@ var Grommet =
 	      }
 	      return _react2.default.createElement(
 	        'g',
-	        { ref: 'meterValues', className: CLASS_ROOT + "__values" },
+	        { ref: 'meterValues', className: CLASS_ROOT + '__values' },
 	        values
 	      );
 	    }
@@ -32430,7 +34128,7 @@ var Grommet =
 	      var _this3 = this;
 
 	      var trackValue = { value: this.props.max.value, colorIndex: 'unset' };
-	      var tracks = undefined;
+	      var tracks = void 0;
 	      if (this.props.stacked) {
 	        tracks = this._renderSlice(0, trackValue, 0, this.props.min.value, true);
 	      } else {
@@ -32440,19 +34138,19 @@ var Grommet =
 	      }
 	      return _react2.default.createElement(
 	        'g',
-	        { className: CLASS_ROOT + "__tracks" },
+	        { className: CLASS_ROOT + '__tracks' },
 	        tracks
 	      );
 	    }
 	  }, {
 	    key: '_renderThresholds',
 	    value: function _renderThresholds() {
-	      var result = undefined;
+	      var result = void 0;
 	      var thresholds = this._renderSlices(this.props.thresholds, -0.4, true);
 	      if (thresholds.length > 0) {
 	        result = _react2.default.createElement(
 	          'g',
-	          { className: CLASS_ROOT + "__thresholds" },
+	          { className: CLASS_ROOT + '__thresholds' },
 	          thresholds
 	        );
 	      }
@@ -32546,10 +34244,10 @@ var Grommet =
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { ref: 'meter', className: CLASS_ROOT + "__graphic",
+	        { ref: 'meter', className: CLASS_ROOT + '__graphic',
 	          tabIndex: '0', role: this.props.a11yRole,
-	          width: this.props.vertical ? null : this.state.viewBoxWidth,
-	          height: this.props.vertical ? this.state.viewBoxHeight : null,
+	          width: this.state.viewBoxWidth,
+	          height: this.state.viewBoxHeight,
 	          viewBox: "0 0 " + this.state.viewBoxWidth + " " + this.state.viewBoxHeight,
 	          preserveAspectRatio: 'xMidYMid meet',
 	          'aria-activedescendant': activeDescendant,
@@ -32578,6 +34276,7 @@ var Grommet =
 
 	exports.default = Graphic;
 
+
 	Graphic.propTypes = _extends({
 	  a11yRole: _react.PropTypes.string,
 	  stacked: _react.PropTypes.bool,
@@ -32599,24 +34298,24 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 242 */
+/* 200 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _utils = __webpack_require__(240);
+	var _utils = __webpack_require__(198);
 
-	var _Graphic2 = __webpack_require__(241);
+	var _Graphic2 = __webpack_require__(199);
 
 	var _Graphic3 = _interopRequireDefault(_Graphic2);
 
@@ -32722,6 +34421,7 @@ var Grommet =
 
 	exports.default = Spiral;
 
+
 	Spiral.defaultProps = {
 	  thresholds: []
 	};
@@ -32731,20 +34431,20 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 243 */
+/* 201 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
-	var _utils = __webpack_require__(240);
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
+	var _utils = __webpack_require__(198);
 
-	var _Graphic2 = __webpack_require__(241);
+	var _Graphic2 = __webpack_require__(199);
 
 	var _Graphic3 = _interopRequireDefault(_Graphic2);
 
@@ -32782,8 +34482,8 @@ var Grommet =
 	      }
 
 	      var state = {
-	        startAngle: 1,
-	        anglePer: !props.max ? 0 : 358.0 / (props.max.value - props.min.value),
+	        startAngle: 0,
+	        anglePer: !props.max ? 0 : 360 / (props.max.value - props.min.value),
 	        angleOffset: 180,
 	        viewBoxWidth: CIRCLE_WIDTH,
 	        viewBoxHeight: CIRCLE_WIDTH
@@ -32795,7 +34495,7 @@ var Grommet =
 	    key: '_sliceCommands',
 	    value: function _sliceCommands(trackIndex, item, startValue) {
 	      var startAngle = (0, _utils.translateEndAngle)(this.state.startAngle, this.state.anglePer, startValue);
-	      var endAngle = Math.max(startAngle + RING_THICKNESS / 2, (0, _utils.translateEndAngle)(startAngle, this.state.anglePer, item.value));
+	      var endAngle = Math.max(startAngle + (item.value > 0 ? RING_THICKNESS / 2 : 0), (0, _utils.translateEndAngle)(startAngle, this.state.anglePer, item.value));
 	      var radius = Math.max(1, CIRCLE_RADIUS - trackIndex * RING_THICKNESS);
 	      return (0, _utils.arcCommands)(CIRCLE_WIDTH / 2, CIRCLE_WIDTH / 2, radius, startAngle + this.state.angleOffset, endAngle + this.state.angleOffset);
 	    }
@@ -32806,29 +34506,30 @@ var Grommet =
 
 	//needed in Graphic.js to fix minification issues
 
+
 	exports.default = Circle;
 	Circle.displayName = 'Circle';
 	module.exports = exports['default'];
 
 /***/ },
-/* 244 */
+/* 202 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _utils = __webpack_require__(240);
+	var _utils = __webpack_require__(198);
 
-	var _Graphic2 = __webpack_require__(241);
+	var _Graphic2 = __webpack_require__(199);
 
 	var _Graphic3 = _interopRequireDefault(_Graphic2);
 
@@ -32907,7 +34608,7 @@ var Grommet =
 	    key: '_sliceCommands',
 	    value: function _sliceCommands(trackIndex, item, startValue) {
 	      var startAngle = (0, _utils.translateEndAngle)(this.state.startAngle, this.state.anglePer, startValue);
-	      var endAngle = Math.max(startAngle + RING_THICKNESS / 2, (0, _utils.translateEndAngle)(startAngle, this.state.anglePer, item.value));
+	      var endAngle = Math.max(startAngle + (item.value > 0 ? RING_THICKNESS / 2 : 0), (0, _utils.translateEndAngle)(startAngle, this.state.anglePer, item.value));
 	      var radius = Math.max(1, ARC_RADIUS - trackIndex * RING_THICKNESS);
 	      return (0, _utils.arcCommands)(ARC_WIDTH / 2, ARC_WIDTH / 2, radius, startAngle + this.state.angleOffset, endAngle + this.state.angleOffset);
 	    }
@@ -32939,58 +34640,56 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 245 */
+/* 203 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
-	var _react = __webpack_require__(2);
-
-	var _react2 = _interopRequireDefault(_react);
-
-	var _reactIntl = __webpack_require__(6);
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 
-	var _merge = __webpack_require__(246);
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 
-	var _merge2 = _interopRequireDefault(_merge);
+	var _react = __webpack_require__(2);
 
-	var _pick = __webpack_require__(76);
+	var _react2 = _interopRequireDefault(_react);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _classnames2 = __webpack_require__(3);
 
-	var _keys = __webpack_require__(53);
+	var _classnames3 = _interopRequireDefault(_classnames2);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _reactIntl = __webpack_require__(6);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Meter = __webpack_require__(238);
+	var _Meter = __webpack_require__(196);
 
 	var _Meter2 = _interopRequireDefault(_Meter);
 
-	var _Status = __webpack_require__(256);
+	var _Status = __webpack_require__(204);
 
 	var _Status2 = _interopRequireDefault(_Status);
 
+	var _Props = __webpack_require__(49);
+
+	var _Props2 = _interopRequireDefault(_Props);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "notification";
+	var CLASS_ROOT = 'notification';
 
 	var Notification = function (_Component) {
 	  _inherits(Notification, _Component);
@@ -33004,24 +34703,17 @@ var Grommet =
 	  _createClass(Notification, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
-	      classes.push(CLASS_ROOT + '--' + this.props.status.toLowerCase());
-	      classes.push('background-color-index-' + this.props.status.toLowerCase());
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + '--' + this.props.size.toLowerCase());
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '--status-' + this.props.status.toLowerCase(), 'background-color-index-' + this.props.status.toLowerCase(), this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + this.props.size, this.props.size), _defineProperty(_classnames, CLASS_ROOT + '--disabled', !this.props.onClick), _classnames));
 
-	      var status = undefined;
+	      var status = void 0;
 	      if (this.props.status) {
 	        status = _react2.default.createElement(_Status2.default, { className: CLASS_ROOT + '__status',
 	          value: this.props.status, size: this.props.size });
 	      }
 
-	      var state = undefined;
+	      var state = void 0;
 	      if (this.props.state) {
 	        state = _react2.default.createElement(
 	          'div',
@@ -33030,7 +34722,7 @@ var Grommet =
 	        );
 	      }
 
-	      var progress = undefined;
+	      var progress = void 0;
 	      if (this.props.percentComplete || 0 === this.props.percentComplete) {
 	        progress = _react2.default.createElement(_Meter2.default, { units: '%',
 	          series: [{
@@ -33041,7 +34733,7 @@ var Grommet =
 	          size: 'large' });
 	      }
 
-	      var timestamp = undefined;
+	      var timestamp = void 0;
 	      if (this.props.timestamp) {
 	        var timestampFormatted = this.props.timestamp.toString();
 	        if (this.context.intl) {
@@ -33062,10 +34754,11 @@ var Grommet =
 	        );
 	      }
 
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
+
 	      return _react2.default.createElement(
 	        _Box2.default,
-	        _extends({ className: classes.join(' '), direction: 'row', responsive: false
-	        }, other),
+	        _extends({}, boxProps, { className: classes, direction: 'row', responsive: false }),
 	        status,
 	        _react2.default.createElement(
 	          _Box2.default,
@@ -33075,6 +34768,7 @@ var Grommet =
 	            { className: CLASS_ROOT + '__message' },
 	            this.props.message
 	          ),
+	          this.props.context,
 	          timestamp,
 	          state,
 	          progress,
@@ -33088,15 +34782,16 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Notification;
+	;
 
-	Notification.propTypes = (0, _merge2.default)({
+	Notification.propTypes = _extends({
+	  context: _react.PropTypes.node,
 	  message: _react.PropTypes.string.isRequired,
 	  percentComplete: _react.PropTypes.number,
 	  size: _react.PropTypes.oneOf(['small', 'medium', 'large']),
 	  state: _react.PropTypes.string,
 	  status: _react.PropTypes.string,
-	  timestamp: _react.PropTypes.object // Date
-	}, _Box2.default.propTypes);
+	  timestamp: _react.PropTypes.object }, _Box2.default.propTypes);
 
 	Notification.contextTypes = {
 	  intl: _react.PropTypes.object
@@ -33110,523 +34805,50 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 246 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseMerge = __webpack_require__(247),
-	    createAssigner = __webpack_require__(254);
-
-	/**
-	 * Recursively merges own enumerable properties of the source object(s), that
-	 * don't resolve to `undefined` into the destination object. Subsequent sources
-	 * overwrite property assignments of previous sources. If `customizer` is
-	 * provided it's invoked to produce the merged values of the destination and
-	 * source properties. If `customizer` returns `undefined` merging is handled
-	 * by the method instead. The `customizer` is bound to `thisArg` and invoked
-	 * with five arguments: (objectValue, sourceValue, key, object, source).
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Object
-	 * @param {Object} object The destination object.
-	 * @param {...Object} [sources] The source objects.
-	 * @param {Function} [customizer] The function to customize assigned values.
-	 * @param {*} [thisArg] The `this` binding of `customizer`.
-	 * @returns {Object} Returns `object`.
-	 * @example
-	 *
-	 * var users = {
-	 *   'data': [{ 'user': 'barney' }, { 'user': 'fred' }]
-	 * };
-	 *
-	 * var ages = {
-	 *   'data': [{ 'age': 36 }, { 'age': 40 }]
-	 * };
-	 *
-	 * _.merge(users, ages);
-	 * // => { 'data': [{ 'user': 'barney', 'age': 36 }, { 'user': 'fred', 'age': 40 }] }
-	 *
-	 * // using a customizer callback
-	 * var object = {
-	 *   'fruits': ['apple'],
-	 *   'vegetables': ['beet']
-	 * };
-	 *
-	 * var other = {
-	 *   'fruits': ['banana'],
-	 *   'vegetables': ['carrot']
-	 * };
-	 *
-	 * _.merge(object, other, function(a, b) {
-	 *   if (_.isArray(a)) {
-	 *     return a.concat(b);
-	 *   }
-	 * });
-	 * // => { 'fruits': ['apple', 'banana'], 'vegetables': ['beet', 'carrot'] }
-	 */
-	var merge = createAssigner(baseMerge);
-
-	module.exports = merge;
-
-
-/***/ },
-/* 247 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var arrayEach = __webpack_require__(248),
-	    baseMergeDeep = __webpack_require__(249),
-	    isArray = __webpack_require__(65),
-	    isArrayLike = __webpack_require__(59),
-	    isObject = __webpack_require__(57),
-	    isObjectLike = __webpack_require__(58),
-	    isTypedArray = __webpack_require__(215),
-	    keys = __webpack_require__(53);
-
-	/**
-	 * The base implementation of `_.merge` without support for argument juggling,
-	 * multiple sources, and `this` binding `customizer` functions.
-	 *
-	 * @private
-	 * @param {Object} object The destination object.
-	 * @param {Object} source The source object.
-	 * @param {Function} [customizer] The function to customize merged values.
-	 * @param {Array} [stackA=[]] Tracks traversed source objects.
-	 * @param {Array} [stackB=[]] Associates values with source counterparts.
-	 * @returns {Object} Returns `object`.
-	 */
-	function baseMerge(object, source, customizer, stackA, stackB) {
-	  if (!isObject(object)) {
-	    return object;
-	  }
-	  var isSrcArr = isArrayLike(source) && (isArray(source) || isTypedArray(source)),
-	      props = isSrcArr ? undefined : keys(source);
-
-	  arrayEach(props || source, function(srcValue, key) {
-	    if (props) {
-	      key = srcValue;
-	      srcValue = source[key];
-	    }
-	    if (isObjectLike(srcValue)) {
-	      stackA || (stackA = []);
-	      stackB || (stackB = []);
-	      baseMergeDeep(object, source, key, baseMerge, customizer, stackA, stackB);
-	    }
-	    else {
-	      var value = object[key],
-	          result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
-	          isCommon = result === undefined;
-
-	      if (isCommon) {
-	        result = srcValue;
-	      }
-	      if ((result !== undefined || (isSrcArr && !(key in object))) &&
-	          (isCommon || (result === result ? (result !== value) : (value === value)))) {
-	        object[key] = result;
-	      }
-	    }
-	  });
-	  return object;
-	}
-
-	module.exports = baseMerge;
-
-
-/***/ },
-/* 248 */
-/***/ function(module, exports) {
-
-	/**
-	 * A specialized version of `_.forEach` for arrays without support for callback
-	 * shorthands and `this` binding.
-	 *
-	 * @private
-	 * @param {Array} array The array to iterate over.
-	 * @param {Function} iteratee The function invoked per iteration.
-	 * @returns {Array} Returns `array`.
-	 */
-	function arrayEach(array, iteratee) {
-	  var index = -1,
-	      length = array.length;
-
-	  while (++index < length) {
-	    if (iteratee(array[index], index, array) === false) {
-	      break;
-	    }
-	  }
-	  return array;
-	}
-
-	module.exports = arrayEach;
-
-
-/***/ },
-/* 249 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var arrayCopy = __webpack_require__(250),
-	    isArguments = __webpack_require__(64),
-	    isArray = __webpack_require__(65),
-	    isArrayLike = __webpack_require__(59),
-	    isPlainObject = __webpack_require__(251),
-	    isTypedArray = __webpack_require__(215),
-	    toPlainObject = __webpack_require__(252);
-
-	/**
-	 * A specialized version of `baseMerge` for arrays and objects which performs
-	 * deep merges and tracks traversed objects enabling objects with circular
-	 * references to be merged.
-	 *
-	 * @private
-	 * @param {Object} object The destination object.
-	 * @param {Object} source The source object.
-	 * @param {string} key The key of the value to merge.
-	 * @param {Function} mergeFunc The function to merge values.
-	 * @param {Function} [customizer] The function to customize merged values.
-	 * @param {Array} [stackA=[]] Tracks traversed source objects.
-	 * @param {Array} [stackB=[]] Associates values with source counterparts.
-	 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
-	 */
-	function baseMergeDeep(object, source, key, mergeFunc, customizer, stackA, stackB) {
-	  var length = stackA.length,
-	      srcValue = source[key];
-
-	  while (length--) {
-	    if (stackA[length] == srcValue) {
-	      object[key] = stackB[length];
-	      return;
-	    }
-	  }
-	  var value = object[key],
-	      result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
-	      isCommon = result === undefined;
-
-	  if (isCommon) {
-	    result = srcValue;
-	    if (isArrayLike(srcValue) && (isArray(srcValue) || isTypedArray(srcValue))) {
-	      result = isArray(value)
-	        ? value
-	        : (isArrayLike(value) ? arrayCopy(value) : []);
-	    }
-	    else if (isPlainObject(srcValue) || isArguments(srcValue)) {
-	      result = isArguments(value)
-	        ? toPlainObject(value)
-	        : (isPlainObject(value) ? value : {});
-	    }
-	    else {
-	      isCommon = false;
-	    }
-	  }
-	  // Add the source value to the stack of traversed objects and associate
-	  // it with its merged value.
-	  stackA.push(srcValue);
-	  stackB.push(result);
-
-	  if (isCommon) {
-	    // Recursively merge objects and arrays (susceptible to call stack limits).
-	    object[key] = mergeFunc(result, srcValue, customizer, stackA, stackB);
-	  } else if (result === result ? (result !== value) : (value === value)) {
-	    object[key] = result;
-	  }
-	}
-
-	module.exports = baseMergeDeep;
-
-
-/***/ },
-/* 250 */
-/***/ function(module, exports) {
-
-	/**
-	 * Copies the values of `source` to `array`.
-	 *
-	 * @private
-	 * @param {Array} source The array to copy values from.
-	 * @param {Array} [array=[]] The array to copy values to.
-	 * @returns {Array} Returns `array`.
-	 */
-	function arrayCopy(source, array) {
-	  var index = -1,
-	      length = source.length;
-
-	  array || (array = Array(length));
-	  while (++index < length) {
-	    array[index] = source[index];
-	  }
-	  return array;
-	}
-
-	module.exports = arrayCopy;
-
-
-/***/ },
-/* 251 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseForIn = __webpack_require__(84),
-	    isArguments = __webpack_require__(64),
-	    isObjectLike = __webpack_require__(58);
-
-	/** `Object#toString` result references. */
-	var objectTag = '[object Object]';
-
-	/** Used for native method references. */
-	var objectProto = Object.prototype;
-
-	/** Used to check objects for own properties. */
-	var hasOwnProperty = objectProto.hasOwnProperty;
-
-	/**
-	 * Used to resolve the [`toStringTag`](http://ecma-international.org/ecma-262/6.0/#sec-object.prototype.tostring)
-	 * of values.
-	 */
-	var objToString = objectProto.toString;
-
-	/**
-	 * Checks if `value` is a plain object, that is, an object created by the
-	 * `Object` constructor or one with a `[[Prototype]]` of `null`.
-	 *
-	 * **Note:** This method assumes objects created by the `Object` constructor
-	 * have no inherited enumerable properties.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to check.
-	 * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
-	 * @example
-	 *
-	 * function Foo() {
-	 *   this.a = 1;
-	 * }
-	 *
-	 * _.isPlainObject(new Foo);
-	 * // => false
-	 *
-	 * _.isPlainObject([1, 2, 3]);
-	 * // => false
-	 *
-	 * _.isPlainObject({ 'x': 0, 'y': 0 });
-	 * // => true
-	 *
-	 * _.isPlainObject(Object.create(null));
-	 * // => true
-	 */
-	function isPlainObject(value) {
-	  var Ctor;
-
-	  // Exit early for non `Object` objects.
-	  if (!(isObjectLike(value) && objToString.call(value) == objectTag && !isArguments(value)) ||
-	      (!hasOwnProperty.call(value, 'constructor') && (Ctor = value.constructor, typeof Ctor == 'function' && !(Ctor instanceof Ctor)))) {
-	    return false;
-	  }
-	  // IE < 9 iterates inherited properties before own properties. If the first
-	  // iterated property is an object's own property then there are no inherited
-	  // enumerable properties.
-	  var result;
-	  // In most environments an object's own properties are iterated before
-	  // its inherited properties. If the last iterated property is an object's
-	  // own property then there are no inherited enumerable properties.
-	  baseForIn(value, function(subValue, key) {
-	    result = key;
-	  });
-	  return result === undefined || hasOwnProperty.call(value, result);
-	}
-
-	module.exports = isPlainObject;
-
-
-/***/ },
-/* 252 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var baseCopy = __webpack_require__(253),
-	    keysIn = __webpack_require__(67);
-
-	/**
-	 * Converts `value` to a plain object flattening inherited enumerable
-	 * properties of `value` to own properties of the plain object.
-	 *
-	 * @static
-	 * @memberOf _
-	 * @category Lang
-	 * @param {*} value The value to convert.
-	 * @returns {Object} Returns the converted plain object.
-	 * @example
-	 *
-	 * function Foo() {
-	 *   this.b = 2;
-	 * }
-	 *
-	 * Foo.prototype.c = 3;
-	 *
-	 * _.assign({ 'a': 1 }, new Foo);
-	 * // => { 'a': 1, 'b': 2 }
-	 *
-	 * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
-	 * // => { 'a': 1, 'b': 2, 'c': 3 }
-	 */
-	function toPlainObject(value) {
-	  return baseCopy(value, keysIn(value));
-	}
-
-	module.exports = toPlainObject;
-
-
-/***/ },
-/* 253 */
-/***/ function(module, exports) {
-
-	/**
-	 * Copies properties of `source` to `object`.
-	 *
-	 * @private
-	 * @param {Object} source The object to copy properties from.
-	 * @param {Array} props The property names to copy.
-	 * @param {Object} [object={}] The object to copy properties to.
-	 * @returns {Object} Returns `object`.
-	 */
-	function baseCopy(source, props, object) {
-	  object || (object = {});
-
-	  var index = -1,
-	      length = props.length;
-
-	  while (++index < length) {
-	    var key = props[index];
-	    object[key] = source[key];
-	  }
-	  return object;
-	}
-
-	module.exports = baseCopy;
-
-
-/***/ },
-/* 254 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var bindCallback = __webpack_require__(79),
-	    isIterateeCall = __webpack_require__(255),
-	    restParam = __webpack_require__(87);
-
-	/**
-	 * Creates a `_.assign`, `_.defaults`, or `_.merge` function.
-	 *
-	 * @private
-	 * @param {Function} assigner The function to assign values.
-	 * @returns {Function} Returns the new assigner function.
-	 */
-	function createAssigner(assigner) {
-	  return restParam(function(object, sources) {
-	    var index = -1,
-	        length = object == null ? 0 : sources.length,
-	        customizer = length > 2 ? sources[length - 2] : undefined,
-	        guard = length > 2 ? sources[2] : undefined,
-	        thisArg = length > 1 ? sources[length - 1] : undefined;
-
-	    if (typeof customizer == 'function') {
-	      customizer = bindCallback(customizer, thisArg, 5);
-	      length -= 2;
-	    } else {
-	      customizer = typeof thisArg == 'function' ? thisArg : undefined;
-	      length -= (customizer ? 1 : 0);
-	    }
-	    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
-	      customizer = length < 3 ? undefined : customizer;
-	      length = 1;
-	    }
-	    while (++index < length) {
-	      var source = sources[index];
-	      if (source) {
-	        assigner(object, source, customizer);
-	      }
-	    }
-	    return object;
-	  });
-	}
-
-	module.exports = createAssigner;
-
-
-/***/ },
-/* 255 */
-/***/ function(module, exports, __webpack_require__) {
-
-	var isArrayLike = __webpack_require__(59),
-	    isIndex = __webpack_require__(66),
-	    isObject = __webpack_require__(57);
-
-	/**
-	 * Checks if the provided arguments are from an iteratee call.
-	 *
-	 * @private
-	 * @param {*} value The potential iteratee value argument.
-	 * @param {*} index The potential iteratee index or key argument.
-	 * @param {*} object The potential iteratee object argument.
-	 * @returns {boolean} Returns `true` if the arguments are from an iteratee call, else `false`.
-	 */
-	function isIterateeCall(value, index, object) {
-	  if (!isObject(object)) {
-	    return false;
-	  }
-	  var type = typeof index;
-	  if (type == 'number'
-	      ? (isArrayLike(object) && isIndex(index, object.length))
-	      : (type == 'string' && index in object)) {
-	    var other = object[index];
-	    return value === value ? (value === other) : (other !== other);
-	  }
-	  return false;
-	}
-
-	module.exports = isIterateeCall;
-
-
-/***/ },
-/* 256 */
+/* 204 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _OK = __webpack_require__(257);
+	var _OK = __webpack_require__(205);
 
 	var _OK2 = _interopRequireDefault(_OK);
 
-	var _CriticalStatus = __webpack_require__(258);
+	var _CriticalStatus = __webpack_require__(206);
 
 	var _CriticalStatus2 = _interopRequireDefault(_CriticalStatus);
 
-	var _ErrorStatus = __webpack_require__(259);
+	var _ErrorStatus = __webpack_require__(207);
 
 	var _ErrorStatus2 = _interopRequireDefault(_ErrorStatus);
 
-	var _Warning = __webpack_require__(260);
+	var _Warning = __webpack_require__(208);
 
 	var _Warning2 = _interopRequireDefault(_Warning);
 
-	var _Disabled = __webpack_require__(261);
+	var _Disabled = __webpack_require__(209);
 
 	var _Disabled2 = _interopRequireDefault(_Disabled);
 
-	var _Unknown = __webpack_require__(262);
+	var _Unknown = __webpack_require__(210);
 
 	var _Unknown2 = _interopRequireDefault(_Unknown);
 
-	var _Blank = __webpack_require__(263);
+	var _Blank = __webpack_require__(211);
 
 	var _Blank2 = _interopRequireDefault(_Blank);
 
-	var _Label = __webpack_require__(264);
+	var _Label = __webpack_require__(212);
 
 	var _Label2 = _interopRequireDefault(_Label);
 
@@ -33673,6 +34895,7 @@ var Grommet =
 	      var a11yTitle = this.props.a11yTitle;
 	      var size = this.state.size;
 
+
 	      if (this.props.className) {
 	        classes.push(this.props.className);
 	      }
@@ -33722,6 +34945,7 @@ var Grommet =
 
 	exports.default = Status;
 
+
 	Status.defaultProps = { value: 'unknown' };
 
 	Status.propTypes = {
@@ -33734,17 +34958,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 257 */
+/* 205 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -33811,23 +35035,24 @@ var Grommet =
 
 	exports.default = OK;
 
+
 	OK.propTypes = {
 	  a11yTitle: _react.PropTypes.string
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 258 */
+/* 206 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -33896,23 +35121,24 @@ var Grommet =
 
 	exports.default = CriticalStatus;
 
+
 	CriticalStatus.propTypes = {
 	  a11yTitle: _react.PropTypes.string
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 259 */
+/* 207 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -33980,23 +35206,24 @@ var Grommet =
 
 	exports.default = ErrorStatus;
 
+
 	ErrorStatus.propTypes = {
 	  a11yTitle: _react.PropTypes.string
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 260 */
+/* 208 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -34064,23 +35291,24 @@ var Grommet =
 
 	exports.default = Warning;
 
+
 	Warning.propTypes = {
 	  a11yTitle: _react.PropTypes.string
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 261 */
+/* 209 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -34147,23 +35375,24 @@ var Grommet =
 
 	exports.default = Disabled;
 
+
 	Disabled.propTypes = {
 	  a11yTitle: _react.PropTypes.string
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 262 */
+/* 210 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -34233,17 +35462,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 263 */
+/* 211 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -34302,17 +35531,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 264 */
+/* 212 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -34360,30 +35589,30 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 265 */
+/* 213 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Add = __webpack_require__(266);
+	var _Add = __webpack_require__(214);
 
 	var _Add2 = _interopRequireDefault(_Add);
 
-	var _Subtract = __webpack_require__(267);
+	var _Subtract = __webpack_require__(215);
 
 	var _Subtract2 = _interopRequireDefault(_Subtract);
 
@@ -34413,10 +35642,17 @@ var Grommet =
 	  _createClass(NumberInput, [{
 	    key: '_fireChange',
 	    value: function _fireChange() {
-	      var event = new Event('change', {
-	        'bubbles': true,
-	        'cancelable': true
-	      });
+	      var event = void 0;
+	      try {
+	        event = new Event('change', {
+	          'bubbles': true,
+	          'cancelable': true
+	        });
+	      } catch (e) {
+	        // IE11 workaround.
+	        event = document.createEvent('Event');
+	        event.initEvent('change', true, true);
+	      }
 	      // We use dispatchEvent to have the browser fill out the event fully.
 	      this.refs.input.dispatchEvent(event);
 	      // Manually dispatched events aren't delivered by React, so we notify too.
@@ -34425,13 +35661,33 @@ var Grommet =
 	  }, {
 	    key: '_onAdd',
 	    value: function _onAdd() {
-	      this.refs.input.stepUp();
+	      var input = this.refs.input;
+	      try {
+	        input.stepUp();
+	      } catch (e) {
+	        // IE11 workaround. See known issue #5 at http://caniuse.com/#search=number
+	        var value = parseInt(input.value, 10) + (this.props.step || 1);
+	        if (this.props.max !== undefined) {
+	          value = Math.min(value, this.props.max);
+	        }
+	        input.value = value;
+	      }
 	      this._fireChange();
 	    }
 	  }, {
 	    key: '_onSubtract',
 	    value: function _onSubtract() {
-	      this.refs.input.stepDown();
+	      var input = this.refs.input;
+	      try {
+	        input.stepDown();
+	      } catch (e) {
+	        // IE11 workaround. See known issue #5 at http://caniuse.com/#search=number
+	        var value = parseInt(input.value, 10) - (this.props.step || 1);
+	        if (this.props.min !== undefined) {
+	          value = Math.max(value, this.props.min);
+	        }
+	        input.value = value;
+	      }
 	      this._fireChange();
 	    }
 	  }, {
@@ -34462,18 +35718,10 @@ var Grommet =
 	          max: this.props.max,
 	          step: this.props.step,
 	          onChange: this.props.onChange }),
-	        _react2.default.createElement(
-	          _Button2.default,
-	          { type: 'icon', className: CLASS_ROOT + "__subtract",
-	            onClick: onSubtract },
-	          _react2.default.createElement(_Subtract2.default, null)
-	        ),
-	        _react2.default.createElement(
-	          _Button2.default,
-	          { type: 'icon', className: CLASS_ROOT + "__add",
-	            onClick: onAdd },
-	          _react2.default.createElement(_Add2.default, null)
-	        )
+	        _react2.default.createElement(_Button2.default, { icon: _react2.default.createElement(_Subtract2.default, null), className: CLASS_ROOT + "__subtract",
+	          onClick: onSubtract }),
+	        _react2.default.createElement(_Button2.default, { icon: _react2.default.createElement(_Add2.default, null), className: CLASS_ROOT + "__add",
+	          onClick: onAdd })
 	      );
 	    }
 	  }]);
@@ -34483,6 +35731,7 @@ var Grommet =
 
 	exports.default = NumberInput;
 
+
 	NumberInput.propTypes = {
 	  ariaDescribedby: _react.PropTypes.string,
 	  defaultValue: _react.PropTypes.number,
@@ -34498,34 +35747,40 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 266 */
+/* 214 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -34539,28 +35794,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-add'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "add";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-add', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'add';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -34577,13 +35836,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -34591,38 +35851,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Add';
 	module.exports = exports['default'];
 
 /***/ },
-/* 267 */
+/* 215 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -34636,28 +35903,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-subtract'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "subtract";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-subtract', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'subtract';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -34674,13 +35945,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -34688,34 +35960,41 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Subtract';
 	module.exports = exports['default'];
 
 /***/ },
-/* 268 */
+/* 216 */
 /***/ function(module, exports, __webpack_require__) {
 
-	"use strict";
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "radio-button";
+	var CLASS_ROOT = 'radio-button';
 
 	var RadioButton = function (_Component) {
 	  _inherits(RadioButton, _Component);
@@ -34727,29 +36006,24 @@ var Grommet =
 	  }
 
 	  _createClass(RadioButton, [{
-	    key: "render",
+	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.disabled) {
-	        classes.push(CLASS_ROOT + "--disabled");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, _defineProperty({}, CLASS_ROOT + '--disabled', this.props.disabled));
+
 	      return _react2.default.createElement(
-	        "label",
-	        { className: classes.join(' ') },
-	        _react2.default.createElement("input", { className: CLASS_ROOT + "__input",
-	          id: this.props.id, name: this.props.name, type: "radio",
+	        'label',
+	        { className: classes },
+	        _react2.default.createElement('input', { className: CLASS_ROOT + '__input',
+	          id: this.props.id, name: this.props.name, type: 'radio',
 	          disabled: this.props.disabled,
 	          checked: this.props.checked,
 	          defaultChecked: this.props.defaultChecked,
 	          value: this.props.value,
 	          onChange: this.props.onChange }),
-	        _react2.default.createElement("span", { className: CLASS_ROOT + "__control" }),
+	        _react2.default.createElement('span', { className: CLASS_ROOT + '__control' }),
 	        _react2.default.createElement(
-	          "span",
-	          { className: CLASS_ROOT + "__label" },
+	          'span',
+	          { className: CLASS_ROOT + '__label' },
 	          this.props.label
 	        )
 	      );
@@ -34760,6 +36034,7 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = RadioButton;
+	;
 
 	RadioButton.propTypes = {
 	  checked: _react.PropTypes.bool,
@@ -34774,47 +36049,51 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 269 */
+/* 217 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _classnames4 = __webpack_require__(3);
 
-	var _reactDom2 = _interopRequireDefault(_reactDom);
+	var _classnames5 = _interopRequireDefault(_classnames4);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Drop = __webpack_require__(88);
+	var _Drop = __webpack_require__(48);
 
 	var _Drop2 = _interopRequireDefault(_Drop);
 
-	var _Responsive = __webpack_require__(89);
+	var _Responsive = __webpack_require__(50);
 
 	var _Responsive2 = _interopRequireDefault(_Responsive);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Search = __webpack_require__(270);
+	var _Search = __webpack_require__(218);
 
 	var _Search2 = _interopRequireDefault(_Search);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
@@ -34911,14 +36190,12 @@ var Grommet =
 	        // otherwise the drop will close when the mouse is released.
 	        // Not observable in Safari, 1ms is sufficient for Chrome, Firefox needs 100ms though. :(
 	        // TODO: re-evaluate how to solve this without a timeout.
-	        setTimeout(function () {
-	          document.addEventListener('click', this._onRemoveDrop);
-	        }.bind(this), 100);
+	        document.addEventListener('click', this._onRemoveDrop);
 	        _KeyboardAccelerators2.default.startListeningToKeyboard(this, activeKeyboardHandlers);
 
-	        var baseElement;
+	        var baseElement = void 0;
 	        if (this.refs.control) {
-	          baseElement = _reactDom2.default.findDOMNode(this.refs.control);
+	          baseElement = this.refs.control.firstChild;
 	        } else {
 	          baseElement = this.refs.input;
 	        }
@@ -34926,7 +36203,7 @@ var Grommet =
 	          top: this.state.inline ? 'bottom' : 'top',
 	          left: 'left'
 	        };
-	        this._drop = _Drop2.default.add(baseElement, this._renderDrop(), dropAlign);
+	        this._drop = _Drop2.default.add(baseElement, this._renderDrop(), { align: dropAlign });
 
 	        if (!this.state.inline) {
 	          document.getElementById('search-drop-input').focus();
@@ -34977,7 +36254,6 @@ var Grommet =
 	    value: function _onFocusInput() {
 	      this.refs.input.select();
 	      this.setState({
-	        dropActive: !this.state.inline || this.props.suggestions && this.props.suggestions.length > 0,
 	        activeSuggestionIndex: -1
 	      });
 	    }
@@ -34986,6 +36262,25 @@ var Grommet =
 	    value: function _onBlurInput() {
 	      //this.setState({drop: false});
 	    }
+	  }, {
+	    key: '_fireDOMChange',
+	    value: function _fireDOMChange() {
+	      var event = void 0;
+	      try {
+	        event = new Event('change', {
+	          'bubbles': true,
+	          'cancelable': true
+	        });
+	      } catch (e) {
+	        // IE11 workaround.
+	        event = document.createEvent('Event');
+	        event.initEvent('change', true, true);
+	      }
+	      var controlInput = document.getElementById('search-drop-input');
+	      var target = this.refs.input || controlInput;
+	      target.dispatchEvent(event);
+	      this.props.onDOMChange(event);
+	    }
 	  }, {
 	    key: '_onChangeInput',
 	    value: function _onChangeInput(event) {
@@ -34993,6 +36288,9 @@ var Grommet =
 	      if (this.props.onChange) {
 	        this.props.onChange(event.target.value);
 	      }
+	      if (this.props.onDOMChange) {
+	        this._fireDOMChange();
+	      }
 	    }
 	  }, {
 	    key: '_onNextSuggestion',
@@ -35010,21 +36308,44 @@ var Grommet =
 	    }
 	  }, {
 	    key: '_onEnter',
-	    value: function _onEnter() {
+	    value: function _onEnter(event) {
+	      event.preventDefault(); // prevent submitting forms
 	      this._onRemoveDrop();
+	      var suggestion = void 0;
 	      if (this.state.activeSuggestionIndex >= 0) {
-	        var suggestion = this.props.suggestions[this.state.activeSuggestionIndex];
+	        suggestion = this.props.suggestions[this.state.activeSuggestionIndex];
+	        this.setState({ value: suggestion });
 	        if (this.props.onChange) {
 	          this.props.onChange(suggestion);
 	        }
+	        if (this.props.onSelect) {
+	          this.props.onSelect({
+	            target: this.refs.input || this.refs.control,
+	            suggestion: suggestion
+	          }, true);
+	        }
+	      } else {
+	        if (this.props.onSelect) {
+	          this.props.onSelect({
+	            target: this.refs.input || this.refs.control,
+	            suggestion: suggestion
+	          }, false);
+	        }
 	      }
 	    }
 	  }, {
 	    key: '_onClickSuggestion',
-	    value: function _onClickSuggestion(item) {
+	    value: function _onClickSuggestion(suggestion) {
 	      this._onRemoveDrop();
+
 	      if (this.props.onChange) {
-	        this.props.onChange(item);
+	        this.props.onChange(suggestion);
+	      }
+	      if (this.props.onSelect) {
+	        this.props.onSelect({
+	          target: this.refs.input || this.refs.control,
+	          suggestion: suggestion
+	        }, true);
 	      }
 	    }
 	  }, {
@@ -35051,67 +36372,49 @@ var Grommet =
 	      }
 	    }
 	  }, {
-	    key: '_classes',
-	    value: function _classes(prefix) {
-	      var classes = [prefix];
-
-	      if (this.state.inline) {
-	        classes.push(prefix + "--inline");
-	      } else {
-	        classes.push(prefix + "--controlled");
-	      }
-
-	      return classes;
-	    }
-	  }, {
-	    key: '_renderSuggestionLabel',
-	    value: function _renderSuggestionLabel(suggestion) {
-	      var label;
-	      if (suggestion.hasOwnProperty('label')) {
-	        label = suggestion.label;
+	    key: '_renderLabel',
+	    value: function _renderLabel(suggestion) {
+	      if ((typeof suggestion === 'undefined' ? 'undefined' : _typeof(suggestion)) === 'object') {
+	        return suggestion.label || suggestion.value;
 	      } else {
-	        label = suggestion;
+	        return suggestion;
 	      }
-	      return label;
 	    }
 	  }, {
 	    key: '_renderDrop',
 	    value: function _renderDrop() {
-	      var classes = this._classes(CLASS_ROOT + "__drop");
-	      if (this.props.dropColorIndex) {
-	        classes.push("background-color-index-" + this.props.dropColorIndex);
-	      }
-	      if (this.props.large) {
-	        classes.push(CLASS_ROOT + "__drop--large");
-	      }
+	      var _classnames;
 
-	      var input;
+	      var classes = (0, _classnames5.default)((_classnames = {}, _defineProperty(_classnames, 'background-color-index-' + this.props.dropColorIndex, this.props.dropColorIndex), _defineProperty(_classnames, CLASS_ROOT + '__drop', true), _defineProperty(_classnames, CLASS_ROOT + '__drop--controlled', !this.state.inline), _defineProperty(_classnames, CLASS_ROOT + '__drop--large', this.props.large), _classnames));
+
+	      var input = void 0;
 	      if (!this.state.inline) {
 	        input = _react2.default.createElement('input', { key: 'input', id: 'search-drop-input', type: 'search',
+	          autoComplete: 'off',
 	          defaultValue: this.props.defaultValue,
 	          value: this.props.value,
-	          className: CLASS_ROOT + "__input",
+	          className: CLASS_ROOT + '__input',
 	          onChange: this._onChangeInput });
 	      }
 
-	      var suggestions;
+	      var suggestions = void 0;
 	      if (this.props.suggestions) {
-	        suggestions = this.props.suggestions.map(function (item, index) {
-	          var classes = [CLASS_ROOT + "__suggestion"];
-	          if (index === this.state.activeSuggestionIndex) {
-	            classes.push(CLASS_ROOT + "__suggestion--active");
-	          }
+	        suggestions = this.props.suggestions.map(function (suggestion, index) {
+	          var _classnames2;
+
+	          var classes = (0, _classnames5.default)((_classnames2 = {}, _defineProperty(_classnames2, CLASS_ROOT + '__suggestion', true), _defineProperty(_classnames2, CLASS_ROOT + '__suggestion--active', index === this.state.activeSuggestionIndex), _classnames2));
+
 	          return _react2.default.createElement(
 	            'div',
 	            { key: index,
-	              className: classes.join(' '),
-	              onClick: this._onClickSuggestion.bind(this, item) },
-	            this._renderSuggestionLabel(item)
+	              className: classes,
+	              onClick: this._onClickSuggestion.bind(this, suggestion) },
+	            this._renderLabel(suggestion)
 	          );
 	        }, this);
 	        suggestions = _react2.default.createElement(
 	          'div',
-	          { key: 'suggestions', className: CLASS_ROOT + "__suggestions" },
+	          { key: 'suggestions', className: CLASS_ROOT + '__suggestions' },
 	          suggestions
 	        );
 	      }
@@ -35119,15 +36422,11 @@ var Grommet =
 	      var contents = [input, suggestions];
 
 	      if (!this.state.inline) {
-	        contents = [_react2.default.createElement(
-	          _Button2.default,
-	          { key: 'icon', type: 'icon',
-	            className: CLASS_ROOT + "__drop-control",
-	            onClick: this._onRemoveDrop },
-	          _react2.default.createElement(_Search2.default, null)
-	        ), _react2.default.createElement(
+	        contents = [_react2.default.createElement(_Button2.default, { key: 'icon', icon: _react2.default.createElement(_Search2.default, null),
+	          className: CLASS_ROOT + '__drop-control',
+	          onClick: this._onRemoveDrop }), _react2.default.createElement(
 	          'div',
-	          { key: 'contents', className: CLASS_ROOT + "__drop-contents",
+	          { key: 'contents', className: CLASS_ROOT + '__drop-contents',
 	            onClick: this._onSink },
 	          contents
 	        )];
@@ -35138,52 +36437,44 @@ var Grommet =
 
 	      return _react2.default.createElement(
 	        'div',
-	        { id: 'search-drop', className: classes.join(' ') },
+	        { id: 'search-drop', className: classes },
 	        contents
 	      );
 	    }
 	  }, {
 	    key: 'render',
 	    value: function render() {
+	      var _classnames3;
 
-	      var classes = this._classes(CLASS_ROOT);
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large && !this.props.size) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var classes = (0, _classnames5.default)(CLASS_ROOT, (_classnames3 = {}, _defineProperty(_classnames3, CLASS_ROOT + '--controlled', !this.state.inline), _defineProperty(_classnames3, CLASS_ROOT + '--fill', this.props.fill), _defineProperty(_classnames3, CLASS_ROOT + '--icon-align-' + this.props.iconAlign, this.props.iconAlign), _defineProperty(_classnames3, CLASS_ROOT + '--inline', this.state.inline), _defineProperty(_classnames3, CLASS_ROOT + '--large', this.props.large && !this.props.size), _defineProperty(_classnames3, CLASS_ROOT + '--' + this.props.size, this.props.size), _classnames3), this.props.className);
 
 	      if (this.state.inline) {
-
 	        return _react2.default.createElement(
 	          'div',
-	          { className: classes.join(' ') },
+	          { className: classes },
 	          _react2.default.createElement('input', { ref: 'input', type: 'search',
 	            id: this.props.id,
 	            placeholder: this.props.placeHolder,
-	            defaultValue: this.props.defaultValue,
-	            value: this.props.value,
-	            className: CLASS_ROOT + "__input",
+	            autoComplete: 'off',
+	            defaultValue: this._renderLabel(this.props.defaultValue),
+	            value: this._renderLabel(this.props.value),
+	            className: CLASS_ROOT + '__input',
 	            onFocus: this._onFocusInput,
 	            onBlur: this._onBlurInput,
 	            onChange: this._onChangeInput }),
 	          _react2.default.createElement(_Search2.default, null)
 	        );
 	      } else {
-
 	        return _react2.default.createElement(
-	          _Button2.default,
-	          { ref: 'control', id: this.props.id,
-	            className: classes.join(' '),
-	            type: 'icon',
+	          'div',
+	          { ref: 'control' },
+	          _react2.default.createElement(_Button2.default, { id: this.props.id,
+	            className: classes,
+	            icon: _react2.default.createElement(_Search2.default, null),
 	            tabIndex: '0',
 	            onClick: this._onAddDrop,
 	            onFocus: this._onFocusControl,
-	            onBlur: this._onBlurControl },
-	          _react2.default.createElement(_Search2.default, null)
+	            onBlur: this._onBlurControl })
 	        );
 	      }
 	    }
@@ -35194,59 +36485,72 @@ var Grommet =
 
 	exports.default = Search;
 
+
 	Search.propTypes = {
 	  defaultValue: _react.PropTypes.string,
 	  dropAlign: _Drop2.default.alignPropType,
 	  dropColorIndex: _react.PropTypes.string,
+	  fill: _react.PropTypes.bool,
+	  iconAlign: _react2.default.PropTypes.oneOf(['start', 'end']),
 	  id: _react2.default.PropTypes.string,
 	  inline: _react.PropTypes.bool,
 	  large: _react.PropTypes.bool,
 	  onChange: _react.PropTypes.func,
+	  onDOMChange: _react.PropTypes.func,
+	  onSelect: _react.PropTypes.func,
 	  placeHolder: _react.PropTypes.string,
 	  responsive: _react.PropTypes.bool,
 	  size: _react2.default.PropTypes.oneOf(['small', 'medium', 'large']),
-	  suggestions: _react.PropTypes.arrayOf(_react.PropTypes.oneOfType([_react.PropTypes.string, _react.PropTypes.shape({
-	    label: _react.PropTypes.string.isRequired
-	  })])),
+	  suggestions: _react.PropTypes.arrayOf(_react.PropTypes.oneOfType([_react.PropTypes.shape({
+	    label: _react.PropTypes.node,
+	    value: _react.PropTypes.any
+	  }), _react.PropTypes.string])),
 	  value: _react.PropTypes.string
 	};
 
 	Search.defaultProps = {
 	  align: 'left',
+	  iconAlign: 'end',
 	  inline: false,
 	  responsive: true
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 270 */
+/* 218 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -35260,28 +36564,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-search'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "search";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-search', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'search';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -35298,13 +36606,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -35312,49 +36621,54 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Search';
 	module.exports = exports['default'];
 
 /***/ },
-/* 271 */
+/* 219 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _classnames3 = __webpack_require__(3);
 
-	var _reactDom2 = _interopRequireDefault(_reactDom);
+	var _classnames4 = _interopRequireDefault(_classnames3);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
-	var _Drop = __webpack_require__(88);
+	var _Drop = __webpack_require__(48);
 
 	var _Drop2 = _interopRequireDefault(_Drop);
 
-	var _Button = __webpack_require__(74);
+	var _DOM = __webpack_require__(45);
+
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Search = __webpack_require__(270);
+	var _Search = __webpack_require__(218);
 
 	var _Search2 = _interopRequireDefault(_Search);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
@@ -35428,7 +36742,9 @@ var Grommet =
 	        document.addEventListener('click', this._onRemoveDrop);
 	        _KeyboardAccelerators2.default.startListeningToKeyboard(this, activeKeyboardHandlers);
 
-	        this._drop = _Drop2.default.add(_reactDom2.default.findDOMNode(this.refs.component), this._renderDrop(), { top: 'bottom', left: 'left' });
+	        // If this is inside a FormField, place the drop in reference to it.
+	        var control = (0, _DOM.findAncestor)(this.refs.component, 'form-field') || this.refs.component;
+	        this._drop = _Drop2.default.add(control, this._renderDrop(), { align: { top: 'bottom', left: 'left' } });
 	      } else if (this.state.dropActive && prevState.dropActive) {
 	        this._drop.render(this._renderDrop());
 	      }
@@ -35437,14 +36753,24 @@ var Grommet =
 	    key: 'componentWillUnmount',
 	    value: function componentWillUnmount() {
 	      document.removeEventListener('click', this._onRemoveDrop);
+	      if (this._drop) {
+	        this._drop.remove();
+	      }
 	    }
 	  }, {
 	    key: '_fireDOMChange',
 	    value: function _fireDOMChange() {
-	      var event = new Event('change', {
-	        'bubbles': true,
-	        'cancelable': true
-	      });
+	      var event = void 0;
+	      try {
+	        event = new Event('change', {
+	          'bubbles': true,
+	          'cancelable': true
+	        });
+	      } catch (e) {
+	        // IE11 workaround.
+	        event = document.createEvent('Event');
+	        event.initEvent('change', true, true);
+	      }
 	      // We use dispatchEvent to have the browser fill out the event fully.
 	      this.refs.input.dispatchEvent(event);
 	      // Manually dispatched events aren't delivered by React, so we notify too.
@@ -35465,7 +36791,20 @@ var Grommet =
 	    key: '_onAddDrop',
 	    value: function _onAddDrop(event) {
 	      event.preventDefault();
-	      this.setState({ dropActive: true, activeSuggestionIndex: -1 });
+	      // Get values of suggestions, so we can highlight selected suggestion
+	      var suggestionValues = this.props.suggestions.map(function (suggestion) {
+	        if ((typeof suggestion === 'undefined' ? 'undefined' : _typeof(suggestion)) === 'object') {
+	          return suggestion.value;
+	        } else {
+	          return suggestion;
+	        }
+	      });
+	      var activeSuggestionIndex = suggestionValues.indexOf(this.props.value);
+
+	      this.setState({
+	        dropActive: true,
+	        activeSuggestionIndex: activeSuggestionIndex
+	      });
 	    }
 	  }, {
 	    key: '_onRemoveDrop',
@@ -35516,12 +36855,16 @@ var Grommet =
 	  }, {
 	    key: '_onFocus',
 	    value: function _onFocus() {
-	      _reactDom2.default.findDOMNode(this.refs.input).select();
+	      var _this2 = this;
+
 	      this.setState({
 	        focused: true,
-	        dropActive: this.props.suggestions && this.props.suggestions.length > 0,
 	        activeSuggestionIndex: -1
 	      });
+	      // delay to wait out subsequent render after state change
+	      setTimeout(function () {
+	        _this2.refs.input.select();
+	      }, 10);
 	    }
 	  }, {
 	    key: '_renderLabel',
@@ -35538,14 +36881,13 @@ var Grommet =
 	      var suggestions = null;
 	      if (this.props.suggestions) {
 	        suggestions = this.props.suggestions.map(function (suggestion, index) {
-	          var classes = [CLASS_ROOT + "__suggestion"];
-	          if (index === this.state.activeSuggestionIndex) {
-	            classes.push(CLASS_ROOT + "__suggestion--active");
-	          }
+	          var _classnames;
+
+	          var classes = (0, _classnames4.default)((_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '__suggestion', true), _defineProperty(_classnames, CLASS_ROOT + '__suggestion--active', index === this.state.activeSuggestionIndex), _classnames));
 	          return _react2.default.createElement(
 	            'li',
 	            { key: index,
-	              className: classes.join(' '),
+	              className: classes,
 	              onClick: this._onClickSuggestion.bind(this, suggestion) },
 	            this._renderLabel(suggestion)
 	          );
@@ -35554,37 +36896,28 @@ var Grommet =
 
 	      return _react2.default.createElement(
 	        'ol',
-	        { className: CLASS_ROOT + "__suggestions", onClick: this._onRemoveDrop },
+	        { className: CLASS_ROOT + '__suggestions', onClick: this._onRemoveDrop },
 	        suggestions
 	      );
 	    }
 	  }, {
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.state.active) {
-	        classes.push(CLASS_ROOT + "--active");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var classes = (0, _classnames4.default)(CLASS_ROOT, _defineProperty({}, CLASS_ROOT + '--active', this.state.active), this.props.className);
 
 	      return _react2.default.createElement(
 	        'div',
-	        { ref: 'component', className: classes.join(' ') },
-	        _react2.default.createElement('input', { ref: 'input', className: CLASS_ROOT + "__input",
+	        { ref: 'component', className: classes },
+	        _react2.default.createElement('input', { ref: 'input', className: CLASS_ROOT + '__input',
 	          id: this.props.id, name: this.props.name,
 	          value: this._renderLabel(this.props.value),
 	          defaultValue: this._renderLabel(this.props.defaultValue),
 	          placeholder: this.props.placeHolder,
+	          autoComplete: 'off',
 	          onChange: this._onInputChange,
 	          onFocus: this._onFocus }),
-	        _react2.default.createElement(
-	          _Button2.default,
-	          { className: CLASS_ROOT + "__control", type: 'icon',
-	            onClick: this._onAddDrop },
-	          _react2.default.createElement(_Search2.default, null)
-	        )
+	        _react2.default.createElement(_Button2.default, { className: CLASS_ROOT + '__control', icon: _react2.default.createElement(_Search2.default, null),
+	          onClick: this._onAddDrop })
 	      );
 	    }
 	  }]);
@@ -35594,6 +36927,7 @@ var Grommet =
 
 	exports.default = SearchInput;
 
+
 	SearchInput.propTypes = {
 	  defaultValue: _react.PropTypes.oneOfType([_react.PropTypes.shape({
 	    label: _react.PropTypes.string,
@@ -35617,30 +36951,34 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 272 */
+/* 220 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Box = __webpack_require__(52);
+	var _classnames = __webpack_require__(3);
+
+	var _classnames2 = _interopRequireDefault(_classnames);
+
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
-	var _SkipLinkAnchor = __webpack_require__(101);
+	var _Props = __webpack_require__(49);
 
-	var _SkipLinkAnchor2 = _interopRequireDefault(_SkipLinkAnchor);
+	var _Props2 = _interopRequireDefault(_Props);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
@@ -35650,7 +36988,7 @@ var Grommet =
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "section";
+	var CLASS_ROOT = 'section';
 
 	var Section = function (_Component) {
 	  _inherits(Section, _Component);
@@ -35664,20 +37002,14 @@ var Grommet =
 	  _createClass(Section, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var classes = (0, _classnames2.default)(CLASS_ROOT, this.props.className);
 
-	      var skipLinkAnchor = null;
-	      if (this.props.primary) {
-	        skipLinkAnchor = _react2.default.createElement(_SkipLinkAnchor2.default, { label: 'Main Content' });
-	      }
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 
 	      return _react2.default.createElement(
 	        _Box2.default,
-	        _extends({ tag: 'section' }, this.props, { className: classes.join(' ') }),
-	        skipLinkAnchor,
+	        _extends({}, boxProps, { tag: 'section', className: classes,
+	          primary: this.props.primary }),
 	        this.props.children
 	      );
 	    }
@@ -35687,6 +37019,7 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Section;
+	;
 
 	Section.propTypes = _extends({
 	  primary: _react.PropTypes.bool
@@ -35698,44 +37031,46 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 273 */
+/* 221 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _pick = __webpack_require__(76);
+	var _classnames2 = __webpack_require__(3);
 
-	var _pick2 = _interopRequireDefault(_pick);
+	var _classnames3 = _interopRequireDefault(_classnames2);
 
-	var _keys = __webpack_require__(53);
+	var _Box = __webpack_require__(38);
 
-	var _keys2 = _interopRequireDefault(_keys);
+	var _Box2 = _interopRequireDefault(_Box);
 
-	var _Box = __webpack_require__(52);
+	var _Props = __webpack_require__(49);
 
-	var _Box2 = _interopRequireDefault(_Box);
+	var _Props2 = _interopRequireDefault(_Props);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "sidebar";
+	var CLASS_ROOT = 'sidebar';
 
 	var Sidebar = function (_Component) {
 	  _inherits(Sidebar, _Component);
@@ -35749,24 +37084,15 @@ var Grommet =
 	  _createClass(Sidebar, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      var other = (0, _pick2.default)(this.props, (0, _keys2.default)(_Box2.default.propTypes));
-	      if (this.props.primary) {
-	        classes.push(CLASS_ROOT + "--primary");
-	      }
-	      if (this.props.fixed) {
-	        classes.push(CLASS_ROOT + "--fixed");
-	      }
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--primary', this.props.primary), _defineProperty(_classnames, CLASS_ROOT + '--fixed', this.props.fixed), _defineProperty(_classnames, CLASS_ROOT + '--' + this.props.size, this.props.size), _classnames));
+
+	      var boxProps = _Props2.default.pick(this.props, Object.keys(_Box2.default.propTypes));
 
 	      return _react2.default.createElement(
 	        _Box2.default,
-	        _extends({}, other, { className: classes.join(' ') }),
+	        _extends({}, boxProps, { className: classes, primary: false }),
 	        this.props.children
 	      );
 	    }
@@ -35776,6 +37102,7 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Sidebar;
+	;
 
 	Sidebar.propTypes = _extends({
 	  fixed: _react.PropTypes.bool,
@@ -35790,17 +37117,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 274 */
+/* 222 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -35950,6 +37277,7 @@ var Grommet =
 
 	exports.default = Split;
 
+
 	Split.propTypes = {
 	  fixed: _react.PropTypes.bool,
 	  flex: _react.PropTypes.oneOf(['left', 'right', 'both']),
@@ -35965,22 +37293,22 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 275 */
+/* 223 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _KeyboardAccelerators = __webpack_require__(68);
+	var _KeyboardAccelerators = __webpack_require__(39);
 
 	var _KeyboardAccelerators2 = _interopRequireDefault(_KeyboardAccelerators);
 
@@ -36066,6 +37394,7 @@ var Grommet =
 
 	exports.default = Tab;
 
+
 	Tab.propTypes = {
 	  title: _react.PropTypes.string.isRequired,
 	  active: _react.PropTypes.bool,
@@ -36074,47 +37403,52 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 276 */
+/* 224 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _isEqual = __webpack_require__(208);
+	var _classnames2 = __webpack_require__(3);
 
-	var _isEqual2 = _interopRequireDefault(_isEqual);
+	var _classnames3 = _interopRequireDefault(_classnames2);
 
-	var _Spinning = __webpack_require__(216);
+	var _Spinning = __webpack_require__(170);
 
 	var _Spinning2 = _interopRequireDefault(_Spinning);
 
-	var _InfiniteScroll = __webpack_require__(217);
+	var _InfiniteScroll = __webpack_require__(171);
 
 	var _InfiniteScroll2 = _interopRequireDefault(_InfiniteScroll);
 
-	var _Selection = __webpack_require__(218);
+	var _Selection = __webpack_require__(172);
 
 	var _Selection2 = _interopRequireDefault(_Selection);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "table";
-	var SELECTED_CLASS = CLASS_ROOT + "-row--selected";
+	var CLASS_ROOT = 'table';
+	var SELECTED_CLASS = CLASS_ROOT + '-row--selected';
+	// empirical number describing a minimum cell width for a
+	// table to be presented in column-mode.
+	var MIN_CELL_WIDTH = 96;
 
 	var Table = function (_Component) {
 	  _inherits(Table, _Component);
@@ -36126,13 +37460,15 @@ var Grommet =
 
 	    _this._onClick = _this._onClick.bind(_this);
 	    _this._onResize = _this._onResize.bind(_this);
+	    _this._layout = _this._layout.bind(_this);
 
 	    if (props.selection) {
 	      console.warn('The "selection" property of Table has been deprecated.' + ' Instead, use the "selected" property. The behavior is the same.' + ' The property name was changed to align with List and Tiles.');
 	    }
 	    _this.state = {
 	      selected: _Selection2.default.normalizeIndexes(props.selected || props.selection),
-	      rebuildMirror: props.scrollable
+	      rebuildMirror: props.scrollable,
+	      small: false
 	    };
 	    return _this;
 	  }
@@ -36141,13 +37477,14 @@ var Grommet =
 	    key: 'componentDidMount',
 	    value: function componentDidMount() {
 	      this._setSelection();
-	      if (this.props.scrollable) {
+	      if (this.props.scrollable && !this.state.small) {
 	        this._buildMirror();
 	        this._alignMirror();
 	      }
 	      if (this.props.onMore) {
 	        this._scroll = _InfiniteScroll2.default.startListeningForScroll(this.refs.more, this.props.onMore);
 	      }
+	      this._adjustBodyCells();
 	      window.addEventListener('resize', this._onResize);
 	    }
 	  }, {
@@ -36155,7 +37492,7 @@ var Grommet =
 	    value: function componentWillReceiveProps(nextProps) {
 	      if (this._scroll) {
 	        _InfiniteScroll2.default.stopListeningForScroll(this._scroll);
-	        this._scroll = null;
+	        this._scroll = undefined;
 	      }
 	      if (nextProps.hasOwnProperty('selected') || nextProps.hasOwnProperty('selection')) {
 	        this.setState({
@@ -36167,19 +37504,20 @@ var Grommet =
 	  }, {
 	    key: 'componentDidUpdate',
 	    value: function componentDidUpdate(prevProps, prevState) {
-	      if (!(0, _isEqual2.default)(this.state.selected, prevState.selected)) {
+	      if (JSON.stringify(this.state.selected) !== JSON.stringify(prevState.selected)) {
 	        this._setSelection();
 	      }
-	      if (this.state.rebuildMirror) {
+	      if (this.state.rebuildMirror && !this.state.small) {
 	        this._buildMirror();
 	        this.setState({ rebuildMirror: false });
 	      }
-	      if (this.props.scrollable) {
+	      if (this.props.scrollable && !this.state.small) {
 	        this._alignMirror();
 	      }
 	      if (this.props.onMore && !this._scroll) {
 	        this._scroll = _InfiniteScroll2.default.startListeningForScroll(this.refs.more, this.props.onMore);
 	      }
+	      this._adjustBodyCells();
 	    }
 	  }, {
 	    key: 'componentWillUnmount',
@@ -36187,6 +37525,7 @@ var Grommet =
 	      if (this._scroll) {
 	        _InfiniteScroll2.default.stopListeningForScroll(this._scroll);
 	      }
+	      clearTimeout(this._resizeTimer);
 	      window.removeEventListener('resize', this._onResize);
 	    }
 	  }, {
@@ -36236,10 +37575,44 @@ var Grommet =
 	        this.props.onSelect(selected);
 	      }
 	    }
+	  }, {
+	    key: '_adjustBodyCells',
+	    value: function _adjustBodyCells() {
+	      // adjust table body cells to have link to the header
+	      // so that in responsive mode it displays the text as content in css.
+	      // IMPORTANT: non-text header cells, such as icon, are rendered as empty
+	      // headers.
+	      var headerCells = this.refs.table.querySelectorAll('thead th');
+	      if (headerCells.length > 0) {
+	        var rows = this.refs.table.querySelectorAll('tbody tr');
+
+	        [].forEach.call(rows, function (row) {
+	          [].forEach.call(row.cells, function (cell, index) {
+	            cell.setAttribute('data-th', headerCells[index].innerText);
+	          });
+	        });
+	      }
+	    }
 	  }, {
 	    key: '_onResize',
 	    value: function _onResize() {
+	      // debounce
+	      clearTimeout(this._resizeTimer);
+	      this._resizeTimer = setTimeout(this._layout, 50);
+	    }
+	  }, {
+	    key: '_layout',
+	    value: function _layout() {
 	      this._alignMirror();
+
+	      var availableSize = this.refs.container.offsetWidth;
+	      var numberOfCells = this.refs.table.querySelectorAll('thead th').length;
+
+	      if (numberOfCells * MIN_CELL_WIDTH > availableSize) {
+	        this.setState({ small: true });
+	      } else {
+	        this.setState({ small: false });
+	      }
 	    }
 	  }, {
 	    key: '_buildMirror',
@@ -36247,12 +37620,14 @@ var Grommet =
 	      var tableElement = this.refs.table;
 	      var cells = tableElement.querySelectorAll('thead tr th');
 	      var mirrorElement = this.refs.mirror;
-	      var mirrorRow = mirrorElement.querySelectorAll('thead tr')[0];
-	      while (mirrorRow.hasChildNodes()) {
-	        mirrorRow.removeChild(mirrorRow.lastChild);
-	      }
-	      for (var i = 0; i < cells.length; i++) {
-	        mirrorRow.appendChild(cells[i].cloneNode(true));
+	      if (mirrorElement) {
+	        var mirrorRow = mirrorElement.querySelectorAll('thead tr')[0];
+	        while (mirrorRow.hasChildNodes()) {
+	          mirrorRow.removeChild(mirrorRow.lastChild);
+	        }
+	        for (var i = 0; i < cells.length; i++) {
+	          mirrorRow.appendChild(cells[i].cloneNode(true));
+	        }
 	      }
 	    }
 	  }, {
@@ -36280,22 +37655,15 @@ var Grommet =
 	  }, {
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.selectable) {
-	        classes.push(CLASS_ROOT + "--selectable");
-	      }
-	      if (this.props.scrollable) {
-	        classes.push(CLASS_ROOT + "--scrollable");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
 
-	      var mirror = null;
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--small', this.state.small), _defineProperty(_classnames, CLASS_ROOT + '--selectable', this.props.selectable), _defineProperty(_classnames, CLASS_ROOT + '--scrollable', this.props.scrollable), _classnames));
+
+	      var mirror = void 0;
 	      if (this.props.scrollable) {
 	        mirror = _react2.default.createElement(
 	          'table',
-	          { ref: 'mirror', className: CLASS_ROOT + "__mirror" },
+	          { ref: 'mirror', className: CLASS_ROOT + '__mirror' },
 	          _react2.default.createElement(
 	            'thead',
 	            null,
@@ -36304,22 +37672,23 @@ var Grommet =
 	        );
 	      }
 
-	      var more = null;
+	      var more = void 0;
 	      if (this.props.onMore) {
 	        more = _react2.default.createElement(
 	          'div',
-	          { ref: 'more', className: CLASS_ROOT + "__more" },
+	          { ref: 'more', className: CLASS_ROOT + '__more' },
 	          _react2.default.createElement(_Spinning2.default, null)
 	        );
 	      }
 
 	      return _react2.default.createElement(
 	        'div',
-	        { ref: 'container', className: classes.join(' ') },
+	        { ref: 'container', className: classes },
 	        mirror,
 	        _react2.default.createElement(
 	          'table',
-	          { ref: 'table', className: CLASS_ROOT + "__table", onClick: this._onClick },
+	          { ref: 'table', className: CLASS_ROOT + '__table',
+	            onClick: this._onClick },
 	          this.props.children
 	        ),
 	        more
@@ -36332,6 +37701,7 @@ var Grommet =
 
 	exports.default = Table;
 
+
 	Table.propTypes = {
 	  onMore: _react.PropTypes.func,
 	  onSelect: _react.PropTypes.func,
@@ -36342,30 +37712,36 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 277 */
+/* 225 */
 /***/ function(module, exports, __webpack_require__) {
 
-	"use strict";
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+	'use strict';
 
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "table-row";
+	var CLASS_ROOT = 'table-row';
 
 	var TableRow = function (_Component) {
 	  _inherits(TableRow, _Component);
@@ -36377,22 +37753,15 @@ var Grommet =
 	  }
 
 	  _createClass(TableRow, [{
-	    key: "render",
+	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT];
-	      if (this.props.selected) {
-	        classes.push(CLASS_ROOT + "--selected");
-	      }
-	      if (this.props.onClick) {
-	        classes.push(CLASS_ROOT + "--selectable");
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
-	      }
+	      var _classnames;
+
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, this.props.className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--selected', this.props.selected), _defineProperty(_classnames, CLASS_ROOT + '--selectable', this.props.onClick), _classnames));
 
 	      return _react2.default.createElement(
-	        "tr",
-	        { className: classes.join(' '), onClick: this.props.onClick },
+	        'tr',
+	        { className: classes, onClick: this.props.onClick },
 	        this.props.children
 	      );
 	    }
@@ -36402,6 +37771,7 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = TableRow;
+	;
 
 	TableRow.propTypes = {
 	  onClick: _react.PropTypes.func,
@@ -36410,26 +37780,26 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 278 */
+/* 226 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Intl = __webpack_require__(70);
+	var _Intl = __webpack_require__(41);
 
 	var _Intl2 = _interopRequireDefault(_Intl);
 
-	var _Box = __webpack_require__(52);
+	var _Box = __webpack_require__(38);
 
 	var _Box2 = _interopRequireDefault(_Box);
 
@@ -36454,7 +37824,8 @@ var Grommet =
 	    _this._activateTab = _this._activateTab.bind(_this);
 
 	    _this.state = {
-	      activeIndex: props.initialIndex
+	      activeIndex: props.initialIndex,
+	      justify: props.justify
 	    };
 	    return _this;
 	  }
@@ -36468,6 +37839,10 @@ var Grommet =
 	    key: 'render',
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
+	      classes.push(CLASS_ROOT + '--justify-' + this.props.justify);
+	      if (this.props.responsive) {
+	        classes.push(CLASS_ROOT + '--responsive');
+	      }
 
 	      var activeContainer;
 	      var activeTitle;
@@ -36526,8 +37901,11 @@ var Grommet =
 
 	exports.default = Tabs;
 
+
 	Tabs.propTypes = {
-	  activeIndex: _react.PropTypes.number
+	  activeIndex: _react.PropTypes.number,
+	  justify: _react.PropTypes.oneOf(['start', 'center', 'end']),
+	  responsive: _react.PropTypes.bool
 	};
 
 	Tabs.contextTypes = {
@@ -36535,29 +37913,31 @@ var Grommet =
 	};
 
 	Tabs.defaultProps = {
-	  initialIndex: 0
+	  initialIndex: 0,
+	  justify: 'center',
+	  responsive: true
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 279 */
+/* 227 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _reactDom = __webpack_require__(69);
+	var _reactDom = __webpack_require__(40);
 
-	var _Status = __webpack_require__(256);
+	var _Status = __webpack_require__(204);
 
 	var _Status2 = _interopRequireDefault(_Status);
 
@@ -36707,17 +38087,17 @@ var Grommet =
 	        }
 	        // find max
 	        var max = 0;
-	        for (var i = 0; i < parts.length; i += 1) {
+	        for (var _i = 0; _i < parts.length; _i += 1) {
 	          if ('column' === this.props.direction) {
-	            max = Math.max(max, parts[i].offsetHeight);
+	            max = Math.max(max, parts[_i].offsetHeight);
 	          } else {
-	            max = Math.max(max, parts[i].offsetWidth);
+	            max = Math.max(max, parts[_i].offsetWidth);
 	          }
 	        }
 	        // set basis
-	        for (var i = 0; i < parts.length; i += 1) {
-	          parts[i].style.webkitFlexBasis = '' + max + 'px';
-	          parts[i].style.flexBasis = '' + max + 'px';
+	        for (var _i2 = 0; _i2 < parts.length; _i2 += 1) {
+	          parts[_i2].style.webkitFlexBasis = '' + max + 'px';
+	          parts[_i2].style.flexBasis = '' + max + 'px';
 	        }
 	      }
 	    }
@@ -36857,8 +38237,8 @@ var Grommet =
 	              var delta = [Math.abs(p1[0] - p2[0]), Math.abs(p1[1] - p2[1])];
 	              context.beginPath();
 	              context.moveTo(p1[0], p1[1]);
-	              var cp1 = undefined;
-	              var cp2 = undefined;
+	              var cp1 = void 0;
+	              var cp2 = void 0;
 
 	              if (this.state.highlights[id]) {
 	                context.lineWidth = 4;
@@ -36987,6 +38367,7 @@ var Grommet =
 
 	exports.default = Topology;
 
+
 	Topology.propTypes = {
 	  links: _react.PropTypes.arrayOf(_react.PropTypes.shape({
 	    colorIndex: _react.PropTypes.string,
@@ -37006,34 +38387,34 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 280 */
+/* 228 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
-	var _Button = __webpack_require__(74);
+	var _Button = __webpack_require__(46);
 
 	var _Button2 = _interopRequireDefault(_Button);
 
-	var _Play = __webpack_require__(281);
+	var _Play = __webpack_require__(229);
 
 	var _Play2 = _interopRequireDefault(_Play);
 
-	var _Pause = __webpack_require__(282);
+	var _Pause = __webpack_require__(230);
 
 	var _Pause2 = _interopRequireDefault(_Pause);
 
-	var _Refresh = __webpack_require__(283);
+	var _Refresh = __webpack_require__(231);
 
 	var _Refresh2 = _interopRequireDefault(_Refresh);
 
@@ -37135,7 +38516,7 @@ var Grommet =
 	    value: function render() {
 	      var classes = [CLASS_ROOT];
 	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
+	        classes.push(CLASS_ROOT + '--' + this.props.size);
 	      }
 	      if (this.props.full) {
 	        classes.push(CLASS_ROOT + '--full');
@@ -37147,7 +38528,7 @@ var Grommet =
 	        classes.push(CLASS_ROOT + '--interacting');
 	      }
 	      if (this.props.colorIndex) {
-	        classes.push("background-color-index-" + this.props.colorIndex);
+	        classes.push('background-color-index-' + this.props.colorIndex);
 	      }
 	      if (this.props.className) {
 	        classes.push(this.props.className);
@@ -37158,6 +38539,7 @@ var Grommet =
 
 	      var title;
 	      if (this.props.title) {
+	        classes.push(CLASS_ROOT + '--titled');
 	        title = _react2.default.createElement(
 	          'div',
 	          { className: CLASS_ROOT + '__title' },
@@ -37221,7 +38603,7 @@ var Grommet =
 	          { className: CLASS_ROOT + '__summary' },
 	          _react2.default.createElement(
 	            _Button2.default,
-	            { className: CLASS_ROOT + '__control', type: 'icon',
+	            { className: CLASS_ROOT + '__control', plain: true,
 	              primary: true,
 	              onClick: this._onClickControl },
 	            controlIcon
@@ -37239,6 +38621,7 @@ var Grommet =
 
 	exports.default = Video;
 
+
 	Video.propTypes = {
 	  colorIndex: _react.PropTypes.string,
 	  duration: _react.PropTypes.number,
@@ -37254,34 +38637,40 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 281 */
+/* 229 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -37295,28 +38684,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-play'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "play";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-play', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'play';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.3317', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.3317', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -37333,13 +38726,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -37347,38 +38741,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Play';
 	module.exports = exports['default'];
 
 /***/ },
-/* 282 */
+/* 230 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -37392,28 +38793,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-pause'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "pause";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-pause', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'pause';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -37430,13 +38835,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -37444,38 +38850,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Pause';
 	module.exports = exports['default'];
 
 /***/ },
-/* 283 */
+/* 231 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -37489,28 +38902,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-refresh'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "refresh";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-refresh', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'refresh';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -37527,13 +38944,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -37541,23 +38959,24 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Refresh';
 	module.exports = exports['default'];
 
 /***/ },
-/* 284 */
+/* 232 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
-
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; };
+
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -37664,23 +39083,24 @@ var Grommet =
 
 	exports.default = GrommetObject;
 
+
 	GrommetObject.propTypes = {
 	  data: _react.PropTypes.object
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 285 */
+/* 233 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -37720,17 +39140,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 286 */
+/* 234 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -37791,17 +39211,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 287 */
+/* 235 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -37855,17 +39275,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 288 */
+/* 236 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -37925,17 +39345,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 289 */
+/* 237 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -37996,17 +39416,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 290 */
+/* 238 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38059,17 +39479,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 291 */
+/* 239 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38153,6 +39573,7 @@ var Grommet =
 
 	exports.default = Filter;
 
+
 	Filter.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  notifications: _react.PropTypes.number
@@ -38160,17 +39581,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 292 */
+/* 240 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38211,7 +39632,7 @@ var Grommet =
 	      if (this.props.className) {
 	        classes.push(this.props.className);
 	      }
-	      var title = undefined;
+	      var title = void 0;
 	      if (this.props.a11yTitle) {
 	        title = _react2.default.createElement(
 	          'title',
@@ -38236,6 +39657,7 @@ var Grommet =
 
 	exports.default = Grommet;
 
+
 	Grommet.defaultProps = {
 	  a11yTitle: 'Grommet',
 	  a11yTitleId: 'grommet-logo-title'
@@ -38252,17 +39674,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 293 */
+/* 241 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38316,17 +39738,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 294 */
+/* 242 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38380,17 +39802,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 295 */
+/* 243 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38443,17 +39865,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 296 */
+/* 244 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38509,17 +39931,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 297 */
+/* 245 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38574,17 +39996,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 298 */
+/* 246 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38639,23 +40061,24 @@ var Grommet =
 
 	exports.default = Person;
 
+
 	Person.propTypes = {
 	  onClick: _react.PropTypes.func
 	};
 	module.exports = exports['default'];
 
 /***/ },
-/* 299 */
+/* 247 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38709,17 +40132,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 300 */
+/* 248 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38773,17 +40196,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 301 */
+/* 249 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38839,17 +40262,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 302 */
+/* 250 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38902,17 +40325,17 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 303 */
+/* 251 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
@@ -38968,42 +40391,48 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 304 */
+/* 252 */
 /***/ function(module, exports, __webpack_require__) {
 
 	"use strict";
 
-	module.exports = { "3d": __webpack_require__(305), "Achievement": __webpack_require__(306), "Action": __webpack_require__(307), "Actions": __webpack_require__(308), "Add": __webpack_require__(266), "AdvancedSearch": __webpack_require__(309), "Aggregate": __webpack_require__(310), "Alarm": __webpack_require__(311), "Alert": __webpack_require__(312), "Analytics": __webpack_require__(313), "Announcement": __webpack_require__(314), "App": __webpack_require__(315), "Archive": __webpack_require__(316), "Article": __webpack_require__(317), "Ascend": __webpack_require__(318), "Assistant": __webpack_require__(319), "Attachment": __webpack_require__(320), "BarChart": __webpack_require__(321), "Blog": __webpack_require__(322), "Book": __webpack_require__(323), "Bookmark": __webpack_require__(324), "Bundle": __webpack_require__(325), "Calculator": __webpack_require__(326), "Calendar": __webpack_require__(203), "Camera": __webpack_require__(327), "Capacity": __webpack_require__(328), "CaretDown": __webpack_require__(329), "CaretNext": __webpack_require__(330), "CaretPrevious": __webpack_require__(331), "CaretUp": __webpack_require__(332), "Catalog": __webpack_require__(333), "ChapterAdd": __webpack_require__(334), "ChapterNext": __webpack_require__(335), "ChapterPrevious": __webpack_require__(336), "Chat": __webpack_require__(337), "CheckboxSelected": __webpack_require__(338), "Checkbox": __webpack_require__(339), "Checkmark": __webpack_require__(340), "CircularView": __webpack_require__(341), "Clipboard": __webpack_require__(342), "Clone": __webpack_require__(343), "Close": __webpack_require__(72), "CloudComputer": __webpack_require__(344), "CloudDownload": __webpack_require__(345), "CloudSoftware": __webpack_require__(346), "CloudUpload": __webpack_require__(347), "Cloud": __webpack_require__(348), "Cluster": __webpack_require__(349), "Code": __webpack_require__(350), "CommandLine": __webpack_require__(351), "Compare": __webpack_require__(352), "Compasss": __webpack_require__(353), "Compliance": __webpack_require__(354), "ComputerPersonal": __webpack_require__(355), "Configuration": __webpack_require__(356), "Connect": __webpack_require__(357), "ContactCard": __webpack_require__(358), "ContactUs": __webpack_require__(359), "Contract": __webpack_require__(360), "Copy": __webpack_require__(361), "Cube": __webpack_require__(362), "Cubes": __webpack_require__(363), "Cursor": __webpack_require__(364), "Cut": __webpack_require__(365), "Cycle": __webpack_require__(366), "Dashboard": __webpack_require__(367), "Database": __webpack_require__(368), "Defect": __webpack_require__(369), "Deliver": __webpack_require__(370), "Deployment": __webpack_require__(371), "Descend": __webpack_require__(372), "Desktop": __webpack_require__(373), "Detach": __webpack_require__(374), "Directions": __webpack_require__(375), "Dislike": __webpack_require__(376), "DivideFour": __webpack_require__(377), "DivideRight": __webpack_require__(378), "DivideThree": __webpack_require__(379), "Divide": __webpack_require__(380), "DocumentCloud": __webpack_require__(381), "DocumentCompress": __webpack_require__(382), "DocumentConig": __webpack_require__(383), "DocumentCsv": __webpack_require__(384), "DocumentData": __webpack_require__(385), "DocumentDownload": __webpack_require__(386), "DocumentExcel": __webpack_require__(387), "DocumentExecutable": __webpack_require__(388), "DocumentImage": __webpack_require__(389), "DocumentLocked": __webpack_require__(390), "DocumentMissing": __webpack_require__(391), "DocumentNotes": __webpack_require__(392), "DocumentOutlook": __webpack_require__(393), "DocumentPdf": __webpack_require__(394), "DocumentPerformance": __webpack_require__(395), "DocumentPowerpoint": __webpack_require__(396), "DocumentRtf": __webpack_require__(397), "DocumentSound": __webpack_require__(398), "DocumentTest": __webpack_require__(399), "DocumentText": __webpack_require__(400), "DocumentThreat": __webpack_require__(401), "DocumentTime": __webpack_require__(402), "DocumentTransfer": __webpack_require__(403), "DocumentTxt": __webpack_require__(404), "DocumentUpdate": __webpack_require__(405), "DocumentUpload": __webpack_require__(406), "DocumentUser": __webpack_require__(407), "DocumentVerified": __webpack_require__(408), "DocumentVideo": __webpack_require__(409), "DocumentWord": __webpack_require__(410), "Document": __webpack_require__(411), "Domain": __webpack_require__(412), "Down": __webpack_require__(91), "Download": __webpack_require__(413), "Drag": __webpack_require__(414), "DriveCage": __webpack_require__(415), "Duplicate": __webpack_require__(416), "Edit": __webpack_require__(417), "Eject": __webpack_require__(418), "Expand": __webpack_require__(419), "Fan": __webpack_require__(420), "FastForward": __webpack_require__(421), "Favorite": __webpack_require__(422), "Filter": __webpack_require__(423), "FirstAid": __webpack_require__(424), "Flag": __webpack_require__(425), "FolderCycle": __webpack_require__(426), "FolderOpen": __webpack_require__(427), "Folder": __webpack_require__(428), "Gallery": __webpack_require__(429), "Globe": __webpack_require__(430), "Grid": __webpack_require__(431), "Group": __webpack_require__(432), "Grow": __webpack_require__(433), "Halt": __webpack_require__(434), "Help": __webpack_require__(435), "History": __webpack_require__(436), "Home": __webpack_require__(437), "HostMaintenance": __webpack_require__(438), "Host": __webpack_require__(439), "Image": __webpack_require__(440), "Impact": __webpack_require__(441), "InProgress": __webpack_require__(442), "Inbox": __webpack_require__(443), "Indicator": __webpack_require__(444), "Information": __webpack_require__(445), "Inherit": __webpack_require__(446), "Install": __webpack_require__(447), "Integration": __webpack_require__(448), "Iteration": __webpack_require__(449), "Java": __webpack_require__(450), "Language": __webpack_require__(451), "Launch": __webpack_require__(452), "License": __webpack_require__(453), "Like": __webpack_require__(454), "LineChart": __webpack_require__(455), "LinkBottom": __webpack_require__(456), "LinkDown": __webpack_require__(457), "LinkNext": __webpack_require__(4), "LinkPrevious": __webpack_require__(43), "LinkTop": __webpack_require__(458), "LinkUp": __webpack_require__(459), "Link": __webpack_require__(460), "LocationPin": __webpack_require__(461), "Location": __webpack_require__(462), "Lock": __webpack_require__(463), "Login": __webpack_require__(464), "Logout": __webpack_require__(465), "Mail": __webpack_require__(466), "Manual": __webpack_require__(467), "MapLocation": __webpack_require__(468), "Map": __webpack_require__(469), "Menu": __webpack_require__(470), "Microphone": __webpack_require__(471), "Monitor": __webpack_require__(472), "More": __webpack_require__(90), "Multiple": __webpack_require__(473), "Navigate": __webpack_require__(474), "NewWindow": __webpack_require__(475), "New": __webpack_require__(476), "Next": __webpack_require__(221), "Notes": __webpack_require__(477), "Notification": __webpack_require__(478), "Optimization": __webpack_require__(479), "Organization": __webpack_require__(480), "Overview": __webpack_require__(481), "Pan": __webpack_require__(482), "Pause": __webpack_require__(282), "PaymentGoogleWallet": __webpack_require__(483), "PaymentMastercard": __webpack_require__(484), "PaymentPaypal": __webpack_require__(485), "PaymentSquare": __webpack_require__(486), "PaymentVisa": __webpack_require__(487), "Pin": __webpack_require__(488), "Plan": __webpack_require__(489), "PlatformApple": __webpack_require__(490), "PlatformChrome": __webpack_require__(491), "PlatformDropbox": __webpack_require__(492), "PlatformEdge": __webpack_require__(493), "PlatformFirefox": __webpack_require__(494), "PlatformInternetExplorer": __webpack_require__(495), "PlatformSkype": __webpack_require__(496), "PlatformWindows": __webpack_require__(497), "Play": __webpack_require__(281), "Power": __webpack_require__(498), "Previous": __webpack_require__(220), "Print": __webpack_require__(499), "QuickView": __webpack_require__(500), "RadialSelected": __webpack_require__(501), "Radial": __webpack_require__(502), "Refresh": __webpack_require__(283), "Resources": __webpack_require__(503), "Rewind": __webpack_require__(504), "Risk": __webpack_require__(505), "Rss": __webpack_require__(506), "Satellite": __webpack_require__(507), "ScheduleClone": __webpack_require__(508), "ScheduleNew": __webpack_require__(509), "SchedulePlay": __webpack_require__(510), "Schedule": __webpack_require__(511), "Scorecard": __webpack_require__(512), "Search": __webpack_require__(270), "Secure": __webpack_require__(513), "SelectLeft": __webpack_require__(514), "Select": __webpack_require__(515), "ServerCluster": __webpack_require__(516), "Server": __webpack_require__(517), "Servers": __webpack_require__(518), "ServiceBusiness": __webpack_require__(519), "ServiceStart": __webpack_require__(520), "Share": __webpack_require__(521), "SheildConfigure": __webpack_require__(522), "Shield": __webpack_require__(523), "Shift": __webpack_require__(524), "ShopBasket": __webpack_require__(525), "ShopCart": __webpack_require__(526), "Soa": __webpack_require__(527), "SocialEmail": __webpack_require__(528), "SocialFacebook": __webpack_require__(529), "SocialGithub": __webpack_require__(530), "SocialGoogle": __webpack_require__(531), "SocialInstagram": __webpack_require__(532), "SocialLinkedin": __webpack_require__(533), "SocialMedium": __webpack_require__(534), "SocialPinterest": __webpack_require__(535), "SocialReddit": __webpack_require__(536), "SocialSlack": __webpack_require__(537), "SocialTumblr": __webpack_require__(538), "SocialTwitter": __webpack_require__(539), "SocialVimeo": __webpack_require__(540), "SocialYoutube": __webpack_require__(541), "Sort": __webpack_require__(542), "Stakeholder": __webpack_require__(543), "StarHalf": __webpack_require__(544), "Star": __webpack_require__(545), "Steps": __webpack_require__(546), "Storage": __webpack_require__(547), "StreetView": __webpack_require__(548), "Subtract": __webpack_require__(267), "Support": __webpack_require__(549), "Svg": __webpack_require__(550), "Sync": __webpack_require__(551), "System": __webpack_require__(552), "TabNext": __webpack_require__(553), "TabPrevious": __webpack_require__(554), "TabUp": __webpack_require__(555), "TableAdd": __webpack_require__(556), "Table": __webpack_require__(557), "Tag": __webpack_require__(558), "Target": __webpack_require__(559), "Task": __webpack_require__(560), "Template": __webpack_require__(561), "TestDesktop": __webpack_require__(562), "Test": __webpack_require__(563), "TesxtWrap": __webpack_require__(564), "Threats": __webpack_require__(565), "ThreeD": __webpack_require__(566), "Ticket": __webpack_require__(567), "Tools": __webpack_require__(568), "Tooltip": __webpack_require__(569), "Transaction": __webpack_require__(570), "Trash": __webpack_require__(571), "Tree": __webpack_require__(572), "Trigger": __webpack_require__(573), "Trophy": __webpack_require__(574), "Troubleshooting": __webpack_require__(575), "Unlock": __webpack_require__(576), "Up": __webpack_require__(102), "Update": __webpack_require__(577), "Upgrade": __webpack_require__(578), "Upload": __webpack_require__(579), "UserAdd": __webpack_require__(580), "UserAdmin": __webpack_require__(581), "UserExpert": __webpack_require__(582), "UserFemale": __webpack_require__(583), "UserManager": __webpack_require__(584), "UserNew": __webpack_require__(585), "UserPolice": __webpack_require__(586), "UserSettings": __webpack_require__(587), "UserWorker": __webpack_require__(588), "User": __webpack_require__(589), "Validation": __webpack_require__(590), "Video": __webpack_require__(591), "View": __webpack_require__(592), "VirtualMachine": __webpack_require__(593), "VmMaintenance": __webpack_require__(594), "VolumeLow": __webpack_require__(595), "VolumeMute": __webpack_require__(596), "Volume": __webpack_require__(597), "Vulnerability": __webpack_require__(598), "Waypoint": __webpack_require__(599), "Workshop": __webpack_require__(600), "ZoomIn": __webpack_require__(601) };
+	module.exports = { "3d": __webpack_require__(253), "Achievement": __webpack_require__(254), "Action": __webpack_require__(255), "Actions": __webpack_require__(256), "Add": __webpack_require__(214), "AdvancedSearch": __webpack_require__(257), "Aggregate": __webpack_require__(258), "Alarm": __webpack_require__(259), "Alert": __webpack_require__(260), "Analytics": __webpack_require__(261), "Announcement": __webpack_require__(262), "App": __webpack_require__(263), "Archive": __webpack_require__(264), "Article": __webpack_require__(265), "Ascend": __webpack_require__(266), "Assistant": __webpack_require__(267), "Attachment": __webpack_require__(268), "BarChart": __webpack_require__(269), "Blog": __webpack_require__(270), "Book": __webpack_require__(271), "Bookmark": __webpack_require__(272), "Bundle": __webpack_require__(273), "Calculator": __webpack_require__(274), "Calendar": __webpack_require__(167), "Camera": __webpack_require__(275), "Capacity": __webpack_require__(276), "CaretDown": __webpack_require__(277), "CaretNext": __webpack_require__(278), "CaretPrevious": __webpack_require__(279), "CaretUp": __webpack_require__(280), "Catalog": __webpack_require__(281), "ChapterAdd": __webpack_require__(282), "ChapterNext": __webpack_require__(283), "ChapterPrevious": __webpack_require__(284), "Chat": __webpack_require__(285), "CheckboxSelected": __webpack_require__(286), "Checkbox": __webpack_require__(287), "Checkmark": __webpack_require__(288), "CircularView": __webpack_require__(289), "Clipboard": __webpack_require__(290), "Clone": __webpack_require__(291), "Close": __webpack_require__(44), "CloudComputer": __webpack_require__(292), "CloudDownload": __webpack_require__(293), "CloudSoftware": __webpack_require__(294), "CloudUpload": __webpack_require__(295), "Cloud": __webpack_require__(296), "Cluster": __webpack_require__(297), "Code": __webpack_require__(298), "CommandLine": __webpack_require__(299), "Compare": __webpack_require__(300), "Compasss": __webpack_require__(301), "Compliance": __webpack_require__(302), "ComputerPersonal": __webpack_require__(303), "Configuration": __webpack_require__(304), "Connect": __webpack_require__(305), "ContactCard": __webpack_require__(306), "ContactUs": __webpack_require__(307), "Contract": __webpack_require__(308), "Copy": __webpack_require__(309), "Cube": __webpack_require__(310), "Cubes": __webpack_require__(311), "Cursor": __webpack_require__(312), "Cut": __webpack_require__(313), "Cycle": __webpack_require__(314), "Dashboard": __webpack_require__(315), "Database": __webpack_require__(316), "Defect": __webpack_require__(317), "Deliver": __webpack_require__(318), "Deployment": __webpack_require__(319), "Descend": __webpack_require__(320), "Desktop": __webpack_require__(321), "Detach": __webpack_require__(322), "Directions": __webpack_require__(323), "Dislike": __webpack_require__(324), "DivideFour": __webpack_require__(325), "DivideRight": __webpack_require__(326), "DivideThree": __webpack_require__(327), "Divide": __webpack_require__(328), "DocumentCloud": __webpack_require__(329), "DocumentCompress": __webpack_require__(330), "DocumentConig": __webpack_require__(331), "DocumentCsv": __webpack_require__(332), "DocumentData": __webpack_require__(333), "DocumentDownload": __webpack_require__(334), "DocumentExcel": __webpack_require__(335), "DocumentExecutable": __webpack_require__(336), "DocumentImage": __webpack_require__(337), "DocumentLocked": __webpack_require__(338), "DocumentMissing": __webpack_require__(339), "DocumentNotes": __webpack_require__(340), "DocumentOutlook": __webpack_require__(341), "DocumentPdf": __webpack_require__(342), "DocumentPerformance": __webpack_require__(343), "DocumentPowerpoint": __webpack_require__(344), "DocumentRtf": __webpack_require__(345), "DocumentSound": __webpack_require__(346), "DocumentTest": __webpack_require__(347), "DocumentText": __webpack_require__(348), "DocumentThreat": __webpack_require__(349), "DocumentTime": __webpack_require__(350), "DocumentTransfer": __webpack_require__(351), "DocumentTxt": __webpack_require__(352), "DocumentUpdate": __webpack_require__(353), "DocumentUpload": __webpack_require__(354), "DocumentUser": __webpack_require__(355), "DocumentVerified": __webpack_require__(356), "DocumentVideo": __webpack_require__(357), "DocumentWord": __webpack_require__(358), "Document": __webpack_require__(359), "Domain": __webpack_require__(360), "Down": __webpack_require__(51), "Download": __webpack_require__(361), "Drag": __webpack_require__(362), "DriveCage": __webpack_require__(363), "Duplicate": __webpack_require__(364), "Edit": __webpack_require__(365), "Eject": __webpack_require__(366), "Expand": __webpack_require__(367), "Fan": __webpack_require__(368), "FastForward": __webpack_require__(369), "Favorite": __webpack_require__(370), "Filter": __webpack_require__(371), "FirstAid": __webpack_require__(372), "Flag": __webpack_require__(373), "FolderCycle": __webpack_require__(374), "FolderOpen": __webpack_require__(375), "Folder": __webpack_require__(376), "Gallery": __webpack_require__(377), "Globe": __webpack_require__(378), "Grid": __webpack_require__(379), "Group": __webpack_require__(380), "Grow": __webpack_require__(381), "Halt": __webpack_require__(382), "Help": __webpack_require__(383), "History": __webpack_require__(384), "Home": __webpack_require__(385), "HostMaintenance": __webpack_require__(386), "Host": __webpack_require__(387), "Image": __webpack_require__(388), "Impact": __webpack_require__(389), "InProgress": __webpack_require__(390), "Inbox": __webpack_require__(391), "Indicator": __webpack_require__(392), "Information": __webpack_require__(393), "Inherit": __webpack_require__(394), "Install": __webpack_require__(395), "Integration": __webpack_require__(396), "Iteration": __webpack_require__(397), "Java": __webpack_require__(398), "Language": __webpack_require__(399), "Launch": __webpack_require__(400), "License": __webpack_require__(401), "Like": __webpack_require__(402), "LineChart": __webpack_require__(403), "LinkBottom": __webpack_require__(404), "LinkDown": __webpack_require__(405), "LinkNext": __webpack_require__(4), "LinkPrevious": __webpack_require__(62), "LinkTop": __webpack_require__(406), "LinkUp": __webpack_require__(407), "Link": __webpack_require__(408), "LocationPin": __webpack_require__(409), "Location": __webpack_require__(410), "Lock": __webpack_require__(411), "Login": __webpack_require__(412), "Logout": __webpack_require__(413), "Mail": __webpack_require__(414), "Manual": __webpack_require__(415), "MapLocation": __webpack_require__(416), "Map": __webpack_require__(417), "Menu": __webpack_require__(418), "Microphone": __webpack_require__(419), "Monitor": __webpack_require__(420), "More": __webpack_require__(52), "Multiple": __webpack_require__(421), "Navigate": __webpack_require__(422), "NewWindow": __webpack_require__(423), "New": __webpack_require__(424), "Next": __webpack_require__(175), "Notes": __webpack_require__(425), "Notification": __webpack_require__(426), "Optimization": __webpack_require__(427), "Organization": __webpack_require__(428), "Overview": __webpack_require__(429), "Pan": __webpack_require__(430), "Pause": __webpack_require__(230), "PaymentGoogleWallet": __webpack_require__(431), "PaymentMastercard": __webpack_require__(432), "PaymentPaypal": __webpack_require__(433), "PaymentSquare": __webpack_require__(434), "PaymentVisa": __webpack_require__(435), "Pin": __webpack_require__(436), "Plan": __webpack_require__(437), "PlatformApple": __webpack_require__(438), "PlatformChrome": __webpack_require__(439), "PlatformDropbox": __webpack_require__(440), "PlatformEdge": __webpack_require__(441), "PlatformFirefox": __webpack_require__(442), "PlatformInternetExplorer": __webpack_require__(443), "PlatformSkype": __webpack_require__(444), "PlatformWindows": __webpack_require__(445), "Play": __webpack_require__(229), "Power": __webpack_require__(446), "Previous": __webpack_require__(174), "Print": __webpack_require__(447), "QuickView": __webpack_require__(448), "RadialSelected": __webpack_require__(449), "Radial": __webpack_require__(450), "Refresh": __webpack_require__(231), "Resources": __webpack_require__(451), "Rewind": __webpack_require__(452), "Risk": __webpack_require__(453), "Rss": __webpack_require__(454), "Satellite": __webpack_require__(455), "ScheduleClone": __webpack_require__(456), "ScheduleNew": __webpack_require__(457), "SchedulePlay": __webpack_require__(458), "Schedule": __webpack_require__(459), "Scorecard": __webpack_require__(460), "Search": __webpack_require__(218), "Secure": __webpack_require__(461), "SelectLeft": __webpack_require__(462), "Select": __webpack_require__(463), "ServerCluster": __webpack_require__(464), "Server": __webpack_require__(465), "Servers": __webpack_require__(466), "ServiceBusiness": __webpack_require__(467), "ServiceStart": __webpack_require__(468), "Share": __webpack_require__(469), "SheildConfigure": __webpack_require__(470), "Shield": __webpack_require__(471), "Shift": __webpack_require__(472), "ShopBasket": __webpack_require__(473), "ShopCart": __webpack_require__(474), "Soa": __webpack_require__(475), "SocialEmail": __webpack_require__(476), "SocialFacebook": __webpack_require__(477), "SocialGithub": __webpack_require__(478), "SocialGoogle": __webpack_require__(479), "SocialInstagram": __webpack_require__(480), "SocialLinkedin": __webpack_require__(481), "SocialMedium": __webpack_require__(482), "SocialPinterest": __webpack_require__(483), "SocialReddit": __webpack_require__(484), "SocialSlack": __webpack_require__(485), "SocialTumblr": __webpack_require__(486), "SocialTwitter": __webpack_require__(487), "SocialVimeo": __webpack_require__(488), "SocialYoutube": __webpack_require__(489), "Sort": __webpack_require__(490), "Stakeholder": __webpack_require__(491), "StarHalf": __webpack_require__(492), "Star": __webpack_require__(493), "Steps": __webpack_require__(494), "Storage": __webpack_require__(495), "StreetView": __webpack_require__(496), "Subtract": __webpack_require__(215), "Support": __webpack_require__(497), "Svg": __webpack_require__(498), "Sync": __webpack_require__(499), "System": __webpack_require__(500), "TabNext": __webpack_require__(501), "TabPrevious": __webpack_require__(502), "TabUp": __webpack_require__(503), "TableAdd": __webpack_require__(504), "Table": __webpack_require__(505), "Tag": __webpack_require__(506), "Target": __webpack_require__(507), "Task": __webpack_require__(508), "Template": __webpack_require__(509), "TestDesktop": __webpack_require__(510), "Test": __webpack_require__(511), "TesxtWrap": __webpack_require__(512), "Threats": __webpack_require__(513), "ThreeD": __webpack_require__(514), "Ticket": __webpack_require__(515), "Tools": __webpack_require__(516), "Tooltip": __webpack_require__(517), "Transaction": __webpack_require__(518), "Trash": __webpack_require__(519), "Tree": __webpack_require__(520), "Trigger": __webpack_require__(521), "Trophy": __webpack_require__(522), "Troubleshooting": __webpack_require__(523), "Unlock": __webpack_require__(524), "Up": __webpack_require__(63), "Update": __webpack_require__(525), "Upgrade": __webpack_require__(526), "Upload": __webpack_require__(527), "UserAdd": __webpack_require__(528), "UserAdmin": __webpack_require__(529), "UserExpert": __webpack_require__(530), "UserFemale": __webpack_require__(531), "UserManager": __webpack_require__(532), "UserNew": __webpack_require__(533), "UserPolice": __webpack_require__(534), "UserSettings": __webpack_require__(535), "UserWorker": __webpack_require__(536), "User": __webpack_require__(537), "Validation": __webpack_require__(538), "Video": __webpack_require__(539), "View": __webpack_require__(540), "VirtualMachine": __webpack_require__(541), "VmMaintenance": __webpack_require__(542), "VolumeLow": __webpack_require__(543), "VolumeMute": __webpack_require__(544), "Volume": __webpack_require__(545), "Vulnerability": __webpack_require__(546), "Waypoint": __webpack_require__(547), "Workshop": __webpack_require__(548), "ZoomIn": __webpack_require__(549) };
 
 /***/ },
-/* 305 */
+/* 253 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39017,28 +40446,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-3d'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "3d";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-3d', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || '3d';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.3616', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.3616', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39055,13 +40488,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39069,38 +40503,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = '3D';
 	module.exports = exports['default'];
 
 /***/ },
-/* 306 */
+/* 254 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39114,28 +40555,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-achievement'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "achievement";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-achievement', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'achievement';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 28 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 28 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39152,13 +40597,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39166,38 +40612,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Achievement';
 	module.exports = exports['default'];
 
 /***/ },
-/* 307 */
+/* 255 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39211,28 +40664,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-action'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "action";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-action', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'action';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39249,13 +40706,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39263,38 +40721,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Action';
 	module.exports = exports['default'];
 
 /***/ },
-/* 308 */
+/* 256 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39308,28 +40773,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-actions'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "actions";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-actions', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'actions';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39346,13 +40815,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39360,38 +40830,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Actions';
 	module.exports = exports['default'];
 
 /***/ },
-/* 309 */
+/* 257 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39405,28 +40882,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-advanced-search'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "advanced-search";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-advanced-search', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'advanced-search';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0552', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0552', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39443,13 +40924,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39457,38 +40939,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'AdvancedSearch';
 	module.exports = exports['default'];
 
 /***/ },
-/* 310 */
+/* 258 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39502,28 +40991,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-aggregate'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "aggregate";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-aggregate', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'aggregate';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39540,13 +41033,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39554,38 +41048,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Aggregate';
 	module.exports = exports['default'];
 
 /***/ },
-/* 311 */
+/* 259 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39599,28 +41100,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-alarm'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "alarm";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-alarm', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'alarm';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39637,13 +41142,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39651,38 +41157,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Alarm';
 	module.exports = exports['default'];
 
 /***/ },
-/* 312 */
+/* 260 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39696,28 +41209,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-alert'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "alert";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-alert', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'alert';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39740,13 +41257,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39754,38 +41272,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Alert';
 	module.exports = exports['default'];
 
 /***/ },
-/* 313 */
+/* 261 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39799,28 +41324,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-analytics'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "analytics";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-analytics', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'analytics';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39837,13 +41366,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39851,38 +41381,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Analytics';
 	module.exports = exports['default'];
 
 /***/ },
-/* 314 */
+/* 262 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39896,28 +41433,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-announcement'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "announcement";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-announcement', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'announcement';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -39934,13 +41475,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -39948,38 +41490,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Announcement';
 	module.exports = exports['default'];
 
 /***/ },
-/* 315 */
+/* 263 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -39993,28 +41542,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-app'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "app";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-app', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'app';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40031,13 +41584,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40045,38 +41599,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'App';
 	module.exports = exports['default'];
 
 /***/ },
-/* 316 */
+/* 264 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40090,28 +41651,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-archive'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "archive";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-archive', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'archive';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40128,13 +41693,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40142,38 +41708,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Archive';
 	module.exports = exports['default'];
 
 /***/ },
-/* 317 */
+/* 265 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40187,28 +41760,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-article'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "article";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-article', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'article';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40229,13 +41806,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40243,38 +41821,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Article';
 	module.exports = exports['default'];
 
 /***/ },
-/* 318 */
+/* 266 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40288,28 +41873,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-ascend'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "ascend";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-ascend', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'ascend';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40326,13 +41915,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40340,38 +41930,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Ascend';
 	module.exports = exports['default'];
 
 /***/ },
-/* 319 */
+/* 267 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40385,28 +41982,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-assistant'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "assistant";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-assistant', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'assistant';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40426,13 +42027,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40440,38 +42042,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Assistant';
 	module.exports = exports['default'];
 
 /***/ },
-/* 320 */
+/* 268 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40485,28 +42094,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-attachment'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "attachment";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-attachment', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'attachment';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2392', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2392', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40523,13 +42136,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40537,38 +42151,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Attachment';
 	module.exports = exports['default'];
 
 /***/ },
-/* 321 */
+/* 269 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40582,28 +42203,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-bar-chart'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "bar-chart";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-bar-chart', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'bar-chart';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40620,13 +42245,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40634,38 +42260,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'BarChart';
 	module.exports = exports['default'];
 
 /***/ },
-/* 322 */
+/* 270 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40679,28 +42312,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-blog'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "blog";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-blog', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'blog';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40717,13 +42354,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40731,38 +42369,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Blog';
 	module.exports = exports['default'];
 
 /***/ },
-/* 323 */
+/* 271 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40776,28 +42421,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-book'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "book";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-book', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'book';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40814,13 +42463,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40828,38 +42478,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Book';
 	module.exports = exports['default'];
 
 /***/ },
-/* 324 */
+/* 272 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40873,28 +42530,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-bookmark'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "bookmark";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-bookmark', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'bookmark';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -40911,13 +42572,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -40925,38 +42587,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Bookmark';
 	module.exports = exports['default'];
 
 /***/ },
-/* 325 */
+/* 273 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -40970,28 +42639,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-bundle'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "bundle";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-bundle', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'bundle';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41008,13 +42681,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41022,38 +42696,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Bundle';
 	module.exports = exports['default'];
 
 /***/ },
-/* 326 */
+/* 274 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41067,28 +42748,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-calculator'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "calculator";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-calculator', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'calculator';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41112,13 +42797,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41126,38 +42812,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Calculator';
 	module.exports = exports['default'];
 
 /***/ },
-/* 327 */
+/* 275 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41171,28 +42864,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-camera'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "camera";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-camera', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'camera';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41209,13 +42906,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41223,38 +42921,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Camera';
 	module.exports = exports['default'];
 
 /***/ },
-/* 328 */
+/* 276 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41268,28 +42973,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-capacity'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "capacity";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-capacity', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'capacity';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41306,13 +43015,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41320,38 +43030,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Capacity';
 	module.exports = exports['default'];
 
 /***/ },
-/* 329 */
+/* 277 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41365,28 +43082,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-caret-down'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "caret-down";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-caret-down', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'caret-down';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41403,13 +43124,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41417,38 +43139,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CaretDown';
 	module.exports = exports['default'];
 
 /***/ },
-/* 330 */
+/* 278 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41462,28 +43191,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-caret-next'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "caret-next";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-caret-next', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'caret-next';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41500,13 +43233,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41514,38 +43248,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CaretNext';
 	module.exports = exports['default'];
 
 /***/ },
-/* 331 */
+/* 279 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41559,28 +43300,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-caret-previous'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "caret-previous";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-caret-previous', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'caret-previous';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41597,13 +43342,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41611,38 +43357,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CaretPrevious';
 	module.exports = exports['default'];
 
 /***/ },
-/* 332 */
+/* 280 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41656,28 +43409,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-caret-up'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "caret-up";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-caret-up', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'caret-up';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41694,13 +43451,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41708,38 +43466,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CaretUp';
 	module.exports = exports['default'];
 
 /***/ },
-/* 333 */
+/* 281 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41753,28 +43518,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-catalog'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "catalog";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-catalog', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'catalog';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0208 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0208 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41791,13 +43560,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41805,38 +43575,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Catalog';
 	module.exports = exports['default'];
 
 /***/ },
-/* 334 */
+/* 282 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41850,28 +43627,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-chapter-add'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "chapter-add";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-chapter-add', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'chapter-add';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41888,13 +43669,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -41902,38 +43684,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ChapterAdd';
 	module.exports = exports['default'];
 
 /***/ },
-/* 335 */
+/* 283 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -41947,28 +43736,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-chapter-next'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "chapter-next";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-chapter-next', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'chapter-next';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24.0586', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24.0586', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -41986,13 +43779,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42000,38 +43794,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ChapterNext';
 	module.exports = exports['default'];
 
 /***/ },
-/* 336 */
+/* 284 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42045,28 +43846,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-chapter-previous'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "chapter-previous";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-chapter-previous', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'chapter-previous';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24.0586', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24.0586', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42084,13 +43889,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42098,38 +43904,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ChapterPrevious';
 	module.exports = exports['default'];
 
 /***/ },
-/* 337 */
+/* 285 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42143,28 +43956,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-chat'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "chat";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-chat', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'chat';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42181,13 +43998,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42195,38 +44013,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Chat';
 	module.exports = exports['default'];
 
 /***/ },
-/* 338 */
+/* 286 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42240,28 +44065,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-checkbox-selected'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "checkbox-selected";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-checkbox-selected', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'checkbox-selected';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42279,13 +44108,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42293,38 +44123,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CheckboxSelected';
 	module.exports = exports['default'];
 
 /***/ },
-/* 339 */
+/* 287 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42338,28 +44175,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-checkbox'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "checkbox";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-checkbox', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'checkbox';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42376,13 +44217,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42390,38 +44232,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Checkbox';
 	module.exports = exports['default'];
 
 /***/ },
-/* 340 */
+/* 288 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42435,28 +44284,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-checkmark'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "checkmark";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-checkmark', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'checkmark';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42473,13 +44326,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42487,38 +44341,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Checkmark';
 	module.exports = exports['default'];
 
 /***/ },
-/* 341 */
+/* 289 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42532,28 +44393,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-circular-view'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "circular-view";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-circular-view', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'circular-view';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42570,13 +44435,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42584,38 +44450,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CircularView';
 	module.exports = exports['default'];
 
 /***/ },
-/* 342 */
+/* 290 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42629,28 +44502,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-clipboard'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "clipboard";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-clipboard', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'clipboard';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42667,13 +44544,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42681,38 +44559,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Clipboard';
 	module.exports = exports['default'];
 
 /***/ },
-/* 343 */
+/* 291 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42726,28 +44611,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-clone'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "clone";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-clone', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'clone';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42764,13 +44653,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42778,38 +44668,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Clone';
 	module.exports = exports['default'];
 
 /***/ },
-/* 344 */
+/* 292 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42823,28 +44720,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cloud-computer'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cloud-computer";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cloud-computer', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cloud-computer';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.9 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.9 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42861,13 +44762,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42875,38 +44777,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CloudComputer';
 	module.exports = exports['default'];
 
 /***/ },
-/* 345 */
+/* 293 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -42920,28 +44829,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cloud-download'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cloud-download";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cloud-download', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cloud-download';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.05 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.05 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -42958,13 +44871,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -42972,38 +44886,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CloudDownload';
 	module.exports = exports['default'];
 
 /***/ },
-/* 346 */
+/* 294 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43017,28 +44938,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cloud-software'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cloud-software";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cloud-software', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cloud-software';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43055,13 +44980,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43069,38 +44995,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CloudSoftware';
 	module.exports = exports['default'];
 
 /***/ },
-/* 347 */
+/* 295 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43114,28 +45047,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cloud-upload'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cloud-upload";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cloud-upload', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cloud-upload';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.05 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.05 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43152,13 +45089,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43166,38 +45104,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CloudUpload';
 	module.exports = exports['default'];
 
 /***/ },
-/* 348 */
+/* 296 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43211,28 +45156,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cloud'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cloud";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cloud', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cloud';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.1 24.1', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.1 24.1', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43249,13 +45198,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43263,38 +45213,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cloud';
 	module.exports = exports['default'];
 
 /***/ },
-/* 349 */
+/* 297 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43308,28 +45265,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cluster'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cluster";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cluster', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cluster';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43346,13 +45307,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43360,38 +45322,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cluster';
 	module.exports = exports['default'];
 
 /***/ },
-/* 350 */
+/* 298 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43405,28 +45374,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-code'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "code";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-code', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'code';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43443,13 +45416,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43457,38 +45431,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Code';
 	module.exports = exports['default'];
 
 /***/ },
-/* 351 */
+/* 299 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43502,28 +45483,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-command-line'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "command-line";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-command-line', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'command-line';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43540,13 +45525,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43554,38 +45540,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'CommandLine';
 	module.exports = exports['default'];
 
 /***/ },
-/* 352 */
+/* 300 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43599,28 +45592,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-compare'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "compare";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-compare', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'compare';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 25.4142', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 25.4142', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43649,13 +45646,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43663,38 +45661,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Compare';
 	module.exports = exports['default'];
 
 /***/ },
-/* 353 */
+/* 301 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43708,28 +45713,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-compasss'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "compasss";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-compasss', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'compasss';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0208 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0208 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43747,13 +45756,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43761,38 +45771,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Compasss';
 	module.exports = exports['default'];
 
 /***/ },
-/* 354 */
+/* 302 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43806,28 +45823,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-compliance'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "compliance";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-compliance', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'compliance';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43844,13 +45865,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43858,38 +45880,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Compliance';
 	module.exports = exports['default'];
 
 /***/ },
-/* 355 */
+/* 303 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -43903,28 +45932,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-computer-personal'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "computer-personal";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-computer-personal', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'computer-personal';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -43941,13 +45974,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -43955,38 +45989,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ComputerPersonal';
 	module.exports = exports['default'];
 
 /***/ },
-/* 356 */
+/* 304 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44000,28 +46041,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-configuration'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "configuration";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-configuration', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'configuration';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44038,13 +46083,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44052,38 +46098,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Configuration';
 	module.exports = exports['default'];
 
 /***/ },
-/* 357 */
+/* 305 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44097,28 +46150,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-connect'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "connect";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-connect', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'connect';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44135,13 +46192,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44149,38 +46207,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Connect';
 	module.exports = exports['default'];
 
 /***/ },
-/* 358 */
+/* 306 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44194,28 +46259,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-contact-card'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "contact-card";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-contact-card', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'contact-card';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44232,13 +46301,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44246,38 +46316,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ContactCard';
 	module.exports = exports['default'];
 
 /***/ },
-/* 359 */
+/* 307 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44291,28 +46368,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-contact-us'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "contact-us";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-contact-us', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'contact-us';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0758', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0758', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44332,13 +46413,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44346,38 +46428,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ContactUs';
 	module.exports = exports['default'];
 
 /***/ },
-/* 360 */
+/* 308 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44391,28 +46480,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-contract'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "contract";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-contract', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'contract';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44429,13 +46522,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44443,38 +46537,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Contract';
 	module.exports = exports['default'];
 
 /***/ },
-/* 361 */
+/* 309 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44488,28 +46589,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-copy'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "copy";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-copy', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'copy';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 26', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 26', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44526,13 +46631,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44540,38 +46646,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Copy';
 	module.exports = exports['default'];
 
 /***/ },
-/* 362 */
+/* 310 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44585,28 +46698,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cube'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cube";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cube', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cube';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2361', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2361', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44623,13 +46740,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44637,38 +46755,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cube';
 	module.exports = exports['default'];
 
 /***/ },
-/* 363 */
+/* 311 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44682,28 +46807,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cubes'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cubes";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cubes', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cubes';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 26.1147', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 26.1147', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44720,13 +46849,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44734,38 +46864,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cubes';
 	module.exports = exports['default'];
 
 /***/ },
-/* 364 */
+/* 312 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44779,28 +46916,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cursor'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cursor";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cursor', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cursor';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25.3938', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25.3938', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44817,13 +46958,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44831,38 +46973,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cursor';
 	module.exports = exports['default'];
 
 /***/ },
-/* 365 */
+/* 313 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44876,28 +47025,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cut'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cut";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cut', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cut';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -44914,13 +47067,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -44928,38 +47082,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cut';
 	module.exports = exports['default'];
 
 /***/ },
-/* 366 */
+/* 314 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -44973,28 +47134,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-cycle'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "cycle";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-cycle', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'cycle';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.027 24.7583', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.027 24.7583', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45015,13 +47180,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45029,38 +47195,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Cycle';
 	module.exports = exports['default'];
 
 /***/ },
-/* 367 */
+/* 315 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45074,28 +47247,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-dashboard'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "dashboard";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-dashboard', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'dashboard';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45112,13 +47289,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45126,38 +47304,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Dashboard';
 	module.exports = exports['default'];
 
 /***/ },
-/* 368 */
+/* 316 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45171,28 +47356,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-database'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "database";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-database', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'database';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45214,13 +47403,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45228,38 +47418,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Database';
 	module.exports = exports['default'];
 
 /***/ },
-/* 369 */
+/* 317 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45273,28 +47470,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-defect'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "defect";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-defect', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'defect';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0004 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0004 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45311,13 +47512,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45325,38 +47527,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Defect';
 	module.exports = exports['default'];
 
 /***/ },
-/* 370 */
+/* 318 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45370,28 +47579,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-deliver'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "deliver";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-deliver', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'deliver';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.6875 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.6875 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45408,13 +47621,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45422,38 +47636,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Deliver';
 	module.exports = exports['default'];
 
 /***/ },
-/* 371 */
+/* 319 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45467,28 +47688,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-deployment'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "deployment";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-deployment', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'deployment';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25.9941', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25.9941', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45506,13 +47731,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45520,38 +47746,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Deployment';
 	module.exports = exports['default'];
 
 /***/ },
-/* 372 */
+/* 320 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45565,28 +47798,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-descend'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "descend";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-descend', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'descend';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45603,13 +47840,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45617,38 +47855,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Descend';
 	module.exports = exports['default'];
 
 /***/ },
-/* 373 */
+/* 321 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45662,28 +47907,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-desktop'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "desktop";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-desktop', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'desktop';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45700,13 +47949,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45714,38 +47964,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Desktop';
 	module.exports = exports['default'];
 
 /***/ },
-/* 374 */
+/* 322 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45759,28 +48016,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-detach'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "detach";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-detach', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'detach';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.1725', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.1725', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45797,13 +48058,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45811,38 +48073,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Detach';
 	module.exports = exports['default'];
 
 /***/ },
-/* 375 */
+/* 323 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45856,28 +48125,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-directions'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "directions";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-directions', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'directions';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.8284 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.8284 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45894,13 +48167,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -45908,38 +48182,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Directions';
 	module.exports = exports['default'];
 
 /***/ },
-/* 376 */
+/* 324 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -45953,28 +48234,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-dislike'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "dislike";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-dislike', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'dislike';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -45991,13 +48276,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46005,38 +48291,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Dislike';
 	module.exports = exports['default'];
 
 /***/ },
-/* 377 */
+/* 325 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46050,28 +48343,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-divide-four'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "divide-four";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-divide-four', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'divide-four';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46088,13 +48385,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46102,38 +48400,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DivideFour';
 	module.exports = exports['default'];
 
 /***/ },
-/* 378 */
+/* 326 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46147,28 +48452,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-divide-right'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "divide-right";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-divide-right', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'divide-right';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46185,13 +48494,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46199,38 +48509,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DivideRight';
 	module.exports = exports['default'];
 
 /***/ },
-/* 379 */
+/* 327 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46244,28 +48561,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-divide-three'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "divide-three";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-divide-three', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'divide-three';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46282,13 +48603,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46296,38 +48618,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DivideThree';
 	module.exports = exports['default'];
 
 /***/ },
-/* 380 */
+/* 328 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46341,28 +48670,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-divide'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "divide";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-divide', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'divide';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46379,13 +48712,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46393,38 +48727,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Divide';
 	module.exports = exports['default'];
 
 /***/ },
-/* 381 */
+/* 329 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46438,28 +48779,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-cloud'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-cloud";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-cloud', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-cloud';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46479,13 +48824,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46493,38 +48839,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentCloud';
 	module.exports = exports['default'];
 
 /***/ },
-/* 382 */
+/* 330 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46538,28 +48891,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-compress'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-compress";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-compress', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-compress';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46576,13 +48933,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46590,38 +48948,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentCompress';
 	module.exports = exports['default'];
 
 /***/ },
-/* 383 */
+/* 331 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46635,28 +49000,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-conig'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-conig";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-conig', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-conig';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46673,13 +49042,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46687,38 +49057,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentConig';
 	module.exports = exports['default'];
 
 /***/ },
-/* 384 */
+/* 332 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46732,28 +49109,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-csv'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-csv";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-csv', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-csv';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46774,13 +49155,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46788,38 +49170,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentCsv';
 	module.exports = exports['default'];
 
 /***/ },
-/* 385 */
+/* 333 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46833,28 +49222,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-data'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-data";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-data', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-data';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46871,13 +49264,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46885,38 +49279,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentData';
 	module.exports = exports['default'];
 
 /***/ },
-/* 386 */
+/* 334 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -46930,28 +49331,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-download'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-download";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-download', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-download';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -46968,13 +49373,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -46982,38 +49388,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentDownload';
 	module.exports = exports['default'];
 
 /***/ },
-/* 387 */
+/* 335 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47027,28 +49440,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-excel'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-excel";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-excel', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-excel';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47068,13 +49485,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47082,38 +49500,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentExcel';
 	module.exports = exports['default'];
 
 /***/ },
-/* 388 */
+/* 336 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47127,28 +49552,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-executable'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-executable";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-executable', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-executable';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5814 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5814 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47176,13 +49605,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47190,38 +49620,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentExecutable';
 	module.exports = exports['default'];
 
 /***/ },
-/* 389 */
+/* 337 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47235,28 +49672,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-image'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-image";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-image', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-image';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47276,13 +49717,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47290,38 +49732,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentImage';
 	module.exports = exports['default'];
 
 /***/ },
-/* 390 */
+/* 338 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47335,28 +49784,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-locked'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-locked";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-locked', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-locked';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47376,13 +49829,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47390,38 +49844,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentLocked';
 	module.exports = exports['default'];
 
 /***/ },
-/* 391 */
+/* 339 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47435,28 +49896,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-missing'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-missing";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-missing', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-missing';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47473,13 +49938,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47487,38 +49953,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentMissing';
 	module.exports = exports['default'];
 
 /***/ },
-/* 392 */
+/* 340 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47532,28 +50005,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-notes'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-notes";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-notes', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-notes';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47573,13 +50050,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47587,38 +50065,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentNotes';
 	module.exports = exports['default'];
 
 /***/ },
-/* 393 */
+/* 341 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47632,28 +50117,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-outlook'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-outlook";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-outlook', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-outlook';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47673,13 +50162,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47687,38 +50177,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentOutlook';
 	module.exports = exports['default'];
 
 /***/ },
-/* 394 */
+/* 342 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47732,28 +50229,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-pdf'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-pdf";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-pdf', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-pdf';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47776,13 +50277,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47790,38 +50292,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentPdf';
 	module.exports = exports['default'];
 
 /***/ },
-/* 395 */
+/* 343 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47835,28 +50344,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-performance'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-performance";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-performance', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-performance';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47875,13 +50388,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47889,38 +50403,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentPerformance';
 	module.exports = exports['default'];
 
 /***/ },
-/* 396 */
+/* 344 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -47934,28 +50455,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-powerpoint'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-powerpoint";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-powerpoint', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-powerpoint';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -47979,13 +50504,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -47993,38 +50519,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentPowerpoint';
 	module.exports = exports['default'];
 
 /***/ },
-/* 397 */
+/* 345 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48038,28 +50571,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-rtf'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-rtf";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-rtf', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-rtf';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.4999 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.4999 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48086,13 +50623,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48100,38 +50638,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentRtf';
 	module.exports = exports['default'];
 
 /***/ },
-/* 398 */
+/* 346 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48145,28 +50690,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-sound'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-sound";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-sound', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-sound';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24.0806', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24.0806', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48187,13 +50736,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48201,38 +50751,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentSound';
 	module.exports = exports['default'];
 
 /***/ },
-/* 399 */
+/* 347 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48246,28 +50803,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-test'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-test";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-test', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-test';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48289,13 +50850,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48303,38 +50865,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentTest';
 	module.exports = exports['default'];
 
 /***/ },
-/* 400 */
+/* 348 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48348,28 +50917,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-text'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-text";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-text', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-text';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48386,13 +50959,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48400,38 +50974,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentText';
 	module.exports = exports['default'];
 
 /***/ },
-/* 401 */
+/* 349 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48445,28 +51026,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-threat'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-threat";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-threat', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-threat';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.2083 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.2083 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48483,13 +51068,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48497,38 +51083,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentThreat';
 	module.exports = exports['default'];
 
 /***/ },
-/* 402 */
+/* 350 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48542,28 +51135,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-time'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-time";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-time', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-time';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48580,13 +51177,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48594,38 +51192,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentTime';
 	module.exports = exports['default'];
 
 /***/ },
-/* 403 */
+/* 351 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48639,28 +51244,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-transfer'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-transfer";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-transfer', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-transfer';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.9142 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.9142 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48677,13 +51286,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48691,38 +51301,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentTransfer';
 	module.exports = exports['default'];
 
 /***/ },
-/* 404 */
+/* 352 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48736,28 +51353,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-txt'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-txt";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-txt', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-txt';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5814 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5814 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48782,13 +51403,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48796,38 +51418,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentTxt';
 	module.exports = exports['default'];
 
 /***/ },
-/* 405 */
+/* 353 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48841,28 +51470,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-update'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-update";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-update', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-update';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0872 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0872 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48881,13 +51514,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48895,38 +51529,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentUpdate';
 	module.exports = exports['default'];
 
 /***/ },
-/* 406 */
+/* 354 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -48940,28 +51581,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-upload'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-upload";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-upload', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-upload';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -48978,13 +51623,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -48992,38 +51638,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentUpload';
 	module.exports = exports['default'];
 
 /***/ },
-/* 407 */
+/* 355 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49037,28 +51690,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-user'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-user";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-user', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-user';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49075,13 +51732,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49089,38 +51747,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentUser';
 	module.exports = exports['default'];
 
 /***/ },
-/* 408 */
+/* 356 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49134,28 +51799,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-verified'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-verified";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-verified', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-verified';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49172,13 +51841,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49186,38 +51856,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentVerified';
 	module.exports = exports['default'];
 
 /***/ },
-/* 409 */
+/* 357 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49231,28 +51908,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-video'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-video";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-video', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-video';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49271,13 +51952,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49285,38 +51967,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentVideo';
 	module.exports = exports['default'];
 
 /***/ },
-/* 410 */
+/* 358 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49330,28 +52019,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document-word'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document-word";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document-word', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document-word';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49371,13 +52064,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49385,38 +52079,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DocumentWord';
 	module.exports = exports['default'];
 
 /***/ },
-/* 411 */
+/* 359 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49430,28 +52131,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-document'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "document";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-document', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'document';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49468,13 +52173,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49482,38 +52188,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Document';
 	module.exports = exports['default'];
 
 /***/ },
-/* 412 */
+/* 360 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49527,28 +52240,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-domain'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "domain";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-domain', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'domain';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49565,13 +52282,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49579,38 +52297,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Domain';
 	module.exports = exports['default'];
 
 /***/ },
-/* 413 */
+/* 361 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49624,28 +52349,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-download'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "download";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-download', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'download';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49662,13 +52391,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49676,38 +52406,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Download';
 	module.exports = exports['default'];
 
 /***/ },
-/* 414 */
+/* 362 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49721,28 +52458,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-drag'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "drag";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-drag', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'drag';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49759,13 +52500,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49773,38 +52515,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Drag';
 	module.exports = exports['default'];
 
 /***/ },
-/* 415 */
+/* 363 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49818,28 +52567,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-drive-cage'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "drive-cage";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-drive-cage', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'drive-cage';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49859,13 +52612,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49873,38 +52627,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'DriveCage';
 	module.exports = exports['default'];
 
 /***/ },
-/* 416 */
+/* 364 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -49918,28 +52679,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-duplicate'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "duplicate";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-duplicate', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'duplicate';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -49956,13 +52721,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -49970,38 +52736,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Duplicate';
 	module.exports = exports['default'];
 
 /***/ },
-/* 417 */
+/* 365 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50015,28 +52788,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-edit'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "edit";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-edit', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'edit';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.008 24.2111', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.008 24.2111', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50053,13 +52830,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50067,38 +52845,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Edit';
 	module.exports = exports['default'];
 
 /***/ },
-/* 418 */
+/* 366 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50112,28 +52897,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-eject'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "eject";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-eject', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'eject';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.1267', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.1267', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50150,13 +52939,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50164,38 +52954,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Eject';
 	module.exports = exports['default'];
 
 /***/ },
-/* 419 */
+/* 367 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50209,28 +53006,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-expand'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "expand";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-expand', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'expand';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50247,13 +53048,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50261,38 +53063,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Expand';
 	module.exports = exports['default'];
 
 /***/ },
-/* 420 */
+/* 368 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50306,28 +53115,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-fan'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "fan";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-fan', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'fan';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50344,13 +53157,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50358,38 +53172,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Fan';
 	module.exports = exports['default'];
 
 /***/ },
-/* 421 */
+/* 369 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50403,28 +53224,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-fast-forward'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "fast-forward";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-fast-forward', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'fast-forward';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26.1495 24.0586', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26.1495 24.0586', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50441,13 +53266,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50455,38 +53281,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'FastForward';
 	module.exports = exports['default'];
 
 /***/ },
-/* 422 */
+/* 370 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50500,28 +53333,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-favorite'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "favorite";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-favorite', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'favorite';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50538,13 +53375,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50552,38 +53390,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Favorite';
 	module.exports = exports['default'];
 
 /***/ },
-/* 423 */
+/* 371 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50597,28 +53442,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-filter'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "filter";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-filter', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'filter';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50635,13 +53484,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50649,38 +53499,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Filter';
 	module.exports = exports['default'];
 
 /***/ },
-/* 424 */
+/* 372 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50694,28 +53551,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-first-aid'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "first-aid";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-first-aid', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'first-aid';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50732,13 +53593,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50746,38 +53608,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'FirstAid';
 	module.exports = exports['default'];
 
 /***/ },
-/* 425 */
+/* 373 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50791,28 +53660,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-flag'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "flag";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-flag', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'flag';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50829,13 +53702,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50843,38 +53717,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Flag';
 	module.exports = exports['default'];
 
 /***/ },
-/* 426 */
+/* 374 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50888,28 +53769,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-folder-cycle'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "folder-cycle";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-folder-cycle', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'folder-cycle';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0001 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0001 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -50930,13 +53815,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -50944,38 +53830,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'FolderCycle';
 	module.exports = exports['default'];
 
 /***/ },
-/* 427 */
+/* 375 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -50989,28 +53882,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-folder-open'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "folder-open";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-folder-open', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'folder-open';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5616 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5616 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51027,13 +53924,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51041,38 +53939,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'FolderOpen';
 	module.exports = exports['default'];
 
 /***/ },
-/* 428 */
+/* 376 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51086,28 +53991,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-folder'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "folder";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-folder', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'folder';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0001 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0001 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51124,13 +54033,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51138,38 +54048,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Folder';
 	module.exports = exports['default'];
 
 /***/ },
-/* 429 */
+/* 377 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51183,28 +54100,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-gallery'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "gallery";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-gallery', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'gallery';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51222,13 +54143,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51236,38 +54158,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Gallery';
 	module.exports = exports['default'];
 
 /***/ },
-/* 430 */
+/* 378 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51281,28 +54210,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-globe'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "globe";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-globe', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'globe';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51319,13 +54252,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51333,38 +54267,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Globe';
 	module.exports = exports['default'];
 
 /***/ },
-/* 431 */
+/* 379 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51378,28 +54319,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-grid'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "grid";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-grid', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'grid';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51416,13 +54361,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51430,38 +54376,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Grid';
 	module.exports = exports['default'];
 
 /***/ },
-/* 432 */
+/* 380 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51475,28 +54428,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-group'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "group";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-group', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'group';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51513,13 +54470,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51527,38 +54485,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Group';
 	module.exports = exports['default'];
 
 /***/ },
-/* 433 */
+/* 381 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51572,28 +54537,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-grow'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "grow";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-grow', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'grow';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51610,13 +54579,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51624,38 +54594,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Grow';
 	module.exports = exports['default'];
 
 /***/ },
-/* 434 */
+/* 382 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51669,28 +54646,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-halt'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "halt";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-halt', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'halt';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 26', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 26', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51707,13 +54688,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51721,38 +54703,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Halt';
 	module.exports = exports['default'];
 
 /***/ },
-/* 435 */
+/* 383 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51766,28 +54755,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-help'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "help";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-help', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'help';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.1518', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.1518', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51805,13 +54798,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51819,38 +54813,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Help';
 	module.exports = exports['default'];
 
 /***/ },
-/* 436 */
+/* 384 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51864,28 +54865,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-history'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "history";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-history', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'history';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51902,13 +54907,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -51916,38 +54922,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'History';
 	module.exports = exports['default'];
 
 /***/ },
-/* 437 */
+/* 385 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -51961,28 +54974,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-home'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "home";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-home', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'home';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -51999,13 +55016,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52013,38 +55031,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Home';
 	module.exports = exports['default'];
 
 /***/ },
-/* 438 */
+/* 386 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52058,28 +55083,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-host-maintenance'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "host-maintenance";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-host-maintenance', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'host-maintenance';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52098,13 +55127,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52112,38 +55142,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'HostMaintenance';
 	module.exports = exports['default'];
 
 /***/ },
-/* 439 */
+/* 387 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52157,28 +55194,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-host'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "host";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-host', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'host';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52196,13 +55237,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52210,38 +55252,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Host';
 	module.exports = exports['default'];
 
 /***/ },
-/* 440 */
+/* 388 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52255,28 +55304,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-image'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "image";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-image', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'image';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52294,13 +55347,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52308,38 +55362,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Image';
 	module.exports = exports['default'];
 
 /***/ },
-/* 441 */
+/* 389 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52353,28 +55414,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-impact'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "impact";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-impact', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'impact';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.025 25.5726', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.025 25.5726', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52391,13 +55456,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52405,38 +55471,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Impact';
 	module.exports = exports['default'];
 
 /***/ },
-/* 442 */
+/* 390 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52450,28 +55523,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-in-progress'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "in-progress";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-in-progress', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'in-progress';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52490,13 +55567,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52504,38 +55582,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'InProgress';
 	module.exports = exports['default'];
 
 /***/ },
-/* 443 */
+/* 391 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52549,28 +55634,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-inbox'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "inbox";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-inbox', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'inbox';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52587,13 +55676,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52601,38 +55691,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Inbox';
 	module.exports = exports['default'];
 
 /***/ },
-/* 444 */
+/* 392 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52646,28 +55743,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-indicator'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "indicator";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-indicator', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'indicator';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0117', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0117', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52684,13 +55785,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52698,38 +55800,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Indicator';
 	module.exports = exports['default'];
 
 /***/ },
-/* 445 */
+/* 393 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52743,28 +55852,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-information'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "information";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-information', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'information';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52781,13 +55894,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52795,38 +55909,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Information';
 	module.exports = exports['default'];
 
 /***/ },
-/* 446 */
+/* 394 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52840,28 +55961,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-inherit'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "inherit";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-inherit', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'inherit';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.1667', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.1667', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52878,13 +56003,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52892,38 +56018,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Inherit';
 	module.exports = exports['default'];
 
 /***/ },
-/* 447 */
+/* 395 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -52937,28 +56070,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-install'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "install";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-install', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'install';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 29.1293 24.271', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 29.1293 24.271', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -52975,13 +56112,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -52989,38 +56127,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Install';
 	module.exports = exports['default'];
 
 /***/ },
-/* 448 */
+/* 396 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53034,28 +56179,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-integration'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "integration";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-integration', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'integration';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53072,13 +56221,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53086,38 +56236,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Integration';
 	module.exports = exports['default'];
 
 /***/ },
-/* 449 */
+/* 397 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53131,28 +56288,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-iteration'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "iteration";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-iteration', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'iteration';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53169,13 +56330,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53183,38 +56345,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Iteration';
 	module.exports = exports['default'];
 
 /***/ },
-/* 450 */
+/* 398 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53228,28 +56397,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-java'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "java";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-java', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'java';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53266,13 +56439,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53280,38 +56454,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Java';
 	module.exports = exports['default'];
 
 /***/ },
-/* 451 */
+/* 399 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53325,28 +56506,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-language'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "language";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-language', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'language';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53363,13 +56548,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53377,38 +56563,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Language';
 	module.exports = exports['default'];
 
 /***/ },
-/* 452 */
+/* 400 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53422,28 +56615,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-launch'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "launch";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-launch', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'launch';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25.1473', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25.1473', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53461,13 +56658,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53475,38 +56673,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Launch';
 	module.exports = exports['default'];
 
 /***/ },
-/* 453 */
+/* 401 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53520,28 +56725,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-license'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "license";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-license', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'license';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0101', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0101', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53559,13 +56768,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53573,38 +56783,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'License';
 	module.exports = exports['default'];
 
 /***/ },
-/* 454 */
+/* 402 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53618,28 +56835,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-like'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "like";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-like', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'like';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53656,13 +56877,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53670,38 +56892,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Like';
 	module.exports = exports['default'];
 
 /***/ },
-/* 455 */
+/* 403 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53715,28 +56944,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-line-chart'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "line-chart";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-line-chart', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'line-chart';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0196 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0196 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53753,13 +56986,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53767,38 +57001,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'LineChart';
 	module.exports = exports['default'];
 
 /***/ },
-/* 456 */
+/* 404 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53812,28 +57053,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-link-bottom'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link-bottom";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link-bottom', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'link-bottom';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53850,13 +57095,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53864,38 +57110,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'LinkBottom';
 	module.exports = exports['default'];
 
 /***/ },
-/* 457 */
+/* 405 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -53909,28 +57162,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-link-down'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link-down";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link-down', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'link-down';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -53947,13 +57204,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -53961,38 +57219,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'LinkDown';
 	module.exports = exports['default'];
 
 /***/ },
-/* 458 */
+/* 406 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54006,28 +57271,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-link-top'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link-top";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link-top', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'link-top';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54044,13 +57313,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54058,38 +57328,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'LinkTop';
 	module.exports = exports['default'];
 
 /***/ },
-/* 459 */
+/* 407 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54103,28 +57380,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-link-up'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link-up";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link-up', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'link-up';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54141,13 +57422,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54155,38 +57437,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'LinkUp';
 	module.exports = exports['default'];
 
 /***/ },
-/* 460 */
+/* 408 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54200,28 +57489,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-link'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "link";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-link', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'link';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54238,13 +57531,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54252,38 +57546,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Link';
 	module.exports = exports['default'];
 
 /***/ },
-/* 461 */
+/* 409 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54297,28 +57598,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-location-pin'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "location-pin";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-location-pin', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'location-pin';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2175', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2175', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54335,13 +57640,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54349,38 +57655,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'LocationPin';
 	module.exports = exports['default'];
 
 /***/ },
-/* 462 */
+/* 410 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54394,28 +57707,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-location'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "location";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-location', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'location';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.3219', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.3219', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54432,13 +57749,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54446,38 +57764,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Location';
 	module.exports = exports['default'];
 
 /***/ },
-/* 463 */
+/* 411 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54491,28 +57816,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-lock'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "lock";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-lock', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'lock';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54529,13 +57858,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54543,38 +57873,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Lock';
 	module.exports = exports['default'];
 
 /***/ },
-/* 464 */
+/* 412 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54588,28 +57925,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-login'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "login";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-login', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'login';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54626,13 +57967,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54640,38 +57982,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Login';
 	module.exports = exports['default'];
 
 /***/ },
-/* 465 */
+/* 413 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54685,28 +58034,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-logout'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "logout";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-logout', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'logout';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.4142 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.4142 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54723,13 +58076,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54737,38 +58091,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Logout';
 	module.exports = exports['default'];
 
 /***/ },
-/* 466 */
+/* 414 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54782,28 +58143,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-mail'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "mail";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-mail', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'mail';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54820,13 +58185,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54834,38 +58200,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Mail';
 	module.exports = exports['default'];
 
 /***/ },
-/* 467 */
+/* 415 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54879,28 +58252,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-manual'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "manual";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-manual', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'manual';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -54917,13 +58294,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -54931,38 +58309,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Manual';
 	module.exports = exports['default'];
 
 /***/ },
-/* 468 */
+/* 416 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -54976,28 +58361,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-map-location'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "map-location";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-map-location', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'map-location';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.025 25.0533', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.025 25.0533', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55016,13 +58405,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55030,38 +58420,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'MapLocation';
 	module.exports = exports['default'];
 
 /***/ },
-/* 469 */
+/* 417 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55075,28 +58472,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-map'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "map";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-map', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'map';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5165', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5165', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55113,13 +58514,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55127,38 +58529,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Map';
 	module.exports = exports['default'];
 
 /***/ },
-/* 470 */
+/* 418 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55172,28 +58581,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-menu'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "menu";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-menu', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'menu';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55210,13 +58623,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55224,38 +58638,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Menu';
 	module.exports = exports['default'];
 
 /***/ },
-/* 471 */
+/* 419 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55269,28 +58690,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-microphone'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "microphone";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-microphone', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'microphone';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55307,13 +58732,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55321,38 +58747,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Microphone';
 	module.exports = exports['default'];
 
 /***/ },
-/* 472 */
+/* 420 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55366,28 +58799,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-monitor'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "monitor";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-monitor', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'monitor';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55404,13 +58841,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55418,38 +58856,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Monitor';
 	module.exports = exports['default'];
 
 /***/ },
-/* 473 */
+/* 421 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55463,28 +58908,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-multiple'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "multiple";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-multiple', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'multiple';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55501,13 +58950,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55515,38 +58965,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Multiple';
 	module.exports = exports['default'];
 
 /***/ },
-/* 474 */
+/* 422 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55560,28 +59017,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-navigate'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "navigate";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-navigate', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'navigate';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26.8284 24.9467', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26.8284 24.9467', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55598,13 +59059,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55612,38 +59074,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Navigate';
 	module.exports = exports['default'];
 
 /***/ },
-/* 475 */
+/* 423 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55657,28 +59126,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-new-window'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "new-window";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-new-window', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'new-window';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2101', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55695,13 +59168,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55709,38 +59183,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'NewWindow';
 	module.exports = exports['default'];
 
 /***/ },
-/* 476 */
+/* 424 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55754,28 +59235,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-new'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "new";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-new', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'new';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55792,13 +59277,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55806,38 +59292,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'New';
 	module.exports = exports['default'];
 
 /***/ },
-/* 477 */
+/* 425 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55851,28 +59344,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-notes'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "notes";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-notes', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'notes';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55889,13 +59386,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -55903,38 +59401,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Notes';
 	module.exports = exports['default'];
 
 /***/ },
-/* 478 */
+/* 426 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -55948,28 +59453,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-notification'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "notification";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-notification', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'notification';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -55986,13 +59495,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56000,38 +59510,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Notification';
 	module.exports = exports['default'];
 
 /***/ },
-/* 479 */
+/* 427 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56045,28 +59562,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-optimization'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "optimization";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-optimization', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'optimization';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2069', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2069', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56083,13 +59604,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56097,38 +59619,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Optimization';
 	module.exports = exports['default'];
 
 /***/ },
-/* 480 */
+/* 428 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56142,28 +59671,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-organization'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "organization";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-organization', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'organization';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56185,13 +59718,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56199,38 +59733,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Organization';
 	module.exports = exports['default'];
 
 /***/ },
-/* 481 */
+/* 429 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56244,28 +59785,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-overview'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "overview";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-overview', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'overview';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56287,13 +59832,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56301,38 +59847,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Overview';
 	module.exports = exports['default'];
 
 /***/ },
-/* 482 */
+/* 430 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56346,28 +59899,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-pan'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "pan";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-pan', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'pan';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.8284 24.8284', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.8284 24.8284', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56384,13 +59941,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56398,38 +59956,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Pan';
 	module.exports = exports['default'];
 
 /***/ },
-/* 483 */
+/* 431 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56443,28 +60008,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-payment-google-wallet'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "payment-google-wallet";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-payment-google-wallet', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'payment-google-wallet';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.5848 24.1156', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.5848 24.1156', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56484,13 +60053,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56498,38 +60068,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PaymentGoogleWallet';
 	module.exports = exports['default'];
 
 /***/ },
-/* 484 */
+/* 432 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56543,28 +60120,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-payment-mastercard'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "payment-mastercard";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-payment-mastercard', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'payment-mastercard';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56590,13 +60171,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56604,38 +60186,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PaymentMastercard';
 	module.exports = exports['default'];
 
 /***/ },
-/* 485 */
+/* 433 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56649,28 +60238,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-payment-paypal'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "payment-paypal";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-payment-paypal', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'payment-paypal';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56687,13 +60280,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56701,38 +60295,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PaymentPaypal';
 	module.exports = exports['default'];
 
 /***/ },
-/* 486 */
+/* 434 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56746,28 +60347,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-payment-square'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "payment-square";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-payment-square', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'payment-square';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56785,13 +60390,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56799,38 +60405,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PaymentSquare';
 	module.exports = exports['default'];
 
 /***/ },
-/* 487 */
+/* 435 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56844,28 +60457,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-payment-visa'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "payment-visa";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-payment-visa', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'payment-visa';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56882,13 +60499,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56896,38 +60514,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PaymentVisa';
 	module.exports = exports['default'];
 
 /***/ },
-/* 488 */
+/* 436 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -56941,28 +60566,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-pin'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "pin";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-pin', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'pin';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -56981,13 +60610,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -56995,38 +60625,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Pin';
 	module.exports = exports['default'];
 
 /***/ },
-/* 489 */
+/* 437 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57040,28 +60677,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-plan'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "plan";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-plan', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'plan';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57078,13 +60719,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57092,38 +60734,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Plan';
 	module.exports = exports['default'];
 
 /***/ },
-/* 490 */
+/* 438 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57137,28 +60786,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-apple'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-apple";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-apple', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-apple';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0009', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0009', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57175,13 +60828,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57189,38 +60843,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformApple';
 	module.exports = exports['default'];
 
 /***/ },
-/* 491 */
+/* 439 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57234,28 +60895,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-chrome'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-chrome";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-chrome', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-chrome';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.1371 24.0009', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.1371 24.0009', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57272,13 +60937,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57286,38 +60952,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformChrome';
 	module.exports = exports['default'];
 
 /***/ },
-/* 492 */
+/* 440 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57331,28 +61004,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-dropbox'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-dropbox";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-dropbox', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-dropbox';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.003 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.003 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57372,13 +61049,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57386,38 +61064,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformDropbox';
 	module.exports = exports['default'];
 
 /***/ },
-/* 493 */
+/* 441 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57431,28 +61116,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-edge'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-edge";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-edge', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-edge';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.4466', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.4466', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57469,13 +61158,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57483,38 +61173,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformEdge';
 	module.exports = exports['default'];
 
 /***/ },
-/* 494 */
+/* 442 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57528,28 +61225,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-firefox'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-firefox";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-firefox', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-firefox';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5814 24.5701', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5814 24.5701', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57566,13 +61267,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57580,38 +61282,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformFirefox';
 	module.exports = exports['default'];
 
 /***/ },
-/* 495 */
+/* 443 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57625,28 +61334,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-internet-explorer'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-internet-explorer";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-internet-explorer', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-internet-explorer';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.7255 24.2312', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.7255 24.2312', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57663,13 +61376,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57677,38 +61391,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformInternetExplorer';
 	module.exports = exports['default'];
 
 /***/ },
-/* 496 */
+/* 444 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57722,28 +61443,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-skype'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-skype";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-skype', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-skype';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57760,13 +61485,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57774,38 +61500,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformSkype';
 	module.exports = exports['default'];
 
 /***/ },
-/* 497 */
+/* 445 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57819,28 +61552,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-platform-windows'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "platform-windows";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-platform-windows', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'platform-windows';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0018 24.4466', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0018 24.4466', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57857,13 +61594,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57871,38 +61609,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'PlatformWindows';
 	module.exports = exports['default'];
 
 /***/ },
-/* 498 */
+/* 446 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -57916,28 +61661,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-power'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "power";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-power', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'power';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -57954,13 +61703,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -57968,38 +61718,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Power';
 	module.exports = exports['default'];
 
 /***/ },
-/* 499 */
+/* 447 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58013,28 +61770,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-print'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "print";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-print', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'print';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0013 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0013 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58052,13 +61813,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58066,38 +61828,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Print';
 	module.exports = exports['default'];
 
 /***/ },
-/* 500 */
+/* 448 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58111,28 +61880,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-quick-view'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "quick-view";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-quick-view', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'quick-view';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58149,13 +61922,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58163,38 +61937,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'QuickView';
 	module.exports = exports['default'];
 
 /***/ },
-/* 501 */
+/* 449 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58208,28 +61989,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-radial-selected'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "radial-selected";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-radial-selected', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'radial-selected';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58247,13 +62032,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58261,38 +62047,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'RadialSelected';
 	module.exports = exports['default'];
 
 /***/ },
-/* 502 */
+/* 450 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58306,28 +62099,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-radial'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "radial";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-radial', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'radial';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58344,13 +62141,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58358,38 +62156,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Radial';
 	module.exports = exports['default'];
 
 /***/ },
-/* 503 */
+/* 451 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58403,28 +62208,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-resources'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "resources";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-resources', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'resources';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.4721 24.118', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.4721 24.118', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58441,13 +62250,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58455,38 +62265,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Resources';
 	module.exports = exports['default'];
 
 /***/ },
-/* 504 */
+/* 452 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58500,28 +62317,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-rewind'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "rewind";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-rewind', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'rewind';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.6576 24.0586', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.6576 24.0586', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58538,13 +62359,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58552,38 +62374,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Rewind';
 	module.exports = exports['default'];
 
 /***/ },
-/* 505 */
+/* 453 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58597,28 +62426,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-risk'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "risk";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-risk', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'risk';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58641,13 +62474,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58655,38 +62489,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Risk';
 	module.exports = exports['default'];
 
 /***/ },
-/* 506 */
+/* 454 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58700,28 +62541,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-rss'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "rss";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-rss', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'rss';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58738,13 +62583,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58752,38 +62598,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Rss';
 	module.exports = exports['default'];
 
 /***/ },
-/* 507 */
+/* 455 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58797,28 +62650,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-satellite'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "satellite";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-satellite', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'satellite';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24.9467', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24.9467', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58835,13 +62692,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58849,38 +62707,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Satellite';
 	module.exports = exports['default'];
 
 /***/ },
-/* 508 */
+/* 456 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58894,28 +62759,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-schedule-clone'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "schedule-clone";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-schedule-clone', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'schedule-clone';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0004 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0004 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -58932,13 +62801,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -58946,38 +62816,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ScheduleClone';
 	module.exports = exports['default'];
 
 /***/ },
-/* 509 */
+/* 457 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -58991,28 +62868,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-schedule-new'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "schedule-new";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-schedule-new', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'schedule-new';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.3972 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.3972 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59029,13 +62910,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59043,38 +62925,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ScheduleNew';
 	module.exports = exports['default'];
 
 /***/ },
-/* 510 */
+/* 458 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59088,28 +62977,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-schedule-play'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "schedule-play";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-schedule-play', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'schedule-play';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59127,13 +63020,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59141,38 +63035,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SchedulePlay';
 	module.exports = exports['default'];
 
 /***/ },
-/* 511 */
+/* 459 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59186,28 +63087,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-schedule'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "schedule";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-schedule', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'schedule';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59224,13 +63129,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59238,38 +63144,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Schedule';
 	module.exports = exports['default'];
 
 /***/ },
-/* 512 */
+/* 460 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59283,28 +63196,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-scorecard'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "scorecard";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-scorecard', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'scorecard';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59321,13 +63238,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59335,38 +63253,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Scorecard';
 	module.exports = exports['default'];
 
 /***/ },
-/* 513 */
+/* 461 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59380,28 +63305,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-secure'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "secure";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-secure', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'secure';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59420,13 +63349,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59434,38 +63364,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Secure';
 	module.exports = exports['default'];
 
 /***/ },
-/* 514 */
+/* 462 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59479,28 +63416,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-select-left'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "select-left";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-select-left', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'select-left';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59518,13 +63459,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59532,38 +63474,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SelectLeft';
 	module.exports = exports['default'];
 
 /***/ },
-/* 515 */
+/* 463 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59577,28 +63526,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-select'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "select";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-select', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'select';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 26.418', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 26.418', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59616,13 +63569,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59630,38 +63584,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Select';
 	module.exports = exports['default'];
 
 /***/ },
-/* 516 */
+/* 464 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59675,28 +63636,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-server-cluster'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "server-cluster";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-server-cluster', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'server-cluster';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59722,13 +63687,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59736,38 +63702,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ServerCluster';
 	module.exports = exports['default'];
 
 /***/ },
-/* 517 */
+/* 465 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59781,28 +63754,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-server'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "server";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-server', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'server';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59820,13 +63797,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59834,38 +63812,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Server';
 	module.exports = exports['default'];
 
 /***/ },
-/* 518 */
+/* 466 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59879,28 +63864,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-servers'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "servers";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-servers', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'servers';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0208', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -59919,13 +63908,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -59933,38 +63923,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Servers';
 	module.exports = exports['default'];
 
 /***/ },
-/* 519 */
+/* 467 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -59978,28 +63975,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-service-business'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "service-business";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-service-business', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'service-business';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.1397 24.85', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.1397 24.85', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60016,13 +64017,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60030,38 +64032,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ServiceBusiness';
 	module.exports = exports['default'];
 
 /***/ },
-/* 520 */
+/* 468 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60075,28 +64084,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-service-start'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "service-start";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-service-start', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'service-start';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60114,13 +64127,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60128,38 +64142,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ServiceStart';
 	module.exports = exports['default'];
 
 /***/ },
-/* 521 */
+/* 469 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60173,28 +64194,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-share'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "share";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-share', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'share';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60211,13 +64236,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60225,38 +64251,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Share';
 	module.exports = exports['default'];
 
 /***/ },
-/* 522 */
+/* 470 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60270,28 +64303,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-sheild-configure'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "sheild-configure";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-sheild-configure', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'sheild-configure';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.1389', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.1389', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60308,13 +64345,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60322,38 +64360,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SheildConfigure';
 	module.exports = exports['default'];
 
 /***/ },
-/* 523 */
+/* 471 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60367,28 +64412,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-shield'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "shield";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-shield', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'shield';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.9889', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.9889', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60405,13 +64454,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60419,38 +64469,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Shield';
 	module.exports = exports['default'];
 
 /***/ },
-/* 524 */
+/* 472 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60464,28 +64521,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-shift'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "shift";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-shift', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'shift';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.8284 24.15', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.8284 24.15', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60502,13 +64563,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60516,38 +64578,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Shift';
 	module.exports = exports['default'];
 
 /***/ },
-/* 525 */
+/* 473 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60561,28 +64630,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-shop-basket'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "shop-basket";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-shop-basket', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'shop-basket';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60599,13 +64672,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60613,38 +64687,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ShopBasket';
 	module.exports = exports['default'];
 
 /***/ },
-/* 526 */
+/* 474 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60658,28 +64739,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-shop-cart'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "shop-cart";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-shop-cart', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'shop-cart';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0012 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0012 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60698,13 +64783,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60712,38 +64798,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ShopCart';
 	module.exports = exports['default'];
 
 /***/ },
-/* 527 */
+/* 475 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60757,28 +64850,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-soa'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "soa";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-soa', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'soa';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 25.15', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 25.15', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60795,13 +64892,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60809,38 +64907,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Soa';
 	module.exports = exports['default'];
 
 /***/ },
-/* 528 */
+/* 476 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60854,28 +64959,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-email'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-email";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-email', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-email';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60893,13 +65002,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -60907,38 +65017,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialEmail';
 	module.exports = exports['default'];
 
 /***/ },
-/* 529 */
+/* 477 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -60952,28 +65069,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-facebook'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-facebook";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-facebook', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-facebook';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -60990,13 +65111,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61004,38 +65126,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialFacebook';
 	module.exports = exports['default'];
 
 /***/ },
-/* 530 */
+/* 478 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61049,28 +65178,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-github'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-github";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-github', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-github';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61087,13 +65220,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61101,38 +65235,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialGithub';
 	module.exports = exports['default'];
 
 /***/ },
-/* 531 */
+/* 479 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61146,28 +65287,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-google'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-google";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-google', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-google';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0009', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0009', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61185,13 +65330,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61199,38 +65345,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialGoogle';
 	module.exports = exports['default'];
 
 /***/ },
-/* 532 */
+/* 480 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61244,28 +65397,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-instagram'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-instagram";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-instagram', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-instagram';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61285,13 +65442,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61299,38 +65457,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialInstagram';
 	module.exports = exports['default'];
 
 /***/ },
-/* 533 */
+/* 481 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61344,28 +65509,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-linkedin'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-linkedin";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-linkedin', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-linkedin';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61382,13 +65551,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61396,38 +65566,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialLinkedin';
 	module.exports = exports['default'];
 
 /***/ },
-/* 534 */
+/* 482 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61441,28 +65618,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-medium'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-medium";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-medium', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-medium';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61483,13 +65664,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61497,38 +65679,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialMedium';
 	module.exports = exports['default'];
 
 /***/ },
-/* 535 */
+/* 483 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61542,28 +65731,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-pinterest'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-pinterest";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-pinterest', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-pinterest';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61580,13 +65773,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61594,38 +65788,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialPinterest';
 	module.exports = exports['default'];
 
 /***/ },
-/* 536 */
+/* 484 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61639,28 +65840,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-reddit'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-reddit";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-reddit', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-reddit';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0027 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0027 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61677,13 +65882,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61691,38 +65897,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialReddit';
 	module.exports = exports['default'];
 
 /***/ },
-/* 537 */
+/* 485 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61736,28 +65949,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-slack'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-slack";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-slack', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-slack';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61774,13 +65991,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61788,38 +66006,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialSlack';
 	module.exports = exports['default'];
 
 /***/ },
-/* 538 */
+/* 486 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61833,28 +66058,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-tumblr'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-tumblr";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-tumblr', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-tumblr';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61871,13 +66100,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61885,38 +66115,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialTumblr';
 	module.exports = exports['default'];
 
 /***/ },
-/* 539 */
+/* 487 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -61930,28 +66167,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-twitter'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-twitter";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-twitter', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-twitter';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -61968,13 +66209,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -61982,38 +66224,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialTwitter';
 	module.exports = exports['default'];
 
 /***/ },
-/* 540 */
+/* 488 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62027,28 +66276,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-vimeo'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-vimeo";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-vimeo', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-vimeo';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62065,13 +66318,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62079,38 +66333,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialVimeo';
 	module.exports = exports['default'];
 
 /***/ },
-/* 541 */
+/* 489 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62124,28 +66385,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-social-youtube'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "social-youtube";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-social-youtube', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'social-youtube';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 28 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 28 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62170,13 +66435,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62184,38 +66450,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'SocialYoutube';
 	module.exports = exports['default'];
 
 /***/ },
-/* 542 */
+/* 490 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62229,28 +66502,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-sort'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "sort";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-sort', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'sort';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62274,13 +66551,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62288,38 +66566,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Sort';
 	module.exports = exports['default'];
 
 /***/ },
-/* 543 */
+/* 491 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62333,28 +66618,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-stakeholder'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "stakeholder";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-stakeholder', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'stakeholder';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 28 24.0692', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 28 24.0692', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62371,13 +66660,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62385,38 +66675,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Stakeholder';
 	module.exports = exports['default'];
 
 /***/ },
-/* 544 */
+/* 492 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62430,28 +66727,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-star-half'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "star-half";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-star-half', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'star-half';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62473,13 +66774,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62487,38 +66789,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'StarHalf';
 	module.exports = exports['default'];
 
 /***/ },
-/* 545 */
+/* 493 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62532,28 +66841,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-star'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "star";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-star', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'star';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62574,13 +66887,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62588,38 +66902,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Star';
 	module.exports = exports['default'];
 
 /***/ },
-/* 546 */
+/* 494 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62633,28 +66954,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-steps'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "steps";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-steps', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'steps';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 24.1', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 24.1', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62671,13 +66996,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62685,38 +67011,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Steps';
 	module.exports = exports['default'];
 
 /***/ },
-/* 547 */
+/* 495 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62730,28 +67063,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-storage'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "storage";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-storage', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'storage';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.15', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.15', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62768,13 +67105,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62782,38 +67120,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Storage';
 	module.exports = exports['default'];
 
 /***/ },
-/* 548 */
+/* 496 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62827,28 +67172,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-street-view'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "street-view";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-street-view', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'street-view';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62865,13 +67214,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62879,38 +67229,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'StreetView';
 	module.exports = exports['default'];
 
 /***/ },
-/* 549 */
+/* 497 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -62924,28 +67281,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-support'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "support";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-support', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'support';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.15', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.15', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -62962,13 +67323,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -62976,38 +67338,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Support';
 	module.exports = exports['default'];
 
 /***/ },
-/* 550 */
+/* 498 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63021,28 +67390,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-svg'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "svg";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-svg', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'svg';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 23.5693', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 23.5693', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement('path', { d: 'M24,12.3368c0-1.8973-0.4905-3.6797-1.3507-5.2286c3.6665-8.2982-3.9287-7.0827-4.3516-7\r c-1.6091,0.3149-3.0978,0.8204-4.4711,1.4612c-0.2025-0.0114-0.4062-0.0177-0.6115-0.0177c-5.1248,0-9.4146,3.5745-10.5126,8.3664\r C5.4036,6.8878,7.294,5.6651,8.426,5.1758C8.2453,5.3373,8.0684,5.5005,7.8944,5.665C7.8365,5.7197,7.7807,5.7751,7.7236,5.8302\r C7.6088,5.9405,7.4944,6.051,7.3825,6.1625C7.316,6.2288,7.2513,6.2956,7.1857,6.3624c-0.0992,0.101-0.1981,0.2018-0.295,0.3034\r C6.822,6.7379,6.7549,6.8102,6.6874,6.8824C6.5969,6.9793,6.507,7.0762,6.4188,7.1735c-0.0685,0.0756-0.136,0.1512-0.2033,0.227\r C6.1319,7.4946,6.049,7.5888,5.9673,7.6832c-0.0678,0.0783-0.135,0.1565-0.2014,0.2349C5.6884,8.0096,5.6119,8.101,5.5362,8.1925\r c-0.067,0.081-0.1337,0.1618-0.1993,0.2426c-0.0709,0.0874-0.1402,0.1748-0.2094,0.262c-0.0671,0.0845-0.1342,0.169-0.1997,0.2534\r c-0.0624,0.0804-0.123,0.1605-0.184,0.2406C4.6749,9.2817,4.6055,9.3722,4.5384,9.4624c-0.048,0.0645-0.094,0.1284-0.1411,0.1927\r c-0.4261,0.5814-0.8155,1.1517-1.1671,1.6995c-0.0009,0.0013-0.0018,0.0027-0.0026,0.004\r c-0.0926,0.1442-0.1819,0.2864-0.2695,0.4272c-0.0047,0.0076-0.0096,0.0153-0.0143,0.023c-0.0877,0.1414-0.1723,0.2804-0.2548,0.418\r c-0.0029,0.0048-0.0059,0.0097-0.0088,0.0145c-0.2218,0.3702-0.4276,0.7271-0.6129,1.0629\r c-0.9713,1.7603-1.4442,2.9902-1.4647,3.0632c-3.0673,10.966,6.5059,6.3351,7.8417,5.6439\r c1.4384,0.7106,3.0577,1.1106,4.7707,1.1106c4.6895,0,8.6795-2.9934,10.1646-7.1736h-5.6668\r c-0.8385,1.4166-2.4528,2.3761-4.3074,2.3761c-2.7172,0-4.9199-2.0587-4.9199-4.5984h15.4256C23.9697,13.271,24,12.8074,24,12.3368\r L24,12.3368z M21.9853,1.7237c0.9287,0.6268,1.6737,1.6113,0.3944,4.9265c-1.2269-1.9732-3.0729-3.5211-5.267-4.3719\r C18.1108,1.7963,20.5825,0.7768,21.9853,1.7237z M2.2481,21.9893c-0.7564-0.7758-0.8902-2.6652,0.779-6.1083\r c0.8424,2.422,2.5235,4.4515,4.6962,5.7395C6.6428,22.2153,3.774,23.5544,2.2481,21.9893z M8.4618,10.7766\r C8.548,8.3083,10.6962,6.332,13.3356,6.332c2.6393,0,4.7876,1.9763,4.8738,4.4447H8.4618L8.4618,10.7766z' })
@@ -63054,13 +67427,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63068,38 +67442,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Svg';
 	module.exports = exports['default'];
 
 /***/ },
-/* 551 */
+/* 499 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63113,28 +67494,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-sync'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "sync";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-sync', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'sync';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.0004 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.0004 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63151,13 +67536,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63165,38 +67551,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Sync';
 	module.exports = exports['default'];
 
 /***/ },
-/* 552 */
+/* 500 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63210,28 +67603,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-system'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "system";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-system', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'system';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63248,13 +67645,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63262,38 +67660,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'System';
 	module.exports = exports['default'];
 
 /***/ },
-/* 553 */
+/* 501 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63307,28 +67712,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tab-next'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tab-next";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tab-next', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tab-next';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63345,13 +67754,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63359,38 +67769,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'TabNext';
 	module.exports = exports['default'];
 
 /***/ },
-/* 554 */
+/* 502 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63404,28 +67821,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tab-previous'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tab-previous";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tab-previous', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tab-previous';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63442,13 +67863,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63456,38 +67878,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'TabPrevious';
 	module.exports = exports['default'];
 
 /***/ },
-/* 555 */
+/* 503 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63501,28 +67930,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tab-up'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tab-up";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tab-up', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tab-up';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63539,13 +67972,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63553,38 +67987,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'TabUp';
 	module.exports = exports['default'];
 
 /***/ },
-/* 556 */
+/* 504 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63598,28 +68039,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-table-add'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "table-add";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-table-add', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'table-add';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 27 25', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 27 25', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63636,13 +68081,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63650,38 +68096,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'TableAdd';
 	module.exports = exports['default'];
 
 /***/ },
-/* 557 */
+/* 505 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63695,28 +68148,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-table'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "table";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-table', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'table';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63733,13 +68190,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63747,38 +68205,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Table';
 	module.exports = exports['default'];
 
 /***/ },
-/* 558 */
+/* 506 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63792,28 +68257,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tag'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tag";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tag', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tag';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.4142 24.4142', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.4142 24.4142', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63831,13 +68300,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63845,38 +68315,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Tag';
 	module.exports = exports['default'];
 
 /***/ },
-/* 559 */
+/* 507 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63890,28 +68367,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-target'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "target";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-target', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'target';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -63928,13 +68409,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -63942,38 +68424,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Target';
 	module.exports = exports['default'];
 
 /***/ },
-/* 560 */
+/* 508 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -63987,28 +68476,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-task'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "task";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-task', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'task';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64025,13 +68518,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64039,38 +68533,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Task';
 	module.exports = exports['default'];
 
 /***/ },
-/* 561 */
+/* 509 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64084,28 +68585,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-template'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "template";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-template', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'template';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64122,13 +68627,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64136,38 +68642,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Template';
 	module.exports = exports['default'];
 
 /***/ },
-/* 562 */
+/* 510 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64181,28 +68694,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-test-desktop'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "test-desktop";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-test-desktop', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'test-desktop';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64219,13 +68736,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64233,38 +68751,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'TestDesktop';
 	module.exports = exports['default'];
 
 /***/ },
-/* 563 */
+/* 511 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64278,28 +68803,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-test'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "test";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-test', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'test';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64318,13 +68847,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64332,38 +68862,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Test';
 	module.exports = exports['default'];
 
 /***/ },
-/* 564 */
+/* 512 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64377,28 +68914,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tesxt-wrap'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tesxt-wrap";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tesxt-wrap', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tesxt-wrap';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64419,13 +68960,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64433,38 +68975,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'TesxtWrap';
 	module.exports = exports['default'];
 
 /***/ },
-/* 565 */
+/* 513 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64478,28 +69027,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-threats'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "threats";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-threats', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'threats';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 26', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 26', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64516,13 +69069,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64530,38 +69084,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Threats';
 	module.exports = exports['default'];
 
 /***/ },
-/* 566 */
+/* 514 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64575,28 +69136,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-three-d'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "three-d";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-three-d', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'three-d';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 48 48', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 48 48', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64613,13 +69178,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64627,38 +69193,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ThreeD';
 	module.exports = exports['default'];
 
 /***/ },
-/* 567 */
+/* 515 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64672,28 +69245,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-ticket'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "ticket";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-ticket', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'ticket';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64710,13 +69287,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64724,38 +69302,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Ticket';
 	module.exports = exports['default'];
 
 /***/ },
-/* 568 */
+/* 516 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64769,28 +69354,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tools'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tools";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tools', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tools';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26.8153 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26.8153 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64807,13 +69396,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64821,38 +69411,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Tools';
 	module.exports = exports['default'];
 
 /***/ },
-/* 569 */
+/* 517 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64866,28 +69463,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tooltip'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tooltip";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tooltip', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tooltip';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.0052', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.0052', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -64907,13 +69508,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -64921,38 +69523,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Tooltip';
 	module.exports = exports['default'];
 
 /***/ },
-/* 570 */
+/* 518 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -64966,28 +69575,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-transaction'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "transaction";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-transaction', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'transaction';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 25.8864', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 25.8864', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65004,13 +69617,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65018,38 +69632,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Transaction';
 	module.exports = exports['default'];
 
 /***/ },
-/* 571 */
+/* 519 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65063,28 +69684,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-trash'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "trash";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-trash', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'trash';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65101,13 +69726,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65115,38 +69741,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Trash';
 	module.exports = exports['default'];
 
 /***/ },
-/* 572 */
+/* 520 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65160,28 +69793,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-tree'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "tree";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-tree', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'tree';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65198,13 +69835,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65212,38 +69850,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Tree';
 	module.exports = exports['default'];
 
 /***/ },
-/* 573 */
+/* 521 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65257,28 +69902,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-trigger'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "trigger";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-trigger', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'trigger';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65295,13 +69944,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65309,38 +69959,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Trigger';
 	module.exports = exports['default'];
 
 /***/ },
-/* 574 */
+/* 522 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65354,28 +70011,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-trophy'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "trophy";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-trophy', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'trophy';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65392,13 +70053,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65406,38 +70068,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Trophy';
 	module.exports = exports['default'];
 
 /***/ },
-/* 575 */
+/* 523 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65451,28 +70120,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-troubleshooting'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "troubleshooting";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-troubleshooting', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'troubleshooting';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 24.127', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 24.127', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65489,13 +70162,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65503,38 +70177,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Troubleshooting';
 	module.exports = exports['default'];
 
 /***/ },
-/* 576 */
+/* 524 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65548,28 +70229,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-unlock'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "unlock";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-unlock', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'unlock';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65586,13 +70271,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65600,38 +70286,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Unlock';
 	module.exports = exports['default'];
 
 /***/ },
-/* 577 */
+/* 525 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65645,28 +70338,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-update'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "update";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-update', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'update';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65683,13 +70380,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65697,38 +70395,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Update';
 	module.exports = exports['default'];
 
 /***/ },
-/* 578 */
+/* 526 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65742,28 +70447,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-upgrade'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "upgrade";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-upgrade', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'upgrade';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65780,13 +70489,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65794,38 +70504,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Upgrade';
 	module.exports = exports['default'];
 
 /***/ },
-/* 579 */
+/* 527 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65839,28 +70556,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-upload'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "upload";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-upload', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'upload';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.4142', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.4142', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65877,13 +70598,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65891,38 +70613,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Upload';
 	module.exports = exports['default'];
 
 /***/ },
-/* 580 */
+/* 528 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -65936,28 +70665,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-add'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-add";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-add', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-add';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -65974,13 +70707,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -65988,38 +70722,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserAdd';
 	module.exports = exports['default'];
 
 /***/ },
-/* 581 */
+/* 529 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66033,28 +70774,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-admin'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-admin";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-admin', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-admin';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.7071 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.7071 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66071,13 +70816,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66085,38 +70831,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserAdmin';
 	module.exports = exports['default'];
 
 /***/ },
-/* 582 */
+/* 530 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66130,28 +70883,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-expert'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-expert";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-expert', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-expert';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5821 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5821 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66168,13 +70925,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66182,38 +70940,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserExpert';
 	module.exports = exports['default'];
 
 /***/ },
-/* 583 */
+/* 531 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66227,28 +70992,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-female'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-female";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-female', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-female';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66265,13 +71034,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66279,38 +71049,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserFemale';
 	module.exports = exports['default'];
 
 /***/ },
-/* 584 */
+/* 532 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66324,28 +71101,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-manager'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-manager";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-manager', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-manager';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66362,13 +71143,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66376,38 +71158,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserManager';
 	module.exports = exports['default'];
 
 /***/ },
-/* 585 */
+/* 533 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66421,28 +71210,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-new'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-new";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-new', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-new';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.6963 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.6963 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66459,13 +71252,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66473,38 +71267,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserNew';
 	module.exports = exports['default'];
 
 /***/ },
-/* 586 */
+/* 534 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66518,28 +71319,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-police'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-police";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-police', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-police';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66557,13 +71362,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66571,38 +71377,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserPolice';
 	module.exports = exports['default'];
 
 /***/ },
-/* 587 */
+/* 535 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66616,28 +71429,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-settings'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-settings";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-settings', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-settings';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 26 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66654,13 +71471,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66668,38 +71486,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserSettings';
 	module.exports = exports['default'];
 
 /***/ },
-/* 588 */
+/* 536 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66713,28 +71538,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user-worker'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user-worker";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user-worker', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user-worker';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66751,13 +71580,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66765,38 +71595,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'UserWorker';
 	module.exports = exports['default'];
 
 /***/ },
-/* 589 */
+/* 537 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66810,28 +71647,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-user'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "user";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-user', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'user';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.2031', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.2031', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66848,13 +71689,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66862,38 +71704,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'User';
 	module.exports = exports['default'];
 
 /***/ },
-/* 590 */
+/* 538 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -66907,28 +71756,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-validation'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "validation";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-validation', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'validation';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -66945,13 +71798,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -66959,38 +71813,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Validation';
 	module.exports = exports['default'];
 
 /***/ },
-/* 591 */
+/* 539 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67004,28 +71865,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-video'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "video";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-video', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'video';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67042,13 +71907,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67056,38 +71922,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Video';
 	module.exports = exports['default'];
 
 /***/ },
-/* 592 */
+/* 540 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67101,28 +71974,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-view'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "view";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-view', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'view';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.2554 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.2554 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67139,13 +72016,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67153,38 +72031,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'View';
 	module.exports = exports['default'];
 
 /***/ },
-/* 593 */
+/* 541 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67198,28 +72083,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-virtual-machine'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "virtual-machine";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-virtual-machine', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'virtual-machine';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25.5 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25.5 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67236,13 +72125,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67250,38 +72140,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'VirtualMachine';
 	module.exports = exports['default'];
 
 /***/ },
-/* 594 */
+/* 542 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67295,28 +72192,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-vm-maintenance'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "vm-maintenance";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-vm-maintenance', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'vm-maintenance';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 25 24.9141', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 25 24.9141', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67334,13 +72235,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67348,38 +72250,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'VmMaintenance';
 	module.exports = exports['default'];
 
 /***/ },
-/* 595 */
+/* 543 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67393,28 +72302,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-volume-low'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "volume-low";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-volume-low', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'volume-low';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67431,13 +72344,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67445,38 +72359,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'VolumeLow';
 	module.exports = exports['default'];
 
 /***/ },
-/* 596 */
+/* 544 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67490,28 +72411,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-volume-mute'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "volume-mute";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-volume-mute', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'volume-mute';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67530,13 +72455,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67544,38 +72470,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'VolumeMute';
 	module.exports = exports['default'];
 
 /***/ },
-/* 597 */
+/* 545 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67589,28 +72522,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-volume'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "volume";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-volume', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'volume';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67627,13 +72564,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67641,38 +72579,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Volume';
 	module.exports = exports['default'];
 
 /***/ },
-/* 598 */
+/* 546 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67686,28 +72631,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-vulnerability'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "vulnerability";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-vulnerability', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'vulnerability';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67724,13 +72673,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67738,38 +72688,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Vulnerability';
 	module.exports = exports['default'];
 
 /***/ },
-/* 599 */
+/* 547 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67783,28 +72740,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-waypoint'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "waypoint";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-waypoint', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'waypoint';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67821,13 +72782,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67835,38 +72797,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Waypoint';
 	module.exports = exports['default'];
 
 /***/ },
-/* 600 */
+/* 548 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67880,28 +72849,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-workshop'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "workshop";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-workshop', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'workshop';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24 24', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -67920,13 +72893,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -67934,38 +72908,45 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'Workshop';
 	module.exports = exports['default'];
 
 /***/ },
-/* 601 */
+/* 549 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
 
-	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
 	Object.defineProperty(exports, "__esModule", {
 	  value: true
 	});
 
+	var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
+
 	var _react = __webpack_require__(2);
 
 	var _react2 = _interopRequireDefault(_react);
 
+	var _classnames2 = __webpack_require__(3);
+
+	var _classnames3 = _interopRequireDefault(_classnames2);
+
 	var _FormattedMessage = __webpack_require__(5);
 
 	var _FormattedMessage2 = _interopRequireDefault(_FormattedMessage);
 
 	function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 
+	function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
+
 	function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 
 	function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 
 	function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP
 
-	var CLASS_ROOT = "control-icon";
+	var CLASS_ROOT = 'control-icon';
 
 	var Icon = function (_Component) {
 	  _inherits(Icon, _Component);
@@ -67979,28 +72960,32 @@ var Grommet =
 	  _createClass(Icon, [{
 	    key: 'render',
 	    value: function render() {
-	      var classes = [CLASS_ROOT, CLASS_ROOT + '-zoom-in'];
-	      if (this.props.size) {
-	        classes.push(CLASS_ROOT + "--" + this.props.size);
-	      } else if (this.props.large) {
-	        classes.push(CLASS_ROOT + "--large");
-	      }
-	      if (this.props.colorIndex) {
-	        classes.push("color-index-" + this.props.colorIndex);
-	      }
-	      if (this.props.className) {
-	        classes.push(this.props.className);
+	      var _classnames;
+
+	      var _props = this.props;
+	      var a11yTitle = _props.a11yTitle;
+	      var a11yTitleId = _props.a11yTitleId;
+	      var className = _props.className;
+	      var colorIndex = _props.colorIndex;
+	      var large = _props.large;
+	      var size = _props.size;
+
+
+	      if (!size && large) {
+	        size = 'large';
 	      }
 
-	      var titleLabel = typeof this.props.a11yTitle !== "undefined" ? this.props.a11yTitle : "zoom-in";
-	      var a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
+	      var classes = (0, _classnames3.default)(CLASS_ROOT, CLASS_ROOT + '-zoom-in', className, (_classnames = {}, _defineProperty(_classnames, CLASS_ROOT + '--' + size, size), _defineProperty(_classnames, 'color-index-' + colorIndex, colorIndex), _classnames));
+
+	      var titleLabel = a11yTitle || 'zoom-in';
+	      a11yTitle = _react2.default.createElement(_FormattedMessage2.default, { id: titleLabel, defaultMessage: titleLabel });
 
 	      return _react2.default.createElement(
 	        'svg',
-	        { version: '1.1', viewBox: '0 0 24.5 24.5', width: '24px', height: '24px', className: classes.join(' '), 'aria-labelledby': this.props.a11yTitleId },
+	        { version: '1.1', viewBox: '0 0 24.5 24.5', width: '24px', height: '24px', className: classes, 'aria-labelledby': a11yTitleId },
 	        _react2.default.createElement(
 	          'title',
-	          { id: this.props.a11yTitleId },
+	          { id: a11yTitleId },
 	          a11yTitle
 	        ),
 	        _react2.default.createElement(
@@ -68020,13 +73005,14 @@ var Grommet =
 	}(_react.Component);
 
 	exports.default = Icon;
+	;
 
 	Icon.propTypes = {
 	  a11yTitle: _react.PropTypes.string,
 	  a11yTitleId: _react.PropTypes.string,
 	  colorIndex: _react.PropTypes.string,
 	  large: _react.PropTypes.bool,
-	  size: _react.PropTypes.oneOf(['small', 'medium', 'large'])
+	  size: _react.PropTypes.oneOf(['small', 'medium', 'large', 'huge'])
 	};
 
 	Icon.defaultProps = {
@@ -68034,11 +73020,12 @@ var Grommet =
 	};
 
 	Icon.icon = true;
-	module.exports = exports.default;
+
+	Icon.displayName = 'ZoomIn';
 	module.exports = exports['default'];
 
 /***/ },
-/* 602 */
+/* 550 */
 /***/ function(module, exports) {
 
 	'use strict';
@@ -68133,6 +73120,7 @@ var Grommet =
 	    delete _keyboardAccelerators[id];
 	  },
 
+
 	  // Add handlers for specific keys.
 	  // This function can be called multiple times, existing handlers will
 	  // be replaced, new handlers will be added.
@@ -68162,6 +73150,7 @@ var Grommet =
 	    }
 	  },
 
+
 	  // Remove handlers for all keys or specific keys.
 	  // If no argument is passed in, all handlers are removed.
 	  // This function can be called multiple times, only the handlers
@@ -68206,7 +73195,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 603 */
+/* 551 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
@@ -68215,7 +73204,7 @@ var Grommet =
 	  value: true
 	});
 
-	var _superagent = __webpack_require__(604);
+	var _superagent = __webpack_require__(552);
 
 	var _superagent2 = _interopRequireDefault(_superagent);
 
@@ -68295,15 +73284,15 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 604 */
+/* 552 */
 /***/ function(module, exports, __webpack_require__) {
 
 	/**
 	 * Module dependencies.
 	 */
 
-	var Emitter = __webpack_require__(605);
-	var reduce = __webpack_require__(606);
+	var Emitter = __webpack_require__(553);
+	var reduce = __webpack_require__(554);
 
 	/**
 	 * Root reference for iframes.
@@ -69492,7 +74481,7 @@ var Grommet =
 
 
 /***/ },
-/* 605 */
+/* 553 */
 /***/ function(module, exports) {
 
 	
@@ -69659,7 +74648,7 @@ var Grommet =
 
 
 /***/ },
-/* 606 */
+/* 554 */
 /***/ function(module, exports) {
 
 	
@@ -69688,7 +74677,7 @@ var Grommet =
 	};
 
 /***/ },
-/* 607 */
+/* 555 */
 /***/ function(module, exports, __webpack_require__) {
 
 	'use strict';
@@ -69697,7 +74686,7 @@ var Grommet =
 	  value: true
 	});
 
-	var _Rest = __webpack_require__(603);
+	var _Rest = __webpack_require__(551);
 
 	var _Rest2 = _interopRequireDefault(_Rest);
 
@@ -69825,7 +74814,7 @@ var Grommet =
 	module.exports = exports['default'];
 
 /***/ },
-/* 608 */
+/* 556 */
 /***/ function(module, exports) {
 
 	'use strict';
diff --git a/grommet.min.js b/grommet.min.js
index 778f55c..a0aab6d 100644
--- a/grommet.min.js
+++ b/grommet.min.js
@@ -1,7 +1,12 @@
-var Grommet=function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var r={};return t.m=e,t.c=r,t.p="",t(0)}([function(e,t,r){"use strict";var n={Anchor:r(1),App:r(44),Article:r(99),Box:r(52),Button:r(74),Calendar:r(103),Carousel:r(206),Chart:r(222),CheckBox:r(224),Distribution:r(225),Footer:r(226),Form:r(227),FormField:r(228),FormFields:r(229),Header:r(204),Headline:r(230),Image:r(231),Label:r(232),Layer:r(71),Legend:r(223),List:r(233),ListItem:r(234),Login:r(235),LoginForm:r(236),Map:r(237),Menu:r(75),Meter:r(238),Notification:r(245),NumberInput:r(265),RadioButton:r(268),Search:r(269),SearchInput:r(271),Section:r(272),Sidebar:r(273),Split:r(274),Tab:r(275),Table:r(276),TableRow:r(277),Tabs:r(278),TableRow:r(277),Tiles:r(207),Tile:r(219),Title:r(205),Topology:r(279),Video:r(280),Object:r(284),TBD:r(285),Icons:{Calendar:r(286),Clear:r(287),DragHandle:r(288),Edit:r(289),Facebook:r(290),Filter:r(291),Grommet:r(292),Help:r(293),Left:r(294),LinkedIn:r(295),Mail:r(296),More:r(297),Person:r(298),Right:r(299),Search:r(300),SearchPlus:r(301),Spinning:r(216),Status:r(256),Twitter:r(302),World:r(303),Base:r(304)},Mixins:{KeyboardAccelerators:r(602)},Cookies:r(46),DOM:r(73),KeyboardAccelerators:r(68),Locale:r(45),Rest:r(603),RestWatch:r(607),Validator:r(608)};e.exports=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;rr;r+=1)if(i=e[r],"string"!=typeof i){if(a=i.id,!t||!o.hop.call(t,a))throw new Error("A value must be provided for: "+a);s=t[a],l+=i.options?this._format(i.getOption(s),t):i.format(s)}else l+=i;return l},n.prototype._mergeFormats=function(e,t){var r,n,a={};for(r in e)o.hop.call(e,r)&&(a[r]=n=i.objCreate(e[r]),t&&o.hop.call(t,r)&&o.extend(n,t[r]));return a},n.prototype._resolveLocale=function(e){"string"==typeof e&&(e=[e]),e=(e||[]).concat(n.defaultLocale);var t,r,o,i,a=n.__localeData__;for(t=0,r=e.length;r>t;t+=1)for(o=e[t].toLowerCase().split("-");o.length;){if(i=a[o.join("-")])return i.locale;o.pop()}var s=e.pop();throw new Error("No locale data has been added to IntlMessageFormat for: "+e.join(", ")+", or the default locale: "+s)}},function(e,t){"use strict";function r(e){var t,r,o,i,a=Array.prototype.slice.call(arguments,1);for(t=0,r=a.length;r>t;t+=1)if(o=a[t])for(i in o)n.call(o,i)&&(e[i]=o[i]);return e}t.extend=r;var n=Object.prototype.hasOwnProperty;t.hop=n},function(e,t,r){"use strict";var n=r(10),o=function(){try{return!!Object.defineProperty({},"a",{})}catch(e){return!1}}(),i=(!o&&!Object.prototype.__defineGetter__,o?Object.defineProperty:function(e,t,r){"get"in r&&e.__defineGetter__?e.__defineGetter__(t,r.get):(!n.hop.call(e,t)||"value"in r)&&(e[t]=r.value)}),a=Object.create||function(e,t){function r(){}var o,a;r.prototype=e,o=new r;for(a in t)n.hop.call(t,a)&&i(o,a,t[a]);return o};t.defineProperty=i,t.objCreate=a},function(e,t){"use strict";function r(e,t,r){this.locales=e,this.formats=t,this.pluralFn=r}function n(e){this.id=e}function o(e,t,r,n,o){this.id=e,this.useOrdinal=t,this.offset=r,this.options=n,this.pluralFn=o}function i(e,t,r,n){this.id=e,this.offset=t,this.numberFormat=r,this.string=n}function a(e,t){this.id=e,this.options=t}t["default"]=r,r.prototype.compile=function(e){return this.pluralStack=[],this.currentPlural=null,this.pluralNumberFormat=null,this.compileMessage(e)},r.prototype.compileMessage=function(e){if(!e||"messageFormatPattern"!==e.type)throw new Error('Message AST is not of type: "messageFormatPattern"');var t,r,n,o=e.elements,i=[];for(t=0,r=o.length;r>t;t+=1)switch(n=o[t],n.type){case"messageTextElement":i.push(this.compileMessageText(n));break;case"argumentElement":i.push(this.compileArgument(n));break;default:throw new Error("Message element does not have a valid type")}return i},r.prototype.compileMessageText=function(e){return this.currentPlural&&/(^|[^\\])#/g.test(e.value)?(this.pluralNumberFormat||(this.pluralNumberFormat=new Intl.NumberFormat(this.locales)),new i(this.currentPlural.id,this.currentPlural.format.offset,this.pluralNumberFormat,e.value)):e.value.replace(/\\#/g,"#")},r.prototype.compileArgument=function(e){var t=e.format;if(!t)return new n(e.id);var r,i=this.formats,s=this.locales,l=this.pluralFn;switch(t.type){case"numberFormat":return r=i.number[t.style],{id:e.id,format:new Intl.NumberFormat(s,r).format};case"dateFormat":return r=i.date[t.style],{id:e.id,format:new Intl.DateTimeFormat(s,r).format};case"timeFormat":return r=i.time[t.style],{id:e.id,format:new Intl.DateTimeFormat(s,r).format};case"pluralFormat":return r=this.compileOptions(e),new o(e.id,t.ordinal,t.offset,r,l);case"selectFormat":return r=this.compileOptions(e),new a(e.id,r);default:throw new Error("Message element does not have a valid format type")}},r.prototype.compileOptions=function(e){var t=e.format,r=t.options,n={};this.pluralStack.push(this.currentPlural),this.currentPlural="pluralFormat"===t.type?e:null;var o,i,a;for(o=0,i=r.length;i>o;o+=1)a=r[o],n[a.selector]=this.compileMessage(a.value);return this.currentPlural=this.pluralStack.pop(),n},n.prototype.format=function(e){return e?"string"==typeof e?e:String(e):""},o.prototype.getOption=function(e){var t=this.options,r=t["="+e]||t[this.pluralFn(e-this.offset,this.useOrdinal)];return r||t.other},i.prototype.format=function(e){var t=this.numberFormat.format(e-this.offset);return this.string.replace(/(^|[^\\])#/g,"$1"+t).replace(/\\#/g,"#")},a.prototype.getOption=function(e){var t=this.options;return t[e]||t.other}},function(e,t,r){"use strict";t=e.exports=r(14)["default"],t["default"]=t},function(e,t){"use strict";t["default"]=function(){function e(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function t(e,t,r,n,o,i){this.message=e,this.expected=t,this.found=r,this.offset=n,this.line=o,this.column=i,this.name="SyntaxError"}function r(e){function r(t){function r(t,r,n){var o,i;for(o=r;n>o;o++)i=e.charAt(o),"\n"===i?(t.seenCR||t.line++,t.column=1,t.seenCR=!1):"\r"===i||"\u2028"===i||"\u2029"===i?(t.line++,t.column=1,t.seenCR=!0):(t.column++,t.seenCR=!1)}return Je!==t&&(Je>t&&(Je=0,Ge={line:1,column:1,seenCR:!1}),r(Ge,Je,t),Je=t),Ge}function n(e){qe>Ve||(Ve>qe&&(qe=Ve,Ue=[]),Ue.push(e))}function o(n,o,i){function a(e){var t=1;for(e.sort(function(e,t){return e.descriptiont.description?1:0});t1?a.slice(0,-1).join(", ")+" or "+a[e.length-1]:a[0],o=t?'"'+r(t)+'"':"end of input","Expected "+n+" but "+o+" found."}var l=r(i),u=i1?arguments[1]:{},I={},L={start:i},S=i,C=function(e){return{type:"messageFormatPattern",elements:e}},Y=I,D=function(e){var t,r,n,o,i,a="";for(t=0,n=e.length;n>t;t+=1)for(o=e[t],r=0,i=o.length;i>r;r+=1)a+=o[r];return a},z=function(e){return{type:"messageTextElement",value:e}},N=/^[^ \t\n\r,.+={}#]/,H={type:"class",value:"[^ \\t\\n\\r,.+={}#]",description:"[^ \\t\\n\\r,.+={}#]"},R="{",W={type:"literal",value:"{",description:'"{"'},A=null,F=",",B={type:"literal",value:",",description:'","'},V="}",K={type:"literal",value:"}",description:'"}"'},J=function(e,t){return{type:"argumentElement",id:e,format:t&&t[2]}},G="number",q={type:"literal",value:"number",description:'"number"'},U="date",X={type:"literal",value:"date",description:'"date"'},Q="time",$={type:"literal",value:"time",description:'"time"'},Z=function(e,t){return{type:e+"Format",style:t&&t[2]}},ee="plural",te={type:"literal",value:"plural",description:'"plural"'},re=function(e){return{type:e.type,ordinal:!1,offset:e.offset||0,options:e.options}},ne="selectordinal",oe={type:"literal",value:"selectordinal",description:'"selectordinal"'},ie=function(e){return{type:e.type,ordinal:!0,offset:e.offset||0,options:e.options}},ae="select",se={type:"literal",value:"select",description:'"select"'},le=function(e){return{type:"selectFormat",options:e}},ue="=",pe={type:"literal",value:"=",description:'"="'},ce=function(e,t){return{type:"optionalFormatPattern",selector:e,value:t}},de="offset:",fe={type:"literal",value:"offset:",description:'"offset:"'},he=function(e){return e},ye=function(e,t){return{type:"pluralFormat",offset:e,options:t}},me={type:"other",description:"whitespace"},_e=/^[ \t\n\r]/,be={type:"class",value:"[ \\t\\n\\r]",description:"[ \\t\\n\\r]"},ge={type:"other",description:"optionalWhitespace"},ve=/^[0-9]/,Te={type:"class",value:"[0-9]",description:"[0-9]"},we=/^[0-9a-f]/i,Me={type:"class",value:"[0-9a-f]i",description:"[0-9a-f]i"},xe="0",Pe={type:"literal",value:"0",description:'"0"'},Ee=/^[1-9]/,ke={type:"class",value:"[1-9]",description:"[1-9]"},Oe=function(e){return parseInt(e,10)},je=/^[^{}\\\0-\x1F \t\n\r]/,Ie={type:"class",value:"[^{}\\\\\\0-\\x1F \\t\\n\\r]",description:"[^{}\\\\\\0-\\x1F \\t\\n\\r]"},Le="\\#",Se={type:"literal",value:"\\#",description:'"\\\\#"'},Ce=function(){return"\\#"},Ye="\\{",De={type:"literal",value:"\\{",description:'"\\\\{"'},ze=function(){return"{"},Ne="\\}",He={type:"literal",value:"\\}",description:'"\\\\}"'},Re=function(){return"}"},We="\\u",Ae={type:"literal",value:"\\u",description:'"\\\\u"'},Fe=function(e){return String.fromCharCode(parseInt(e,16))},Be=function(e){return e.join("")},Ve=0,Ke=0,Je=0,Ge={line:1,column:1,seenCR:!1},qe=0,Ue=[],Xe=0;if("startRule"in j){if(!(j.startRule in L))throw new Error("Can't start parsing from rule \""+j.startRule+'".');S=L[j.startRule]}if(O=S(),O!==I&&Ve===e.length)return O;throw O!==I&&Ves?"past":"future"})},n.prototype._isValidUnits=function(e){if(!e||a.arrIndexOf.call(s,e)>=0)return!0;if("string"==typeof e){var t=/s$/.test(e)&&e.substr(0,e.length-1);if(t&&a.arrIndexOf.call(s,t)>=0)throw new Error('"'+e+'" is not a valid IntlRelativeFormat `units` value, did you mean: '+t)}throw new Error('"'+e+'" is not a valid IntlRelativeFormat `units` value, it must be one of: "'+s.join('", "')+'"')},n.prototype._resolveLocale=function(e){"string"==typeof e&&(e=[e]),e=(e||[]).concat(n.defaultLocale);var t,r,o,i,a=n.__localeData__;for(t=0,r=e.length;r>t;t+=1)for(o=e[t].toLowerCase().split("-");o.length;){if(i=a[o.join("-")])return i.locale;o.pop()}var s=e.pop();throw new Error("No locale data has been added to IntlRelativeFormat for: "+e.join(", ")+", or the default locale: "+s)},n.prototype._resolveStyle=function(e){if(!e)return l[0];if(a.arrIndexOf.call(l,e)>=0)return e;throw new Error('"'+e+'" is not a valid IntlRelativeFormat `style` value, it must be one of: "'+l.join('", "')+'"')},n.prototype._selectUnits=function(e){var t,r,o;for(t=0,r=s.length;r>t&&(o=s[t],!(Math.abs(e[o])n;n++)if(r[n]===e)return n;return-1},l=Array.isArray||function(e){return"[object Array]"===n.call(e)},u=Date.now||function(){return(new Date).getTime()};t.defineProperty=i,t.objCreate=a,t.arrIndexOf=s,t.isArray=l,t.dateNow=u},function(e,t){"use strict";t["default"]={locale:"en",pluralRuleFunction:function(e,t){var r=String(e).split("."),n=!r[1],o=Number(r[0])==e,i=o&&r[0].slice(-1),a=o&&r[0].slice(-2);return t?1==i&&11!=a?"one":2==i&&12!=a?"two":3==i&&13!=a?"few":"other":1==e&&n?"one":"other"},fields:{year:{displayName:"Year",relative:{0:"this year",1:"next year","-1":"last year"},relativeTime:{
-future:{one:"in {0} year",other:"in {0} years"},past:{one:"{0} year ago",other:"{0} years ago"}}},month:{displayName:"Month",relative:{0:"this month",1:"next month","-1":"last month"},relativeTime:{future:{one:"in {0} month",other:"in {0} months"},past:{one:"{0} month ago",other:"{0} months ago"}}},day:{displayName:"Day",relative:{0:"today",1:"tomorrow","-1":"yesterday"},relativeTime:{future:{one:"in {0} day",other:"in {0} days"},past:{one:"{0} day ago",other:"{0} days ago"}}},hour:{displayName:"Hour",relativeTime:{future:{one:"in {0} hour",other:"in {0} hours"},past:{one:"{0} hour ago",other:"{0} hours ago"}}},minute:{displayName:"Minute",relativeTime:{future:{one:"in {0} minute",other:"in {0} minutes"},past:{one:"{0} minute ago",other:"{0} minutes ago"}}},second:{displayName:"Second",relative:{0:"now"},relativeTime:{future:{one:"in {0} second",other:"in {0} seconds"},past:{one:"{0} second ago",other:"{0} seconds ago"}}}}}},function(e,t){},function(e,t){"use strict";t.__esModule=!0,t["default"]={locale:"en",pluralRuleFunction:function(e,t){var r=String(e).split("."),n=!r[1],o=Number(r[0])==e,i=o&&r[0].slice(-1),a=o&&r[0].slice(-2);return t?1==i&&11!=a?"one":2==i&&12!=a?"two":3==i&&13!=a?"few":"other":1==e&&n?"one":"other"},fields:{year:{displayName:"Year",relative:{0:"this year",1:"next year","-1":"last year"},relativeTime:{future:{one:"in {0} year",other:"in {0} years"},past:{one:"{0} year ago",other:"{0} years ago"}}},month:{displayName:"Month",relative:{0:"this month",1:"next month","-1":"last month"},relativeTime:{future:{one:"in {0} month",other:"in {0} months"},past:{one:"{0} month ago",other:"{0} months ago"}}},day:{displayName:"Day",relative:{0:"today",1:"tomorrow","-1":"yesterday"},relativeTime:{future:{one:"in {0} day",other:"in {0} days"},past:{one:"{0} day ago",other:"{0} days ago"}}},hour:{displayName:"Hour",relativeTime:{future:{one:"in {0} hour",other:"in {0} hours"},past:{one:"{0} hour ago",other:"{0} hours ago"}}},minute:{displayName:"Minute",relativeTime:{future:{one:"in {0} minute",other:"in {0} minutes"},past:{one:"{0} minute ago",other:"{0} minutes ago"}}},second:{displayName:"Second",relative:{0:"now"},relativeTime:{future:{one:"in {0} second",other:"in {0} seconds"},past:{one:"{0} second ago",other:"{0} seconds ago"}}}}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t["default"]=e,t}function o(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var s=Object.assign||function(e){for(var t=1;tr;r++)t[r]=arguments[r];return _.shouldIntlComponentUpdate.apply(void 0,[this].concat(t))},t.prototype.render=function(){var e=this.props.children;return"function"==typeof e?e():e},t}(l.Component);t["default"]=M,M.propTypes=b.intlPropTypes,M.defaultProps={formats:{},messages:{},defaultLocale:"en",defaultFormats:{}},M.childContextTypes={intl:b.intlShape.isRequired},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e){return l["default"].prototype._resolveLocale(e)}function a(e){return l["default"].prototype._findPluralRuleFunction(e)}t.__esModule=!0;var s=r(7),l=n(s),u=function p(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];o(this,p);var r="ordinal"===t.style,n=a(i(e));this.format=function(e){return n(e,r)}};t["default"]=u,e.exports=t["default"]},function(e,t,r){"use strict";t=e.exports=r(28)["default"],t["default"]=t},function(e,t,r){"use strict";function n(e){var t=a.objCreate(null);return function(){var r=Array.prototype.slice.call(arguments),n=o(r),i=n&&t[n];return i||(i=a.objCreate(e.prototype),e.apply(i,r),n&&(t[n]=i)),i}}function o(e){if("undefined"!=typeof JSON){var t,r,n,o=[];for(t=0,r=e.length;r>t;t+=1)n=e[t],n&&"object"==typeof n?o.push(i(n)):o.push(n);return JSON.stringify(o)}}function i(e){var t,r,n,o,i=[],a=[];for(t in e)e.hasOwnProperty(t)&&a.push(t);var s=a.sort();for(r=0,n=s.length;n>r;r+=1)t=s[r],o={},o[t]=e[t],i[r]=o;return i}var a=r(29);t["default"]=n},function(e,t){"use strict";var r=Object.prototype.hasOwnProperty,n=function(){try{return!!Object.defineProperty({},"a",{})}catch(e){return!1}}(),o=(!n&&!Object.prototype.__defineGetter__,n?Object.defineProperty:function(e,t,n){"get"in n&&e.__defineGetter__?e.__defineGetter__(t,n.get):(!r.call(e,t)||"value"in n)&&(e[t]=n.value)}),i=Object.create||function(e,t){function n(){}var i,a;n.prototype=e,i=new n;for(a in t)r.call(t,a)&&o(i,a,t[a]);return i};t.defineProperty=o,t.objCreate=i},function(e,t,r){(function(e){"use strict";function r(e){return(""+e).replace(s,function(e){return a[e]})}function n(e,t){if(e===t)return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(var o=Object.prototype.hasOwnProperty.bind(t),i=0;i":">","<":"<",'"':""","'":"'"},s=/[&><"']/g}).call(t,r(31))},function(e,t){function r(){u=!1,a.length?l=a.concat(l):p=-1,l.length&&n()}function n(){if(!u){var e=setTimeout(r);u=!0;for(var t=l.length;t;){for(a=l,l=[];++p1)for(var r=1;rr;r++)t[r]=arguments[r];return p.shouldIntlComponentUpdate.apply(void 0,[this].concat(t))},t.prototype.render=function(){var e=this.context.intl.formatDate,t=this.props,r=e(t.value,t);return"function"==typeof t.children?t.children(r):l["default"].createElement("span",null,r)},t}(s.Component);t["default"]=c,c.propTypes=a({},u.dateTimeFormatPropTypes,{format:s.PropTypes.string,value:s.PropTypes.any.isRequired}),c.contextTypes={intl:u.intlShape},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;tr;r++)t[r]=arguments[r];return p.shouldIntlComponentUpdate.apply(void 0,[this].concat(t))},t.prototype.render=function(){var e=this.context.intl.formatTime,t=this.props,r=e(t.value,t);return"function"==typeof t.children?t.children(r):l["default"].createElement("span",null,r)},t}(s.Component);t["default"]=c,c.propTypes=a({},u.dateTimeFormatPropTypes,{format:s.PropTypes.string,value:s.PropTypes.any.isRequired}),c.contextTypes={intl:u.intlShape},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;tr;r++)t[r]=arguments[r];return p.shouldIntlComponentUpdate.apply(void 0,[this].concat(t))},t.prototype.render=function(){var e=this.context.intl.formatRelative,t=this.props,r=e(t.value,t);return"function"==typeof t.children?t.children(r):l["default"].createElement("span",null,r)},t}(s.Component);t["default"]=c,c.propTypes=a({},u.relativeFormatPropTypes,{format:s.PropTypes.string,value:s.PropTypes.any.isRequired,now:s.PropTypes.any}),c.contextTypes={intl:u.intlShape},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;tr;r++)t[r]=arguments[r];return p.shouldIntlComponentUpdate.apply(void 0,[this].concat(t))},t.prototype.render=function(){var e=this.context.intl.formatNumber,t=this.props,r=e(t.value,t);return"function"==typeof t.children?t.children(r):l["default"].createElement("span",null,r)},t}(s.Component);t["default"]=c,c.propTypes=a({},u.numberFormatPropTypes,{format:s.PropTypes.string,value:s.PropTypes.any.isRequired}),c.contextTypes={intl:u.intlShape},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;tr;r++)t[r]=arguments[r];return p.shouldIntlComponentUpdate.apply(void 0,[this].concat(t))},t.prototype.render=function(){var e=this.context.intl.formatPlural,t=this.props,r=e(t.value,t),n=t[r]||t.other;return"function"==typeof t.children?t.children(n):l["default"].createElement("span",null,n)},t}(s.Component);t["default"]=c,c.propTypes=a({},u.pluralFormatPropTypes,{value:s.PropTypes.any.isRequired,other:s.PropTypes.node.isRequired,zero:s.PropTypes.node,one:s.PropTypes.node,two:s.PropTypes.node,few:s.PropTypes.node,many:s.PropTypes.node}),c.defaultProps={style:"cardinal"},c.contextTypes={intl:u.intlShape},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t1?o-1:0),s=1;o>s;s++)i[s-1]=arguments[s];return u.shouldIntlComponentUpdate.apply(void 0,[this,n].concat(i))},t.prototype.render=function(){var e=this.context.intl.formatMessage,t=this.props,r=t.id,o=t.description,i=t.defaultMessage,a=t.values,l=t.tagName,u=Math.floor(1099511627776*Math.random()).toString(16),p=new RegExp("(@__ELEMENT-"+u+"-\\d+__@)","g"),c=function(){var e=0;return function(){return"@__ELEMENT-"+u+"-"+(e+=1)+"__@"}}(),d={},f={};Object.keys(a).forEach(function(e){var t=a[e];if(s.isValidElement(t)){var r=c();d[e]=r,f[r]=t}else d[e]=t});var h={id:r,description:o,defaultMessage:i},y=e(h,d),m=y.split(p).filter(function(e){return!!e}).map(function(e){return f[e]||e});return"function"==typeof t.children?t.children.apply(t,n(m)):s.createElement.apply(void 0,[l,null].concat(n(m)))},t}(s.Component);t["default"]=p,p.propTypes={id:s.PropTypes.string.isRequired,description:s.PropTypes.string,defaultMessage:s.PropTypes.string,values:s.PropTypes.object,tagName:s.PropTypes.string},p.contextTypes={intl:l.intlShape},p.defaultProps={tagName:"span",values:{}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var i=Object.assign||function(e){for(var t=1;t1?o-1:0),s=1;o>s;s++)a[s-1]=arguments[s];return l.shouldIntlComponentUpdate.apply(void 0,[this,n].concat(a))},t.prototype.render=function(){var e=this.context.intl.formatHTMLMessage,t=this.props,r=t.id,n=t.description,o=t.defaultMessage,i=t.values,s=t.tagName,l={id:r,description:n,defaultMessage:o},u=e(l,i);return"function"==typeof t.children?t.children(u):a.createElement(s,{dangerouslySetInnerHTML:{__html:u}})},t}(a.Component);t["default"]=u,u.propTypes={id:a.PropTypes.string,description:a.PropTypes.string,defaultMessage:a.PropTypes.string,values:a.PropTypes.object,tagName:a.PropTypes.string},u.contextTypes={intl:s.intlShape},u.defaultProps={tagName:"span",values:{}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e){return e.displayName||e.name||"Component"}function l(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],r=t.intlPropName,n=void 0===r?"intl":r,l=function(t){function r(e,n){i(this,r),t.call(this,e,n),f.assertIntlContext(n)}return a(r,t),r.prototype.render=function(){return c["default"].createElement(e,u({},this.props,o({},n,this.context.intl),{ref:"wrappedElement"}))},r}(p.Component);return l.displayName="IntjectIntl("+s(e)+")",l.contextTypes={intl:d.intlShape},l}t.__esModule=!0;var u=Object.assign||function(e){for(var t=1;t1&&(r+="-"+t[1].toUpperCase()),r}function i(e){p=o(e)}function a(){try{var e=u["default"].get("languages"),t=e?JSON.parse(e)[0]:void 0;return t||(t=window.navigator.languages?window.navigator.languages[0]:window.navigator.language||window.navigator.userLanguage),o(t)}catch(r){return p}}function s(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],t=arguments.length<=1||void 0===arguments[1]?a():arguments[1],n=void 0;try{n=r(47)("./"+t)}catch(o){n={}}var i=Object.assign(n,e);return{locale:t,messages:i}}Object.defineProperty(t,"__esModule",{value:!0}),t.setLocale=i,t.getCurrentLocale=a,t.getLocaleData=s;var l=r(46),u=n(l),p="en-US"},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={get:function(e){return e?decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null:null},set:function(e,t,r,n,o,i){if(!e||/^(?:expires|max\-age|path|domain|secure)$/i.test(e))return!1;var a="";if(r)switch(r.constructor){case Number:a=r===1/0?"; expires=Fri, 31 Dec 9999 23:59:59 GMT":"; max-age="+r;break;case String:a="; expires="+r;break;case Date:a="; expires="+r.toUTCString()}return document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(t)+a+(o?"; domain="+o:"")+(n?"; path="+n:"")+(i?"; secure":""),!0},remove:function(e,t,r){return this.has(e)?(document.cookie=encodeURIComponent(e)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT"+(r?"; domain="+r:"")+(t?"; path="+t:""),!0):!1},has:function(e){return e?new RegExp("(?:^|;\\s*)"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie):!1},keys:function(){for(var e=document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g,"").split(/\s*(?:\=[^;]*)?;\s*/),t=e.length,r=0;t>r;r++)e[r]=decodeURIComponent(e[r]);
-return e}},e.exports=t["default"]},function(e,t,r){function n(e){return r(o(e))}function o(e){return i[e]||function(){throw new Error("Cannot find module '"+e+"'.")}()}var i={"./en":48,"./en-US":49,"./en-US.js":49,"./en.js":48,"./pt-BR":50,"./pt-BR.js":50};n.keys=function(){return Object.keys(i)},n.resolve=o,e.exports=n,n.id=47},function(e,t,r){"use strict";e.exports=r(49)},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={IndexFilters:{filters:"{quantity, plural,\n  =0 {Filters}\n  =1 {one filter}\n  other {# filters}\n}"},Active:"Active",add:"add",Alerts:"Alerts",All:"All",area:"area",Bar:"Bar",Box:"Box",Category:"Category",Circle:"Circle",Chart:"Chart",Clear:"Clear",Cleared:"Cleared",Close:"Close",close:"close","Close Menu":"Close Menu",Completed:"Completed",created:"Created",Critical:"Critical",Disabled:"Disabled",Distribution:"Distribution",down:"down",edit:"edit",Email:"Email",Error:"Error",Filter:"Filter",filter:"filter",Footer:"Footer","Grommet Logo":"Grommet Logo","link-next":"link-next","link-previous":"link-previous",Loading:"Loading",loginInvalidPassword:"Please provide Username and Password.","Log In":"Log In",Logout:"Logout","Main Content":"Main Content",Max:"Max",Menu:"Menu",menu:"menu",Meter:"Meter",Min:"Min",model:"Model",modified:"Modified",monitor:"monitor",Name:"Name",OK:"OK",Open:"Open",Password:"Password",power:"power","Remember me":"Remember me",Resource:"Resource",Running:"Running",Search:"Search",search:"search","Skip to":"Skip to",State:"State",Status:"Status",subtract:"subtract","Tab Contents":"{activeTitle} Tab Contents",Tasks:"Tasks",Time:"Time",Title:"Title",Total:"Total",Threshold:"Threshold",Unknown:"Unknown",user:"user",Username:"Username",uri:"URI",validation:"validation",Value:"Value",Warning:"Warning"},e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={IndexFilters:{filters:"{quantity, plural,\n  =0 {Filtros}\n  =1 {um filtro}\n  other {# filtros}\n}"},Active:"Ativos",add:"add",Alerts:"Alertas",All:"Todos",area:"Área",Bar:"Bar",Box:"Box",Category:"Categoria",Circle:"Círculo",Chart:"Gráfico",Clear:"Limpar",Cleared:"Livre",Close:"Fechar",close:"fechar","Close Menu":"Fechar Menu",Completed:"Completado",created:"Criado",Critical:"Crítico",Disabled:"Desabilitado",Distribution:"Distribuição",down:"baixo",Email:"Email",Error:"Erro",Filter:"Filtro",filter:"filtro",Footer:"Rodapé","Grommet Logo":"Gromment Logomarca","link-next":"link-next","link-previous":"link-previous",Loading:"Carregando",loginInvalidPassword:"Por favor, informe Usuário e Senha.","Log In":"Logar",Logout:"Deslogar","Main Content":"Conteúdo Principal",Max:"Max",Menu:"Menu",menu:"menu",Meter:"Meter",Min:"Min",model:"Modelo",modified:"Modificado",monitor:"monitor",Name:"Nome",OK:"OK",Open:"Abrir",Password:"Senha",power:"power","Remember me":"Lembrar Usuário",Resource:"Recurso",Running:"Executando",Search:"Buscar",search:"buscar","Skip to":"Saltar para",State:"Estado",Status:"Situaçāo",subtract:"subtract","Tab Contents":"{activeTitle} Conteúdo da Tab",Tasks:"Tarefas",Time:"Data",Title:"Título",Total:"Total",Threshold:"Limiar",Unknown:"Desconhecido",user:"user",Username:"Usuário",uri:"URI",validation:"validation",Value:"Valor",Warning:"Alerta"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;r0&&(t=u["default"].createElement(_["default"],{direction:"row"},e)),u["default"].createElement(y["default"],{id:"skip-link-layer",hidden:!this.state.showLayer,align:"top"},u["default"].createElement(f["default"],{ref:"skipLinksLayer",pad:{horizontal:"small",vertical:"medium"}},u["default"].createElement("h2",null,u["default"].createElement(c["default"],{id:"Skip to",defaultMessage:"Skip to"})),t))}}]),t}(l.Component);t["default"]=w,w.contextTypes={intl:l.PropTypes.object},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;t-1&&e%1==0&&n>=e}var n=9007199254740991;e.exports=r},function(e,t,r){function n(e){for(var t=l(e),r=t.length,n=r&&e.length,u=!!n&&s(n)&&(i(e)||o(e)),c=-1,d=[];++c-1&&e%1==0&&t>e}var n=/^\d+$/,o=9007199254740991;e.exports=r},function(e,t,r){function n(e){if(null==e)return[];l(e)||(e=Object(e));var t=e.length;t=t&&s(t)&&(i(e)||o(e))&&t||0;for(var r=e.constructor,n=-1,u="function"==typeof r&&r.prototype===e,c=Array(t),d=t>0;++n0&&(s||(window.addEventListener("keydown",l),s=!0),this._isComponentListening(r)||this._subscribeComponent(r))},stopListeningToKeyboard:function(e,t){var r=(0,n.findDOMNode)(e);if(this._isComponentListening(r)){if(t)for(var i in t)if(t.hasOwnProperty(i)){var u=i;o.hasOwnProperty(i)&&(u=o[i]),delete this._getKeyboardAcceleratorHandlers(r)[u]}var p=0;for(var c in this._getKeyboardAcceleratorHandlers(r))this._getKeyboardAcceleratorHandlers(r).hasOwnProperty(c)&&(p+=1);t&&0!==p||(this._initKeyboardAccelerators(r),this._unsubscribeComponent(r)),0===a.length&&(window.removeEventListener("keydown",l),s=!1)}}},e.exports=t["default"]},function(e,t){e.exports=ReactDOM},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={getMessage:function(e,t,r){return e?e.formatMessage({id:t,defaultMessage:t},r):t}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;t0?r[0]:document.body.firstChild,this._element=t.parentNode.insertBefore(e,t)}},{key:"_handleAriaHidden",value:function(e){this._element.setAttribute("aria-hidden",e)}},{key:"_renderLayer",value:function(){this._element.className=this._classesFromProps().join(" ");var e=p["default"].createElement(w,s({},this.props,{router:this.context.router,history:this.context.history,intl:this.context.intl,store:this.context.store}));d["default"].render(e,this._element),this._handleAriaHidden(this.props.hidden)}},{key:"_removeLayer",value:function(){this._element.removeEventListener("animationend",this._onAnimationEnd),this._handleAriaHidden(!0),d["default"].unmountComponentAtNode(this._element),this._element.parentNode.removeChild(this._element),this._element=null}},{key:"render",value:function(){return p["default"].createElement("span",null)}}]),t}(u.Component);t["default"]=M,M.propTypes={align:u.PropTypes.oneOf(["center","top","bottom","left","right"]),closer:u.PropTypes.oneOfType([u.PropTypes.node,u.PropTypes.bool]),flush:u.PropTypes.bool,hidden:u.PropTypes.bool,peek:u.PropTypes.bool,onClose:u.PropTypes.func},M.contextTypes={router:u.PropTypes.func,history:u.PropTypes.object,intl:u.PropTypes.object,store:u.PropTypes.object},M.defaultProps={align:"center"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;rn.clientWidth+10&&r.push(n):n.clientHeight&&n.scrollHeight>n.clientHeight+10&&r.push(n),n=n.parentNode;return 0===r.length&&r.push(document),r},isDescendant:function(e,t){for(var r=t.parentNode;null!=r;){if(r==e)return!0;r=r.parentNode}return!1},filterByFocusable:function(e){return Array.prototype.filter.call(e||[],function(e){var t=e.tagName.toLowerCase(),r=/(svg|a|area|input|select|textarea|button|iframe)$/,n=t.match(r)&&e.focus;return"a"===t?n&&e.childNodes.length>0:"svg"===t?n&&e.hasAttribute("tabindex"):n})},getBestFirstFocusable:function(e){var t;return Array.prototype.some.call(e||[],function(e){var r=e.tagName.toLowerCase(),n=r.match(/(input|select|textarea)$/);return n?(t=e,!0):!1}),t||(t=this.filterByFocusable(e)[0]),t}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;ra?l-=l+p-a:0>l&&(l=0),n.top?"top"===n.top?u=o.top:"bottom"===n.top&&(u=o.top+o.height):n.bottom&&("top"===n.bottom?u=o.top-i.height:"bottom"===n.bottom&&(u=o.top+o.height-i.height)),u+i.height>s?u="bottom"===n.top?o.top-i.height:Math.max(o.bottom-i.height,u-(u+i.height-s)):0>u&&(u=0),r.style.left=""+l+"px",r.style.width=""+p+"px",r.style.top=""+u+"px"}},e.exports=t["default"]},function(e,t){"use strict";function r(){var e="16px";return window.getComputedStyle&&(e=window.getComputedStyle(document.documentElement).fontSize),n*parseFloat(e)}Object.defineProperty(t,"__esModule",{value:!0});var n=44.9375;t["default"]={start:function(e){var t={func:e,timer:null,small:null,smallSize:r()};return t.onResize=this._onResize.bind(this,t),t.layout=this._check.bind(this,t),t.stop=this._stop.bind(this,t),window.addEventListener("resize",t.onResize),t.layout(),t},_stop:function(e){clearTimeout(e.timer),window.removeEventListener("resize",e.onResize)},_onResize:function(e){clearTimeout(e.timer),e.timer=setTimeout(e.layout,50)},_check:function(e){window.innerWidth0;){if(a(t.join("-")))return!0;t.pop()}return!1}function a(e){var t=e&&e.toLowerCase();return!(!x.__localeData__[t]||!j.__localeData__[t])}function l(e){return(""+e).replace(Z,function(e){return $[e]})}function s(e,t){var r=arguments.length<=2||void 0===arguments[2]?{}:arguments[2];return t.reduce(function(t,n){return e.hasOwnProperty(n)?t[n]=e[n]:r.hasOwnProperty(n)&&(t[n]=r[n]),t},{})}function u(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],t=e.intl;S(t,"[React Intl] Could not find required `intl` object.  needs to exist in the component ancestry.")}function c(e,t){if(e===t)return!0;if("object"!==("undefined"==typeof e?"undefined":D["typeof"](e))||null===e||"object"!==("undefined"==typeof t?"undefined":D["typeof"](t))||null===t)return!1;var r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(var o=Object.prototype.hasOwnProperty.bind(t),i=0;i0;if(!d&&"production"===e.env.NODE_ENV)return p||f||c;var h=void 0;if(p)try{var y=r.getMessageFormat(p,i,a);h=y.format(o)}catch(m){"production"!==e.env.NODE_ENV&&console.error('[React Intl] Error formatting message: "'+c+'" for locale: "'+i+'"'+(f?", using default message as fallback.":"")+("\n"+m))}else"production"!==e.env.NODE_ENV&&(!f||i&&i.toLowerCase()!==s.toLowerCase())&&console.error('[React Intl] Missing message: "'+c+'" for locale: "'+i+'"'+(f?", using default message as fallback.":""));if(!h&&f)try{var b=r.getMessageFormat(f,s,u);h=b.format(o)}catch(m){"production"!==e.env.NODE_ENV&&console.error('[React Intl] Error formatting the default message for: "'+c+'"\n'+m)}return h||"production"!==e.env.NODE_ENV&&console.error('[React Intl] Cannot format message: "'+c+'", '+("using message "+(p||f?"source":"id")+" as fallback.")),h||p||f||c}function P(e,t,r){var n=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],o=Object.keys(n).reduce(function(e,t){var r=n[t];return e[t]="string"==typeof r?l(r):r,e},{});return M(e,t,r,o)}function E(e){var t=Math.abs(e);return de>t?"second":he>t?"minute":ye>t?"hour":"day"}function k(e){switch(e){case"second":return pe;case"minute":return de;case"hour":return he;case"day":return ye;default:return me}}var O=n(r(8)),x=n(r(9)),j=n(r(19)),L=r(2),I=n(L),S=n(r(26)),C=n(r(27)),D={};D["typeof"]="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e},D.classCallCheck=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},D.createClass=function(){function e(e,t){for(var r=0;r":">","<":"<",'"':""","'":"'"},Z=/[&><"']/g,ee=function we(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];D.classCallCheck(this,we);var r="ordinal"===t.style,n=m(y(e));this.format=function(e){return n(e,r)}},te=Object.keys(G),re=Object.keys(q),ne=Object.keys(U),oe=Object.keys(X),ie=Object.freeze({formatDate:_,formatTime:g,formatRelative:v,formatNumber:T,formatPlural:w,formatMessage:M,formatHTMLMessage:P}),ae=Object.keys(B),le=Object.keys(V),se={formats:{},messages:{},defaultLocale:"en",defaultFormats:{}},ue=function(t){function r(e,t){D.classCallCheck(this,r);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(r).call(this,e,t));S("undefined"!=typeof Intl,"[React Intl] The `Intl` APIs must be available in the runtime, and do not appear to be built-in. An `Intl` polyfill should be loaded.\nSee: http://formatjs.io/guides/runtime-environments/");var o=void 0;return o=isFinite(e.initialNow)?Number(e.initialNow):t.intl?t.intl.now():Date.now(),n.state={getDateTimeFormat:C(Intl.DateTimeFormat),getNumberFormat:C(Intl.NumberFormat),getMessageFormat:C(x),getRelativeFormat:C(j),getPluralFormat:C(ee),now:function(){return n._didDisplay?Date.now():o}},n}return D.inherits(r,t),D.createClass(r,[{key:"getConfig",value:function(){var t=this.context.intl,r=void 0===t?{}:t,n=D["extends"]({},se,s(this.props,ae,r));if(!i(n.locale)){var o=n.locale,a=n.defaultLocale,l=n.defaultFormats;"production"!==e.env.NODE_ENV&&console.error('[React Intl] Missing locale data for locale: "'+o+'". '+('Using default locale: "'+a+'" as fallback.')),n=D["extends"]({},n,{locale:a,formats:l,messages:se.messages})}return n}},{key:"getBoundFormatFns",value:function(e,t){return le.reduce(function(r,n){return r[n]=ie[n].bind(null,e,t),r},{})}},{key:"getChildContext",value:function(){var e=this.getConfig(),t=this.getBoundFormatFns(e,this.state);return{intl:D["extends"]({},e,t,{now:this.state.now})}}},{key:"shouldComponentUpdate",value:function(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return f.apply(void 0,[this].concat(t))}},{key:"componentDidMount",value:function(){this._didDisplay=!0}},{key:"render",value:function(){return L.Children.only(this.props.children)}}]),r}(L.Component);ue.displayName="IntlProvider",ue.contextTypes={intl:K},ue.childContextTypes={intl:K.isRequired},ue.propTypes=D["extends"]({},B,{children:L.PropTypes.element.isRequired,initialNow:L.PropTypes.any});var ce=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));return u(r),n}return D.inherits(t,e),D.createClass(t,[{key:"shouldComponentUpdate",value:function(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return f.apply(void 0,[this].concat(t))}},{key:"render",value:function(){var e=this.context.intl.formatDate,t=this.props,r=t.value,n=t.children,o=e(r,this.props);return"function"==typeof n?n(o):I.createElement("span",null,o)}}]),t}(L.Component);ce.displayName="FormattedDate",ce.contextTypes={intl:K},ce.propTypes=D["extends"]({},G,{value:L.PropTypes.any.isRequired,format:L.PropTypes.string,children:L.PropTypes.func});var fe=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));return u(r),n}return D.inherits(t,e),D.createClass(t,[{key:"shouldComponentUpdate",value:function(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return f.apply(void 0,[this].concat(t))}},{key:"render",value:function(){var e=this.context.intl.formatTime,t=this.props,r=t.value,n=t.children,o=e(r,this.props);return"function"==typeof n?n(o):I.createElement("span",null,o)}}]),t}(L.Component);fe.displayName="FormattedTime",fe.contextTypes={intl:K},fe.propTypes=D["extends"]({},G,{value:L.PropTypes.any.isRequired,format:L.PropTypes.string,children:L.PropTypes.func});var pe=1e3,de=6e4,he=36e5,ye=864e5,me=2147483647,be=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));u(r);var o=isFinite(e.initialNow)?Number(e.initialNow):r.intl.now();return n.state={now:o},n}return D.inherits(t,e),D.createClass(t,[{key:"scheduleNextUpdate",value:function(e,t){var r=this,n=e.updateInterval;if(n){var o=new Date(e.value).getTime(),i=o-t.now,a=e.units||E(i),l=k(a),s=Math.abs(i%l),u=0>i?Math.max(n,l-s):Math.max(n,s);clearTimeout(this._timer),this._timer=setTimeout(function(){r.setState({now:r.context.intl.now()})},u)}}},{key:"shouldComponentUpdate",value:function(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return f.apply(void 0,[this].concat(t))}},{key:"componentWillUpdate",value:function(e,t){this.scheduleNextUpdate(e,t)}},{key:"componentDidMount",value:function(){this.scheduleNextUpdate(this.props,this.state)}},{key:"componentWillUnmount",value:function(){clearTimeout(this._timer)}},{key:"render",value:function(){var e=this.context.intl.formatRelative,t=this.props,r=t.value,n=t.children,o=e(r,D["extends"]({},this.props,this.state));return"function"==typeof n?n(o):I.createElement("span",null,o)}}]),t}(L.Component);be.displayName="FormattedRelative",be.contextTypes={intl:K},be.propTypes=D["extends"]({},U,{value:L.PropTypes.any.isRequired,format:L.PropTypes.string,updateInterval:L.PropTypes.number,initialNow:L.PropTypes.any,children:L.PropTypes.func}),be.defaultProps={updateInterval:1e4};var _e=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));return u(r),n}return D.inherits(t,e),D.createClass(t,[{key:"shouldComponentUpdate",value:function(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return f.apply(void 0,[this].concat(t))}},{key:"render",value:function(){var e=this.context.intl.formatNumber,t=this.props,r=t.value,n=t.children,o=e(r,this.props);return"function"==typeof n?n(o):I.createElement("span",null,o)}}]),t}(L.Component);_e.displayName="FormattedNumber",_e.contextTypes={intl:K},_e.propTypes=D["extends"]({},q,{value:L.PropTypes.any.isRequired,format:L.PropTypes.string,children:L.PropTypes.func});var ge=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));return u(r),n}return D.inherits(t,e),D.createClass(t,[{key:"shouldComponentUpdate",value:function(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return f.apply(void 0,[this].concat(t))}},{key:"render",value:function(){var e=this.context.intl.formatPlural,t=this.props,r=t.value,n=t.other,o=t.children,i=e(r,this.props),a=this.props[i]||n;return"function"==typeof o?o(a):I.createElement("span",null,a)}}]),t}(L.Component);ge.displayName="FormattedPlural",ge.contextTypes={intl:K},ge.propTypes=D["extends"]({},X,{value:L.PropTypes.any.isRequired,other:L.PropTypes.node.isRequired,zero:L.PropTypes.node,one:L.PropTypes.node,two:L.PropTypes.node,few:L.PropTypes.node,many:L.PropTypes.node,children:L.PropTypes.func}),ge.defaultProps={style:"cardinal"};var ve=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));return u(r),n}return D.inherits(t,e),D.createClass(t,[{key:"shouldComponentUpdate",value:function(e){var t=this.props.values,r=e.values;if(!c(r,t))return!0;for(var n=D["extends"]({},e,{values:t}),o=arguments.length,i=Array(o>1?o-1:0),a=1;o>a;a++)i[a-1]=arguments[a];return f.apply(void 0,[this,n].concat(i))}},{key:"render",value:function(){var e=this.context.intl.formatMessage,t=this.props,r=t.id,n=t.description,o=t.defaultMessage,i=t.values,a=t.tagName,l=t.children,s=void 0,u=void 0,c=void 0,f=i&&Object.keys(i).length>0;f&&!function(){var e=Math.floor(1099511627776*Math.random()).toString(16),t=function(){var t=0;return function(){return"@__ELEMENT-"+e+"-"+(t+=1)+"__@"}}();s=new RegExp("(@__ELEMENT-"+e+"-\\d+__@)","g"),u={},c={},Object.keys(i).forEach(function(e){var r=i[e];if(L.isValidElement(r)){var n=t();u[e]=n,c[n]=r}else u[e]=r})}();var p={id:r,description:n,defaultMessage:o},d=e(p,u||i),h=void 0,y=c&&Object.keys(c).length>0;return h=y?d.split(s).filter(function(e){return!!e}).map(function(e){return c[e]||e}):[d],"function"==typeof l?l.apply(void 0,D.toConsumableArray(h)):L.createElement.apply(void 0,[a,null].concat(D.toConsumableArray(h)))}}]),t}(L.Component);ve.displayName="FormattedMessage",ve.contextTypes={intl:K},ve.propTypes=D["extends"]({},J,{values:L.PropTypes.object,tagName:L.PropTypes.string,children:L.PropTypes.func}),ve.defaultProps={values:{},tagName:"span"};var Te=function(e){function t(e,r){D.classCallCheck(this,t);var n=D.possibleConstructorReturn(this,Object.getPrototypeOf(t).call(this,e,r));return u(r),n}return D.inherits(t,e),D.createClass(t,[{key:"shouldComponentUpdate",value:function(e){var t=this.props.values,r=e.values;if(!c(r,t))return!0;for(var n=D["extends"]({},e,{values:t}),o=arguments.length,i=Array(o>1?o-1:0),a=1;o>a;a++)i[a-1]=arguments[a];return f.apply(void 0,[this,n].concat(i))}},{key:"render",value:function(){var e=this.context.intl.formatHTMLMessage,t=this.props,r=t.id,n=t.description,o=t.defaultMessage,i=t.values,a=t.tagName,l=t.children,s={id:r,description:n,defaultMessage:o},u=e(s,i);return"function"==typeof l?l(u):L.createElement(a,{dangerouslySetInnerHTML:{__html:u}})}}]),t}(L.Component);Te.displayName="FormattedHTMLMessage",Te.contextTypes={intl:K},Te.propTypes=D["extends"]({},J,{values:L.PropTypes.object,tagName:L.PropTypes.string,children:L.PropTypes.func}),Te.defaultProps={values:{},tagName:"span"},o(Y),o(O),t.addLocaleData=o,t.intlShape=K,t.injectIntl=d,t.defineMessages=h,t.IntlProvider=ue,t.FormattedDate=ce,t.FormattedTime=fe,t.FormattedRelative=be,t.FormattedNumber=_e,t.FormattedPlural=ge,t.FormattedMessage=ve,t.FormattedHTMLMessage=Te}).call(t,r(7))},function(e,t){function r(){u=!1,a.length?s=a.concat(s):c=-1,s.length&&n()}function n(){if(!u){var e=setTimeout(r);u=!0;for(var t=s.length;t;){for(a=s,s=[];++c1)for(var r=1;rr;r+=1)if(i=e[r],"string"!=typeof i){if(a=i.id,!t||!o.hop.call(t,a))throw new Error("A value must be provided for: "+a);l=t[a],s+=i.options?this._format(i.getOption(l),t):i.format(l)}else s+=i;return s},n.prototype._mergeFormats=function(e,t){var r,n,a={};for(r in e)o.hop.call(e,r)&&(a[r]=n=i.objCreate(e[r]),t&&o.hop.call(t,r)&&o.extend(n,t[r]));return a},n.prototype._resolveLocale=function(e){"string"==typeof e&&(e=[e]),e=(e||[]).concat(n.defaultLocale);var t,r,o,i,a=n.__localeData__;for(t=0,r=e.length;r>t;t+=1)for(o=e[t].toLowerCase().split("-");o.length;){if(i=a[o.join("-")])return i.locale;o.pop()}var l=e.pop();throw new Error("No locale data has been added to IntlMessageFormat for: "+e.join(", ")+", or the default locale: "+l)}},function(e,t){"use strict";function r(e){var t,r,o,i,a=Array.prototype.slice.call(arguments,1);for(t=0,r=a.length;r>t;t+=1)if(o=a[t])for(i in o)n.call(o,i)&&(e[i]=o[i]);return e}t.extend=r;var n=Object.prototype.hasOwnProperty;t.hop=n},function(e,t,r){"use strict";var n=r(12),o=function(){try{return!!Object.defineProperty({},"a",{})}catch(e){return!1}}(),i=(!o&&!Object.prototype.__defineGetter__,o?Object.defineProperty:function(e,t,r){"get"in r&&e.__defineGetter__?e.__defineGetter__(t,r.get):(!n.hop.call(e,t)||"value"in r)&&(e[t]=r.value)}),a=Object.create||function(e,t){function r(){}var o,a;r.prototype=e,o=new r;for(a in t)n.hop.call(t,a)&&i(o,a,t[a]);return o};t.defineProperty=i,t.objCreate=a},function(e,t){"use strict";function r(e,t,r){this.locales=e,this.formats=t,this.pluralFn=r}function n(e){this.id=e}function o(e,t,r,n,o){this.id=e,this.useOrdinal=t,this.offset=r,this.options=n,this.pluralFn=o}function i(e,t,r,n){this.id=e,this.offset=t,this.numberFormat=r,this.string=n}function a(e,t){this.id=e,this.options=t}t["default"]=r,r.prototype.compile=function(e){return this.pluralStack=[],this.currentPlural=null,this.pluralNumberFormat=null,this.compileMessage(e)},r.prototype.compileMessage=function(e){if(!e||"messageFormatPattern"!==e.type)throw new Error('Message AST is not of type: "messageFormatPattern"');var t,r,n,o=e.elements,i=[];for(t=0,r=o.length;r>t;t+=1)switch(n=o[t],n.type){case"messageTextElement":i.push(this.compileMessageText(n));break;case"argumentElement":i.push(this.compileArgument(n));break;default:throw new Error("Message element does not have a valid type")}return i},r.prototype.compileMessageText=function(e){return this.currentPlural&&/(^|[^\\])#/g.test(e.value)?(this.pluralNumberFormat||(this.pluralNumberFormat=new Intl.NumberFormat(this.locales)),new i(this.currentPlural.id,this.currentPlural.format.offset,this.pluralNumberFormat,e.value)):e.value.replace(/\\#/g,"#")},r.prototype.compileArgument=function(e){var t=e.format;if(!t)return new n(e.id);var r,i=this.formats,l=this.locales,s=this.pluralFn;switch(t.type){case"numberFormat":return r=i.number[t.style],{id:e.id,format:new Intl.NumberFormat(l,r).format};case"dateFormat":return r=i.date[t.style],{id:e.id,format:new Intl.DateTimeFormat(l,r).format};case"timeFormat":return r=i.time[t.style],{id:e.id,format:new Intl.DateTimeFormat(l,r).format};case"pluralFormat":return r=this.compileOptions(e),new o(e.id,t.ordinal,t.offset,r,s);case"selectFormat":return r=this.compileOptions(e),new a(e.id,r);default:throw new Error("Message element does not have a valid format type")}},r.prototype.compileOptions=function(e){var t=e.format,r=t.options,n={};this.pluralStack.push(this.currentPlural),this.currentPlural="pluralFormat"===t.type?e:null;var o,i,a;for(o=0,i=r.length;i>o;o+=1)a=r[o],n[a.selector]=this.compileMessage(a.value);return this.currentPlural=this.pluralStack.pop(),n},n.prototype.format=function(e){return e?"string"==typeof e?e:String(e):""},o.prototype.getOption=function(e){var t=this.options,r=t["="+e]||t[this.pluralFn(e-this.offset,this.useOrdinal)];return r||t.other},i.prototype.format=function(e){var t=this.numberFormat.format(e-this.offset);return this.string.replace(/(^|[^\\])#/g,"$1"+t).replace(/\\#/g,"#")},a.prototype.getOption=function(e){var t=this.options;return t[e]||t.other}},function(e,t,r){"use strict";t=e.exports=r(16)["default"],t["default"]=t},function(e,t){"use strict";t["default"]=function(){function e(e,t){function r(){this.constructor=e}r.prototype=t.prototype,e.prototype=new r}function t(e,t,r,n,o,i){this.message=e,this.expected=t,this.found=r,this.offset=n,this.line=o,this.column=i,this.name="SyntaxError"}function r(e){function r(t){function r(t,r,n){var o,i;for(o=r;n>o;o++)i=e.charAt(o),"\n"===i?(t.seenCR||t.line++,t.column=1,t.seenCR=!1):"\r"===i||"\u2028"===i||"\u2029"===i?(t.line++,t.column=1,t.seenCR=!0):(t.column++,t.seenCR=!1)}return Ue!==t&&(Ue>t&&(Ue=0,Xe={line:1,column:1,seenCR:!1}),r(Xe,Ue,t),Ue=t),Xe}function n(e){Qe>Ge||(Ge>Qe&&(Qe=Ge,$e=[]),$e.push(e))}function o(n,o,i){function a(e){var t=1;for(e.sort(function(e,t){return e.descriptiont.description?1:0});t1?a.slice(0,-1).join(", ")+" or "+a[e.length-1]:a[0],o=t?'"'+r(t)+'"':"end of input","Expected "+n+" but "+o+" found."}var s=r(i),u=i1?arguments[1]:{},L={},I={start:i},S=i,C=function(e){return{type:"messageFormatPattern",elements:e}},D=L,Y=function(e){var t,r,n,o,i,a="";for(t=0,n=e.length;n>t;t+=1)for(o=e[t],r=0,i=o.length;i>r;r+=1)a+=o[r];return a},N=function(e){return{type:"messageTextElement",value:e}},z=/^[^ \t\n\r,.+={}#]/,H={type:"class",value:"[^ \\t\\n\\r,.+={}#]",description:"[^ \\t\\n\\r,.+={}#]"},R="{",W={type:"literal",value:"{",description:'"{"'},A=null,F=",",B={type:"literal",value:",",description:'","'},V="}",K={type:"literal",value:"}",description:'"}"'},J=function(e,t){return{type:"argumentElement",id:e,format:t&&t[2]}},G="number",q={type:"literal",value:"number",description:'"number"'},U="date",X={type:"literal",value:"date",description:'"date"'},Q="time",$={type:"literal",value:"time",description:'"time"'},Z=function(e,t){return{type:e+"Format",style:t&&t[2]}},ee="plural",te={type:"literal",value:"plural",description:'"plural"'},re=function(e){return{type:e.type,ordinal:!1,offset:e.offset||0,options:e.options}},ne="selectordinal",oe={type:"literal",value:"selectordinal",description:'"selectordinal"'},ie=function(e){return{type:e.type,ordinal:!0,offset:e.offset||0,options:e.options}},ae="select",le={type:"literal",value:"select",description:'"select"'},se=function(e){return{type:"selectFormat",options:e}},ue="=",ce={type:"literal",value:"=",description:'"="'},fe=function(e,t){return{type:"optionalFormatPattern",selector:e,value:t}},pe="offset:",de={type:"literal",value:"offset:",description:'"offset:"'},he=function(e){return e},ye=function(e,t){return{type:"pluralFormat",offset:e,options:t}},me={type:"other",description:"whitespace"},be=/^[ \t\n\r]/,_e={type:"class",value:"[ \\t\\n\\r]",description:"[ \\t\\n\\r]"},ge={type:"other",description:"optionalWhitespace"},ve=/^[0-9]/,Te={type:"class",value:"[0-9]",description:"[0-9]"},we=/^[0-9a-f]/i,Me={type:"class",value:"[0-9a-f]i",description:"[0-9a-f]i"},Pe="0",Ee={type:"literal",value:"0",description:'"0"'},ke=/^[1-9]/,Oe={type:"class",value:"[1-9]",description:"[1-9]"},xe=function(e){return parseInt(e,10)},je=/^[^{}\\\0-\x1F \t\n\r]/,Le={type:"class",value:"[^{}\\\\\\0-\\x1F \\t\\n\\r]",description:"[^{}\\\\\\0-\\x1F \\t\\n\\r]"},Ie="\\\\",Se={type:"literal",value:"\\\\",description:'"\\\\\\\\"'},Ce=function(){return"\\"},De="\\#",Ye={type:"literal",value:"\\#",description:'"\\\\#"'},Ne=function(){return"\\#"},ze="\\{",He={type:"literal",value:"\\{",description:'"\\\\{"'},Re=function(){return"{"},We="\\}",Ae={type:"literal",value:"\\}",description:'"\\\\}"'},Fe=function(){return"}"},Be="\\u",Ve={type:"literal",value:"\\u",description:'"\\\\u"'},Ke=function(e){return String.fromCharCode(parseInt(e,16))},Je=function(e){return e.join("")},Ge=0,qe=0,Ue=0,Xe={line:1,column:1,seenCR:!1},Qe=0,$e=[],Ze=0;if("startRule"in j){if(!(j.startRule in I))throw new Error("Can't start parsing from rule \""+j.startRule+'".');S=I[j.startRule]}if(x=S(),x!==L&&Ge===e.length)return x;throw x!==L&&Gel?"past":"future"})},n.prototype._isValidUnits=function(e){if(!e||a.arrIndexOf.call(l,e)>=0)return!0;if("string"==typeof e){var t=/s$/.test(e)&&e.substr(0,e.length-1);if(t&&a.arrIndexOf.call(l,t)>=0)throw new Error('"'+e+'" is not a valid IntlRelativeFormat `units` value, did you mean: '+t)}throw new Error('"'+e+'" is not a valid IntlRelativeFormat `units` value, it must be one of: "'+l.join('", "')+'"')},n.prototype._resolveLocale=function(e){"string"==typeof e&&(e=[e]),e=(e||[]).concat(n.defaultLocale);var t,r,o,i,a=n.__localeData__;for(t=0,r=e.length;r>t;t+=1)for(o=e[t].toLowerCase().split("-");o.length;){if(i=a[o.join("-")])return i.locale;o.pop()}var l=e.pop();throw new Error("No locale data has been added to IntlRelativeFormat for: "+e.join(", ")+", or the default locale: "+l)},n.prototype._resolveStyle=function(e){if(!e)return s[0];if(a.arrIndexOf.call(s,e)>=0)return e;throw new Error('"'+e+'" is not a valid IntlRelativeFormat `style` value, it must be one of: "'+s.join('", "')+'"')},n.prototype._selectUnits=function(e){var t,r,o;for(t=0,r=l.length;r>t&&(o=l[t],!(Math.abs(e[o])n;n++)if(r[n]===e)return n;return-1},s=Array.isArray||function(e){return"[object Array]"===n.call(e)},u=Date.now||function(){return(new Date).getTime()};t.defineProperty=i,t.objCreate=a,t.arrIndexOf=l,t.isArray=s,t.dateNow=u},function(e,t){"use strict";t["default"]={locale:"en",pluralRuleFunction:function(e,t){var r=String(e).split("."),n=!r[1],o=Number(r[0])==e,i=o&&r[0].slice(-1),a=o&&r[0].slice(-2);return t?1==i&&11!=a?"one":2==i&&12!=a?"two":3==i&&13!=a?"few":"other":1==e&&n?"one":"other"},fields:{year:{displayName:"year",relative:{0:"this year",1:"next year","-1":"last year"},relativeTime:{future:{one:"in {0} year",other:"in {0} years"},past:{one:"{0} year ago",other:"{0} years ago"}}},month:{displayName:"month",relative:{0:"this month",1:"next month","-1":"last month"},relativeTime:{future:{one:"in {0} month",other:"in {0} months"},past:{one:"{0} month ago",other:"{0} months ago"}}},day:{displayName:"day",relative:{0:"today",1:"tomorrow","-1":"yesterday"},relativeTime:{future:{one:"in {0} day",other:"in {0} days"},past:{one:"{0} day ago",other:"{0} days ago"}}},hour:{displayName:"hour",relativeTime:{future:{one:"in {0} hour",other:"in {0} hours"},past:{one:"{0} hour ago",other:"{0} hours ago"}}},minute:{displayName:"minute",relativeTime:{future:{one:"in {0} minute",other:"in {0} minutes"},past:{one:"{0} minute ago",other:"{0} minutes ago"}}},second:{displayName:"second",relative:{0:"now"},relativeTime:{future:{one:"in {0} second",other:"in {0} seconds"},past:{one:"{0} second ago",other:"{0} seconds ago"}}}}}},function(e,t){},function(e,t,r){(function(t){"use strict";var r=function(e,r,n,o,i,a,l,s){if("production"!==t.env.NODE_ENV&&void 0===r)throw new Error("invariant requires an error message argument");if(!e){var u;if(void 0===r)u=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,o,i,a,l,s],f=0;u=new Error(r.replace(/%s/g,function(){return c[f++]})),u.name="Invariant Violation"}throw u.framesToPop=1,u}};e.exports=r}).call(t,r(7))},function(e,t,r){"use strict";t=e.exports=r(28)["default"],t["default"]=t},function(e,t,r){"use strict";function n(e){var t=a.objCreate(null);return function(){var r=Array.prototype.slice.call(arguments),n=o(r),i=n&&t[n];return i||(i=new(a.bind.apply(e,[null].concat(r))),n&&(t[n]=i)),i}}function o(e){if("undefined"!=typeof JSON){var t,r,n,o=[];for(t=0,r=e.length;r>t;t+=1)n=e[t],n&&"object"==typeof n?o.push(i(n)):o.push(n);return JSON.stringify(o)}}function i(e){var t,r,n,o,i=[],a=[];for(t in e)e.hasOwnProperty(t)&&a.push(t);var l=a.sort();for(r=0,n=l.length;n>r;r+=1)t=l[r],o={},o[t]=e[t],i[r]=o;return i}var a=r(29);t["default"]=n},function(e,t){"use strict";var r=Function.prototype.bind||function(e){if("function"!=typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");var t=Array.prototype.slice.call(arguments,1),r=this,n=function(){},o=function(){return r.apply(this instanceof n?this:e,t.concat(Array.prototype.slice.call(arguments)))};return this.prototype&&(n.prototype=this.prototype),o.prototype=new n,o},n=Object.prototype.hasOwnProperty,o=function(){try{return!!Object.defineProperty({},"a",{})}catch(e){return!1}}(),i=(!o&&!Object.prototype.__defineGetter__,o?Object.defineProperty:function(e,t,r){"get"in r&&e.__defineGetter__?e.__defineGetter__(t,r.get):(!n.call(e,t)||"value"in r)&&(e[t]=r.value)}),a=Object.create||function(e,t){function r(){}var o,a;r.prototype=e,o=new r;for(a in t)n.call(t,a)&&i(o,a,t[a]);return o};t.bind=r,t.defineProperty=i,t.objCreate=a},function(e,t,r){(function(n){"use strict";function o(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(){return n.Intl&&m.every(function(e){return Intl.NumberFormat.supportedLocalesOf(e)[0]===e&&Intl.DateTimeFormat.supportedLocalesOf(e)[0]===e})}Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function e(e,t){for(var r=0;r1&&(r+="-"+t[1].toUpperCase()),r}function i(e){f=o(e)}function a(){try{var e=c["default"].get("languages"),t=e?JSON.parse(e)[0]:void 0;return t||(t=window.navigator.languages?window.navigator.languages[0]:window.navigator.language||window.navigator.userLanguage),o(t)}catch(r){return f}}function l(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],t=arguments.length<=1||void 0===arguments[1]?a():arguments[1],n=void 0;try{n=r(33)("./"+t)}catch(o){n={}}var i=s({},n,e);return{locale:t,messages:i}}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;tr;r++)e[r]=decodeURIComponent(e[r]);return e}},e.exports=t["default"]},function(e,t,r){function n(e){return r(o(e))}function o(e){return i[e]||function(){throw new Error("Cannot find module '"+e+"'.")}()}var i={"./en":34,"./en-US":35,"./en-US.js":35,"./en.js":34,"./pt-BR":36,"./pt-BR.js":36};n.keys=function(){return Object.keys(i)},n.resolve=o,e.exports=n,n.id=33},function(e,t,r){"use strict";e.exports=r(35)},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={IndexFilters:{filters:"{quantity, plural,\n  =0 {Filters}\n  =1 {one filter}\n  other {# filters}\n}"},Active:"Active",add:"add",Alerts:"Alerts",All:"All",archive:"archive",area:"area",Bar:"Bar",bar:"bar",Box:"Box",camera:"camera",Category:"Category",Circle:"Circle",Chart:"Chart",Clear:"Clear",Cleared:"Cleared",Close:"Close",close:"close","Close Menu":"Close Menu","command-line":"command line",Completed:"Completed",created:"Created",Critical:"Critical",Disabled:"Disabled",Distribution:"Distribution",down:"down",download:"download",edit:"edit",Email:"Email",Error:"Error",Filter:"Filter",filter:"filter",Footer:"Footer","Grommet Logo":"Grommet Logo",Layer:"Layer",line:"line","link-next":"link-next","link-previous":"link-previous",Loading:"Loading",loginInvalidPassword:"Please provide Username and Password.","Log In":"Log In",Logout:"Logout","Main Content":"Main Content",Max:"Max",Menu:"Menu",menu:"menu",Meter:"Meter",Min:"Min",model:"Model",modified:"Modified",monitor:"monitor",more:"more",Name:"Name",OK:"OK",Open:"Open",Password:"Password",power:"power","Remember me":"Remember me",Resource:"Resource",Running:"Running",Search:"Search",search:"search","Skip to":"Skip to",State:"State",Status:"Status",subtract:"subtract",support:"support",sync:"sync","Tab Contents":"{activeTitle} Tab Contents",Tasks:"Tasks",Time:"Time",Title:"Title",Total:"Total",trash:"trash",Threshold:"Threshold",Unknown:"Unknown",upload:"upload",user:"user",Username:"Username",uri:"URI",validation:"validation",Value:"Value",Warning:"Warning"},e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={IndexFilters:{filters:"{quantity, plural,\n  =0 {Filtros}\n  =1 {um filtro}\n  other {# filtros}\n}"},Active:"Ativos",add:"add",Alerts:"Alertas",All:"Todos",area:"Área",Bar:"Bar",bar:"bar",Box:"Box",camera:"Câmera",Category:"Categoria",Circle:"Círculo",Chart:"Gráfico",Clear:"Limpar",Cleared:"Livre",Close:"Fechar",close:"fechar","Close Menu":"Fechar Menu","command-line":"linha de comando",Completed:"Completado",created:"Criado",Critical:"Crítico",Disabled:"Desabilitado",Distribution:"Distribuição",down:"baixo",Email:"Email",Error:"Erro",Filter:"Filtro",filter:"filtro",Footer:"Rodapé","Grommet Logo":"Gromment Logomarca",Layer:"Modal",line:"linha","link-next":"link-next","link-previous":"link-previous",Loading:"Carregando",loginInvalidPassword:"Por favor, informe Usuário e Senha.","Log In":"Logar",Logout:"Deslogar","Main Content":"Conteúdo Principal",Max:"Max",Menu:"Menu",menu:"menu",Meter:"Meter",Min:"Min",model:"Modelo",modified:"Modificado",monitor:"monitor",more:"mais",Name:"Nome",OK:"OK",Open:"Abrir",Password:"Senha",power:"power","Remember me":"Lembrar Usuário",Resource:"Recurso",Running:"Executando",Search:"Buscar",search:"buscar","Skip to":"Saltar para",State:"Estado",Status:"Situaçāo",subtract:"subtract","Tab Contents":"{activeTitle} Conteúdo da Tab",Tasks:"Tarefas",Time:"Data",Title:"Título",Total:"Total",trash:"lixeira",Threshold:"Limiar",Unknown:"Desconhecido",user:"user",Username:"Usuário",uri:"URI",validation:"validation",Value:"Valor",Warning:"Alerta"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;r0&&(t=u["default"].createElement(b["default"],{direction:"row",responsive:!1},e)),u["default"].createElement(y["default"],{id:"skip-link-layer",hidden:!this.state.showLayer,align:"top"},u["default"].createElement(d["default"],{ref:"skipLinksLayer",pad:{horizontal:"small",vertical:"medium"}},u["default"].createElement("h2",null,u["default"].createElement(f["default"],{id:"Skip to",defaultMessage:"Skip to"})),t))}}]),t}(s.Component);t["default"]=w,w.contextTypes={intl:s.PropTypes.object},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t0&&(l||(window.addEventListener("keydown",s),l=!0),this._isComponentListening(r)||this._subscribeComponent(r))},stopListeningToKeyboard:function(e,t){var r=(0,n.findDOMNode)(e);if(this._isComponentListening(r)){if(t)for(var i in t)if(t.hasOwnProperty(i)){var u=i;o.hasOwnProperty(i)&&(u=o[i]),delete this._getKeyboardAcceleratorHandlers(r)[u]}var c=0;for(var f in this._getKeyboardAcceleratorHandlers(r))this._getKeyboardAcceleratorHandlers(r).hasOwnProperty(f)&&(c+=1);t&&0!==c||(this._initKeyboardAccelerators(r),this._unsubscribeComponent(r)),0===a.length&&(window.removeEventListener("keydown",s),l=!1)}}},e.exports=t["default"]},function(e,t){e.exports=ReactDOM},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={getMessage:function(e,t,r){return e?e.formatMessage({id:t,defaultMessage:t},r):t}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;r0?r[0]:document.body.firstChild,this._element=t.parentNode.insertBefore(e,t)}},{key:"_handleAriaHidden",value:function(e){this._element.setAttribute("aria-hidden",e||!1)}},{key:"_renderLayer",value:function(){this._element.className=this._classesFromProps().join(" ");var e=c["default"].createElement(P,l({},this.props,{history:this.context.history,intl:this.context.intl,router:this.context.router,store:this.context.store}));p["default"].render(e,this._element),this._handleAriaHidden(this.props.hidden)}},{key:"_removeLayer",value:function(){this._element.removeEventListener("animationend",this._onAnimationEnd),this._handleAriaHidden(!0),p["default"].unmountComponentAtNode(this._element),this._element.parentNode.removeChild(this._element),this._element=null}},{key:"render",value:function(){return c["default"].createElement("span",null)}}]),t}(u.Component);t["default"]=E,E.propTypes={align:u.PropTypes.oneOf(["center","top","bottom","left","right"]),closer:u.PropTypes.oneOfType([u.PropTypes.node,u.PropTypes.bool]),flush:u.PropTypes.bool,hidden:u.PropTypes.bool,peek:u.PropTypes.bool,onClose:u.PropTypes.func},E.contextTypes={router:u.PropTypes.any,history:u.PropTypes.object,intl:u.PropTypes.object,store:u.PropTypes.object},E.defaultProps={align:"center"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;ro.width+10&&r.push(n):o.height&&n.scrollHeight>o.height+10&&r.push(n),n=n.parentNode}return 0===r.length&&r.push(document),r},isDescendant:function(e,t){for(var r=t.parentNode;null!=r;){if(r==e)return!0;r=r.parentNode}return!1},findAncestor:function(e,t){for(var r=e.parentNode;!(null==r||r.classList&&r.classList.contains(t));)r=r.parentNode;return r},filterByFocusable:function(e){return Array.prototype.filter.call(e||[],function(e){var t=e.tagName.toLowerCase(),r=/(svg|a|area|input|select|textarea|button|iframe)$/,n=t.match(r)&&e.focus;return"a"===t?n&&e.childNodes.length>0:"svg"===t?n&&e.hasAttribute("tabindex"):n})},getBestFirstFocusable:function(e){var t;return Array.prototype.some.call(e||[],function(e){var r=e.tagName.toLowerCase(),n=r.match(/(input|select|textarea)$/);return n?(t=e,!0):!1}),t||(t=this.filterByFocusable(e)[0]),t}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;ro?a-=a+c-o:0>a&&(a=0);var f,p;n.top?"top"===n.top?(f=l.top,p=Math.min(i-l.top,i)):(f=l.bottom,p=Math.min(i-l.bottom,i-l.height)):n.bottom&&("bottom"===n.bottom?(f=Math.max(0,l.bottom-s.height),p=Math.max(l.bottom,0)):(f=Math.max(0,l.top-s.height),p=Math.max(l.top,0))),s.height>p&&(n.top&&f>i/2?"bottom"===n.top?(f=Math.max(l.top-s.height,0),p=l.top):(f=Math.max(l.bottom-s.height,0),p=l.bottom):n.bottom&&i/2>p&&("bottom"===n.bottom?(f=l.top,p=Math.min(i-f,i)):(f=l.bottom,p=Math.min(i-f,i-l.height)))),r.style.left=a+"px",r.style.width=c+"px",r.style.top=f-u.top+"px",r.style.maxHeight=p+"px"}},e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={pick:function(e,t){var r=function(t){return e.hasOwnProperty(t)},n={};return(t||[]).forEach(function(t){r(t)&&(n[t]=e[t])}),n}},e.exports=t["default"]},function(e,t){"use strict";function r(){var e="16px";return window.getComputedStyle&&(e=window.getComputedStyle(document.documentElement).fontSize),n*parseFloat(e)}Object.defineProperty(t,"__esModule",{value:!0});var n=44.9375;t["default"]={start:function(e){var t={func:e,timer:null,small:null,smallSize:r()};return t.onResize=this._onResize.bind(this,t),t.layout=this._check.bind(this,t),t.stop=this._stop.bind(this,t),window.addEventListener("resize",t.onResize),t.layout(),t},_stop:function(e){clearTimeout(e.timer),window.removeEventListener("resize",e.onResize)},_onResize:function(e){e.layout()},_check:function(e){window.innerWidth<=e.smallSize?e.small||(e.small=!0,e.func(!0)):!1!==e.small&&(e.small=!1,e.func(!1))}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;rn;n++)if(2===r[n].length)r[n]=r[n].toUpperCase();else if(4===r[n].length)r[n]=r[n].charAt(0).toUpperCase()+r[n].slice(1);else if(1===r[n].length&&"x"!==r[n])break;e=ne.call(r,"-"),(t=e.match(K.expExtSequences))&&t.length>1&&(t.sort(),e=e.replace(RegExp("(?:"+K.expExtSequences.source+")+","i"),ne.call(t,""))),X.call(fe.tags,e)&&(e=fe.tags[e]),r=e.split("-");for(var n=1,o=r.length;o>n;n++)X.call(fe.subtags,r[n])?r[n]=fe.subtags[r[n]]:X.call(fe.extLang,r[n])&&(r[n]=fe.extLang[r[n]][0],1===n&&fe.extLang[r[1]][1]===r[0]&&(r=ee.call(r,n++),o-=1));return ne.call(r,"-")}function i(){return V}function a(e){var t=String(e),r=A(t);return ce.test(r)===!1?!1:!0}function s(e){if(void 0===e)return new R;for(var t=new R,e="string"==typeof e?[e]:e,r=F(e),i=r.length,a=0;i>a;){var s=String(a),l=s in r;if(l){var u=r[s];if(null==u||"string"!=typeof u&&"object"!=typeof u)throw new TypeError("String or Object type expected");var p=String(u);if(!n(p))throw new RangeError("'"+p+"' is not a structurally valid language tag");p=o(p),-1===$.call(t,p)&&re.call(t,p)}a++}return t}function l(e,t){for(var r=t;;){if($.call(e,r)>-1)return r;var n=r.lastIndexOf("-");if(0>n)return;n>=2&&"-"===r.charAt(n-2)&&(n-=2),r=r.substring(0,n)}}function u(e,t){for(var r,n=0,o=t.length;o>n&&!r;){var a=t[n],s=String(a).replace(de,""),r=l(e,s);n++}var u=new H;if(void 0!==r){if(u["[[locale]]"]=r,String(a)!==String(s)){var p=a.match(de)[0],c=a.indexOf("-u-");u["[[extension]]"]=p,u["[[extensionIndex]]"]=c}}else u["[[locale]]"]=i();return u}function p(e,t){return u(e,t)}function c(e,t,r,n,o){if(0===e.length)throw new ReferenceError("No locale data has been provided for this object yet.");var i=r["[[localeMatcher]]"];if("lookup"===i)var a=u(e,t);else var a=p(e,t);var s=a["[[locale]]"];if(X.call(a,"[[extension]]"))var l=a["[[extension]]"],c=a["[[extensionIndex]]"],d=String.prototype.split,f=d.call(l,"-"),h=f.length;var y=new H;y["[[dataLocale]]"]=s;for(var m="-u",_=0,b=n.length;b>_;){var g=n[_],v=o[s],T=v[g],w=T[0],M="",x=$;if(void 0!==f){var P=x.call(f,g);if(-1!==P)if(h>P+1&&f[P+1].length>2){var E=f[P+1],k=x.call(T,E);if(-1!==k)var w=E,M="-"+g+"-"+w}else{var k=x(T,"true");if(-1!==k)var w="true"}}if(X.call(r,"[["+g+"]]")){var O=r["[["+g+"]]"];-1!==x.call(T,O)&&O!==w&&(w=O,M="")}y["[["+g+"]]"]=w,m+=M,_++}if(m.length>2)var j=s.substring(0,c),I=s.substring(c),s=j+m+I;return y["[[locale]]"]=s,y}function d(e,t){for(var r=t.length,n=new R,o=0;r>o;){var i=t[o],a=String(i).replace(de,""),s=l(e,a);void 0!==s&&re.call(n,i),o++}var u=ee.call(n);return u}function f(e,t){return d(e,t)}function h(e,t,r){if(void 0!==r){var r=new H(F(r)),n=r.localeMatcher;if(void 0!==n&&(n=String(n),"lookup"!==n&&"best fit"!==n))throw new RangeError('matcher should be "lookup" or "best fit"')}if(void 0===n||"best fit"===n)var o=f(e,t);else var o=d(e,t);for(var i in o)X.call(o,i)&&Q(o,i,{writable:!1,configurable:!1,value:o[i]});return Q(o,"length",{writable:!1}),o}function y(e,t,r,n,o){var i=e[t];if(void 0!==i){if(i="boolean"===r?Boolean(i):"string"===r?String(i):i,void 0!==n&&-1===$.call(n,i))throw new RangeError("'"+i+"' is not an allowed value for `"+t+"`");return i}return o}function m(e,t,r,n,o){var i=e[t];if(void 0!==i){if(i=Number(i),isNaN(i)||r>i||i>n)throw new RangeError("Value is not a number or outside accepted range");return Math.floor(i)}return o}function _(){var e=arguments[0],t=arguments[1];return this&&this!==G?b(F(this),e,t):new G.NumberFormat(e,t)}function b(e,t,r){var n=B(e),o=W();if(n["[[initializedIntlObject]]"]===!0)throw new TypeError("`this` object has already been initialized as an Intl object");Q(e,"__getInternalProperties",{value:function(){return arguments[0]===se?n:void 0}}),n["[[initializedIntlObject]]"]=!0;var i=s(t);r=void 0===r?{}:F(r);var l=new H,u=y(r,"localeMatcher","string",new R("lookup","best fit"),"best fit");l["[[localeMatcher]]"]=u;var p=ae.NumberFormat["[[localeData]]"],d=c(ae.NumberFormat["[[availableLocales]]"],i,l,ae.NumberFormat["[[relevantExtensionKeys]]"],p);n["[[locale]]"]=d["[[locale]]"],n["[[numberingSystem]]"]=d["[[nu]]"],n["[[dataLocale]]"]=d["[[dataLocale]]"];var f=d["[[dataLocale]]"],h=y(r,"style","string",new R("decimal","percent","currency"),"decimal");n["[[style]]"]=h;var _=y(r,"currency","string");if(void 0!==_&&!a(_))throw new RangeError("'"+_+"' is not a valid currency code");if("currency"===h&&void 0===_)throw new TypeError("Currency code is required when style is currency");if("currency"===h){_=_.toUpperCase(),n["[[currency]]"]=_;var b=g(_)}var T=y(r,"currencyDisplay","string",new R("code","symbol","name"),"symbol");"currency"===h&&(n["[[currencyDisplay]]"]=T);var w=m(r,"minimumIntegerDigits",1,21,1);n["[[minimumIntegerDigits]]"]=w;var M="currency"===h?b:0,x=m(r,"minimumFractionDigits",0,20,M);n["[[minimumFractionDigits]]"]=x;var P="currency"===h?Math.max(x,b):"percent"===h?Math.max(x,0):Math.max(x,3),E=m(r,"maximumFractionDigits",x,20,P);n["[[maximumFractionDigits]]"]=E;var k=r.minimumSignificantDigits,O=r.maximumSignificantDigits;(void 0!==k||void 0!==O)&&(k=m(r,"minimumSignificantDigits",1,21,1),O=m(r,"maximumSignificantDigits",k,21,21),n["[[minimumSignificantDigits]]"]=k,n["[[maximumSignificantDigits]]"]=O);var j=y(r,"useGrouping","boolean",void 0,!0);n["[[useGrouping]]"]=j;var I=p[f],L=I.patterns,S=L[h];return n["[[positivePattern]]"]=S.positivePattern,n["[[negativePattern]]"]=S.negativePattern,n["[[boundFormat]]"]=void 0,n["[[initializedNumberFormat]]"]=!0,U&&(e.format=v.call(e)),o.exp.test(o.input),e}function g(e){return void 0!==he[e]?he[e]:2}function v(){var e=null!=this&&"object"==typeof this&&B(this);if(!e||!e["[[initializedNumberFormat]]"])throw new TypeError("`this` value for format() is not an initialized Intl.NumberFormat object.");if(void 0===e["[[boundFormat]]"]){var t=function(e){return T(this,Number(e))},r=ie.call(t,this);e["[[boundFormat]]"]=r}return e["[[boundFormat]]"]}function T(e,t){var r,n=W(),o=B(e),i=o["[[dataLocale]]"],a=o["[[numberingSystem]]"],s=ae.NumberFormat["[[localeData]]"][i],l=s.symbols[a]||s.symbols.latn,u=!1;if(isFinite(t)===!1)isNaN(t)?r=l.nan:(r=l.infinity,0>t&&(u=!0));else{if(0>t&&(u=!0,t=-t),"percent"===o["[[style]]"]&&(t*=100),r=X.call(o,"[[minimumSignificantDigits]]")&&X.call(o,"[[maximumSignificantDigits]]")?w(t,o["[[minimumSignificantDigits]]"],o["[[maximumSignificantDigits]]"]):M(t,o["[[minimumIntegerDigits]]"],o["[[minimumFractionDigits]]"],o["[[maximumFractionDigits]]"]),ye[a]){var p=ye[o["[[numberingSystem]]"]];r=String(r).replace(/\d/g,function(e){return p[e]})}else r=String(r);if(r=r.replace(/\./g,l.decimal),o["[[useGrouping]]"]===!0){var c=r.split(l.decimal),d=c[0],f=s.patterns.primaryGroupSize||3,h=s.patterns.secondaryGroupSize||f;if(d.length>f){var y=new R,m=d.length-f,_=m%h,b=d.slice(0,_);for(b.length&&re.call(y,b);m>_;)re.call(y,d.slice(_,_+h)),_+=h;re.call(y,d.slice(m)),c[0]=ne.call(y,l.group)}r=ne.call(c,l.decimal)}}var g=o[u===!0?"[[negativePattern]]":"[[positivePattern]]"];if(g=g.replace("{number}",r),"currency"===o["[[style]]"]){var v,T=o["[[currency]]"],x=s.currencies[T];switch(o["[[currencyDisplay]]"]){case"symbol":v=x||T;break;default:case"code":case"name":v=T}g=g.replace("{currency}",v)}return n.exp.test(n.input),g}function w(e,t,r){var n=r;if(0===e)var o=ne.call(Array(n+1),"0"),i=0;else var i=D(Math.abs(e)),a=Math.round(Math.exp(Math.abs(i-n+1)*Math.LN10)),o=String(Math.round(0>i-n+1?e*a:e/a));if(i>=n)return o+ne.call(Array(i-n+1+1),"0");if(i===n-1)return o;if(i>=0?o=o.slice(0,i+1)+"."+o.slice(i+1):0>i&&(o="0."+ne.call(Array(-(i+1)+1),"0")+o),o.indexOf(".")>=0&&r>t){for(var s=r-t;s>0&&"0"===o.charAt(o.length-1);)o=o.slice(0,-1),s--;"."===o.charAt(o.length-1)&&(o=o.slice(0,-1))}return o}function M(e,t,r,n){var o,i=Number.prototype.toFixed.call(e,n),a=i.split(".")[0].length,s=n-r,l=(o=i.indexOf("e"))>-1?i.slice(o+1):0;for(l&&(i=i.slice(0,o).replace(".",""),i+=ne.call(Array(l-(i.length-1)+1),"0")+"."+ne.call(Array(n+1),"0"),a=i.length);s>0&&"0"===i.slice(-1);)i=i.slice(0,-1),s--;if("."===i.slice(-1)&&(i=i.slice(0,-1)),t>a)var u=ne.call(Array(t-a+1),"0");return(u?u:"")+i}function x(){var e=arguments[0],t=arguments[1];return this&&this!==G?P(F(this),e,t):new G.DateTimeFormat(e,t)}function P(e,t,r){var n=B(e),o=W();if(n["[[initializedIntlObject]]"]===!0)throw new TypeError("`this` object has already been initialized as an Intl object");Q(e,"__getInternalProperties",{value:function(){return arguments[0]===se?n:void 0}}),n["[[initializedIntlObject]]"]=!0;var i=s(t),r=k(r,"any","date"),a=new H;v=y(r,"localeMatcher","string",new R("lookup","best fit"),"best fit"),a["[[localeMatcher]]"]=v;var l=ae.DateTimeFormat,u=l["[[localeData]]"],p=c(l["[[availableLocales]]"],i,a,l["[[relevantExtensionKeys]]"],u);n["[[locale]]"]=p["[[locale]]"],n["[[calendar]]"]=p["[[ca]]"],n["[[numberingSystem]]"]=p["[[nu]]"],n["[[dataLocale]]"]=p["[[dataLocale]]"];var d=p["[[dataLocale]]"],f=r.timeZone;if(void 0!==f&&(f=A(f),"UTC"!==f))throw new RangeError("timeZone is not supported.");n["[[timeZone]]"]=f,a=new H;for(var h in me)if(X.call(me,h)){var m=y(r,h,"string",me[h]);a["[["+h+"]]"]=m}var _,b=u[d],g=E(b.formats),v=y(r,"formatMatcher","string",new R("basic","best fit"),"best fit");b.formats=g,_="basic"===v?O(a,g):I(a,g);for(var h in me)if(X.call(me,h)&&X.call(_,h)){var T=_[h];n["[["+h+"]]"]=T}var w,M=y(r,"hour12","boolean");if(n["[[hour]]"])if(M=void 0===M?b.hour12:M,n["[[hour12]]"]=M,M===!0){var x=b.hourNo0;n["[[hourNo0]]"]=x,w=_.pattern12}else w=_.pattern;else w=_.pattern;return n["[[pattern]]"]=w,n["[[boundFormat]]"]=void 0,n["[[initializedDateTimeFormat]]"]=!0,U&&(e.format=L.call(e)),o.exp.test(o.input),e}function E(e){return"[object Array]"===Object.prototype.toString.call(e)?e:J.createDateTimeFormats(e)}function k(e,t,r){if(void 0===e)e=null;else{var n=F(e);e=new H;for(var o in n)e[o]=n[o]}var i=Z,e=i(e),a=!0;return("date"===t||"any"===t)&&(void 0!==e.weekday||void 0!==e.year||void 0!==e.month||void 0!==e.day)&&(a=!1),("time"===t||"any"===t)&&(void 0!==e.hour||void 0!==e.minute||void 0!==e.second)&&(a=!1),!a||"date"!==r&&"all"!==r||(e.year=e.month=e.day="numeric"),!a||"time"!==r&&"all"!==r||(e.hour=e.minute=e.second="numeric"),e}function O(e,t){return j(e,t)}function j(e,t,r){for(var n,o=8,i=120,a=20,s=8,l=6,u=6,p=3,c=-(1/0),d=0,f=t.length;f>d;){var h=t[d],y=0;for(var m in me)if(X.call(me,m)){var _=e["[["+m+"]]"],b=X.call(h,m)?h[m]:void 0;if(void 0===_&&void 0!==b)y-=a;else if(void 0!==_&&void 0===b)y-=i;else{var g=["2-digit","numeric","narrow","short","long"],v=$.call(g,_),T=$.call(g,b),w=Math.max(Math.min(T-v,2),-2);!r||("numeric"!==_&&"2-digit"!==_||"numeric"===b||"2-digit"===b)&&("numeric"===_||"2-digit"===_||"2-digit"!==b&&"numeric"!==b)||(y-=o),2===w?y-=l:1===w?y-=p:-1===w?y-=u:-2===w&&(y-=s)}}y>c&&(c=y,n=h),d++}return n}function I(e,t){return j(e,t,!0)}function L(){var e=null!=this&&"object"==typeof this&&B(this);if(!e||!e["[[initializedDateTimeFormat]]"])throw new TypeError("`this` value for format() is not an initialized Intl.DateTimeFormat object.");if(void 0===e["[[boundFormat]]"]){var t=function(){var e=Number(0===arguments.length?Date.now():arguments[0]);return S(this,e)},r=ie.call(t,this);e["[[boundFormat]]"]=r}return e["[[boundFormat]]"]}function S(e,t){if(!isFinite(t))throw new RangeError("Invalid valid date passed to format");var r=e.__getInternalProperties(se),n=W(),o=r["[[locale]]"],i=new G.NumberFormat([o],{useGrouping:!1}),a=new G.NumberFormat([o],{minimumIntegerDigits:2,useGrouping:!1}),s=C(t,r["[[calendar]]"],r["[[timeZone]]"]),l=r["[[pattern]]"],u=r["[[dataLocale]]"],p=ae.DateTimeFormat["[[localeData]]"][u].calendars,c=r["[[calendar]]"];for(var d in me)if(X.call(r,"[["+d+"]]")){var f,h,y=r["[["+d+"]]"],m=s["[["+d+"]]"];if("year"===d&&0>=m?m=1-m:"month"===d?m++:"hour"===d&&r["[[hour12]]"]===!0&&(m%=12,f=m!==s["[["+d+"]]"],0===m&&r["[[hourNo0]]"]===!0&&(m=12)),"numeric"===y)h=T(i,m);else if("2-digit"===y)h=T(a,m),h.length>2&&(h=h.slice(-2));else if(y in le)switch(d){case"month":h=N(p,c,"months",y,s["[["+d+"]]"]);break;case"weekday":try{h=N(p,c,"days",y,s["[["+d+"]]"])}catch(_){throw new Error("Could not find weekday data for locale "+o)}break;case"timeZoneName":h="";break;default:h=s["[["+d+"]]"]}l=l.replace("{"+d+"}",h)}return r["[[hour12]]"]===!0&&(h=N(p,c,"dayPeriods",f?"pm":"am"),l=l.replace("{ampm}",h)),n.exp.test(n.input),l}function C(e,t,r){var n=new Date(e),o="get"+(r||"");return new H({"[[weekday]]":n[o+"Day"](),"[[era]]":+(n[o+"FullYear"]()>=0),"[[year]]":n[o+"FullYear"](),"[[month]]":n[o+"Month"](),"[[day]]":n[o+"Date"](),"[[hour]]":n[o+"Hours"](),"[[minute]]":n[o+"Minutes"](),"[[second]]":n[o+"Seconds"](),"[[inDST]]":!1})}function Y(e,t){if(!e.number)throw new Error("Object passed doesn't contain locale data for Intl.NumberFormat");var r,n=[t],o=t.split("-");for(o.length>2&&4===o[1].length&&re.call(n,o[0]+"-"+o[2]);r=oe.call(n);)re.call(ae.NumberFormat["[[availableLocales]]"],r),ae.NumberFormat["[[localeData]]"][r]=e.number,e.date&&(e.date.nu=e.number.nu,re.call(ae.DateTimeFormat["[[availableLocales]]"],r),ae.DateTimeFormat["[[localeData]]"][r]=e.date);void 0===V&&(V=t),ue||(b(G.NumberFormat.prototype),ue=!0),e.date&&!pe&&(P(G.DateTimeFormat.prototype),pe=!0)}function D(e){if("function"==typeof Math.log10)return Math.floor(Math.log10(e));var t=Math.round(Math.log(e)*Math.LOG10E);return t-(Number("1e"+t)>e)}function z(e){if(!X.call(this,"[[availableLocales]]"))throw new TypeError("supportedLocalesOf() is not a constructor");var t=W(),r=arguments[1],n=this["[[availableLocales]]"],o=s(e);return t.exp.test(t.input),h(n,o,r)}function N(e,t,r,n,o){var i=e[t]&&e[t][r]?e[t][r]:e.gregory[r],a={narrow:["short","long"],"short":["long","narrow"],"long":["short","narrow"]},s=X.call(i,n)?i[n]:X.call(i,a[n][0])?i[a[n][0]]:i[a[n][1]];return null!=o?s[o]:s}function H(e){for(var t in e)(e instanceof H||X.call(e,t))&&Q(this,t,{value:e[t],enumerable:!0,writable:!0,configurable:!0})}function R(){Q(this,"length",{writable:!0,value:0}),arguments.length&&re.apply(this,ee.call(arguments))}function W(){for(var e=/[.?*+^$[\]\\(){}|-]/g,t=RegExp.lastMatch||"",r=RegExp.multiline?"m":"",n={input:RegExp.input},o=new R,i=!1,a={},s=1;9>=s;s++)i=(a["$"+s]=RegExp["$"+s])||i;if(t=t.replace(e,"\\$&"),i)for(var s=1;9>=s;s++){var l=a["$"+s];l?(l=l.replace(e,"\\$&"),t=t.replace(l,"("+l+")")):t="()"+t,re.call(o,t.slice(0,t.indexOf("(")+1)),t=t.slice(t.indexOf("(")+1)}return n.exp=new RegExp(ne.call(o,"")+t,r),n}function A(e){for(var t=e.length;t--;){var r=e.charAt(t);r>="a"&&"z">=r&&(e=e.slice(0,t)+r.toUpperCase()+e.slice(t+1))}return e}function F(e){if(null==e)throw new TypeError("Cannot convert null or undefined to object");return Object(e)}function B(e){return X.call(e,"__getInternalProperties")?e.__getInternalProperties(se):Z(null)}var V,K=r(94),J=r(95),G={},q=function(){var e={};try{return Object.defineProperty(e,"a",{}),"a"in e}catch(t){return!1}}(),U=!q&&!Object.prototype.__defineGetter__,X=Object.prototype.hasOwnProperty,Q=q?Object.defineProperty:function(e,t,r){"get"in r&&e.__defineGetter__?e.__defineGetter__(t,r.get):(!X.call(e,t)||"value"in r)&&(e[t]=r.value)},$=Array.prototype.indexOf||function(e){var t=this;if(!t.length)return-1;for(var r=arguments[1]||0,n=t.length;n>r;r++)if(t[r]===e)return r;return-1},Z=Object.create||function(e,t){function r(){}var n;r.prototype=e,n=new r;for(var o in t)X.call(t,o)&&Q(n,o,t[o]);return n},ee=Array.prototype.slice,te=Array.prototype.concat,re=Array.prototype.push,ne=Array.prototype.join,oe=Array.prototype.shift,ie=(Array.prototype.unshift,Function.prototype.bind||function(e){var t=this,r=ee.call(arguments,1);return 1===t.length?function(n){return t.apply(e,te.call(r,ee.call(arguments)))}:function(){return t.apply(e,te.call(r,ee.call(arguments)))}}),ae=Z(null),se=Math.random(),le=Z(null,{narrow:{},"short":{},"long":{}}),ue=!1,pe=!1,ce=/^[A-Z]{3}$/,de=/-u(?:-[0-9a-z]{2,8})+/gi,fe={tags:{"art-lojban":"jbo","i-ami":"ami","i-bnn":"bnn","i-hak":"hak","i-klingon":"tlh","i-lux":"lb","i-navajo":"nv","i-pwn":"pwn","i-tao":"tao","i-tay":"tay","i-tsu":"tsu","no-bok":"nb","no-nyn":"nn","sgn-BE-FR":"sfb","sgn-BE-NL":"vgt","sgn-CH-DE":"sgg","zh-guoyu":"cmn","zh-hakka":"hak","zh-min-nan":"nan","zh-xiang":"hsn","sgn-BR":"bzs","sgn-CO":"csn","sgn-DE":"gsg","sgn-DK":"dsl","sgn-ES":"ssp","sgn-FR":"fsl","sgn-GB":"bfi","sgn-GR":"gss","sgn-IE":"isg","sgn-IT":"ise","sgn-JP":"jsl","sgn-MX":"mfs","sgn-NI":"ncs","sgn-NL":"dse","sgn-NO":"nsl","sgn-PT":"psr","sgn-SE":"swl","sgn-US":"ase","sgn-ZA":"sfs","zh-cmn":"cmn","zh-cmn-Hans":"cmn-Hans","zh-cmn-Hant":"cmn-Hant","zh-gan":"gan","zh-wuu":"wuu","zh-yue":"yue"},subtags:{BU:"MM",DD:"DE",FX:"FR",TP:"TL",YD:"YE",ZR:"CD",heploc:"alalc97","in":"id",iw:"he",ji:"yi",jw:"jv",mo:"ro",ayx:"nun",bjd:"drl",ccq:"rki",cjr:"mom",cka:"cmr",cmk:"xch",drh:"khk",drw:"prs",gav:"dev",hrr:"jal",ibi:"opa",kgh:"kml",lcq:"ppr",mst:"mry",myt:"mry",sca:"hle",tie:"ras",tkk:"twm",tlw:"weo",tnf:"prs",ybd:"rki",yma:"lrr"},extLang:{aao:["aao","ar"],abh:["abh","ar"],abv:["abv","ar"],acm:["acm","ar"],acq:["acq","ar"],acw:["acw","ar"],acx:["acx","ar"],acy:["acy","ar"],adf:["adf","ar"],ads:["ads","sgn"],aeb:["aeb","ar"],aec:["aec","ar"],aed:["aed","sgn"],aen:["aen","sgn"],afb:["afb","ar"],afg:["afg","sgn"],ajp:["ajp","ar"],apc:["apc","ar"],apd:["apd","ar"],arb:["arb","ar"],arq:["arq","ar"],ars:["ars","ar"],ary:["ary","ar"],arz:["arz","ar"],ase:["ase","sgn"],asf:["asf","sgn"],asp:["asp","sgn"],asq:["asq","sgn"],asw:["asw","sgn"],auz:["auz","ar"],avl:["avl","ar"],ayh:["ayh","ar"],ayl:["ayl","ar"],ayn:["ayn","ar"],ayp:["ayp","ar"],bbz:["bbz","ar"],bfi:["bfi","sgn"],bfk:["bfk","sgn"],bjn:["bjn","ms"],bog:["bog","sgn"],bqn:["bqn","sgn"],bqy:["bqy","sgn"],btj:["btj","ms"],bve:["bve","ms"],bvl:["bvl","sgn"],bvu:["bvu","ms"],bzs:["bzs","sgn"],cdo:["cdo","zh"],cds:["cds","sgn"],cjy:["cjy","zh"],cmn:["cmn","zh"],coa:["coa","ms"],cpx:["cpx","zh"],csc:["csc","sgn"],csd:["csd","sgn"],cse:["cse","sgn"],csf:["csf","sgn"],csg:["csg","sgn"],csl:["csl","sgn"],csn:["csn","sgn"],csq:["csq","sgn"],csr:["csr","sgn"],czh:["czh","zh"],czo:["czo","zh"],doq:["doq","sgn"],dse:["dse","sgn"],dsl:["dsl","sgn"],dup:["dup","ms"],ecs:["ecs","sgn"],esl:["esl","sgn"],esn:["esn","sgn"],eso:["eso","sgn"],eth:["eth","sgn"],fcs:["fcs","sgn"],fse:["fse","sgn"],fsl:["fsl","sgn"],fss:["fss","sgn"],gan:["gan","zh"],gds:["gds","sgn"],gom:["gom","kok"],gse:["gse","sgn"],gsg:["gsg","sgn"],gsm:["gsm","sgn"],gss:["gss","sgn"],gus:["gus","sgn"],hab:["hab","sgn"],haf:["haf","sgn"],hak:["hak","zh"],hds:["hds","sgn"],hji:["hji","ms"],hks:["hks","sgn"],hos:["hos","sgn"],hps:["hps","sgn"],hsh:["hsh","sgn"],hsl:["hsl","sgn"],hsn:["hsn","zh"],icl:["icl","sgn"],ils:["ils","sgn"],inl:["inl","sgn"],ins:["ins","sgn"],ise:["ise","sgn"],isg:["isg","sgn"],isr:["isr","sgn"],jak:["jak","ms"],jax:["jax","ms"],jcs:["jcs","sgn"],jhs:["jhs","sgn"],jls:["jls","sgn"],jos:["jos","sgn"],jsl:["jsl","sgn"],jus:["jus","sgn"],kgi:["kgi","sgn"],knn:["knn","kok"],kvb:["kvb","ms"],kvk:["kvk","sgn"],kvr:["kvr","ms"],kxd:["kxd","ms"],lbs:["lbs","sgn"],lce:["lce","ms"],lcf:["lcf","ms"],liw:["liw","ms"],lls:["lls","sgn"],lsg:["lsg","sgn"],lsl:["lsl","sgn"],lso:["lso","sgn"],lsp:["lsp","sgn"],lst:["lst","sgn"],lsy:["lsy","sgn"],ltg:["ltg","lv"],lvs:["lvs","lv"],lzh:["lzh","zh"],max:["max","ms"],mdl:["mdl","sgn"],meo:["meo","ms"],mfa:["mfa","ms"],mfb:["mfb","ms"],mfs:["mfs","sgn"],min:["min","ms"],mnp:["mnp","zh"],mqg:["mqg","ms"],mre:["mre","sgn"],msd:["msd","sgn"],msi:["msi","ms"],msr:["msr","sgn"],mui:["mui","ms"],mzc:["mzc","sgn"],mzg:["mzg","sgn"],mzy:["mzy","sgn"],nan:["nan","zh"],nbs:["nbs","sgn"],ncs:["ncs","sgn"],nsi:["nsi","sgn"],nsl:["nsl","sgn"],nsp:["nsp","sgn"],nsr:["nsr","sgn"],nzs:["nzs","sgn"],okl:["okl","sgn"],orn:["orn","ms"],ors:["ors","ms"],pel:["pel","ms"],pga:["pga","ar"],pks:["pks","sgn"],prl:["prl","sgn"],prz:["prz","sgn"],psc:["psc","sgn"],psd:["psd","sgn"],pse:["pse","ms"],psg:["psg","sgn"],psl:["psl","sgn"],pso:["pso","sgn"],psp:["psp","sgn"],psr:["psr","sgn"],pys:["pys","sgn"],rms:["rms","sgn"],rsi:["rsi","sgn"],rsl:["rsl","sgn"],sdl:["sdl","sgn"],sfb:["sfb","sgn"],sfs:["sfs","sgn"],sgg:["sgg","sgn"],sgx:["sgx","sgn"],shu:["shu","ar"],slf:["slf","sgn"],sls:["sls","sgn"],sqk:["sqk","sgn"],sqs:["sqs","sgn"],ssh:["ssh","ar"],ssp:["ssp","sgn"],ssr:["ssr","sgn"],svk:["svk","sgn"],swc:["swc","sw"],swh:["swh","sw"],swl:["swl","sgn"],syy:["syy","sgn"],tmw:["tmw","ms"],tse:["tse","sgn"],tsm:["tsm","sgn"],tsq:["tsq","sgn"],tss:["tss","sgn"],tsy:["tsy","sgn"],tza:["tza","sgn"],ugn:["ugn","sgn"],ugy:["ugy","sgn"],ukl:["ukl","sgn"],uks:["uks","sgn"],urk:["urk","ms"],uzn:["uzn","uz"],uzs:["uzs","uz"],vgt:["vgt","sgn"],vkk:["vkk","ms"],vkt:["vkt","ms"],vsi:["vsi","sgn"],vsl:["vsl","sgn"],vsv:["vsv","sgn"],wuu:["wuu","zh"],xki:["xki","sgn"],xml:["xml","sgn"],xmm:["xmm","ms"],xms:["xms","sgn"],yds:["yds","sgn"],ysl:["ysl","sgn"],yue:["yue","zh"],zib:["zib","sgn"],zlm:["zlm","ms"],zmi:["zmi","ms"],zsl:["zsl","sgn"],zsm:["zsm","ms"]}},he={BHD:3,BYR:0,XOF:0,BIF:0,XAF:0,CLF:4,CLP:0,KMF:0,DJF:0,XPF:0,GNF:0,ISK:0,IQD:3,JPY:0,JOD:3,KRW:0,KWD:3,LYD:3,OMR:3,PYG:0,RWF:0,TND:3,UGX:0,UYI:0,VUV:0,VND:0};Q(G,"NumberFormat",{configurable:!0,writable:!0,value:_}),Q(G.NumberFormat,"prototype",{writable:!1}),ae.NumberFormat={"[[availableLocales]]":[],"[[relevantExtensionKeys]]":["nu"],"[[localeData]]":{}},Q(G.NumberFormat,"supportedLocalesOf",{configurable:!0,writable:!0,value:ie.call(z,ae.NumberFormat)}),Q(G.NumberFormat.prototype,"format",{configurable:!0,get:v});var ye={arab:["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],arabext:["۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"],bali:["᭐","᭑","᭒","᭓","᭔","᭕","᭖","᭗","᭘","᭙"],beng:["০","১","২","৩","৪","৫","৬","৭","৮","৯"],deva:["०","१","२","३","४","५","६","७","८","९"],fullwide:["0","1","2","3","4","5","6","7","8","9"],gujr:["૦","૧","૨","૩","૪","૫","૬","૭","૮","૯"],guru:["੦","੧","੨","੩","੪","੫","੬","੭","੮","੯"],hanidec:["〇","一","二","三","四","五","六","七","八","九"],khmr:["០","១","២","៣","៤","៥","៦","៧","៨","៩"],knda:["೦","೧","೨","೩","೪","೫","೬","೭","೮","೯"],laoo:["໐","໑","໒","໓","໔","໕","໖","໗","໘","໙"],latn:["0","1","2","3","4","5","6","7","8","9"],limb:["᥆","᥇","᥈","᥉","᥊","᥋","᥌","᥍","᥎","᥏"],mlym:["൦","൧","൨","൩","൪","൫","൬","൭","൮","൯"],mong:["᠐","᠑","᠒","᠓","᠔","᠕","᠖","᠗","᠘","᠙"],mymr:["၀","၁","၂","၃","၄","၅","၆","၇","၈","၉"],orya:["୦","୧","୨","୩","୪","୫","୬","୭","୮","୯"],tamldec:["௦","௧","௨","௩","௪","௫","௬","௭","௮","௯"],telu:["౦","౧","౨","౩","౪","౫","౬","౭","౮","౯"],thai:["๐","๑","๒","๓","๔","๕","๖","๗","๘","๙"],tibt:["༠","༡","༢","༣","༤","༥","༦","༧","༨","༩"]};Q(G.NumberFormat.prototype,"resolvedOptions",{configurable:!0,writable:!0,value:function(){var e,t=new H,r=["locale","numberingSystem","style","currency","currencyDisplay","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","useGrouping"],n=null!=this&&"object"==typeof this&&B(this);if(!n||!n["[[initializedNumberFormat]]"])throw new TypeError("`this` value for resolvedOptions() is not an initialized Intl.NumberFormat object.");for(var o=0,i=r.length;i>o;o++)X.call(n,e="[["+r[o]+"]]")&&(t[r[o]]={value:n[e],writable:!0,configurable:!0,enumerable:!0});return Z({},t)}}),Q(G,"DateTimeFormat",{configurable:!0,writable:!0,value:x}),Q(x,"prototype",{writable:!1});var me={weekday:["narrow","short","long"],era:["narrow","short","long"],year:["2-digit","numeric"],month:["2-digit","numeric","narrow","short","long"],day:["2-digit","numeric"],hour:["2-digit","numeric"],minute:["2-digit","numeric"],second:["2-digit","numeric"],timeZoneName:["short","long"]};ae.DateTimeFormat={"[[availableLocales]]":[],"[[relevantExtensionKeys]]":["ca","nu"],"[[localeData]]":{}},Q(G.DateTimeFormat,"supportedLocalesOf",{configurable:!0,writable:!0,value:ie.call(z,ae.DateTimeFormat)}),Q(G.DateTimeFormat.prototype,"format",{configurable:!0,get:L}),Q(G.DateTimeFormat.prototype,"resolvedOptions",{writable:!0,configurable:!0,value:function(){var e,t=new H,r=["locale","calendar","numberingSystem","timeZone","hour12","weekday","era","year","month","day","hour","minute","second","timeZoneName"],n=null!=this&&"object"==typeof this&&B(this);if(!n||!n["[[initializedDateTimeFormat]]"])throw new TypeError("`this` value for resolvedOptions() is not an initialized Intl.DateTimeFormat object.");for(var o=0,i=r.length;i>o;o++)X.call(n,e="[["+r[o]+"]]")&&(t[r[o]]={value:n[e],writable:!0,configurable:!0,enumerable:!0});return Z({},t)}});var _e=G.__localeSensitiveProtos={Number:{},Date:{}};_e.Number.toLocaleString=function(){if("[object Number]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a number for Number.prototype.toLocaleString()");return T(new _(arguments[0],arguments[1]),this)},_e.Date.toLocaleString=function(){if("[object Date]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a Date instance for Date.prototype.toLocaleString()");var e=+this;if(isNaN(e))return"Invalid Date";var t=arguments[0],r=arguments[1],r=k(r,"any","all"),n=new x(t,r);return S(n,e)},_e.Date.toLocaleDateString=function(){if("[object Date]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a Date instance for Date.prototype.toLocaleDateString()");var e=+this;if(isNaN(e))return"Invalid Date";var t=arguments[0],r=arguments[1],r=k(r,"date","date"),n=new x(t,r);return S(n,e)},_e.Date.toLocaleTimeString=function(){if("[object Date]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a Date instance for Date.prototype.toLocaleTimeString()");var e=+this;if(isNaN(e))return"Invalid Date";var t=arguments[0],r=arguments[1],r=k(r,"time","time"),n=new x(t,r);return S(n,e)},Q(G,"__applyLocaleSensitivePrototypes",{writable:!0,configurable:!0,value:function(){Q(Number.prototype,"toLocaleString",{writable:!0,configurable:!0,value:_e.Number.toLocaleString}),Q(Date.prototype,"toLocaleString",{writable:!0,configurable:!0,value:_e.Date.toLocaleString});for(var e in _e.Date)X.call(_e.Date,e)&&Q(Date.prototype,e,{writable:!0,configurable:!0,value:_e.Date[e]})}}),Q(G,"__addLocaleData",{value:function(e){if(!n(e.locale))throw new Error("Object passed doesn't identify itself with a valid language tag");Y(e,e.locale)}}),H.prototype=Z(null),R.prototype=Z(null),t["default"]=G},function(e,t){"use strict";var r="[a-z]{3}(?:-[a-z]{3}){0,2}",n="(?:[a-z]{2,3}(?:-"+r+")?|[a-z]{4}|[a-z]{5,8})",o="[a-z]{4}",i="(?:[a-z]{2}|\\d{3})",a="(?:[a-z0-9]{5,8}|\\d[a-z0-9]{3})",s="[0-9a-wy-z]",l=s+"(?:-[a-z0-9]{2,8})+",u="x(?:-[a-z0-9]{1,8})+",p="(?:en-GB-oed|i-(?:ami|bnn|default|enochian|hak|klingon|lux|mingo|navajo|pwn|tao|tay|tsu)|sgn-(?:BE-FR|BE-NL|CH-DE))",c="(?:art-lojban|cel-gaulish|no-bok|no-nyn|zh-(?:guoyu|hakka|min|min-nan|xiang))",d="(?:"+p+"|"+c+")",f=n+"(?:-"+o+")?(?:-"+i+")?(?:-"+a+")*(?:-"+l+")*(?:-"+u+")?",h=RegExp("^(?:"+f+"|"+u+"|"+d+")$","i"),y=RegExp("^(?!x).*?-("+a+")-(?:\\w{4,8}-(?!x-))*\\1\\b","i"),m=RegExp("^(?!x).*?-("+s+")-(?:\\w+-(?!x-))*\\1\\b","i"),_=RegExp("-"+l,"ig");t.expBCP47Syntax=h,t.expVariantDupes=y,t.expSingletonDupes=m,t.expExtSequences=_},function(e,t){"use strict";function r(e){for(var t=0;t-1&&(t.hour12=!0,t.pattern12=t.pattern,t.pattern=t.pattern.replace("{ampm}","").replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")),t}}function i(e){function t(e,t){var r=new Array((e.match(/M/g)||[]).length+1),n=new Array((e.match(/E/g)||[]).length+1);return r.length>2&&(t=t.replace(/(M|L)+/,r.join("$1"))),n.length>2&&(t=t.replace(/([Eec])+/,n.join("$1"))),t}var i,a,s,l,u,p=e.availableFormats,c=e.timeFormats,d=e.dateFormats,f=e.medium,h=[],y=[],m=[];for(i in p)p.hasOwnProperty(i)&&(a=t(i,p[i]),s=o(a),s&&(h.push(s),r(s)?m.push(a):n(s)&&y.push(a)));for(l=0;l100?(clearInterval(this._wheelTimer),clearInterval(this._wheelLongTimer),this._wheelLongTimer=setTimeout(function(){this._wheelLongTimer=null}.bind(this),2e3)):this._wheelLongTimer||(t>10?(clearInterval(this._wheelTimer),this._wheelTimer=setTimeout(this._onNext,200)):-10>t&&(clearInterval(this._wheelTimer),this._wheelTimer=setTimeout(this._onPrevious,200)))}},{key:"_onNext",value:function(e,t){e&&(this._stop(),e.preventDefault());for(var r=p["default"].Children.count(this.props.children),n="row"===this.props.direction?window.innerWidth:window.innerHeight,o=!1,i=0;r>i;i+=1){var a=d["default"].findDOMNode(this.refs[i]),s=a.getBoundingClientRect(),l="row"===this.props.direction?s.right:s.bottom;if(l>10&&(e||t||n>l)){i+1!==this.state.activeIndex&&this._onSelect(i+1),o=!0;break}}t&&!o&&this._onSelect(1)}},{key:"_onPrevious",value:function(e){e&&(this._stop(),e.preventDefault());for(var t=p["default"].Children.count(this.props.children),r="row"===this.props.direction?window.innerWidth:window.innerHeight,n=t-1;n>=0;n-=1){var o=d["default"].findDOMNode(this.refs[n]),i=o.getBoundingClientRect(),a="row"===this.props.direction?i.left:i.top;if(r>a&&(e||a>10)){n-1!==this.state.activeIndex&&this._onSelect(n-1);break}}}},{key:"_start",value:function(){this._playTimer=setInterval(function(){this._onNext(null,!0)}.bind(this),z),this.setState({playing:!0})}},{key:"_stop",value:function(){clearInterval(this._playTimer),this.setState({playing:!1})}},{key:"_onTogglePlay",value:function(e){e.preventDefault(),this.state.playing?this._stop():this._start()}},{key:"_onSelect",value:function(e){var t=d["default"].findDOMNode(this.refs[e]),r=t.getBoundingClientRect();"row"===this.props.direction?w["default"].scrollBy(this._scrollParent,"scrollLeft",r.left):w["default"].scrollBy(this._scrollParent,"scrollTop",r.top),this.setState({activeIndex:e})}},{key:"_onFocusChange",value:function(e){p["default"].Children.forEach(this.props.children,function(t,r){var n=d["default"].findDOMNode(this.refs[r]);n&&n.contains(e.target)&&this._onSelect(r)}.bind(this))}},{key:"_renderControls",value:function(){var e=D+"__control "+D+"__control",t=p["default"].Children.count(this.props.children),r=[];return"row"===this.props.direction?(this.state.activeIndex>0&&r.push(p["default"].createElement(E["default"],{key:"previous",type:"icon",className:e+"-left",onClick:this._onPrevious},p["default"].createElement(I["default"],{size:"large"}))),this.state.activeIndex0&&r.push(p["default"].createElement(E["default"],{key:"previous",type:"icon",className:e+"-up",onClick:this._onPrevious},p["default"].createElement(S["default"],null))),this.state.activeIndexe?2*e*e:-1+(4-2*e)*e},scrollBy:function(e,t,n){clearInterval(this._scrollToTimer);var o=e[t],i=o+n,a=1;this._scrollToTimer=setInterval(function(){var n,s=this._easeInOutQuad(a/r);n=i>o?Math.min(i,Math.max(e[t],Math.round(o+(i-o)*s))):Math.max(i,Math.min(e[t],Math.round(o-(o-i)*s))),e[t]=n,a+=1,a>r&&(clearInterval(this._scrollToTimer),this._scrollToTimer=setTimeout(function(){e[t]=n},200))}.bind(this),8)}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;rl;l+=1){var p=[I+"__day"];this.state.current&&i.isSame(this.state.current)&&p.push(I+"__day--active"),i.isSame(r,"month")||p.push(I+"__day--other-month"),s.push(u["default"].createElement("td",{key:i.valueOf()},u["default"].createElement("div",{className:p.join(" "),onClick:this._onClickDay.bind(this,(0,f["default"])(i))},i.date()))),i.add(1,"days")}a.push(u["default"].createElement("tr",{key:i.valueOf()},s))}return u["default"].createElement("div",{id:I+"-drop",className:I+"__drop",onClick:this._onClose},u["default"].createElement(P["default"],{justify:"between"},u["default"].createElement(j["default"],{className:I+"__previous",type:"icon",onClick:this._onPrevious},u["default"].createElement(T["default"],null)),u["default"].createElement(k["default"],{className:I+"__title",responsive:!1},this.state.reference.format("MMMM YYYY")),u["default"].createElement(j["default"],{className:I+"__next",type:"icon",onClick:this._onNext},u["default"].createElement(M["default"],null))),u["default"].createElement("div",{className:I+"__grid"},u["default"].createElement("table",null,u["default"].createElement("thead",null,u["default"].createElement("tr",null,t)),u["default"].createElement("tbody",null,a))))}},{key:"render",value:function(){var e=[I];return this.state.dropActive&&e.push(I+"--active"),this.props.className&&e.push(this.props.className),u["default"].createElement("div",{ref:"component",className:e.join(" ")},u["default"].createElement("input",{className:I+"__input",id:this.props.id,ref:"calendarInput",name:this.props.name,value:this.props.value,onChange:this._onInputChange}),u["default"].createElement(j["default"],{className:I+"__control",type:"icon",onClick:this._onOpen},u["default"].createElement(g["default"],null)))}}]),t}(l.Component);t["default"]=L,L.propTypes={id:l.PropTypes.string,name:l.PropTypes.string,onChange:l.PropTypes.func,value:l.PropTypes.string},L.defaultProps={value:(0,f["default"])().format("YYYY-MM-DD")},e.exports=t["default"]},function(e,t,r){(function(e){!function(t,r){e.exports=r()}(this,function(){"use strict";function t(){return qr.apply(null,arguments)}function n(e){qr=e}function o(e){return"[object Array]"===Object.prototype.toString.call(e)}function i(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function a(e,t){var r,n=[];for(r=0;r0)for(r in Xr)n=Xr[r],o=t[n],h(o)||(e[n]=o);return e}function m(e){y(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),Qr===!1&&(Qr=!0,t.updateOffset(this),Qr=!1)}function _(e){return e instanceof m||null!=e&&null!=e._isAMomentObject}function b(e){return 0>e?Math.ceil(e):Math.floor(e)}function g(e){var t=+e,r=0;return 0!==t&&isFinite(t)&&(r=b(t)),r}function v(e,t,r){var n,o=Math.min(e.length,t.length),i=Math.abs(e.length-t.length),a=0;for(n=0;o>n;n++)(r&&e[n]!==t[n]||!r&&g(e[n])!==g(t[n]))&&a++;return a+i}function T(){}function w(e){return e?e.toLowerCase().replace("_","-"):e}function M(e){for(var t,r,n,o,i=0;i0;){if(n=x(o.slice(0,t).join("-")))return n;if(r&&r.length>=t&&v(o,r,!0)>=t-1)break;t--}i++}return null}function x(t){var n=null;if(!$r[t]&&"undefined"!=typeof e&&e&&e.exports)try{n=Ur._abbr,r(106)("./"+t),P(n)}catch(o){}return $r[t]}function P(e,t){var r;
-return e&&(r=h(t)?k(e):E(e,t),r&&(Ur=r)),Ur._abbr}function E(e,t){return null!==t?(t.abbr=e,$r[e]=$r[e]||new T,$r[e].set(t),P(e),$r[e]):(delete $r[e],null)}function k(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return Ur;if(!o(e)){if(t=x(e))return t;e=[e]}return M(e)}function O(e,t){var r=e.toLowerCase();Zr[r]=Zr[r+"s"]=Zr[t]=e}function j(e){return"string"==typeof e?Zr[e]||Zr[e.toLowerCase()]:void 0}function I(e){var t,r,n={};for(r in e)s(e,r)&&(t=j(r),t&&(n[t]=e[r]));return n}function L(e){return e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}function S(e,r){return function(n){return null!=n?(Y(this,e,n),t.updateOffset(this,r),this):C(this,e)}}function C(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function Y(e,t,r){e.isValid()&&e._d["set"+(e._isUTC?"UTC":"")+t](r)}function D(e,t){var r;if("object"==typeof e)for(r in e)this.set(r,e[r]);else if(e=j(e),L(this[e]))return this[e](t);return this}function z(e,t,r){var n=""+Math.abs(e),o=t-n.length,i=e>=0;return(i?r?"+":"":"-")+Math.pow(10,Math.max(0,o)).toString().substr(1)+n}function N(e,t,r,n){var o=n;"string"==typeof n&&(o=function(){return this[n]()}),e&&(nn[e]=o),t&&(nn[t[0]]=function(){return z(o.apply(this,arguments),t[1],t[2])}),r&&(nn[r]=function(){return this.localeData().ordinal(o.apply(this,arguments),e)})}function H(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function R(e){var t,r,n=e.match(en);for(t=0,r=n.length;r>t;t++)nn[n[t]]?n[t]=nn[n[t]]:n[t]=H(n[t]);return function(o){var i="";for(t=0;r>t;t++)i+=n[t]instanceof Function?n[t].call(o,e):n[t];return i}}function W(e,t){return e.isValid()?(t=A(t,e.localeData()),rn[t]=rn[t]||R(t),rn[t](e)):e.localeData().invalidDate()}function A(e,t){function r(e){return t.longDateFormat(e)||e}var n=5;for(tn.lastIndex=0;n>=0&&tn.test(e);)e=e.replace(tn,r),tn.lastIndex=0,n-=1;return e}function F(e,t,r){wn[e]=L(t)?t:function(e,n){return e&&r?r:t}}function B(e,t){return s(wn,e)?wn[e](t._strict,t._locale):new RegExp(V(e))}function V(e){return K(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,r,n,o){return t||r||n||o}))}function K(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function J(e,t){var r,n=t;for("string"==typeof e&&(e=[e]),"number"==typeof t&&(n=function(e,r){r[t]=g(e)}),r=0;rn;n++){if(o=u([2e3,n]),r&&!this._longMonthsParse[n]&&(this._longMonthsParse[n]=new RegExp("^"+this.months(o,"").replace(".","")+"$","i"),this._shortMonthsParse[n]=new RegExp("^"+this.monthsShort(o,"").replace(".","")+"$","i")),r||this._monthsParse[n]||(i="^"+this.months(o,"")+"|^"+this.monthsShort(o,""),this._monthsParse[n]=new RegExp(i.replace(".",""),"i")),r&&"MMMM"===t&&this._longMonthsParse[n].test(e))return n;if(r&&"MMM"===t&&this._shortMonthsParse[n].test(e))return n;if(!r&&this._monthsParse[n].test(e))return n}}function Z(e,t){var r;return e.isValid()?"string"==typeof t&&(t=e.localeData().monthsParse(t),"number"!=typeof t)?e:(r=Math.min(e.date(),U(e.year(),t)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](t,r),e):e}function ee(e){return null!=e?(Z(this,e),t.updateOffset(this,!0),this):C(this,"Month")}function te(){return U(this.year(),this.month())}function re(e){return this._monthsParseExact?(s(this,"_monthsRegex")||oe.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex}function ne(e){return this._monthsParseExact?(s(this,"_monthsRegex")||oe.call(this),e?this._monthsStrictRegex:this._monthsRegex):this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex}function oe(){function e(e,t){return t.length-e.length}var t,r,n=[],o=[],i=[];for(t=0;12>t;t++)r=u([2e3,t]),n.push(this.monthsShort(r,"")),o.push(this.months(r,"")),i.push(this.months(r,"")),i.push(this.monthsShort(r,""));for(n.sort(e),o.sort(e),i.sort(e),t=0;12>t;t++)n[t]=K(n[t]),o[t]=K(o[t]),i[t]=K(i[t]);this._monthsRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+o.join("|")+")$","i"),this._monthsShortStrictRegex=new RegExp("^("+n.join("|")+")$","i")}function ie(e){var t,r=e._a;return r&&-2===c(e).overflow&&(t=r[Pn]<0||r[Pn]>11?Pn:r[En]<1||r[En]>U(r[xn],r[Pn])?En:r[kn]<0||r[kn]>24||24===r[kn]&&(0!==r[On]||0!==r[jn]||0!==r[In])?kn:r[On]<0||r[On]>59?On:r[jn]<0||r[jn]>59?jn:r[In]<0||r[In]>999?In:-1,c(e)._overflowDayOfYear&&(xn>t||t>En)&&(t=En),c(e)._overflowWeeks&&-1===t&&(t=Ln),c(e)._overflowWeekday&&-1===t&&(t=Sn),c(e).overflow=t),e}function ae(e){t.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+e)}function se(e,t){var r=!0;return l(function(){return r&&(ae(e+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),r=!1),t.apply(this,arguments)},t)}function le(e,t){Hn[e]||(ae(t),Hn[e]=!0)}function ue(e){var t,r,n,o,i,a,s=e._i,l=Rn.exec(s)||Wn.exec(s);if(l){for(c(e).iso=!0,t=0,r=Fn.length;r>t;t++)if(Fn[t][1].exec(l[1])){o=Fn[t][0],n=Fn[t][2]!==!1;break}if(null==o)return void(e._isValid=!1);if(l[3]){for(t=0,r=Bn.length;r>t;t++)if(Bn[t][1].exec(l[3])){i=(l[2]||" ")+Bn[t][0];break}if(null==i)return void(e._isValid=!1)}if(!n&&null!=i)return void(e._isValid=!1);if(l[4]){if(!An.exec(l[4]))return void(e._isValid=!1);a="Z"}e._f=o+(i||"")+(a||""),xe(e)}else e._isValid=!1}function pe(e){var r=Vn.exec(e._i);return null!==r?void(e._d=new Date(+r[1])):(ue(e),void(e._isValid===!1&&(delete e._isValid,t.createFromInputFallback(e))))}function ce(e,t,r,n,o,i,a){var s=new Date(e,t,r,n,o,i,a);return 100>e&&e>=0&&isFinite(s.getFullYear())&&s.setFullYear(e),s}function de(e){var t=new Date(Date.UTC.apply(null,arguments));return 100>e&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function fe(e){return he(e)?366:365}function he(e){return e%4===0&&e%100!==0||e%400===0}function ye(){return he(this.year())}function me(e,t,r){var n=7+t-r,o=(7+de(e,0,n).getUTCDay()-t)%7;return-o+n-1}function _e(e,t,r,n,o){var i,a,s=(7+r-n)%7,l=me(e,n,o),u=1+7*(t-1)+s+l;return 0>=u?(i=e-1,a=fe(i)+u):u>fe(e)?(i=e+1,a=u-fe(e)):(i=e,a=u),{year:i,dayOfYear:a}}function be(e,t,r){var n,o,i=me(e.year(),t,r),a=Math.floor((e.dayOfYear()-i-1)/7)+1;return 1>a?(o=e.year()-1,n=a+ge(o,t,r)):a>ge(e.year(),t,r)?(n=a-ge(e.year(),t,r),o=e.year()+1):(o=e.year(),n=a),{week:n,year:o}}function ge(e,t,r){var n=me(e,t,r),o=me(e+1,t,r);return(fe(e)-n+o)/7}function ve(e,t,r){return null!=e?e:null!=t?t:r}function Te(e){var r=new Date(t.now());return e._useUTC?[r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate()]:[r.getFullYear(),r.getMonth(),r.getDate()]}function we(e){var t,r,n,o,i=[];if(!e._d){for(n=Te(e),e._w&&null==e._a[En]&&null==e._a[Pn]&&Me(e),e._dayOfYear&&(o=ve(e._a[xn],n[xn]),e._dayOfYear>fe(o)&&(c(e)._overflowDayOfYear=!0),r=de(o,0,e._dayOfYear),e._a[Pn]=r.getUTCMonth(),e._a[En]=r.getUTCDate()),t=0;3>t&&null==e._a[t];++t)e._a[t]=i[t]=n[t];for(;7>t;t++)e._a[t]=i[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[kn]&&0===e._a[On]&&0===e._a[jn]&&0===e._a[In]&&(e._nextDay=!0,e._a[kn]=0),e._d=(e._useUTC?de:ce).apply(null,i),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[kn]=24)}}function Me(e){var t,r,n,o,i,a,s,l;t=e._w,null!=t.GG||null!=t.W||null!=t.E?(i=1,a=4,r=ve(t.GG,e._a[xn],be(Se(),1,4).year),n=ve(t.W,1),o=ve(t.E,1),(1>o||o>7)&&(l=!0)):(i=e._locale._week.dow,a=e._locale._week.doy,r=ve(t.gg,e._a[xn],be(Se(),i,a).year),n=ve(t.w,1),null!=t.d?(o=t.d,(0>o||o>6)&&(l=!0)):null!=t.e?(o=t.e+i,(t.e<0||t.e>6)&&(l=!0)):o=i),1>n||n>ge(r,i,a)?c(e)._overflowWeeks=!0:null!=l?c(e)._overflowWeekday=!0:(s=_e(r,n,o,i,a),e._a[xn]=s.year,e._dayOfYear=s.dayOfYear)}function xe(e){if(e._f===t.ISO_8601)return void ue(e);e._a=[],c(e).empty=!0;var r,n,o,i,a,s=""+e._i,l=s.length,u=0;for(o=A(e._f,e._locale).match(en)||[],r=0;r0&&c(e).unusedInput.push(a),s=s.slice(s.indexOf(n)+n.length),u+=n.length),nn[i]?(n?c(e).empty=!1:c(e).unusedTokens.push(i),q(i,n,e)):e._strict&&!n&&c(e).unusedTokens.push(i);c(e).charsLeftOver=l-u,s.length>0&&c(e).unusedInput.push(s),c(e).bigHour===!0&&e._a[kn]<=12&&e._a[kn]>0&&(c(e).bigHour=void 0),e._a[kn]=Pe(e._locale,e._a[kn],e._meridiem),we(e),ie(e)}function Pe(e,t,r){var n;return null==r?t:null!=e.meridiemHour?e.meridiemHour(t,r):null!=e.isPM?(n=e.isPM(r),n&&12>t&&(t+=12),n||12!==t||(t=0),t):t}function Ee(e){var t,r,n,o,i;if(0===e._f.length)return c(e).invalidFormat=!0,void(e._d=new Date(NaN));for(o=0;oi)&&(n=i,r=t));l(e,r||t)}function ke(e){if(!e._d){var t=I(e._i);e._a=a([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(e){return e&&parseInt(e,10)}),we(e)}}function Oe(e){var t=new m(ie(je(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function je(e){var t=e._i,r=e._f;return e._locale=e._locale||k(e._l),null===t||void 0===r&&""===t?f({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),_(t)?new m(ie(t)):(o(r)?Ee(e):r?xe(e):i(t)?e._d=t:Ie(e),d(e)||(e._d=null),e))}function Ie(e){var r=e._i;void 0===r?e._d=new Date(t.now()):i(r)?e._d=new Date(+r):"string"==typeof r?pe(e):o(r)?(e._a=a(r.slice(0),function(e){return parseInt(e,10)}),we(e)):"object"==typeof r?ke(e):"number"==typeof r?e._d=new Date(r):t.createFromInputFallback(e)}function Le(e,t,r,n,o){var i={};return"boolean"==typeof r&&(n=r,r=void 0),i._isAMomentObject=!0,i._useUTC=i._isUTC=o,i._l=r,i._i=e,i._f=t,i._strict=n,Oe(i)}function Se(e,t,r,n){return Le(e,t,r,n,!1)}function Ce(e,t){var r,n;if(1===t.length&&o(t[0])&&(t=t[0]),!t.length)return Se();for(r=t[0],n=1;ne&&(e=-e,r="-"),r+z(~~(e/60),2)+t+z(~~e%60,2)})}function Re(e,t){var r=(t||"").match(e)||[],n=r[r.length-1]||[],o=(n+"").match(Un)||["-",0,0],i=+(60*o[1])+g(o[2]);return"+"===o[0]?i:-i}function We(e,r){var n,o;return r._isUTC?(n=r.clone(),o=(_(e)||i(e)?+e:+Se(e))-+n,n._d.setTime(+n._d+o),t.updateOffset(n,!1),n):Se(e).local()}function Ae(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Fe(e,r){var n,o=this._offset||0;return this.isValid()?null!=e?("string"==typeof e?e=Re(gn,e):Math.abs(e)<16&&(e=60*e),!this._isUTC&&r&&(n=Ae(this)),this._offset=e,this._isUTC=!0,null!=n&&this.add(n,"m"),o!==e&&(!r||this._changeInProgress?ot(this,Ze(e-o,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?o:Ae(this):null!=e?this:NaN}function Be(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function Ve(e){return this.utcOffset(0,e)}function Ke(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Ae(this),"m")),this}function Je(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Re(bn,this._i)),this}function Ge(e){return this.isValid()?(e=e?Se(e).utcOffset():0,(this.utcOffset()-e)%60===0):!1}function qe(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Ue(){if(!h(this._isDSTShifted))return this._isDSTShifted;var e={};if(y(e,this),e=je(e),e._a){var t=e._isUTC?u(e._a):Se(e._a);this._isDSTShifted=this.isValid()&&v(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Xe(){return this.isValid()?!this._isUTC:!1}function Qe(){return this.isValid()?this._isUTC:!1}function $e(){return this.isValid()?this._isUTC&&0===this._offset:!1}function Ze(e,t){var r,n,o,i=e,a=null;return Ne(e)?i={ms:e._milliseconds,d:e._days,M:e._months}:"number"==typeof e?(i={},t?i[t]=e:i.milliseconds=e):(a=Xn.exec(e))?(r="-"===a[1]?-1:1,i={y:0,d:g(a[En])*r,h:g(a[kn])*r,m:g(a[On])*r,s:g(a[jn])*r,ms:g(a[In])*r}):(a=Qn.exec(e))?(r="-"===a[1]?-1:1,i={y:et(a[2],r),M:et(a[3],r),d:et(a[4],r),h:et(a[5],r),m:et(a[6],r),s:et(a[7],r),w:et(a[8],r)}):null==i?i={}:"object"==typeof i&&("from"in i||"to"in i)&&(o=rt(Se(i.from),Se(i.to)),i={},i.ms=o.milliseconds,i.M=o.months),n=new ze(i),Ne(e)&&s(e,"_locale")&&(n._locale=e._locale),n}function et(e,t){var r=e&&parseFloat(e.replace(",","."));return(isNaN(r)?0:r)*t}function tt(e,t){var r={milliseconds:0,months:0};return r.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(r.months,"M").isAfter(t)&&--r.months,r.milliseconds=+t-+e.clone().add(r.months,"M"),r}function rt(e,t){var r;return e.isValid()&&t.isValid()?(t=We(t,e),e.isBefore(t)?r=tt(e,t):(r=tt(t,e),r.milliseconds=-r.milliseconds,r.months=-r.months),r):{milliseconds:0,months:0}}function nt(e,t){return function(r,n){var o,i;return null===n||isNaN(+n)||(le(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period)."),i=r,r=n,n=i),r="string"==typeof r?+r:r,o=Ze(r,n),ot(this,o,e),this}}function ot(e,r,n,o){var i=r._milliseconds,a=r._days,s=r._months;e.isValid()&&(o=null==o?!0:o,i&&e._d.setTime(+e._d+i*n),a&&Y(e,"Date",C(e,"Date")+a*n),s&&Z(e,C(e,"Month")+s*n),o&&t.updateOffset(e,a||s))}function it(e,t){var r=e||Se(),n=We(r,this).startOf("day"),o=this.diff(n,"days",!0),i=-6>o?"sameElse":-1>o?"lastWeek":0>o?"lastDay":1>o?"sameDay":2>o?"nextDay":7>o?"nextWeek":"sameElse",a=t&&(L(t[i])?t[i]():t[i]);return this.format(a||this.localeData().calendar(i,this,Se(r)))}function at(){return new m(this)}function st(e,t){var r=_(e)?e:Se(e);return this.isValid()&&r.isValid()?(t=j(h(t)?"millisecond":t),"millisecond"===t?+this>+r:+r<+this.clone().startOf(t)):!1}function lt(e,t){var r=_(e)?e:Se(e);return this.isValid()&&r.isValid()?(t=j(h(t)?"millisecond":t),"millisecond"===t?+r>+this:+this.clone().endOf(t)<+r):!1}function ut(e,t,r){return this.isAfter(e,r)&&this.isBefore(t,r)}function pt(e,t){var r,n=_(e)?e:Se(e);return this.isValid()&&n.isValid()?(t=j(t||"millisecond"),"millisecond"===t?+this===+n:(r=+n,+this.clone().startOf(t)<=r&&r<=+this.clone().endOf(t))):!1}function ct(e,t){return this.isSame(e,t)||this.isAfter(e,t)}function dt(e,t){return this.isSame(e,t)||this.isBefore(e,t)}function ft(e,t,r){var n,o,i,a;return this.isValid()?(n=We(e,this),n.isValid()?(o=6e4*(n.utcOffset()-this.utcOffset()),t=j(t),"year"===t||"month"===t||"quarter"===t?(a=ht(this,n),"quarter"===t?a/=3:"year"===t&&(a/=12)):(i=this-n,a="second"===t?i/1e3:"minute"===t?i/6e4:"hour"===t?i/36e5:"day"===t?(i-o)/864e5:"week"===t?(i-o)/6048e5:i),r?a:b(a)):NaN):NaN}function ht(e,t){var r,n,o=12*(t.year()-e.year())+(t.month()-e.month()),i=e.clone().add(o,"months");return 0>t-i?(r=e.clone().add(o-1,"months"),n=(t-i)/(i-r)):(r=e.clone().add(o+1,"months"),n=(t-i)/(r-i)),-(o+n)}function yt(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function mt(){var e=this.clone().utc();return 0i&&(t=i),Ft.call(this,e,t,r,n,o))}function Ft(e,t,r,n,o){var i=_e(e,t,r,n,o),a=de(i.year,0,i.dayOfYear);return this.year(a.getUTCFullYear()),this.month(a.getUTCMonth()),this.date(a.getUTCDate()),this}function Bt(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}function Vt(e){return be(e,this._week.dow,this._week.doy).week}function Kt(){return this._week.dow}function Jt(){return this._week.doy}function Gt(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function qt(e){var t=be(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function Ut(e,t){return"string"!=typeof e?e:isNaN(e)?(e=t.weekdaysParse(e),"number"==typeof e?e:null):parseInt(e,10)}function Xt(e,t){return o(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][e.day()]}function Qt(e){return this._weekdaysShort[e.day()]}function $t(e){return this._weekdaysMin[e.day()]}function Zt(e,t,r){var n,o,i;for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),n=0;7>n;n++){if(o=Se([2e3,1]).day(n),r&&!this._fullWeekdaysParse[n]&&(this._fullWeekdaysParse[n]=new RegExp("^"+this.weekdays(o,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[n]=new RegExp("^"+this.weekdaysShort(o,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[n]=new RegExp("^"+this.weekdaysMin(o,"").replace(".",".?")+"$","i")),this._weekdaysParse[n]||(i="^"+this.weekdays(o,"")+"|^"+this.weekdaysShort(o,"")+"|^"+this.weekdaysMin(o,""),this._weekdaysParse[n]=new RegExp(i.replace(".",""),"i")),r&&"dddd"===t&&this._fullWeekdaysParse[n].test(e))return n;if(r&&"ddd"===t&&this._shortWeekdaysParse[n].test(e))return n;if(r&&"dd"===t&&this._minWeekdaysParse[n].test(e))return n;if(!r&&this._weekdaysParse[n].test(e))return n}}function er(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=Ut(e,this.localeData()),this.add(e-t,"d")):t}function tr(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function rr(e){return this.isValid()?null==e?this.day()||7:this.day(this.day()%7?e:e-7):null!=e?this:NaN}function nr(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function or(){return this.hours()%12||12}function ir(e,t){N(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function ar(e,t){return t._meridiemParse}function sr(e){return"p"===(e+"").toLowerCase().charAt(0)}function lr(e,t,r){return e>11?r?"pm":"PM":r?"am":"AM"}function ur(e,t){t[In]=g(1e3*("0."+e))}function pr(){return this._isUTC?"UTC":""}function cr(){return this._isUTC?"Coordinated Universal Time":""}function dr(e){return Se(1e3*e)}function fr(){return Se.apply(null,arguments).parseZone()}function hr(e,t,r){var n=this._calendar[e];return L(n)?n.call(t,r):n}function yr(e){var t=this._longDateFormat[e],r=this._longDateFormat[e.toUpperCase()];return t||!r?t:(this._longDateFormat[e]=r.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])}function mr(){return this._invalidDate}function _r(e){return this._ordinal.replace("%d",e)}function br(e){return e}function gr(e,t,r,n){var o=this._relativeTime[r];return L(o)?o(e,t,r,n):o.replace(/%d/i,e)}function vr(e,t){var r=this._relativeTime[e>0?"future":"past"];return L(r)?r(t):r.replace(/%s/i,t)}function Tr(e){var t,r;for(r in e)t=e[r],L(t)?this[r]=t:this["_"+r]=t;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function wr(e,t,r,n){var o=k(),i=u().set(n,t);return o[r](i,e)}function Mr(e,t,r,n,o){if("number"==typeof e&&(t=e,e=void 0),e=e||"",null!=t)return wr(e,t,r,o);var i,a=[];for(i=0;n>i;i++)a[i]=wr(e,i,r,o);return a}function xr(e,t){return Mr(e,t,"months",12,"month")}function Pr(e,t){return Mr(e,t,"monthsShort",12,"month")}function Er(e,t){return Mr(e,t,"weekdays",7,"day")}function kr(e,t){return Mr(e,t,"weekdaysShort",7,"day")}function Or(e,t){return Mr(e,t,"weekdaysMin",7,"day")}function jr(){var e=this._data;return this._milliseconds=wo(this._milliseconds),this._days=wo(this._days),this._months=wo(this._months),e.milliseconds=wo(e.milliseconds),e.seconds=wo(e.seconds),e.minutes=wo(e.minutes),e.hours=wo(e.hours),e.months=wo(e.months),e.years=wo(e.years),this}function Ir(e,t,r,n){var o=Ze(t,r);return e._milliseconds+=n*o._milliseconds,e._days+=n*o._days,e._months+=n*o._months,e._bubble()}function Lr(e,t){return Ir(this,e,t,1)}function Sr(e,t){return Ir(this,e,t,-1)}function Cr(e){return 0>e?Math.floor(e):Math.ceil(e)}function Yr(){var e,t,r,n,o,i=this._milliseconds,a=this._days,s=this._months,l=this._data;return i>=0&&a>=0&&s>=0||0>=i&&0>=a&&0>=s||(i+=864e5*Cr(zr(s)+a),a=0,s=0),l.milliseconds=i%1e3,e=b(i/1e3),l.seconds=e%60,t=b(e/60),l.minutes=t%60,r=b(t/60),l.hours=r%24,a+=b(r/24),o=b(Dr(a)),s+=o,a-=Cr(zr(o)),n=b(s/12),s%=12,l.days=a,l.months=s,l.years=n,this}function Dr(e){return 4800*e/146097}function zr(e){return 146097*e/4800}function Nr(e){var t,r,n=this._milliseconds;if(e=j(e),"month"===e||"year"===e)return t=this._days+n/864e5,r=this._months+Dr(t),"month"===e?r:r/12;switch(t=this._days+Math.round(zr(this._months)),e){case"week":return t/7+n/6048e5;case"day":return t+n/864e5;case"hour":return 24*t+n/36e5;case"minute":return 1440*t+n/6e4;case"second":return 86400*t+n/1e3;case"millisecond":return Math.floor(864e5*t)+n;default:throw new Error("Unknown unit "+e)}}function Hr(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*g(this._months/12)}function Rr(e){return function(){return this.as(e)}}function Wr(e){return e=j(e),this[e+"s"]()}function Ar(e){return function(){return this._data[e]}}function Fr(){return b(this.days()/7)}function Br(e,t,r,n,o){return o.relativeTime(t||1,!!r,e,n)}function Vr(e,t,r){var n=Ze(e).abs(),o=Ho(n.as("s")),i=Ho(n.as("m")),a=Ho(n.as("h")),s=Ho(n.as("d")),l=Ho(n.as("M")),u=Ho(n.as("y")),p=o=i&&["m"]||i=a&&["h"]||a=s&&["d"]||s=l&&["M"]||l=u&&["y"]||["yy",u];return p[2]=t,p[3]=+e>0,p[4]=r,Br.apply(null,p)}function Kr(e,t){return void 0===Ro[e]?!1:void 0===t?Ro[e]:(Ro[e]=t,!0)}function Jr(e){var t=this.localeData(),r=Vr(this,!e,t);return e&&(r=t.pastFuture(+this,r)),t.postformat(r)}function Gr(){var e,t,r,n=Wo(this._milliseconds)/1e3,o=Wo(this._days),i=Wo(this._months);e=b(n/60),t=b(e/60),n%=60,e%=60,r=b(i/12),i%=12;var a=r,s=i,l=o,u=t,p=e,c=n,d=this.asSeconds();return d?(0>d?"-":"")+"P"+(a?a+"Y":"")+(s?s+"M":"")+(l?l+"D":"")+(u||p||c?"T":"")+(u?u+"H":"")+(p?p+"M":"")+(c?c+"S":""):"P0D"}var qr,Ur,Xr=t.momentProperties=[],Qr=!1,$r={},Zr={},en=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,tn=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,rn={},nn={},on=/\d/,an=/\d\d/,sn=/\d{3}/,ln=/\d{4}/,un=/[+-]?\d{6}/,pn=/\d\d?/,cn=/\d\d\d\d?/,dn=/\d\d\d\d\d\d?/,fn=/\d{1,3}/,hn=/\d{1,4}/,yn=/[+-]?\d{1,6}/,mn=/\d+/,_n=/[+-]?\d+/,bn=/Z|[+-]\d\d:?\d\d/gi,gn=/Z|[+-]\d\d(?::?\d\d)?/gi,vn=/[+-]?\d+(\.\d{1,3})?/,Tn=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,wn={},Mn={},xn=0,Pn=1,En=2,kn=3,On=4,jn=5,In=6,Ln=7,Sn=8;N("M",["MM",2],"Mo",function(){return this.month()+1}),N("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)}),N("MMMM",0,0,function(e){return this.localeData().months(this,e)}),O("month","M"),F("M",pn),F("MM",pn,an),F("MMM",function(e,t){return t.monthsShortRegex(e)}),F("MMMM",function(e,t){return t.monthsRegex(e)}),J(["M","MM"],function(e,t){t[Pn]=g(e)-1}),J(["MMM","MMMM"],function(e,t,r,n){var o=r._locale.monthsParse(e,n,r._strict);null!=o?t[Pn]=o:c(r).invalidMonth=e});var Cn=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,Yn="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Dn="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),zn=Tn,Nn=Tn,Hn={};t.suppressDeprecationWarnings=!1;var Rn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,Wn=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,An=/Z|[+-]\d\d(?::?\d\d)?/,Fn=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Bn=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Vn=/^\/?Date\((\-?\d+)/i;t.createFromInputFallback=se("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),N("Y",0,0,function(){var e=this.year();return 9999>=e?""+e:"+"+e}),N(0,["YY",2],0,function(){return this.year()%100}),N(0,["YYYY",4],0,"year"),N(0,["YYYYY",5],0,"year"),N(0,["YYYYYY",6,!0],0,"year"),O("year","y"),F("Y",_n),F("YY",pn,an),F("YYYY",hn,ln),F("YYYYY",yn,un),F("YYYYYY",yn,un),J(["YYYYY","YYYYYY"],xn),J("YYYY",function(e,r){r[xn]=2===e.length?t.parseTwoDigitYear(e):g(e)}),J("YY",function(e,r){r[xn]=t.parseTwoDigitYear(e)}),J("Y",function(e,t){t[xn]=parseInt(e,10)}),t.parseTwoDigitYear=function(e){return g(e)+(g(e)>68?1900:2e3)};var Kn=S("FullYear",!1);t.ISO_8601=function(){};var Jn=se("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var e=Se.apply(null,arguments);return this.isValid()&&e.isValid()?this>e?this:e:f()}),Gn=se("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var e=Se.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:f()}),qn=function(){return Date.now?Date.now():+new Date};He("Z",":"),He("ZZ",""),F("Z",gn),F("ZZ",gn),J(["Z","ZZ"],function(e,t,r){r._useUTC=!0,r._tzm=Re(gn,e)});var Un=/([\+\-]|\d\d)/gi;t.updateOffset=function(){};var Xn=/(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Qn=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Ze.fn=ze.prototype;var $n=nt(1,"add"),Zn=nt(-1,"subtract");t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var eo=se("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});N(0,["gg",2],0,function(){return this.weekYear()%100}),N(0,["GG",2],0,function(){return this.isoWeekYear()%100}),zt("gggg","weekYear"),zt("ggggg","weekYear"),zt("GGGG","isoWeekYear"),zt("GGGGG","isoWeekYear"),O("weekYear","gg"),O("isoWeekYear","GG"),F("G",_n),F("g",_n),F("GG",pn,an),F("gg",pn,an),F("GGGG",hn,ln),F("gggg",hn,ln),F("GGGGG",yn,un),F("ggggg",yn,un),G(["gggg","ggggg","GGGG","GGGGG"],function(e,t,r,n){t[n.substr(0,2)]=g(e)}),G(["gg","GG"],function(e,r,n,o){r[o]=t.parseTwoDigitYear(e)}),N("Q",0,"Qo","quarter"),O("quarter","Q"),F("Q",on),J("Q",function(e,t){t[Pn]=3*(g(e)-1)}),N("w",["ww",2],"wo","week"),N("W",["WW",2],"Wo","isoWeek"),O("week","w"),O("isoWeek","W"),F("w",pn),F("ww",pn,an),F("W",pn),F("WW",pn,an),G(["w","ww","W","WW"],function(e,t,r,n){t[n.substr(0,1)]=g(e)});var to={dow:0,doy:6};N("D",["DD",2],"Do","date"),O("date","D"),F("D",pn),F("DD",pn,an),F("Do",function(e,t){return e?t._ordinalParse:t._ordinalParseLenient}),J(["D","DD"],En),J("Do",function(e,t){t[En]=g(e.match(pn)[0],10)});var ro=S("Date",!0);N("d",0,"do","day"),N("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),N("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),N("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),N("e",0,0,"weekday"),N("E",0,0,"isoWeekday"),O("day","d"),O("weekday","e"),O("isoWeekday","E"),F("d",pn),F("e",pn),F("E",pn),F("dd",Tn),F("ddd",Tn),F("dddd",Tn),G(["dd","ddd","dddd"],function(e,t,r,n){var o=r._locale.weekdaysParse(e,n,r._strict);null!=o?t.d=o:c(r).invalidWeekday=e}),G(["d","e","E"],function(e,t,r,n){t[n]=g(e)});var no="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),oo="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),io="Su_Mo_Tu_We_Th_Fr_Sa".split("_");N("DDD",["DDDD",3],"DDDo","dayOfYear"),O("dayOfYear","DDD"),F("DDD",fn),F("DDDD",sn),J(["DDD","DDDD"],function(e,t,r){r._dayOfYear=g(e)}),N("H",["HH",2],0,"hour"),N("h",["hh",2],0,or),N("hmm",0,0,function(){return""+or.apply(this)+z(this.minutes(),2)}),N("hmmss",0,0,function(){return""+or.apply(this)+z(this.minutes(),2)+z(this.seconds(),2)}),N("Hmm",0,0,function(){return""+this.hours()+z(this.minutes(),2)}),N("Hmmss",0,0,function(){return""+this.hours()+z(this.minutes(),2)+z(this.seconds(),2)}),ir("a",!0),ir("A",!1),O("hour","h"),F("a",ar),F("A",ar),F("H",pn),F("h",pn),F("HH",pn,an),F("hh",pn,an),F("hmm",cn),F("hmmss",dn),
-F("Hmm",cn),F("Hmmss",dn),J(["H","HH"],kn),J(["a","A"],function(e,t,r){r._isPm=r._locale.isPM(e),r._meridiem=e}),J(["h","hh"],function(e,t,r){t[kn]=g(e),c(r).bigHour=!0}),J("hmm",function(e,t,r){var n=e.length-2;t[kn]=g(e.substr(0,n)),t[On]=g(e.substr(n)),c(r).bigHour=!0}),J("hmmss",function(e,t,r){var n=e.length-4,o=e.length-2;t[kn]=g(e.substr(0,n)),t[On]=g(e.substr(n,2)),t[jn]=g(e.substr(o)),c(r).bigHour=!0}),J("Hmm",function(e,t,r){var n=e.length-2;t[kn]=g(e.substr(0,n)),t[On]=g(e.substr(n))}),J("Hmmss",function(e,t,r){var n=e.length-4,o=e.length-2;t[kn]=g(e.substr(0,n)),t[On]=g(e.substr(n,2)),t[jn]=g(e.substr(o))});var ao=/[ap]\.?m?\.?/i,so=S("Hours",!0);N("m",["mm",2],0,"minute"),O("minute","m"),F("m",pn),F("mm",pn,an),J(["m","mm"],On);var lo=S("Minutes",!1);N("s",["ss",2],0,"second"),O("second","s"),F("s",pn),F("ss",pn,an),J(["s","ss"],jn);var uo=S("Seconds",!1);N("S",0,0,function(){return~~(this.millisecond()/100)}),N(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),N(0,["SSS",3],0,"millisecond"),N(0,["SSSS",4],0,function(){return 10*this.millisecond()}),N(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),N(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),N(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),N(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),N(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),O("millisecond","ms"),F("S",fn,on),F("SS",fn,an),F("SSS",fn,sn);var po;for(po="SSSS";po.length<=9;po+="S")F(po,mn);for(po="S";po.length<=9;po+="S")J(po,ur);var co=S("Milliseconds",!1);N("z",0,0,"zoneAbbr"),N("zz",0,0,"zoneName");var fo=m.prototype;fo.add=$n,fo.calendar=it,fo.clone=at,fo.diff=ft,fo.endOf=Pt,fo.format=_t,fo.from=bt,fo.fromNow=gt,fo.to=vt,fo.toNow=Tt,fo.get=D,fo.invalidAt=Yt,fo.isAfter=st,fo.isBefore=lt,fo.isBetween=ut,fo.isSame=pt,fo.isSameOrAfter=ct,fo.isSameOrBefore=dt,fo.isValid=St,fo.lang=eo,fo.locale=wt,fo.localeData=Mt,fo.max=Gn,fo.min=Jn,fo.parsingFlags=Ct,fo.set=D,fo.startOf=xt,fo.subtract=Zn,fo.toArray=jt,fo.toObject=It,fo.toDate=Ot,fo.toISOString=mt,fo.toJSON=Lt,fo.toString=yt,fo.unix=kt,fo.valueOf=Et,fo.creationData=Dt,fo.year=Kn,fo.isLeapYear=ye,fo.weekYear=Nt,fo.isoWeekYear=Ht,fo.quarter=fo.quarters=Bt,fo.month=ee,fo.daysInMonth=te,fo.week=fo.weeks=Gt,fo.isoWeek=fo.isoWeeks=qt,fo.weeksInYear=Wt,fo.isoWeeksInYear=Rt,fo.date=ro,fo.day=fo.days=er,fo.weekday=tr,fo.isoWeekday=rr,fo.dayOfYear=nr,fo.hour=fo.hours=so,fo.minute=fo.minutes=lo,fo.second=fo.seconds=uo,fo.millisecond=fo.milliseconds=co,fo.utcOffset=Fe,fo.utc=Ve,fo.local=Ke,fo.parseZone=Je,fo.hasAlignedHourOffset=Ge,fo.isDST=qe,fo.isDSTShifted=Ue,fo.isLocal=Xe,fo.isUtcOffset=Qe,fo.isUtc=$e,fo.isUTC=$e,fo.zoneAbbr=pr,fo.zoneName=cr,fo.dates=se("dates accessor is deprecated. Use date instead.",ro),fo.months=se("months accessor is deprecated. Use month instead",ee),fo.years=se("years accessor is deprecated. Use year instead",Kn),fo.zone=se("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Be);var ho=fo,yo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},mo={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},_o="Invalid date",bo="%d",go=/\d{1,2}/,vo={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},To=T.prototype;To._calendar=yo,To.calendar=hr,To._longDateFormat=mo,To.longDateFormat=yr,To._invalidDate=_o,To.invalidDate=mr,To._ordinal=bo,To.ordinal=_r,To._ordinalParse=go,To.preparse=br,To.postformat=br,To._relativeTime=vo,To.relativeTime=gr,To.pastFuture=vr,To.set=Tr,To.months=X,To._months=Yn,To.monthsShort=Q,To._monthsShort=Dn,To.monthsParse=$,To._monthsRegex=Nn,To.monthsRegex=ne,To._monthsShortRegex=zn,To.monthsShortRegex=re,To.week=Vt,To._week=to,To.firstDayOfYear=Jt,To.firstDayOfWeek=Kt,To.weekdays=Xt,To._weekdays=no,To.weekdaysMin=$t,To._weekdaysMin=io,To.weekdaysShort=Qt,To._weekdaysShort=oo,To.weekdaysParse=Zt,To.isPM=sr,To._meridiemParse=ao,To.meridiem=lr,P("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,r=1===g(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r}}),t.lang=se("moment.lang is deprecated. Use moment.locale instead.",P),t.langData=se("moment.langData is deprecated. Use moment.localeData instead.",k);var wo=Math.abs,Mo=Rr("ms"),xo=Rr("s"),Po=Rr("m"),Eo=Rr("h"),ko=Rr("d"),Oo=Rr("w"),jo=Rr("M"),Io=Rr("y"),Lo=Ar("milliseconds"),So=Ar("seconds"),Co=Ar("minutes"),Yo=Ar("hours"),Do=Ar("days"),zo=Ar("months"),No=Ar("years"),Ho=Math.round,Ro={s:45,m:45,h:22,d:26,M:11},Wo=Math.abs,Ao=ze.prototype;Ao.abs=jr,Ao.add=Lr,Ao.subtract=Sr,Ao.as=Nr,Ao.asMilliseconds=Mo,Ao.asSeconds=xo,Ao.asMinutes=Po,Ao.asHours=Eo,Ao.asDays=ko,Ao.asWeeks=Oo,Ao.asMonths=jo,Ao.asYears=Io,Ao.valueOf=Hr,Ao._bubble=Yr,Ao.get=Wr,Ao.milliseconds=Lo,Ao.seconds=So,Ao.minutes=Co,Ao.hours=Yo,Ao.days=Do,Ao.weeks=Fr,Ao.months=zo,Ao.years=No,Ao.humanize=Jr,Ao.toISOString=Gr,Ao.toString=Gr,Ao.toJSON=Gr,Ao.locale=wt,Ao.localeData=Mt,Ao.toIsoString=se("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Gr),Ao.lang=eo,N("X",0,0,"unix"),N("x",0,0,"valueOf"),F("x",_n),F("X",vn),J("X",function(e,t,r){r._d=new Date(1e3*parseFloat(e,10))}),J("x",function(e,t,r){r._d=new Date(g(e))}),t.version="2.11.1",n(Se),t.fn=ho,t.min=Ye,t.max=De,t.now=qn,t.utc=u,t.unix=dr,t.months=xr,t.isDate=i,t.locale=P,t.invalid=f,t.duration=Ze,t.isMoment=_,t.weekdays=Er,t.parseZone=fr,t.localeData=k,t.isDuration=Ne,t.monthsShort=Pr,t.weekdaysMin=Or,t.defineLocale=E,t.weekdaysShort=kr,t.normalizeUnits=j,t.relativeTimeThreshold=Kr,t.prototype=ho;var Fo=t;return Fo})}).call(t,r(105)(e))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children=[],e.webpackPolyfill=1),e}},function(e,t,r){function n(e){return r(o(e))}function o(e){return i[e]||function(){throw new Error("Cannot find module '"+e+"'.")}()}var i={"./af":107,"./af.js":107,"./ar":108,"./ar-ma":109,"./ar-ma.js":109,"./ar-sa":110,"./ar-sa.js":110,"./ar-tn":111,"./ar-tn.js":111,"./ar.js":108,"./az":112,"./az.js":112,"./be":113,"./be.js":113,"./bg":114,"./bg.js":114,"./bn":115,"./bn.js":115,"./bo":116,"./bo.js":116,"./br":117,"./br.js":117,"./bs":118,"./bs.js":118,"./ca":119,"./ca.js":119,"./cs":120,"./cs.js":120,"./cv":121,"./cv.js":121,"./cy":122,"./cy.js":122,"./da":123,"./da.js":123,"./de":124,"./de-at":125,"./de-at.js":125,"./de.js":124,"./dv":126,"./dv.js":126,"./el":127,"./el.js":127,"./en-au":128,"./en-au.js":128,"./en-ca":129,"./en-ca.js":129,"./en-gb":130,"./en-gb.js":130,"./en-ie":131,"./en-ie.js":131,"./en-nz":132,"./en-nz.js":132,"./eo":133,"./eo.js":133,"./es":134,"./es.js":134,"./et":135,"./et.js":135,"./eu":136,"./eu.js":136,"./fa":137,"./fa.js":137,"./fi":138,"./fi.js":138,"./fo":139,"./fo.js":139,"./fr":140,"./fr-ca":141,"./fr-ca.js":141,"./fr-ch":142,"./fr-ch.js":142,"./fr.js":140,"./fy":143,"./fy.js":143,"./gd":144,"./gd.js":144,"./gl":145,"./gl.js":145,"./he":146,"./he.js":146,"./hi":147,"./hi.js":147,"./hr":148,"./hr.js":148,"./hu":149,"./hu.js":149,"./hy-am":150,"./hy-am.js":150,"./id":151,"./id.js":151,"./is":152,"./is.js":152,"./it":153,"./it.js":153,"./ja":154,"./ja.js":154,"./jv":155,"./jv.js":155,"./ka":156,"./ka.js":156,"./kk":157,"./kk.js":157,"./km":158,"./km.js":158,"./ko":159,"./ko.js":159,"./lb":160,"./lb.js":160,"./lo":161,"./lo.js":161,"./lt":162,"./lt.js":162,"./lv":163,"./lv.js":163,"./me":164,"./me.js":164,"./mk":165,"./mk.js":165,"./ml":166,"./ml.js":166,"./mr":167,"./mr.js":167,"./ms":168,"./ms-my":169,"./ms-my.js":169,"./ms.js":168,"./my":170,"./my.js":170,"./nb":171,"./nb.js":171,"./ne":172,"./ne.js":172,"./nl":173,"./nl.js":173,"./nn":174,"./nn.js":174,"./pl":175,"./pl.js":175,"./pt":176,"./pt-br":177,"./pt-br.js":177,"./pt.js":176,"./ro":178,"./ro.js":178,"./ru":179,"./ru.js":179,"./se":180,"./se.js":180,"./si":181,"./si.js":181,"./sk":182,"./sk.js":182,"./sl":183,"./sl.js":183,"./sq":184,"./sq.js":184,"./sr":185,"./sr-cyrl":186,"./sr-cyrl.js":186,"./sr.js":185,"./sv":187,"./sv.js":187,"./sw":188,"./sw.js":188,"./ta":189,"./ta.js":189,"./te":190,"./te.js":190,"./th":191,"./th.js":191,"./tl-ph":192,"./tl-ph.js":192,"./tlh":193,"./tlh.js":193,"./tr":194,"./tr.js":194,"./tzl":195,"./tzl.js":195,"./tzm":196,"./tzm-latn":197,"./tzm-latn.js":197,"./tzm.js":196,"./uk":198,"./uk.js":198,"./uz":199,"./uz.js":199,"./vi":200,"./vi.js":200,"./zh-cn":201,"./zh-cn.js":201,"./zh-tw":202,"./zh-tw.js":202};n.keys=function(){return Object.keys(i)},n.resolve=o,e.exports=n,n.id=106},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(e){return/^nm$/i.test(e)},meridiem:function(e,t,r){return 12>e?r?"vm":"VM":r?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},r={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},n=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&10>=e%100?3:e%100>=11?4:5},o={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},i=function(e){return function(t,r,i,a){var s=n(t),l=o[e][n(t)];return 2===s&&(l=l[r?0:1]),l.replace(/%d/i,t)}},a=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"],s=e.defineLocale("ar",{months:a,monthsShort:a,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,r){return 12>e?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:i("s"),m:i("m"),mm:i("m"),h:i("h"),hh:i("h"),d:i("d"),dd:i("d"),M:i("M"),MM:i("M"),y:i("y"),yy:i("y")},preparse:function(e){return e.replace(/\u200f/g,"").replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(e){return r[e]}).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]}).replace(/,/g,"،")},week:{dow:6,doy:12}});return s})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},r={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},n=e.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,r){return 12>e?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(e){return r[e]}).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]}).replace(/,/g,"،")},week:{dow:6,doy:12}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"},r=e.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(e){return/^(gündüz|axşam)$/.test(e)},meridiem:function(e,t,r){return 4>e?"gecə":12>e?"səhər":17>e?"gündüz":"axşam"},ordinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(e){if(0===e)return e+"-ıncı";var r=e%10,n=e%100-r,o=e>=100?100:null;return e+(t[r]||t[n]||t[o])},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t){var r=e.split("_");return t%10===1&&t%100!==11?r[0]:t%10>=2&&4>=t%10&&(10>t%100||t%100>=20)?r[1]:r[2]}function r(e,r,n){var o={mm:r?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:r?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===n?r?"хвіліна":"хвіліну":"h"===n?r?"гадзіна":"гадзіну":e+" "+t(o[n],+e)}var n=e.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:r,mm:r,h:r,hh:r,d:"дзень",dd:r,M:"месяц",MM:r,y:"год",yy:r},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(e){return/^(дня|вечара)$/.test(e)},meridiem:function(e,t,r){return 4>e?"ночы":12>e?"раніцы":17>e?"дня":"вечара"},ordinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e%10!==2&&e%10!==3||e%100===12||e%100===13?e+"-ы":e+"-і";case"D":return e+"-га";default:return e}},week:{dow:1,doy:7}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,r=e%100;return 0===e?e+"-ев":0===r?e+"-ен":r>10&&20>r?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},r={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"},n=e.defineLocale("bn",{months:"জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্র_শনি".split("_"),weekdaysMin:"রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,isPM:function(e){return/^(দুপুর|বিকাল|রাত)$/.test(e)},meridiem:function(e,t,r){return 4>e?"রাত":10>e?"সকাল":17>e?"দুপুর":20>e?"বিকাল":"রাত"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},r={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"},n=e.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(e){return e.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,isPM:function(e){return/^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(e)},meridiem:function(e,t,r){return 4>e?"མཚན་མོ":10>e?"ཞོགས་ཀས":17>e?"ཉིན་གུང":20>e?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r){var n={mm:"munutenn",MM:"miz",dd:"devezh"};return e+" "+o(n[r],e)}function r(e){switch(n(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}function n(e){return e>9?n(e%10):e}function o(e,t){return 2===t?i(e):e}function i(e){var t={m:"v",b:"v",d:"z"};return void 0===t[e.charAt(0)]?e:t[e.charAt(0)]+e.substring(1)}var a=e.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY h[e]mm A",LLLL:"dddd, D [a viz] MMMM YYYY h[e]mm A"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:r},ordinalParse:/\d{1,2}(añ|vet)/,ordinal:function(e){var t=1===e?"añ":"vet";return e+t},week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r){var n=e+" ";switch(r){case"m":return t?"jedna minuta":"jedne minute";case"mm":return n+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return n+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return n+=1===e?"dan":"dana";case"MM":return n+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return n+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}var r=e.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ca",{months:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort:"gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"),weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd D MMMM YYYY H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(e,t){var r=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return("w"===t||"W"===t)&&(r="a"),e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e){return e>1&&5>e&&1!==~~(e/10)}function r(e,r,n,o){var i=e+" ";switch(n){case"s":return r||o?"pár sekund":"pár sekundami";case"m":return r?"minuta":o?"minutu":"minutou";case"mm":return r||o?i+(t(e)?"minuty":"minut"):i+"minutami";case"h":return r?"hodina":o?"hodinu":"hodinou";case"hh":return r||o?i+(t(e)?"hodiny":"hodin"):i+"hodinami";case"d":return r||o?"den":"dnem";case"dd":return r||o?i+(t(e)?"dny":"dní"):i+"dny";case"M":return r||o?"měsíc":"měsícem";case"MM":return r||o?i+(t(e)?"měsíce":"měsíců"):i+"měsíci";case"y":return r||o?"rok":"rokem";case"yy":return r||o?i+(t(e)?"roky":"let"):i+"lety"}}var n="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),o="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),i=e.defineLocale("cs",{months:n,monthsShort:o,monthsParse:function(e,t){var r,n=[];for(r=0;12>r;r++)n[r]=new RegExp("^"+e[r]+"$|^"+t[r]+"$","i");return n}(n,o),shortMonthsParse:function(e){var t,r=[];for(t=0;12>t;t++)r[t]=new RegExp("^"+e[t]+"$","i");return r}(o),longMonthsParse:function(e){var t,r=[];for(t=0;12>t;t++)r[t]=new RegExp("^"+e[t]+"$","i");return r}(n),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(e){var t=/сехет$/i.exec(e)?"рен":/ҫул$/i.exec(e)?"тан":"ран";return e+t},past:"%s каялла",s:"пӗр-ик ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},ordinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),longDateFormat:{
-LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},ordinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(e){var t=e,r="",n=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"];return t>20?r=40===t||50===t||60===t||80===t||100===t?"fed":"ain":t>0&&(r=n[t]),e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY HH:mm"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?o[r][0]:o[r][1]}var r=e.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?o[r][0]:o[r][1]}var r=e.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],r=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],n=e.defineLocale("dv",{months:t,monthsShort:t,weekdays:r,weekdaysShort:r,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(e){return""===e},meridiem:function(e,t,r){return 12>e?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:7,doy:12}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e){return e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}var r=e.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(e,t){return/D/.test(t.substring(0,t.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(e,t,r){return e>11?r?"μμ":"ΜΜ":r?"πμ":"ΠΜ"},isPM:function(e){return"μ"===(e+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(e,r){var n=this._calendarEl[e],o=r&&r.hours();return t(n)&&(n=n.apply(r)),n.replace("{}",o%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},ordinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"D MMMM, YYYY",LLL:"D MMMM, YYYY h:mm A",LLLL:"dddd, D MMMM, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato".split("_"),weekdaysShort:"Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Ĵa_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd, [la] D[-an de] MMMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(e){return"p"===e.charAt(0).toLowerCase()},meridiem:function(e,t,r){return e>11?r?"p.t.m.":"P.T.M.":r?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaŭ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),r="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),n=e.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,n){return/-MMM-/.test(n)?r[e.month()]:t[e.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o={s:["mõne sekundi","mõni sekund","paar sekundit"],m:["ühe minuti","üks minut"],mm:[e+" minuti",e+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[e+" tunni",e+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[e+" kuu",e+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[e+" aasta",e+" aastat"]};return t?o[r][2]?o[r][2]:o[r][1]:n?o[r][0]:o[r][1]}var r=e.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d päeva",M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},r={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"},n=e.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(e){return/بعد از ظهر/.test(e)},meridiem:function(e,t,r){return 12>e?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(e){return e.replace(/[۰-۹]/g,function(e){return r[e]}).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]}).replace(/,/g,"،")},ordinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,n,o){var i="";switch(n){case"s":return o?"muutaman sekunnin":"muutama sekunti";case"m":return o?"minuutin":"minuutti";case"mm":i=o?"minuutin":"minuuttia";break;case"h":return o?"tunnin":"tunti";case"hh":i=o?"tunnin":"tuntia";break;case"d":return o?"päivän":"päivä";case"dd":i=o?"päivän":"päivää";break;case"M":return o?"kuukauden":"kuukausi";case"MM":i=o?"kuukauden":"kuukautta";break;case"y":return o?"vuoden":"vuosi";case"yy":i=o?"vuoden":"vuotta"}return i=r(e,o)+" "+i}function r(e,t){return 10>e?t?o[e]:n[e]:e}var n="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),o=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",n[7],n[8],n[9]],i=e.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",m:"ein minutt",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaði",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|)/,ordinal:function(e){return e+(1===e?"er":"")},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|e)/,ordinal:function(e){return e+(1===e?"er":"e")}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|e)/,ordinal:function(e){return e+(1===e?"er":"e")},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),r="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),n=e.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(e,n){return/-MMM-/.test(n)?r[e.month()]:t[e.month()]},weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],r=["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],n=["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],o=["Did","Dil","Dim","Dic","Dia","Dih","Dis"],i=["Dò","Lu","Mà","Ci","Ar","Ha","Sa"],a=e.defineLocale("gd",{months:t,monthsShort:r,monthsParseExact:!0,weekdays:n,weekdaysShort:o,weekdaysMin:i,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-màireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"mìos",MM:"%d mìosan",y:"bliadhna",yy:"%d bliadhna"},ordinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){var t=1===e?"d":e%10===2?"na":"mh";return e+t},week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("gl",{months:"Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro".split("_"),monthsShort:"Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.".split("_"),weekdays:"Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado".split("_"),weekdaysShort:"Dom._Lun._Mar._Mér._Xov._Ven._Sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mé_Xo_Ve_Sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd D MMMM YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(e){return"uns segundos"===e?"nuns segundos":"en "+e},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY HH:mm",LLLL:"dddd, D [ב]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(e){return 2===e?"שעתיים":e+" שעות"},d:"יום",dd:function(e){return 2===e?"יומיים":e+" ימים"},M:"חודש",MM:function(e){return 2===e?"חודשיים":e+" חודשים"},y:"שנה",yy:function(e){return 2===e?"שנתיים":e%10===0&&10!==e?e+" שנה":e+" שנים"}}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},r={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},n=e.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm बजे",LLLL:"dddd, D MMMM YYYY, A h:mm बजे"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात"===t?4>e?e:e+12:"सुबह"===t?e:"दोपहर"===t?e>=10?e:e+12:"शाम"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"रात":10>e?"सुबह":17>e?"दोपहर":20>e?"शाम":"रात"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){
-"use strict";function t(e,t,r){var n=e+" ";switch(r){case"m":return t?"jedna minuta":"jedne minute";case"mm":return n+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return n+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return n+=1===e?"dan":"dana";case"MM":return n+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return n+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}var r=e.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o=e;switch(r){case"s":return n||t?"néhány másodperc":"néhány másodperce";case"m":return"egy"+(n||t?" perc":" perce");case"mm":return o+(n||t?" perc":" perce");case"h":return"egy"+(n||t?" óra":" órája");case"hh":return o+(n||t?" óra":" órája");case"d":return"egy"+(n||t?" nap":" napja");case"dd":return o+(n||t?" nap":" napja");case"M":return"egy"+(n||t?" hónap":" hónapja");case"MM":return o+(n||t?" hónap":" hónapja");case"y":return"egy"+(n||t?" év":" éve");case"yy":return o+(n||t?" év":" éve")}return""}function r(e){return(e?"":"[múlt] ")+"["+n[this.day()]+"] LT[-kor]"}var n="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" "),o=e.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(e){return"u"===e.charAt(1).toLowerCase()},meridiem:function(e,t,r){return 12>e?r===!0?"de":"DE":r===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return r.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return r.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return o})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., HH:mm",LLLL:"dddd, D MMMM YYYY թ., HH:mm"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(e){return/^(ցերեկվա|երեկոյան)$/.test(e)},meridiem:function(e){return 4>e?"գիշերվա":12>e?"առավոտվա":17>e?"ցերեկվա":"երեկոյան"},ordinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(e,t){switch(t){case"DDD":case"w":case"W":case"DDDo":return 1===e?e+"-ին":e+"-րդ";default:return e}},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"siang"===t?e>=11?e:e+12:"sore"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"pagi":15>e?"siang":19>e?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e){return e%100===11?!0:e%10===1?!1:!0}function r(e,r,n,o){var i=e+" ";switch(n){case"s":return r||o?"nokkrar sekúndur":"nokkrum sekúndum";case"m":return r?"mínúta":"mínútu";case"mm":return t(e)?i+(r||o?"mínútur":"mínútum"):r?i+"mínúta":i+"mínútu";case"hh":return t(e)?i+(r||o?"klukkustundir":"klukkustundum"):i+"klukkustund";case"d":return r?"dagur":o?"dag":"degi";case"dd":return t(e)?r?i+"dagar":i+(o?"daga":"dögum"):r?i+"dagur":i+(o?"dag":"degi");case"M":return r?"mánuður":o?"mánuð":"mánuði";case"MM":return t(e)?r?i+"mánuðir":i+(o?"mánuði":"mánuðum"):r?i+"mánuður":i+(o?"mánuð":"mánuði");case"y":return r||o?"ár":"ári";case"yy":return t(e)?i+(r||o?"ár":"árum"):i+(r||o?"ár":"ári")}}var n=e.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:r,m:r,mm:r,h:"klukkustund",hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"),weekdaysShort:"Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"),weekdaysMin:"Do_Lu_Ma_Me_Gi_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(e){return(/^[0-9].+$/.test(e)?"tra":"in")+" "+e},past:"%s fa",s:"alcuni secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ja",{months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"Ah時m分",LTS:"Ah時m分s秒",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah時m分",LLLL:"YYYY年M月D日Ah時m分 dddd"},meridiemParse:/午前|午後/i,isPM:function(e){return"午後"===e},meridiem:function(e,t,r){return 12>e?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(e,t){return 12===e&&(e=0),"enjing"===t?e:"siyang"===t?e>=11?e:e+12:"sonten"===t||"ndalu"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"enjing":15>e?"siyang":19>e?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ka",{months:{standalone:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),format:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(e){return/(წამი|წუთი|საათი|წელი)/.test(e)?e.replace(/ი$/,"ში"):e+"ში"},past:function(e){return/(წამი|წუთი|საათი|დღე|თვე)/.test(e)?e.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(e)?e.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(e){return 0===e?e:1===e?e+"-ლი":20>e||100>=e&&e%20===0||e%100===0?"მე-"+e:e+"-ე"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"},r=e.defineLocale("kk",{months:"Қаңтар_Ақпан_Наурыз_Сәуір_Мамыр_Маусым_Шілде_Тамыз_Қыркүйек_Қазан_Қараша_Желтоқсан".split("_"),monthsShort:"Қаң_Ақп_Нау_Сәу_Мам_Мау_Шіл_Там_Қыр_Қаз_Қар_Жел".split("_"),weekdays:"Жексенбі_Дүйсенбі_Сейсенбі_Сәрсенбі_Бейсенбі_Жұма_Сенбі".split("_"),weekdaysShort:"Жек_Дүй_Сей_Сәр_Бей_Жұм_Сен".split("_"),weekdaysMin:"Жк_Дй_Сй_Ср_Бй_Жм_Сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},ordinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(e){var r=e%10,n=e>=100?100:null;return e+(t[e]||t[r]||t[n])},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("km",{months:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysMin:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h시 m분",LTS:"A h시 m분 s초",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h시 m분",LLLL:"YYYY년 MMMM D일 dddd A h시 m분"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇초",ss:"%d초",m:"일분",mm:"%d분",h:"한시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한달",MM:"%d달",y:"일년",yy:"%d년"},ordinalParse:/\d{1,2}일/,ordinal:"%d일",meridiemParse:/오전|오후/,isPM:function(e){return"오후"===e},meridiem:function(e,t,r){return 12>e?"오전":"오후"}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return t?o[r][0]:o[r][1]}function r(e){var t=e.substr(0,e.indexOf(" "));return o(t)?"a "+e:"an "+e}function n(e){var t=e.substr(0,e.indexOf(" "));return o(t)?"viru "+e:"virun "+e}function o(e){if(e=parseInt(e,10),isNaN(e))return!1;if(0>e)return!0;if(10>e)return e>=4&&7>=e?!0:!1;if(100>e){var t=e%10,r=e/10;return o(0===t?r:t)}if(1e4>e){for(;e>=10;)e/=10;return o(e)}return e/=1e3,o(e)}var i=e.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:r,past:n,s:"e puer Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d Méint",y:t,yy:"%d Joer"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"ວັນdddd D MMMM YYYY HH:mm"},meridiemParse:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(e){return"ຕອນແລງ"===e},meridiem:function(e,t,r){return 12>e?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},ordinalParse:/(ທີ່)\d{1,2}/,ordinal:function(e){return"ທີ່"+e}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){return t?"kelios sekundės":n?"kelių sekundžių":"kelias sekundes"}function r(e,t,r,n){return t?o(r)[0]:n?o(r)[1]:o(r)[2]}function n(e){return e%10===0||e>10&&20>e}function o(e){return a[e].split("_")}function i(e,t,i,a){var s=e+" ";return 1===e?s+r(e,t,i[0],a):t?s+(n(e)?o(i)[1]:o(i)[0]):a?s+o(i)[1]:s+(n(e)?o(i)[1]:o(i)[2])}var a={m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"},s=e.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_")},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:t,m:r,mm:i,h:r,hh:i,d:r,dd:i,M:r,MM:i,y:r,yy:i},ordinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}});return s})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r){return r?t%10===1&&11!==t?e[2]:e[3]:t%10===1&&11!==t?e[0]:e[1]}function r(e,r,n){return e+" "+t(i[n],e,r)}function n(e,r,n){return t(i[n],e,r)}function o(e,t){return t?"dažas sekundes":"dažām sekundēm"}var i={m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")},a=e.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:o,m:n,mm:r,h:n,hh:r,d:n,dd:r,M:n,MM:r,y:n,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={words:{m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&4>=e?t[1]:t[2]},translate:function(e,r,n){var o=t.words[n];return 1===n.length?r?o[0]:o[1]:e+" "+t.correctGrammaticalCase(e,o)}},r=e.defineLocale("me",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sri.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var e=["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,r=e%100;return 0===e?e+"-ев":0===r?e+"-ен":r>10&&20>r?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -നു",LLLL:"dddd, D MMMM YYYY, A h:mm -നു"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,isPM:function(e){return/^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(e)},meridiem:function(e,t,r){return 4>e?"രാത്രി":12>e?"രാവിലെ":17>e?"ഉച്ച കഴിഞ്ഞ്":20>e?"വൈകുന്നേരം":"രാത്രി"}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o="";if(t)switch(r){case"s":o="काही सेकंद";break;case"m":o="एक मिनिट";break;case"mm":o="%d मिनिटे";break;case"h":o="एक तास";break;case"hh":o="%d तास";break;case"d":o="एक दिवस";break;case"dd":o="%d दिवस";break;case"M":o="एक महिना";break;case"MM":o="%d महिने";break;case"y":o="एक वर्ष";break;case"yy":o="%d वर्षे"}else switch(r){case"s":o="काही सेकंदां";break;case"m":o="एका मिनिटा";break;case"mm":o="%d मिनिटां";break;case"h":o="एका तासा";break;case"hh":o="%d तासां";break;case"d":o="एका दिवसा";break;case"dd":o="%d दिवसां";break;case"M":o="एका महिन्या";break;case"MM":o="%d महिन्यां";break;case"y":o="एका वर्षा";break;case"yy":o="%d वर्षां"}return o.replace(/%d/i,e)}var r={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},o=e.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,function(e){return n[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return r[e]})},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात्री"===t?4>e?e:e+12:"सकाळी"===t?e:"दुपारी"===t?e>=10?e:e+12:"सायंकाळी"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"रात्री":10>e?"सकाळी":17>e?"दुपारी":20>e?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}});return o})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"pagi":15>e?"tengahari":19>e?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"pagi":15>e?"tengahari":19>e?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},r={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"},n=e.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),
-weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(e){return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},r={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},n=e.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(e,t){return 12===e&&(e=0),"राति"===t?4>e?e:e+12:"बिहान"===t?e:"दिउँसो"===t?e>=10?e:e+12:"साँझ"===t?e+12:void 0},meridiem:function(e,t,r){return 3>e?"राति":12>e?"बिहान":16>e?"दिउँसो":20>e?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),r="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),n=e.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(e,n){return/-MMM-/.test(n)?r[e.month()]:t[e.month()]},weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"Zo_Ma_Di_Wo_Do_Vr_Za".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s sidan",s:"nokre sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e){return 5>e%10&&e%10>1&&~~(e/10)%10!==1}function r(e,r,n){var o=e+" ";switch(n){case"m":return r?"minuta":"minutę";case"mm":return o+(t(e)?"minuty":"minut");case"h":return r?"godzina":"godzinę";case"hh":return o+(t(e)?"godziny":"godzin");case"MM":return o+(t(e)?"miesiące":"miesięcy");case"yy":return o+(t(e)?"lata":"lat")}}var n="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),o="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_"),i=e.defineLocale("pl",{months:function(e,t){return""===t?"("+o[e.month()]+"|"+n[e.month()]+")":/D MMMM/.test(t)?o[e.month()]:n[e.month()]},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"nie_pon_wt_śr_czw_pt_sb".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:r,y:"rok",yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("pt",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Dom_2ª_3ª_4ª_5ª_6ª_Sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Dom_2ª_3ª_4ª_5ª_6ª_Sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"poucos segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº"});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r){var n={mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},o=" ";return(e%100>=20||e>=100&&e%100===0)&&(o=" de "),e+o+n[r]}var r=e.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:t,h:"o oră",hh:t,d:"o zi",dd:t,M:"o lună",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t){var r=e.split("_");return t%10===1&&t%100!==11?r[0]:t%10>=2&&4>=t%10&&(10>t%100||t%100>=20)?r[1]:r[2]}function r(e,r,n){var o={mm:r?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"};return"m"===n?r?"минута":"минуту":e+" "+t(o[n],+e)}var n=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[й|я]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],o=e.defineLocale("ru",{months:{format:"Января_Февраля_Марта_Апреля_Мая_Июня_Июля_Августа_Сентября_Октября_Ноября_Декабря".split("_"),standalone:"Январь_Февраль_Март_Апрель_Май_Июнь_Июль_Август_Сентябрь_Октябрь_Ноябрь_Декабрь".split("_")},monthsShort:{format:"янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек".split("_"),standalone:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_")},weekdays:{standalone:"Воскресенье_Понедельник_Вторник_Среда_Четверг_Пятница_Суббота".split("_"),format:"Воскресенье_Понедельник_Вторник_Среду_Четверг_Пятницу_Субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"Вс_Пн_Вт_Ср_Чт_Пт_Сб".split("_"),weekdaysMin:"Вс_Пн_Вт_Ср_Чт_Пт_Сб".split("_"),monthsParse:n,longMonthsParse:n,shortMonthsParse:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сегодня в] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT";switch(this.day()){case 0:return"[В следующее] dddd [в] LT";case 1:case 2:case 4:return"[В следующий] dddd [в] LT";case 3:case 5:case 6:return"[В следующую] dddd [в] LT"}},lastWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:r,mm:r,h:"час",hh:r,d:"день",dd:r,M:"месяц",MM:r,y:"год",yy:r},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(e){return/^(дня|вечера)$/.test(e)},meridiem:function(e,t,r){return 4>e?"ночи":12>e?"утра":17>e?"дня":"вечера"},ordinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":return e+"-й";case"D":return e+"-го";case"w":case"W":return e+"-я";default:return e}},week:{dow:1,doy:7}});return o})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s geažes",past:"maŋit %s",s:"moadde sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta mánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".split("_"),longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},ordinalParse:/\d{1,2} වැනි/,ordinal:function(e){return e+" වැනි"},meridiem:function(e,t,r){return e>11?r?"ප.ව.":"පස් වරු":r?"පෙ.ව.":"පෙර වරු"}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e){return e>1&&5>e}function r(e,r,n,o){var i=e+" ";switch(n){case"s":return r||o?"pár sekúnd":"pár sekundami";case"m":return r?"minúta":o?"minútu":"minútou";case"mm":return r||o?i+(t(e)?"minúty":"minút"):i+"minútami";case"h":return r?"hodina":o?"hodinu":"hodinou";case"hh":return r||o?i+(t(e)?"hodiny":"hodín"):i+"hodinami";case"d":return r||o?"deň":"dňom";case"dd":return r||o?i+(t(e)?"dni":"dní"):i+"dňami";case"M":return r||o?"mesiac":"mesiacom";case"MM":return r||o?i+(t(e)?"mesiace":"mesiacov"):i+"mesiacmi";case"y":return r||o?"rok":"rokom";case"yy":return r||o?i+(t(e)?"roky":"rokov"):i+"rokmi"}}var n="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),o="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_"),i=e.defineLocale("sk",{months:n,monthsShort:o,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o=e+" ";switch(r){case"s":return t||n?"nekaj sekund":"nekaj sekundami";case"m":return t?"ena minuta":"eno minuto";case"mm":return o+=1===e?t?"minuta":"minuto":2===e?t||n?"minuti":"minutama":5>e?t||n?"minute":"minutami":t||n?"minut":"minutami";case"h":return t?"ena ura":"eno uro";case"hh":return o+=1===e?t?"ura":"uro":2===e?t||n?"uri":"urama":5>e?t||n?"ure":"urami":t||n?"ur":"urami";case"d":return t||n?"en dan":"enim dnem";case"dd":return o+=1===e?t||n?"dan":"dnem":2===e?t||n?"dni":"dnevoma":t||n?"dni":"dnevi";case"M":return t||n?"en mesec":"enim mesecem";case"MM":return o+=1===e?t||n?"mesec":"mesecem":2===e?t||n?"meseca":"mesecema":5>e?t||n?"mesece":"meseci":t||n?"mesecev":"meseci";case"y":return t||n?"eno leto":"enim letom";case"yy":return o+=1===e?t||n?"leto":"letom":2===e?t||n?"leti":"letoma":5>e?t||n?"leta":"leti":t||n?"let":"leti"}}var r=e.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),meridiemParse:/PD|MD/,isPM:function(e){return"M"===e.charAt(0)},meridiem:function(e,t,r){return 12>e?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={words:{m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&4>=e?t[1]:t[2]},translate:function(e,r,n){var o=t.words[n];return 1===n.length?r?o[0]:o[1]:e+" "+t.correctGrammaticalCase(e,o)}},r=e.defineLocale("sr",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sre.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var e=["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mesec",MM:t.translate,y:"godinu",yy:t.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={words:{m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&4>=e?t[1]:t[2]},translate:function(e,r,n){var o=t.words[n];return 1===n.length?r?o[0]:o[1]:e+" "+t.correctGrammaticalCase(e,o)}},r=e.defineLocale("sr-cyrl",{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],monthsShort:["јан.","феб.","мар.","апр.","мај","јун","јул","авг.","сеп.","окт.","нов.","дец."],weekdays:["недеља","понедељак","уторак","среда","четвртак","петак","субота"],weekdaysShort:["нед.","пон.","уто.","сре.","чет.","пет.","суб."],weekdaysMin:["не","по","ут","ср","че","пе","су"],longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var e=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"дан",dd:t.translate,M:"месец",MM:t.translate,y:"годину",yy:t.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}(e|a)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"e":1===t?"a":2===t?"a":"e";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"masiku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},r={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"},n=e.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},ordinalParse:/\d{1,2}வது/,ordinal:function(e){return e+"வது"},preparse:function(e){return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(e,t,r){return 2>e?" யாமம்":6>e?" வைகறை":10>e?" காலை":14>e?" நண்பகல்":18>e?" எற்பாடு":22>e?" மாலை":" யாமம்"},meridiemHour:function(e,t){return 12===e&&(e=0),"யாமம்"===t?2>e?e:e+12:"வைகறை"===t||"காலை"===t?e:"நண்பகல்"===t&&e>=10?e:e+12},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జూలై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జూలై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},ordinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(e,t){return 12===e&&(e=0),"రాత్రి"===t?4>e?e:e+12:"ఉదయం"===t?e:"మధ్యాహ్నం"===t?e>=10?e:e+12:"సాయంత్రం"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"రాత్రి":10>e?"ఉదయం":17>e?"మధ్యాహ్నం":20>e?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา".split("_"),weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),longDateFormat:{LT:"H นาฬิกา m นาที",LTS:"H นาฬิกา m นาที s วินาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H นาฬิกา m นาที",LLLL:"วันddddที่ D MMMM YYYY เวลา H นาฬิกา m นาที"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(e){return"หลังเที่ยง"===e},meridiem:function(e,t,r){return 12>e?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"[Ngayon sa] LT",nextDay:"[Bukas sa] LT",nextWeek:"dddd [sa] LT",lastDay:"[Kahapon sa] LT",lastWeek:"dddd [huling linggo] LT",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},ordinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){
-"use strict";function t(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"leS":-1!==e.indexOf("jar")?t.slice(0,-3)+"waQ":-1!==e.indexOf("DIS")?t.slice(0,-3)+"nem":t+" pIq"}function r(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"Hu’":-1!==e.indexOf("jar")?t.slice(0,-3)+"wen":-1!==e.indexOf("DIS")?t.slice(0,-3)+"ben":t+" ret"}function n(e,t,r,n){var i=o(e);switch(r){case"mm":return i+" tup";case"hh":return i+" rep";case"dd":return i+" jaj";case"MM":return i+" jar";case"yy":return i+" DIS"}}function o(e){var t=Math.floor(e%1e3/100),r=Math.floor(e%100/10),n=e%10,o="";return t>0&&(o+=i[t]+"vatlh"),r>0&&(o+=(""!==o?" ":"")+i[r]+"maH"),n>0&&(o+=(""!==o?" ":"")+i[n]),""===o?"pagh":o}var i="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_"),a=e.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".split("_"),weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:t,past:r,s:"puS lup",m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"},r=e.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinalParse:/\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,ordinal:function(e){if(0===e)return e+"'ıncı";var r=e%10,n=e%100-r,o=e>=100?100:null;return e+(t[r]||t[n]||t[o])},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t,r,n){var o={s:["viensas secunds","'iensas secunds"],m:["'n míut","'iens míut"],mm:[e+" míuts",""+e+" míuts"],h:["'n þora","'iensa þora"],hh:[e+" þoras",""+e+" þoras"],d:["'n ziua","'iensa ziua"],dd:[e+" ziuas",""+e+" ziuas"],M:["'n mes","'iens mes"],MM:[e+" mesen",""+e+" mesen"],y:["'n ar","'iens ar"],yy:[e+" ars",""+e+" ars"]};return n?o[r][0]:t?o[r][0]:o[r][1]}var r=e.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiem:function(e,t,r){return e>11?r?"d'o":"D'O":r?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";function t(e,t){var r=e.split("_");return t%10===1&&t%100!==11?r[0]:t%10>=2&&4>=t%10&&(10>t%100||t%100>=20)?r[1]:r[2]}function r(e,r,n){var o={mm:r?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:r?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===n?r?"хвилина":"хвилину":"h"===n?r?"година":"годину":e+" "+t(o[n],+e)}function n(e,t){var r={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")},n=/(\[[ВвУу]\]) ?dddd/.test(t)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(t)?"genitive":"nominative";return r[n][e.day()]}function o(e){return function(){return e+"о"+(11===this.hours()?"б":"")+"] LT"}}var i=e.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:n,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"},calendar:{sameDay:o("[Сьогодні "),nextDay:o("[Завтра "),lastDay:o("[Вчора "),nextWeek:o("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return o("[Минулої] dddd [").call(this);case 1:case 2:case 4:return o("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:r,mm:r,h:"годину",hh:r,d:"день",dd:r,M:"місяць",MM:r,y:"рік",yy:r},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(e){return/^(дня|вечора)$/.test(e)},meridiem:function(e,t,r){return 4>e?"ночі":12>e?"ранку":17>e?"дня":"вечора"},ordinalParse:/\d{1,2}-(й|го)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e+"-й";case"D":return e+"-го";default:return e}},week:{dow:1,doy:7}});return i})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},ordinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(104))}(this,function(e){"use strict";var t=e.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"Ah点mm分",LTS:"Ah点m分s秒",L:"YYYY-MM-DD",LL:"YYYY年MMMD日",LLL:"YYYY年MMMD日Ah点mm分",LLLL:"YYYY年MMMD日ddddAh点mm分",l:"YYYY-MM-DD",ll:"YYYY年MMMD日",lll:"YYYY年MMMD日Ah点mm分",llll:"YYYY年MMMD日ddddAh点mm分"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"下午"===t||"晚上"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,r){var n=100*e+t;return 600>n?"凌晨":900>n?"早上":1130>n?"上午":1230>n?"中午":1800>n?"下午":"晚上"},calendar:{sameDay:function(){return 0===this.minutes()?"[今天]Ah[点整]":"[今天]LT"},nextDay:function(){return 0===this.minutes()?"[明天]Ah[点整]":"[明天]LT"},lastDay:function(){return 0===this.minutes()?"[昨天]Ah[点整]":"[昨天]LT"},nextWeek:function(){var t,r;return t=e().startOf("week"),r=this.unix()-t.unix()>=604800?"[下]":"[本]",0===this.minutes()?r+"dddAh点整":r+"dddAh点mm"},lastWeek:function(){var t,r;return t=e().startOf("week"),r=this.unix()=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,r){var n=100*e+t;return 900>n?"早上":1130>n?"上午":1230>n?"中午":1800>n?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"一分鐘",mm:"%d分鐘",h:"一小時",hh:"%d小時",d:"一天",dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}});return t})},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;r100?clearInterval(this._scrollTimer):e.deltaX>5?this._onRight():e.deltaX<-5&&this._onLeft()}},{key:"_layout",value:function(){if("row"===this.props.direction){var e=(0,c.findDOMNode)(this.refs.tiles);this.setState({overflow:e.scrollWidth>e.offsetWidth+20,overflowStart:e.scrollLeft<=20,overflowEnd:e.scrollLeft>=e.scrollWidth-e.offsetWidth});for(var t=e.getBoundingClientRect(),r=e.querySelectorAll(".tile"),n=0;nt.right?o.classList.add("tile--eclipsed"):o.classList.remove("tile--eclipsed")}}}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_trackHorizontalScroll",value:function(){if(this.state.overflow&&!this._tracking){var e=(0,c.findDOMNode)(this.refs.tiles);e.addEventListener("scroll",this._onScrollHorizontal),this._tracking=!0}}},{key:"_setSelection",value:function(){C["default"].setClassFromIndexes({containerElement:(0,c.findDOMNode)(this.refs.tiles),childSelector:".tile",selectedClass:D,selectedIndexes:this.state.selected})}},{key:"_onClick",value:function(e){var t=C["default"].onClick(e,{containerElement:(0,c.findDOMNode)(this.refs.tiles),childSelector:".tile",selectedClass:D,multiSelect:"multiple"===this.props.selectable,priorSelectedIndexes:this.state.selected});this.props.selected||this.setState({selected:t},this._setSelection),this.props.onSelect&&(1===t.length&&(t=t[0]),this.props.onSelect(t))}},{key:"render",value:function(){var e=[Y];this.props.fill&&e.push(Y+"--fill"),this.props.flush&&e.push(Y+"--flush"),this.props.size&&e.push(Y+"--"+this.props.size),this.props.selectable&&e.push(Y+"--selectable"),this.props.className&&e.push(this.props.className);var t=(0,y["default"])(this.props,(0,_["default"])(g["default"].propTypes)),r=null;this.props.onMore&&(e.push(Y+"--moreable"),r=p["default"].createElement("div",{ref:"more",className:Y+"__more"},p["default"].createElement(M["default"],null)));var n=void 0;this.props.selectable&&(n=this._onClick);var o=p["default"].createElement(g["default"],s({ref:"tiles"},t,{wrap:this.props.direction?!1:!0,direction:this.props.direction?this.props.direction:"row",
-className:e.join(" "),onClick:n}),this.props.children,r);if(this.state.overflow){if(e.push(Y+"--overflowed"),!this.state.overflowStart)var i=p["default"].createElement(T["default"],{className:Y+"__left",type:"icon",onClick:this._onLeft},p["default"].createElement(P["default"],null));if(!this.state.overflowEnd)var a=p["default"].createElement(T["default"],{className:Y+"__right",type:"icon",onClick:this._onRight},p["default"].createElement(k["default"],null));o=p["default"].createElement("div",{className:Y+"__container"},i,o,a)}return o}}]),t}(u.Component);t["default"]=z,z.propTypes=s({fill:u.PropTypes.bool,flush:u.PropTypes.bool,onMore:u.PropTypes.func,onSelect:u.PropTypes.func,selectable:u.PropTypes.oneOfType([u.PropTypes.bool,u.PropTypes.oneOf(["multiple"])]),selected:u.PropTypes.oneOfType([u.PropTypes.number,u.PropTypes.arrayOf(u.PropTypes.number)]),size:u.PropTypes.oneOf(["small","medium","large"])},g["default"].propTypes),z.defaultProps={flush:!0,justify:"start"},e.exports=t["default"]},function(e,t,r){function n(e,t,r,n){r="function"==typeof r?i(r,n,3):void 0;var a=r?r(e,t):void 0;return void 0===a?o(e,t,r):!!a}var o=r(209),i=r(79);e.exports=n},function(e,t,r){function n(e,t,r,s,l,u){return e===t?!0:null==e||null==t||!i(e)&&!a(t)?e!==e&&t!==t:o(e,t,n,r,s,l,u)}var o=r(210),i=r(57),a=r(58);e.exports=n},function(e,t,r){function n(e,t,r,n,d,y,m){var _=s(e),b=s(t),g=p,v=p;_||(g=h.call(e),g==u?g=c:g!=c&&(_=l(e))),b||(v=h.call(t),v==u?v=c:v!=c&&(b=l(t)));var T=g==c,w=v==c,M=g==v;if(M&&!_&&!T)return i(e,t,g);if(!d){var x=T&&f.call(e,"__wrapped__"),P=w&&f.call(t,"__wrapped__");if(x||P)return r(x?e.value():e,P?t.value():t,n,d,y,m)}if(!M)return!1;y||(y=[]),m||(m=[]);for(var E=y.length;E--;)if(y[E]==e)return m[E]==t;y.push(e),m.push(t);var k=(_?o:a)(e,t,r,n,d,y,m);return y.pop(),m.pop(),k}var o=r(211),i=r(213),a=r(214),s=r(65),l=r(215),u="[object Arguments]",p="[object Array]",c="[object Object]",d=Object.prototype,f=d.hasOwnProperty,h=d.toString;e.exports=n},function(e,t,r){function n(e,t,r,n,i,a,s){var l=-1,u=e.length,p=t.length;if(u!=p&&!(i&&p>u))return!1;for(;++le?s-=1:s+=1;window.getSelection().removeAllRanges()}()}else-1===a?i.push(n):i.splice(a,1);else i=-1!==a&&(e.ctrlKey||e.metaKey)?[]:t.priorSelectedIndexes}else i=[n];return i}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={normalizeIndexes:r,clearClass:n,getIndexesFromClass:i,setClassFromIndexes:o,onClick:a},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;t=t?this._onMouseOver(0):this._onMouseOver(this.state.activeXIndex+1)}}},{key:"_onMouseOver",value:function(e){this.setState({activeXIndex:e})}},{key:"_onMouseOut",value:function(){this.setState({activeXIndex:this.state.defaultXIndex})}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_bounds",value:function(e,t,r,n){var o=void 0;o=t?t.data?t:{data:t,placement:"top"}:{data:[]};var i=null,a=null,s=null,l=null;e.forEach(function(e){e.values.forEach(function(e,t){var r=e[0],n=e[1];null===i?(i=r,a=r,s=n,l=n):(i=Math.min(i,r),a=Math.max(a,r),s=Math.min(s,n),l=Math.max(l,n)),t>=o.data.length&&o.data.push({value:r,label:""})})}),null===i&&(i=0,a=1,s=0,l=100),"bar"===this.props.type&&o.data.forEach(function(t,r){var n=0;e.forEach(function(e){n+=e.values[r][1]}),l=Math.max(l,n)}),this.props.threshold&&(s=Math.min(s,this.props.threshold),l=Math.max(l,this.props.threshold)),this.props.thresholds&&this.props.thresholds.forEach(function(e){l=Math.max(l,e.value)}),this.props.hasOwnProperty("min")&&(s=this.props.min),this.props.hasOwnProperty("max")&&(l=this.props.max);var u=a-i,p=l-s;this.props.sparkline&&(r=u*(P+E));var c=r,d=n;this.props.thresholds&&(c-=w),o.placement&&(d-=T);var f="top"===o.placement?T:0,h="bottom"===o.placement?n-T:n,y=0,m=c;this.props.points&&(y+=k+2,m-=k+2);var _=c/u,b=Math.round(c/(o.data.length-1));"bar"===this.props.type&&(_=c/(u+u/(o.data.length-1)),b=Math.round(c/o.data.length));var g=d/p,v=Math.max(M,Math.round(b/8));this.props.sparkline&&(b=P,v=E);var x={minX:i,maxX:a,minY:s,maxY:l,spanX:u,spanY:p,scaleX:_,scaleY:g,graphWidth:c,graphHeight:d,graphTop:f,graphBottom:h,graphLeft:y,graphRight:m,xStepWidth:b,barPadding:v,xAxis:o};return x}},{key:"_alignLegend",value:function(){if(this.state.activeXIndex>=0&&this.refs.cursor){var e=this.state.bounds,t=this.refs.cursor,r=t.getBoundingClientRect(),n=this.refs.chart,o=n.getBoundingClientRect(),i=c["default"].findDOMNode(this.refs.legend),a=i.getBoundingClientRect(),s=r.left-o.left-a.width-1;0>s&&(s+=a.width+2),i.style.left=""+s+"px ",i.style.top=""+e.graphTop+"px "}}},{key:"_layout",value:function(){this.props.legend&&"below"!==this.props.legend.position&&this._alignLegend();var e=this.refs.chart,t=e.getBoundingClientRect();if(t.width!==this.state.width||t.height!==this.state.height){var r=this._bounds(this.props.series,this.props.xAxis,t.width,t.height),n=t.width;this.props.sparkline&&(n=r.graphWidth),this.setState({width:n,height:t.height,bounds:r})}}},{key:"_stateFromProps",value:function(e,t,r){var n=this._bounds(e.series,e.xAxis,t,r),o=-1;e.series&&e.series.length>0&&(o=0),e.hasOwnProperty("important")&&(o=e.important);var i=o;this.state&&this.state.activeXIndex>=0&&(i=this.state.activeXIndex);var a=e.size||(e.small?"small":e.large?"large":null);return{bounds:n,defaultXIndex:o,activeXIndex:i,width:t,height:r,size:a}}},{key:"_translateX",value:function(e){var t=this.state.bounds;return Math.max(t.graphLeft,Math.min(t.graphRight,Math.round((e-t.minX)*t.scaleX)))}},{key:"_translateY",value:function(e){var t=this.state.bounds;return Math.max(1,t.graphBottom-Math.max(1,this._translateHeight(e)))}},{key:"_translateHeight",value:function(e){var t=this.state.bounds;return Math.round((e-t.minY)*t.scaleY)}},{key:"_coordinates",value:function(e){return[this._translateX(e[0]),this._translateY(e[1])]}},{key:"_itemColorIndex",value:function(e,t){return e.colorIndex||"graph-"+(t+1)}},{key:"_controlCoordinates",value:function(e,t){var r=e[t],n=r;t>0&&(n=e[t-1]);var o=r;tr[1]&&r[1]>o[1]&&(a=Math.min((n[1]-r[1])/2,(r[1]-o[1])/2),s[1]=r[1]+a,l[1]=r[1]-a),[s,l]}},{key:"_renderLinesOrAreas",value:function(){var e=this.state.bounds,t=this.props.series.map(function(t,r){var n=t.values.map(function(e){return this._coordinates(e)},this),o=this._itemColorIndex(t,r),i=null,a=null,s=null,l=[];n.forEach(function(t,r){if(this.props.smooth&&(a=this._controlCoordinates(n,r)),0===r?i="M"+t.join(","):i+=this.props.smooth?" C"+s[1].join(",")+" "+a[0].join(",")+" "+t.join(","):" L"+t.join(","),this.props.points&&!this.props.sparkline){var p=Math.max(k+1,Math.min(e.graphWidth-(k+1),t[0]));l.push(u["default"].createElement("circle",{key:r,className:b+"__values-point color-index-"+o,cx:p,cy:t[1],r:k}))}s=a},this);var p=void 0;if("line"===this.props.type||this.props.points){var c=[b+"__values-line","color-index-"+o];p=u["default"].createElement("path",{fill:"none",className:c.join(" "),d:i})}var d=void 0;if("area"===this.props.type){var f="L"+n[n.length-1][0]+","+e.graphBottom+"L"+n[0][0]+","+e.graphBottom+"Z",h=i+f,c=[b+"__values-area","color-index-"+o];d=u["default"].createElement("path",{stroke:"none",className:c.join(" "),d:h})}return u["default"].createElement("g",{key:"line_group_"+r},d,p,l)},this);return t}},{key:"_renderBars",value:function(){var e=this.state.bounds,t=e.xAxis.data.map(function(t,r){var n=e.minY,o=this.props.series.map(function(t,o){var i=t.colorIndex||"graph-"+(o+1),a=t.values[r],s=this._translateHeight(a[1]),l=this._translateHeight(n);n+=a[1];var p=[b+"__values-bar","color-index-"+i];return this.props.legend&&r!==this.state.activeXIndex||p.push(b+"__values-bar--active"),"bottom"===e.xAxis.placement&&(l+=T),u["default"].createElement("rect",{key:"bar_rect_"+t.label||o,className:p.join(" "),x:this._translateX(a[0])+e.barPadding,y:this.state.height-(s+l),width:e.xStepWidth-2*e.barPadding,height:s})},this);return u["default"].createElement("g",{key:"bar_"+r},o)},this);return t}},{key:"_renderThreshold",value:function(){var e=this._translateY(this.props.threshold),t="M0,"+e+"L"+this.state.width+","+e;return u["default"].createElement("g",{className:b+"__threshold",role:"presentation"},u["default"].createElement("path",{fill:"none",d:t}))}},{key:"_labelPosition",value:function(e,t){var r=this._translateX(e),n=r,o=void 0;return("line"===this.props.type||"area"===this.props.type)&&(o="middle",n=r-x/2),0>=r&&(r=0,n=r,o="start"),r>=t.graphWidth-x?(r=t.graphWidth,n=r-x,o="end"):"bar"===this.props.type&&(r+=t.barPadding,n=r),{x:r,anchor:o,startX:n,endX:n+x}}},{key:"_labelOverlaps",value:function(e,t){return e&&t&&e.endX>t.startX&&e.startX=0&&e.xAxis.data.length>this.state.activeXIndex&&(n=this._labelPosition(e.xAxis.data[this.state.activeXIndex].value,e));var o=null;e.xAxis.data.length>0&&(o=this._labelPosition(e.xAxis.data[e.xAxis.data.length-1].value,e));var i=e.xAxis.data.map(function(i,a){var s=[b+"__xaxis-index"];a===this.state.activeXIndex&&s.push(b+"__xaxis-index--active");var l=this._labelPosition(i.value,e);return this._labelOverlaps(l,n)||0!==a&&a!==e.xAxis.data.length-1&&(this._labelOverlaps(l,r)||this._labelOverlaps(l,o))?s.push(b+"__xaxis-index--eclipse"):r=l,u["default"].createElement("g",{key:"x_axis_"+a,className:s.join(" ")},u["default"].createElement("text",{x:l.x,y:t,role:"presentation",textAnchor:l.anchor,fontSize:16},i.label))},this);return u["default"].createElement("g",{ref:"xAxis",className:b+"__xaxis"},i)}},{key:"_renderYAxis",value:function(){var e=this.state.bounds,t=e.minY,r=void 0,n=Math.max(4,w/2),o=this.props.thresholds.map(function(o,i){var a=[b+"__bar"];a.push("color-index-"+(o.colorIndex||"graph-"+(i+1))),r=i1&&(r.label=t.label,e&&(r.colorIndex=t.colorIndex)),r},this)}},{key:"_renderLegend",value:function(){var e=this._getActiveSeries(!0),t=[b+"__legend",b+"__legend--"+(this.props.legend.position||"overlay")];return u["default"].createElement(f["default"],{ref:"legend",className:t.join(" "),series:e,total:this.props.legend.total,units:this.props.units})}},{key:"_renderA11YTitle",value:function(){var e=this.props.a11yTitle;if(!this.props.a11yTitle){var t=y["default"].getMessage(this.context.intl,"Chart"),r=y["default"].getMessage(this.context.intl,this.props.type);e=r+" "+t}return e}},{key:"render",value:function(){var e=[b];e.push(b+"--"+this.props.type),this.state.size&&e.push(b+"--"+this.state.size),this.props.sparkline&&e.push(b+"--sparkline");var t=[];if("line"===this.props.type||"area"===this.props.type?t=this._renderLinesOrAreas():"bar"===this.props.type&&(t=this._renderBars()),0===t.length){e.push(b+"--loading");var r=[b+"__values"];r.push(b+"__values--loading"),r.push("color-index-loading");var n="M0,"+this.state.height/2+" L"+this.state.width+","+this.state.height/2;t.push(u["default"].createElement("g",{key:"loading"},u["default"].createElement("path",{stroke:"none",className:r.join(" "),d:n})))}var o=null;this.props.threshold&&(o=this._renderThreshold());var i=null,a=null;this.props.legend&&this.state.activeXIndex>=0&&this.props.series[0].values.length>0&&(i=this._renderCursor(),a=this._renderLegend());var s=null;this.props.xAxis&&(s=this._renderXAxis());var l=null;this.props.thresholds&&(l=this._renderYAxis());var p=void 0,c=void 0,d="img";this.props.legend&&(p=this._renderXBands("front"),c=this.props.a11yTitleId+"_x_band_"+this.state.activeXIndex,d="tablist");var f=this._renderA11YTitle(),h=void 0;f&&(h=u["default"].createElement("title",{id:this.props.a11yTitleId},f));var y=void 0;return this.props.a11yDesc&&(y=u["default"].createElement("desc",{id:this.props.a11yDescId},this.props.a11yDesc)),u["default"].createElement("div",{className:e.join(" ")},u["default"].createElement("svg",{ref:"chart",className:b+"__graphic",viewBox:"0 0 "+this.state.width+" "+this.state.height,preserveAspectRatio:"none",role:d,tabIndex:"0","aria-activedescendant":c,"aria-labelledby":this.props.a11yTitleId+" "+this.props.a11yDescId},h,y,s,l,u["default"].createElement("g",{className:b+"__values"},t),p,o,i),a)}}]),t}(l.Component);t["default"]=O,O.propTypes={a11yTitle:l.PropTypes.string,a11yTitleId:l.PropTypes.string,a11yDescId:l.PropTypes.string,a11yDesc:l.PropTypes.string,important:l.PropTypes.number,large:l.PropTypes.bool,legend:l.PropTypes.shape({position:l.PropTypes.oneOf(["overlay","after"]),total:l.PropTypes.bool}),max:l.PropTypes.number,min:l.PropTypes.number,points:l.PropTypes.bool,series:l.PropTypes.arrayOf(l.PropTypes.shape({label:l.PropTypes.string,values:l.PropTypes.arrayOf(l.PropTypes.arrayOf(l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.object]))).isRequired,units:l.PropTypes.string,colorIndex:l.PropTypes.string})).isRequired,size:l.PropTypes.oneOf(["small","medium","large"]),small:l.PropTypes.bool,smooth:l.PropTypes.bool,sparkline:l.PropTypes.bool,threshold:l.PropTypes.number,thresholds:l.PropTypes.arrayOf(l.PropTypes.shape({label:l.PropTypes.string,value:l.PropTypes.number.isRequired,colorIndex:l.PropTypes.string})),type:l.PropTypes.oneOf(["line","bar","area"]),units:l.PropTypes.string,xAxis:l.PropTypes.oneOfType([l.PropTypes.arrayOf(l.PropTypes.shape({value:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.object]).isRequired,label:l.PropTypes.string.isRequired})),l.PropTypes.shape({placement:l.PropTypes.oneOf(["top","bottom"]),data:l.PropTypes.arrayOf(l.PropTypes.shape({value:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.object]).isRequired,label:l.PropTypes.string.isRequired}).isRequired)})])},O.contextTypes={intl:l.PropTypes.object
-},O.defaultProps={a11yTitleId:"chart-title",a11yDescId:"chart-desc",min:0,type:"line"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;r1&&(n=u["default"].createElement("li",{className:d+"__total"},u["default"].createElement("span",{className:d+"__total-label"},u["default"].createElement(c["default"],{id:"Total",defaultMessage:"Total"})),u["default"].createElement("span",{className:d+"__total-value"},t,u["default"].createElement("span",{className:d+"__total-units"},this.props.units)))),u["default"].createElement("ol",{className:e.join(" "),role:"presentation"},r.reverse(),n)}}]),t}(l.Component);t["default"]=f,f.propTypes={activeIndex:l.PropTypes.number,onActive:l.PropTypes.func,series:l.PropTypes.arrayOf(l.PropTypes.shape({label:l.PropTypes.string,value:l.PropTypes.number,units:l.PropTypes.string,colorIndex:l.PropTypes.oneOfType([l.PropTypes.number,l.PropTypes.string]),onClick:l.PropTypes.func})).isRequired,total:l.PropTypes.bool,units:l.PropTypes.string,value:l.PropTypes.number},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;rn.height?(u=Math.min(n.height,l),p=Math.round(s/u),a=Math.round(p*n.height/r)):(p=Math.min(n.width,l),u=Math.round(s/p),a=Math.round(u*n.width/r));for(var c=[e];a>t&&i.length>0;){var d=i.shift();t+=d.value,c.push(d)}var f=void 0;n.width>n.height?(f={x:n.x,y:n.y,width:Math.round(r*t/n.height),height:n.height},n.x+=f.width,n.width-=f.width):(f={x:n.x,y:n.y,width:n.width,height:Math.round(r*t/n.width)},n.y+=f.height,n.height-=f.height),c.forEach(function(e){var t=void 0;f.width>f.height?(t={x:f.x,y:f.y,width:Math.round(r*e.value/f.height),height:f.height},f.x+=t.width,f.width-=t.width):(t={x:f.x,y:f.y,width:f.width,height:Math.round(r*e.value/f.width)},f.y+=t.height,f.height-=t.height),o.push({datum:e,rect:t})})};i.length>0;){a()}this.setState({items:o})}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_layout",value:function(){var e=window.innerWidth/window.innerHeight;.8>e?this.setState({legendPosition:"bottom"}):e>1.2&&this.setState({legendPosition:"right"});var t=this.refs.distribution,r=t.getBoundingClientRect();r.width===this.state.width&&r.height===this.state.height&&this.state.items||this.setState({width:r.width,height:r.height},this._placeItems)}},{key:"_itemColorIndex",value:function(e,t){return e.colorIndex||"graph-"+(t+1)}},{key:"_onPreviousDistribution",value:function(e){if(e.preventDefault(),document.activeElement===this.refs.distribution){var t=c["default"].findDOMNode(this.refs.distributionItems).childNodes.length;this.state.activeIndex-1<0?this._onActivate(t-1):this._onActivate(this.state.activeIndex-1)}}},{key:"_onNextDistribution",value:function(e){if(e.preventDefault(),document.activeElement===this.refs.distribution){var t=c["default"].findDOMNode(this.refs.distributionItems).childNodes.length;this.state.activeIndex+1>=t?this._onActivate(0):this._onActivate(this.state.activeIndex+1)}}},{key:"_onEnter",value:function(e){if(document.activeElement===this.refs.distribution&&this.refs.activeDistribution){var t=this.refs.activeDistribution.getAttribute("data-index"),r=this.props.series.filter(function(e){return e.value>0})[t];r.onClick&&r.onClick()}}},{key:"_onActivate",value:function(e){this.setState({activeIndex:e})}},{key:"_onDeactivate",value:function(){this.setState({activeIndex:0})}},{key:"_renderLegend",value:function(){return u["default"].createElement(f["default"],{className:b+"__legend",series:this.props.series,units:this.props.units,activeIndex:this.state.activeIndex,onActive:this._onActivate})}},{key:"_renderItemLabel",value:function(e,t,r){var n=[b+"__label"];e.icon||n.push("color-index-"+this._itemColorIndex(e,r)),e.icon&&n.push(b+"__label--icons"),(t.width=0&&(s=this.props.a11yTitleId+"_item_"+this.state.activeIndex);var l=u["default"].createElement("title",{id:this.props.a11yTitleId},a),p=void 0;return this.props.a11yDesc&&(p=u["default"].createElement("desc",{id:this.props.a11yDescId},this.props.a11yDesc)),u["default"].createElement("div",{ref:"container",className:e.join(" ")},u["default"].createElement("svg",{ref:"distribution",className:b+"__graphic",viewBox:"0 0 "+this.state.width+" "+this.state.height,preserveAspectRatio:"none",tabIndex:"0",role:i,"aria-activedescendant":s,"aria-labelledby":this.props.a11yTitleId+" "+this.props.a11yDescId},r,l,p,n),u["default"].createElement("div",{ref:"distributionItems"},o),t)}}]),t}(l.Component);t["default"]=x,x.contextTypes={intl:l.PropTypes.object},x.propTypes={a11yTitle:l.PropTypes.string,a11yTitleId:l.PropTypes.string,a11yDescId:l.PropTypes.string,a11yDesc:l.PropTypes.string,full:l.PropTypes.bool,legend:l.PropTypes.bool,legendTotal:l.PropTypes.bool,series:l.PropTypes.arrayOf(l.PropTypes.shape({label:l.PropTypes.string,value:l.PropTypes.number.isRequired,colorIndex:l.PropTypes.string,important:l.PropTypes.bool,onClick:l.PropTypes.func,icon:l.PropTypes.shape({width:l.PropTypes.number,height:l.PropTypes.number,svgElement:l.PropTypes.node})})),size:l.PropTypes.oneOf(["small","medium","large"]),units:l.PropTypes.string,vertical:l.PropTypes.bool},x.defaultProps={a11yTitleId:"distribution-title",a11yDescId:"distribution-desc"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;te?"portrait":"landscape"})}},{key:"render",value:function(){var e=null;if(this.props.background){var t=["login__background"];this.state.orientation&&t.push("login__background--"+this.state.orientation),e=u["default"].createElement("img",{ref:"background",className:t.join(" "),src:this.props.background})}return u["default"].createElement("div",{className:"login"},e,u["default"].createElement("div",{className:"login__container"},this.props.children))}}]),t}(l.Component);t["default"]=p,p.propTypes={background:l.PropTypes.string},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;re?this.setState({legendPlacement:"bottom"}):e>1.2&&this.setState({legendPlacement:"right"})}if("right"===this.state.legendPlacement&&this.refs.legend){var t=this.refs.activeGraphic.offsetHeight,r=d["default"].findDOMNode(this.refs.legend).offsetHeight;this.setState({tallLegend:r>t})}}},{key:"_normalizeSeries",value:function(e,t,r,n){var o=[];return e.series?o=e.series:(e.value||0===e.value)&&(o=[{value:e.value,important:!0}]),1===o.length&&e.thresholds?!function(){var e=o[0];e.colorIndex||!function(){var t=0;n.some(function(r){return t+=r.value,e.value1?this._seriesTotal(e.series):e.max&&e.max.value?e.max.value:100;var r=void 0;e.series&&"spiral"===e.type&&(r=this._seriesMax(e.series));var n=this._terminal(e.min||0),o=this._terminal(e.max||r||t),i=this._normalizeThresholds(e,n,o),a=this._normalizeSeries(e,n,o,i),s=this._importantIndex(e,a),l={importantIndex:s,activeIndex:s,series:a,thresholds:i,min:n,max:o,total:t};return l.placeLegend=!(e.legend&&e.legend.placement),l.placeLegend||(l.legendPlacement=e.legend.placement),l}},{key:"_getActiveFields",value:function(){var e=void 0;if(null===this.state.activeIndex)e={value:this.state.total,label:x["default"].getMessage(this.context.intl,"Total")};else{var t=this.state.series[this.state.activeIndex];t||(t=this.state.series[0]),e={value:t.value,label:t.label,onClick:t.onClick}}return e}},{key:"_renderActiveValue",value:function(){var e=this._getActiveFields(),t=[P+"__value"];e.onClick&&t.push(P+"__value--active");var r=void 0;return this.props.units&&(r=p["default"].createElement("span",{className:P+"__value-units large-number-font"},this.props.units)),p["default"].createElement("div",{"aria-hidden":"true",role:"presentation",className:t.join(" "),onClick:e.onClick},p["default"].createElement("span",{className:P+"__value-value large-number-font"},e.value,r),p["default"].createElement("span",{className:P+"__value-label"},e.label))}},{key:"_renderMinMax",value:function(e){var t=void 0;this.state.min.label&&(t=p["default"].createElement("div",{className:P+"__minmax-min"},this.state.min.label));var r=void 0;this.state.max.label&&(r=p["default"].createElement("div",{className:P+"__minmax-max"},this.state.max.label));var n=void 0;return(t||r)&&(n=p["default"].createElement("div",{className:P+"__minmax-container"},p["default"].createElement("div",{className:P+"__minmax"},t,r)),e.push(P+"--minmax")),n}},{key:"_renderLegend",value:function(){var e="object"===s(this.props.legend)&&this.props.legend.total;return p["default"].createElement(h["default"],{ref:"legend",className:P+"__legend",series:this.state.series,units:this.props.units,total:e,activeIndex:this.state.activeIndex,onActive:this._onActivate})}},{key:"render",value:function(){var e=[P];e.push(P+"--"+this.props.type),this.props.vertical&&e.push(P+"--vertical"),this.props.stacked&&e.push(P+"--stacked"),this.props.size&&e.push(P+"--"+this.props.size),0===this.state.series.length?e.push(P+"--loading"):1===this.state.series.length&&e.push(P+"--single"),null!==this.state.activeIndex&&e.push(P+"--active"),this.state.tallLegend&&e.push(P+"--tall-legend"),this.props.className&&e.push(this.props.className);var t=this._renderMinMax(e),r=this._renderActiveValue(),n=void 0,o=void 0;(this.props.legend||"spiral"===this.props.type)&&(o="tablist",this.props.legend&&("inline"!==this.props.legend.placement&&(n=this._renderLegend()),e.push(P+"--legend-"+this.state.legendPlacement)));var i=E[this.props.type],a=p["default"].createElement(i,{a11yTitle:this.props.a11yTitle,a11yTitleId:this.props.a11yTitleId,a11yDesc:this.props.a11yDesc,a11yDescId:this.props.a11yDescId,a11yRole:o,activeIndex:this.state.activeIndex,min:this.state.min,max:this.state.max,legend:this.props.legend,onActivate:this._onActivate,series:this.state.series,stacked:this.props.stacked,thresholds:this.state.thresholds,total:this.state.total,units:this.props.units,vertical:this.props.vertical}),s=void 0;return this.state.total>0&&(s=p["default"].createElement("div",{className:P+"__graphic-container"},a,t)),p["default"].createElement("div",{className:e.join(" ")},p["default"].createElement("div",{ref:"activeGraphic",className:P+"__value-container"},s,r),n)}}]),t}(u.Component);t["default"]=k,k.propTypes={a11yTitle:u.PropTypes.string,a11yTitleId:u.PropTypes.string,a11yDescId:u.PropTypes.string,a11yDesc:u.PropTypes.string,important:u.PropTypes.number,legend:u.PropTypes.oneOfType([u.PropTypes.bool,u.PropTypes.shape({total:u.PropTypes.bool,placement:u.PropTypes.oneOf(["right","bottom","inline"])})]),max:u.PropTypes.oneOfType([u.PropTypes.shape({value:u.PropTypes.number.isRequired,label:u.PropTypes.string}),u.PropTypes.number]),min:u.PropTypes.oneOfType([u.PropTypes.shape({value:u.PropTypes.number.isRequired,label:u.PropTypes.string}),u.PropTypes.number]),size:u.PropTypes.oneOf(["small","medium","large"]),series:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string,important:u.PropTypes.bool,onClick:u.PropTypes.func})),stacked:u.PropTypes.bool,threshold:u.PropTypes.number,thresholds:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string})),type:u.PropTypes.oneOf(["bar","arc","circle","spiral"]),units:u.PropTypes.string,value:u.PropTypes.number,vertical:u.PropTypes.bool},k.defaultProps={a11yTitleId:"meter-title",a11yDescId:"meter-desc",type:"bar"},k.contextTypes={intl:u.PropTypes.object},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;r=i-n?"0":"1",u=["M",a.x,a.y,"A",r,r,0,l,0,s.x,s.y].join(" ");return u},translateEndAngle:function(e,t,r){return Math.min(360,Math.max(0,e+t*r))},buildPath:function(e,t,r,n,o,a,l,u){if(n){var p=n.bind(null,e),c=n.bind(null,null),d={},f=void 0,h=void 0;if(l&&a){h=u;var y="title_"+a;d["aria-labelledby"]=y,d.id=a,d.role="tab",f=s["default"].createElement("title",{id:y},l)}return s["default"].createElement("g",i({key:e,ref:a},d),f,s["default"].createElement("path",{ref:h,className:r.join(" "),d:t,onFocus:p,onBlur:c,"data-index":e,onMouseOver:p,onMouseOut:c,onClick:o}))}return s["default"].createElement("path",{key:e,className:r.join(" "),d:t})}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);
-e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;t=t?this.props.onActivate(0):this.props.onActivate(this.props.activeIndex+1)}}},{key:"_onEnter",value:function(e){if(document.activeElement===this.refs.meter&&this.refs.activeMeterSlice){var t=this.refs.activeMeterSlice.getAttribute("data-index");this.props.series[t].onClick&&this.props.series[t].onClick()}}},{key:"_renderLoading",value:function(){var e=[b+"__slice"];e.push(b+"__slice--loading"),e.push("color-index-loading");var t=this._loadingCommands();return[p["default"].createElement("path",{key:"loading",className:e.join(" "),d:t})]}},{key:"_renderValues",value:function(){var e=this,t=void 0;return t=this.props.stacked?this._renderSlices(this.props.series,0):this.props.series.map(function(t,r){return e._renderSlice(r,t,r,e.props.min.value)}),0===t.length&&(t=this._renderLoading()),p["default"].createElement("g",{ref:"meterValues",className:b+"__values"},t)}},{key:"_renderTracks",value:function(){var e=this,t={value:this.props.max.value,colorIndex:"unset"},r=void 0;return r=this.props.stacked?this._renderSlice(0,t,0,this.props.min.value,!0):this.props.series.map(function(r,n){return e._renderSlice(n,t,n,e.props.min.value,!0)}),p["default"].createElement("g",{className:b+"__tracks"},r)}},{key:"_renderThresholds",value:function(){var e=void 0,t=this._renderSlices(this.props.thresholds,-.4,!0);return t.length>0&&(e=p["default"].createElement("g",{className:b+"__thresholds"},t)),e}},{key:"_renderTotal",value:function(){return this.props.series.map(function(e){return e.value}).reduce(function(e,t){return e+t},0)}},{key:"_renderTopLayer",value:function(){return null}},{key:"_renderInlineLegend",value:function(){return null}},{key:"_renderA11YTitle",value:function(){var e=this.props.a11yTitle;if(!e){var t=y["default"].getMessage(this.context.intl,this.displayName),r=y["default"].getMessage(this.context.intl,"Meter");e=t+" "+r}return e}},{key:"_renderA11YDesc",value:function(){var e=this,t=this.props.a11yDesc,r=this.props.units||"";if(!t){var n=y["default"].getMessage(this.context.intl,"Value");if(t=", "+n+": "+this._renderTotal()+" "+r,this.props.min){var o=y["default"].getMessage(this.context.intl,"Min");t+=", "+o+": "+this.props.min.value+" "+r}if(this.props.max){var i=y["default"].getMessage(this.context.intl,"Max");t+=", "+i+": "+this.props.max.value+" "+r}this.props.thresholds&&!function(){var r=y["default"].getMessage(e.context.intl,"Threshold");e.props.thresholds.forEach(function(e){e.ariaLabel&&(t+=", "+r+": "+e.ariaLabel)})}()}return t}},{key:"render",value:function(){var e=[b];this.props.className&&e.push(this.props.className);var t=this._renderTracks(),r=this._renderValues(),n=this._renderThresholds(),o=this._renderTopLayer(),i=this._renderInlineLegend(),a=this._renderA11YTitle(),s=this._renderA11YDesc(),l=this.props.a11yDescId+"_"+(this.props.activeIndex||0);return p["default"].createElement("svg",{ref:"meter",className:b+"__graphic",tabIndex:"0",role:this.props.a11yRole,width:this.props.vertical?null:this.state.viewBoxWidth,height:this.props.vertical?this.state.viewBoxHeight:null,viewBox:"0 0 "+this.state.viewBoxWidth+" "+this.state.viewBoxHeight,preserveAspectRatio:"xMidYMid meet","aria-activedescendant":l,"aria-labelledby":this.props.a11yTitleId+" "+this.props.a11yDescId},p["default"].createElement("title",{id:this.props.a11yTitleId},a),p["default"].createElement("desc",{id:this.props.a11yDescId},s),t,n,r,i,o)}}]),t}(u.Component);t["default"]=g,g.propTypes=s({a11yRole:u.PropTypes.string,stacked:u.PropTypes.bool,thresholds:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string})).isRequired,vertical:u.PropTypes.bool},f.propTypes),g.contextTypes={intl:u.PropTypes.object},g.defaultProps={a11yRole:"img"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;rd&&console.warn("You cannot have more than "+Math.round(d/f)+" data values in a circle Meter");var t={startAngle:1,anglePer:e.max?358/(e.max.value-e.min.value):0,angleOffset:180,viewBoxWidth:c,viewBoxHeight:c};return t}},{key:"_sliceCommands",value:function(e,t,r){var n=(0,l.translateEndAngle)(this.state.startAngle,this.state.anglePer,r),o=Math.max(n+f/2,(0,l.translateEndAngle)(n,this.state.anglePer,t.value)),i=Math.max(1,d-e*f);return(0,l.arcCommands)(c/2,c/2,i,n+this.state.angleOffset,o+this.state.angleOffset)}}]),t}(p["default"]);t["default"]=h,h.displayName="Circle",e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function s(e,t,r,n,o,i){var a=(0,c.polarToCartesian)(e,t,r-(i-b),o-1),s=(0,c.polarToCartesian)(e,t,r,o-1),l=["M",e,t-b,"A",b,b,0,1,1,e,t+b,"A",b,b,0,1,1,e,t-b,"M",a.x,a.y,"L",s.x,s.y].join(" ");return l}var l=function(){function e(e,t){for(var r=0;r2?r[a-2]:void 0,l=a>2?r[2]:void 0,u=a>1?r[a-1]:void 0;for("function"==typeof s?(s=o(s,u,5),a-=2):(s="function"==typeof u?u:void 0,a-=s?1:0),l&&i(r[0],r[1],l)&&(s=3>a?void 0:s,a=1);++n0&&!this.state.dropActive&&this.refs.input===document.activeElement?this.setState({dropActive:!0}):e.suggestions&&0!==e.suggestions.length||!this.state.inline||this.setState({dropActive:!1})}},{key:"componentDidUpdate",value:function(e,t){var r={esc:this._onRemoveDrop,tab:this._onRemoveDrop,up:this._onPreviousSuggestion,down:this._onNextSuggestion,enter:this._onEnter},n={space:this._onAddDrop};if(!this.state.controlFocused&&t.controlFocused&&f["default"].stopListeningToKeyboard(this,n),!this.state.dropActive&&t.dropActive&&(document.removeEventListener("click",this._onRemoveDrop),f["default"].stopListeningToKeyboard(this,r),this._drop&&(this._drop.remove(),this._drop=null)),this.state.controlFocused&&!t.controlFocused&&f["default"].startListeningToKeyboard(this,n),this.state.dropActive&&!t.dropActive){setTimeout(function(){document.addEventListener("click",this._onRemoveDrop)}.bind(this),100),f["default"].startListeningToKeyboard(this,r);var o;o=this.refs.control?c["default"].findDOMNode(this.refs.control):this.refs.input;var i=this.props.dropAlign||{top:this.state.inline?"bottom":"top",left:"left"};this._drop=y["default"].add(o,this._renderDrop(),i),this.state.inline||document.getElementById("search-drop-input").focus()}else this._drop&&this._drop.render(this._renderDrop())}},{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this._onRemoveDrop),f["default"].stopListeningToKeyboard(this),this._responsive&&this._responsive.stop(),this._drop&&this._drop.remove()}},{key:"_onAddDrop",value:function(e){e.preventDefault(),this.setState({dropActive:!0,activeSuggestionIndex:-1})}},{key:"_onRemoveDrop",value:function(){this.setState({dropActive:!1})}},{key:"_onFocusControl",value:function(){this.setState({controlFocused:!0,dropActive:!0,activeSuggestionIndex:-1})}},{key:"_onBlurControl",value:function(){this.setState({controlFocused:!1})}},{key:"_onFocusInput",value:function(){this.refs.input.select(),this.setState({dropActive:!this.state.inline||this.props.suggestions&&this.props.suggestions.length>0,activeSuggestionIndex:-1})}},{key:"_onBlurInput",value:function(){}},{key:"_onChangeInput",value:function(e){this.setState({activeSuggestionIndex:-1}),this.props.onChange&&this.props.onChange(e.target.value)}},{key:"_onNextSuggestion",value:function(){var e=this.state.activeSuggestionIndex;e=Math.min(e+1,this.props.suggestions.length-1),this.setState({activeSuggestionIndex:e})}},{key:"_onPreviousSuggestion",value:function(){var e=this.state.activeSuggestionIndex;e=Math.max(e-1,0),this.setState({activeSuggestionIndex:e})}},{key:"_onEnter",value:function(){if(this._onRemoveDrop(),this.state.activeSuggestionIndex>=0){var e=this.props.suggestions[this.state.activeSuggestionIndex];this.props.onChange&&this.props.onChange(e)}}},{key:"_onClickSuggestion",value:function(e){this._onRemoveDrop(),this.props.onChange&&this.props.onChange(e)}},{key:"_onSink",value:function(e){e.stopPropagation(),e.nativeEvent.stopImmediatePropagation()}},{key:"_onResponsive",value:function(e){e?this.setState({inline:!1}):this.setState({inline:this.props.inline})}},{key:"focus",value:function(){var e=this.refs.input||this.refs.control;e&&e.focus()}},{key:"_classes",value:function(e){var t=[e];return this.state.inline?t.push(e+"--inline"):t.push(e+"--controlled"),t}},{key:"_renderSuggestionLabel",value:function(e){var t;return t=e.hasOwnProperty("label")?e.label:e}},{key:"_renderDrop",value:function(){var e=this._classes(w+"__drop");this.props.dropColorIndex&&e.push("background-color-index-"+this.props.dropColorIndex),this.props.large&&e.push(w+"__drop--large");var t;this.state.inline||(t=u["default"].createElement("input",{key:"input",id:"search-drop-input",type:"search",defaultValue:this.props.defaultValue,value:this.props.value,className:w+"__input",onChange:this._onChangeInput}));var r;this.props.suggestions&&(r=this.props.suggestions.map(function(e,t){var r=[w+"__suggestion"];return t===this.state.activeSuggestionIndex&&r.push(w+"__suggestion--active"),u["default"].createElement("div",{key:t,className:r.join(" "),onClick:this._onClickSuggestion.bind(this,e)},this._renderSuggestionLabel(e))},this),r=u["default"].createElement("div",{key:"suggestions",className:w+"__suggestions"},r));var n=[t,r];return this.state.inline||(n=[u["default"].createElement(g["default"],{key:"icon",type:"icon",className:w+"__drop-control",onClick:this._onRemoveDrop},u["default"].createElement(T["default"],null)),u["default"].createElement("div",{key:"contents",className:w+"__drop-contents",onClick:this._onSink},n)],this.props.dropAlign&&!this.props.dropAlign.left&&n.reverse()),u["default"].createElement("div",{id:"search-drop",className:e.join(" ")},n)}},{key:"render",value:function(){var e=this._classes(w);return this.props.size?e.push(w+"--"+this.props.size):this.props.large&&!this.props.size&&e.push(w+"--large"),this.props.className&&e.push(this.props.className),this.state.inline?u["default"].createElement("div",{className:e.join(" ")},u["default"].createElement("input",{ref:"input",type:"search",id:this.props.id,placeholder:this.props.placeHolder,defaultValue:this.props.defaultValue,value:this.props.value,className:w+"__input",onFocus:this._onFocusInput,onBlur:this._onBlurInput,onChange:this._onChangeInput}),u["default"].createElement(T["default"],null)):u["default"].createElement(g["default"],{ref:"control",id:this.props.id,className:e.join(" "),type:"icon",tabIndex:"0",onClick:this._onAddDrop,onFocus:this._onFocusControl,onBlur:this._onBlurControl},u["default"].createElement(T["default"],null))}}]),t}(l.Component);t["default"]=M,M.propTypes={defaultValue:l.PropTypes.string,dropAlign:y["default"].alignPropType,dropColorIndex:l.PropTypes.string,id:u["default"].PropTypes.string,inline:l.PropTypes.bool,large:l.PropTypes.bool,onChange:l.PropTypes.func,placeHolder:l.PropTypes.string,responsive:l.PropTypes.bool,size:u["default"].PropTypes.oneOf(["small","medium","large"]),suggestions:l.PropTypes.arrayOf(l.PropTypes.oneOfType([l.PropTypes.string,l.PropTypes.shape({label:l.PropTypes.string.isRequired})])),value:l.PropTypes.string},M.defaultProps={align:"left",inline:!1,responsive:!0},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;r=0){var t=this.props.suggestions[this.state.activeSuggestionIndex];this.setState({value:t}),this.props.onChange&&this.props.onChange(t,!0),this.props.onSelect&&this.props.onSelect({target:this.refs.input,suggestion:t})}}},{key:"_onClickSuggestion",value:function(e){this.setState({value:e,dropActive:!1}),this.props.onChange&&this.props.onChange(e,!0),this.props.onSelect&&this.props.onSelect({target:this.refs.input,suggestion:e})}},{key:"_onFocus",value:function(){d["default"].findDOMNode(this.refs.input).select(),this.setState({focused:!0,dropActive:this.props.suggestions&&this.props.suggestions.length>0,activeSuggestionIndex:-1})}},{key:"_renderLabel",value:function(e){return"object"===("undefined"==typeof e?"undefined":s(e))?e.label||e.value:e}},{key:"_renderDrop",value:function(){var e=null;return this.props.suggestions&&(e=this.props.suggestions.map(function(e,t){var r=[T+"__suggestion"];return t===this.state.activeSuggestionIndex&&r.push(T+"__suggestion--active"),p["default"].createElement("li",{key:t,className:r.join(" "),onClick:this._onClickSuggestion.bind(this,e)},this._renderLabel(e))},this)),p["default"].createElement("ol",{className:T+"__suggestions",onClick:this._onRemoveDrop},e)}},{key:"render",value:function(){var e=[T];return this.state.active&&e.push(T+"--active"),this.props.className&&e.push(this.props.className),p["default"].createElement("div",{ref:"component",className:e.join(" ")},p["default"].createElement("input",{ref:"input",className:T+"__input",id:this.props.id,name:this.props.name,value:this._renderLabel(this.props.value),defaultValue:this._renderLabel(this.props.defaultValue),placeholder:this.props.placeHolder,onChange:this._onInputChange,onFocus:this._onFocus}),p["default"].createElement(b["default"],{className:T+"__control",type:"icon",onClick:this._onAddDrop},p["default"].createElement(v["default"],null)))}}]),t}(u.Component);t["default"]=w,w.propTypes={defaultValue:u.PropTypes.oneOfType([u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.string}),u.PropTypes.string]),id:u.PropTypes.string,name:u.PropTypes.string,onChange:u.PropTypes.func,onDOMChange:u.PropTypes.func,onSelect:u.PropTypes.func,placeHolder:u.PropTypes.string,suggestions:u.PropTypes.arrayOf(u.PropTypes.oneOfType([u.PropTypes.shape({label:u.PropTypes.node,value:u.PropTypes.any}),u.PropTypes.string])),value:u.PropTypes.oneOfType([u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.string}),u.PropTypes.string])},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{
-"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=Object.assign||function(e){for(var t=1;t0&&(e=t[0]),e}},{key:"_setSelection",value:function(){_["default"].setClassFromIndexes({containerElement:this._container(),childSelector:"tr",selectedClass:g,selectedIndexes:this.state.selected})}},{key:"_onClick",value:function(e){if(this.props.selectable){var t=_["default"].onClick(e,{containerElement:this._container(),childSelector:"tr",selectedClass:g,multiSelect:"multiple"===this.props.selectable,priorSelectedIndexes:this.state.selected});this.props.selected||this.setState({selected:t},this._setSelection),this.props.onSelect&&(1===t.length&&(t=t[0]),this.props.onSelect(t))}}},{key:"_onResize",value:function(){this._alignMirror()}},{key:"_buildMirror",value:function(){for(var e=this.refs.table,t=e.querySelectorAll("thead tr th"),r=this.refs.mirror,n=r.querySelectorAll("thead tr")[0];n.hasChildNodes();)n.removeChild(n.lastChild);for(var o=0;o0){var a=this._coords(e,r),s=[Math.abs(l[0]-a[0]),Math.abs(l[1]-a[1])];t.beginPath(),t.moveTo(l[0],l[1]);var u=void 0,p=void 0;if(this.state.highlights[e]&&(t.lineWidth=4),s[0]>s[1])u=[l[0],Math.min(l[1],a[1])+Math.max(n,s[1]/2)+2*o],p=[a[0],u[1]];else{var c=Math.max(n,s[0]/2+2*o);u=l[0]>a[0]?[a[0]+c,l[1]]:[l[0]-c,l[1]],p=[u[0],a[1]]}t.bezierCurveTo(u[0],u[1],p[0],p[1],a[0],a[1]),t.stroke()}},this)},this)}}},{key:"_layout",value:function(){var e=this.refs.contents;(e.scrollWidth!==this.state.canvasWidth||e.scrollHeight!==this.state.canvasHeight)&&this.setState({canvasWidth:e.scrollWidth,canvasHeight:e.scrollHeight})}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_highlight",value:function(e){for(var t=this.refs.topology,r=!1,n={};e&&e!==t;){var o=e.getAttribute("id");o&&this.state.linkIds[o]&&(r=!0,n[o]=!0),e=e.parentNode}this.setState({highlighting:r,highlights:n})}},{key:"_onMouseMove",value:function(e){clearTimeout(this._mouseMoveTimer),this._mouseMoveTimer=setTimeout(this._highlight.bind(this,e.target),100)}},{key:"_onMouseLeave",value:function(){this.setState({highlights:{}})}},{key:"_cacheLinkIds",value:function(e){var t={};e.forEach(function(e){e.ids.forEach(function(e){t[e]=!0})}),this.setState({linkIds:t})}},{key:"render",value:function(){var e=[f];this.props.className&&e.push(this.props.className);var t=[],r={};return this.props.links.forEach(function(e){e.colorIndex&&!r[e.colorIndex]&&(t.push(u["default"].createElement("div",{key:e.colorIndex,ref:e.colorIndex,className:"background-color-index-"+e.colorIndex})),r[e.colorIndex]=!0)}),u["default"].createElement("div",{ref:"topology",className:e.join(" ")},u["default"].createElement("canvas",{ref:"canvas",className:f+"__canvas",width:this.state.canvasWidth,height:this.state.canvasHeight}),u["default"].createElement("div",{ref:"contents",className:f+"__contents"},this.props.children),u["default"].createElement("div",{className:f+"__color-key"},t))}}]),t}(l.Component);t["default"]=_,_.propTypes={links:l.PropTypes.arrayOf(l.PropTypes.shape({colorIndex:l.PropTypes.string,ids:l.PropTypes.arrayOf(l.PropTypes.string).isRequired})),linkOffset:l.PropTypes.number},_.defaultProps={links:[],linkOffset:18},_.Parts=m,_.Part=y,_.Label=h,e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;rr?"0"+r:r);return u["default"].createElement("div",{key:e.time,className:b+"__timeline-chapter",style:{left:t.toString()+"%"},onClick:this._onClickChapter.bind(this,e.time)},u["default"].createElement("label",null,e.label),u["default"].createElement("time",null,n))},this);o=u["default"].createElement("div",{className:b+"__timeline"},i)}var a;if(this.props.duration){var s=Math.round(this.state.progress/this.props.duration*100);a=u["default"].createElement("div",{className:b+"__progress"},u["default"].createElement("div",{className:b+"__progress-meter",style:{width:s.toString()+"%"}}))}return u["default"].createElement("div",{className:e.join(" "),onMouseMove:this._onMouseMove},u["default"].createElement("video",{ref:"video",poster:this.props.poster},this.props.children),u["default"].createElement("div",{className:b+"__summary"},u["default"].createElement(c["default"],{className:b+"__control",type:"icon",primary:!0,onClick:this._onClickControl},n),t),o,a)}}]),t}(l.Component);t["default"]=g,g.propTypes={colorIndex:l.PropTypes.string,duration:l.PropTypes.number,full:l.PropTypes.oneOf([!0,"horizontal","vertical",!1]),poster:l.PropTypes.string,size:u["default"].PropTypes.oneOf(["small","medium","large"]),timeline:l.PropTypes.arrayOf(l.PropTypes.shape({label:l.PropTypes.string,time:l.PropTypes.number})),title:l.PropTypes.node},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=function(){function e(e,t){for(var r=0;r=0;r--){var a=i[r],s=n[a].handlers;if(s.hasOwnProperty(t)&&s[t](e))break}};t["default"]={_initKeyboardAccelerators:function(){var e=this.getDOMNode().getAttribute("data-reactid");n[e]={handlers:{}}},_getKeyboardAcceleratorHandlers:function(){var e=this.getDOMNode().getAttribute("data-reactid");return n[e].handlers},_getDowns:function(){var e=this.getDOMNode().getAttribute("data-reactid");return n[e].downs},_isComponentListening:function(){for(var e=this.getDOMNode().getAttribute("data-reactid"),t=0;o>t;t++)if(i[t]===e)return!0;return!1},_subscribeComponent:function(){var e=this.getDOMNode().getAttribute("data-reactid");i[o]=e,o++},_unsubscribeComponent:function(){for(var e=this.getDOMNode().getAttribute("data-reactid"),t=0;o>t&&i[t]!=e;t++);for(;o-1>t;t++)i[t]=i[t+1];o--,i[o]=null,delete n[e]},startListeningToKeyboard:function(e){console.warn("grommet/mixins/KeyboardAccelerators is deprecated. Please switch to grommet/utils/KeyboardAccelerators."),this._initKeyboardAccelerators();var t=0;for(var n in e)if(e.hasOwnProperty(n)){var o=n;r.hasOwnProperty(n)&&(o=r[n]),t+=1,this._getKeyboardAcceleratorHandlers()[o]=e[n]}t>0&&(a||(window.addEventListener("keydown",s),a=!0),this._isComponentListening()||this._subscribeComponent())},stopListeningToKeyboard:function(e){if(this._isComponentListening()){if(e)for(var t in e)if(e.hasOwnProperty(t)){var n=t;r.hasOwnProperty(t)&&(n=r[t]),delete this._getKeyboardAcceleratorHandlers()[n]}var i=0;for(var l in this._getKeyboardAcceleratorHandlers())this._getKeyboardAcceleratorHandlers().hasOwnProperty(l)&&(i+=1);e&&0!==i||(this._initKeyboardAccelerators(),this._unsubscribeComponent()),0===o&&(window.removeEventListener("keydown",s),a=!1)}},componentWillUnmount:function(){this.stopListeningToKeyboard()}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e){var t=[];for(var r in e)if(e.hasOwnProperty(r)){var n=e[r];if(null!==n&&void 0!==n)if(Array.isArray(n))for(var o=0;oi;++i)r=o[i],t=r.split("="),n[decodeURIComponent(t[0])]=decodeURIComponent(t[1]);return n}function u(e){var t,r,n,o,i=e.split(/\r?\n/),a={};i.pop();for(var s=0,l=i.length;l>s;++s)r=i[s],t=r.indexOf(":"),n=r.slice(0,t).toLowerCase(),o=v(r.slice(t+1)),a[n]=o;return a}function p(e){return/[\/+]json\b/.test(e)}function c(e){return e.split(/ *; */).shift()}function d(e){return g(e.split(/ *; */),function(e,t){var r=t.split(/ *= */),n=r.shift(),o=r.shift();return n&&o&&(e[n]=o),e},{})}function f(e,t){t=t||{},this.req=e,this.xhr=this.req.xhr,this.text="HEAD"!=this.req.method&&(""===this.xhr.responseType||"text"===this.xhr.responseType)||"undefined"==typeof this.xhr.responseType?this.xhr.responseText:null,this.statusText=this.req.xhr.statusText,this.setStatusProperties(this.xhr.status),this.header=this.headers=u(this.xhr.getAllResponseHeaders()),this.header["content-type"]=this.xhr.getResponseHeader("content-type"),this.setHeaderProperties(this.header),this.body="HEAD"!=this.req.method?this.parseBody(this.text?this.text:this.xhr.response):null}function h(e,t){var r=this;b.call(this),this._query=this._query||[],this.method=e,this.url=t,this.header={},this._header={},this.on("end",function(){var e=null,t=null;try{t=new f(r)}catch(n){return e=new Error("Parser is unable to parse the response"),e.parse=!0,e.original=n,e.rawResponse=r.xhr&&r.xhr.responseText?r.xhr.responseText:null,r.callback(e)}if(r.emit("response",t),e)return r.callback(e,t);if(t.status>=200&&t.status<300)return r.callback(e,t);var o=new Error(t.statusText||"Unsuccessful HTTP response");o.original=e,o.response=t,o.status=t.status,r.callback(o,t)})}function y(e,t){return"function"==typeof t?new h("GET",e).end(t):1==arguments.length?new h("GET",e):new h(e,t)}function m(e,t){var r=y("DELETE",e);return t&&r.end(t),r}var _,b=r(605),g=r(606);_="undefined"!=typeof window?window:"undefined"!=typeof self?self:this,y.getXHR=function(){if(!(!_.XMLHttpRequest||_.location&&"file:"==_.location.protocol&&_.ActiveXObject))return new XMLHttpRequest;try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(e){}return!1};var v="".trim?function(e){return e.trim()}:function(e){return e.replace(/(^\s*|\s*$)/g,"")};y.serializeObject=a,y.parseString=l,y.types={html:"text/html",json:"application/json",xml:"application/xml",urlencoded:"application/x-www-form-urlencoded",form:"application/x-www-form-urlencoded","form-data":"application/x-www-form-urlencoded"},y.serialize={"application/x-www-form-urlencoded":a,"application/json":JSON.stringify},y.parse={"application/x-www-form-urlencoded":l,"application/json":JSON.parse},f.prototype.get=function(e){return this.header[e.toLowerCase()]},f.prototype.setHeaderProperties=function(e){var t=this.header["content-type"]||"";this.type=c(t);var r=d(t);for(var n in r)this[n]=r[n]},f.prototype.parseBody=function(e){var t=y.parse[this.type];return t&&e&&(e.length||e instanceof Object)?t(e):null},f.prototype.setStatusProperties=function(e){1223===e&&(e=204);var t=e/100|0;this.status=this.statusCode=e,this.statusType=t,this.info=1==t,this.ok=2==t,this.clientError=4==t,this.serverError=5==t,this.error=4==t||5==t?this.toError():!1,this.accepted=202==e,this.noContent=204==e,this.badRequest=400==e,this.unauthorized=401==e,this.notAcceptable=406==e,this.notFound=404==e,this.forbidden=403==e},f.prototype.toError=function(){var e=this.req,t=e.method,r=e.url,n="cannot "+t+" "+r+" ("+this.status+")",o=new Error(n);return o.status=this.status,o.method=t,o.url=r,o},y.Response=f,b(h.prototype),h.prototype.use=function(e){return e(this),this},h.prototype.timeout=function(e){return this._timeout=e,this},h.prototype.clearTimeout=function(){return this._timeout=0,clearTimeout(this._timer),this},h.prototype.abort=function(){return this.aborted?void 0:(this.aborted=!0,this.xhr.abort(),this.clearTimeout(),this.emit("abort"),this)},h.prototype.set=function(e,t){if(i(e)){for(var r in e)this.set(r,e[r]);return this}return this._header[e.toLowerCase()]=t,this.header[e]=t,this},h.prototype.unset=function(e){return delete this._header[e.toLowerCase()],delete this.header[e],this},h.prototype.getHeader=function(e){return this._header[e.toLowerCase()]},h.prototype.type=function(e){return this.set("Content-Type",y.types[e]||e),this},h.prototype.parse=function(e){return this._parser=e,this},h.prototype.accept=function(e){return this.set("Accept",y.types[e]||e),this},h.prototype.auth=function(e,t){var r=btoa(e+":"+t);return this.set("Authorization","Basic "+r),this},h.prototype.query=function(e){return"string"!=typeof e&&(e=a(e)),e&&this._query.push(e),this},h.prototype.field=function(e,t){return this._formData||(this._formData=new _.FormData),this._formData.append(e,t),this},h.prototype.attach=function(e,t,r){return this._formData||(this._formData=new _.FormData),this._formData.append(e,t,r||t.name),this},h.prototype.send=function(e){var t=i(e),r=this.getHeader("Content-Type");if(t&&i(this._data))for(var n in e)this._data[n]=e[n];else"string"==typeof e?(r||this.type("form"),r=this.getHeader("Content-Type"),"application/x-www-form-urlencoded"==r?this._data=this._data?this._data+"&"+e:e:this._data=(this._data||"")+e):this._data=e;return!t||o(e)?this:(r||this.type("json"),this)},h.prototype.callback=function(e,t){var r=this._callback;this.clearTimeout(),r(e,t)},h.prototype.crossDomainError=function(){var e=new Error("Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.");e.crossDomain=!0,e.status=this.status,e.method=this.method,e.url=this.url,this.callback(e)},h.prototype.timeoutError=function(){var e=this._timeout,t=new Error("timeout of "+e+"ms exceeded");t.timeout=e,this.callback(t)},h.prototype.withCredentials=function(){return this._withCredentials=!0,this},h.prototype.end=function(e){var t=this,r=this.xhr=y.getXHR(),i=this._query.join("&"),a=this._timeout,s=this._formData||this._data;this._callback=e||n,r.onreadystatechange=function(){if(4==r.readyState){var e;try{e=r.status}catch(n){e=0}if(0==e){if(t.timedout)return t.timeoutError();if(t.aborted)return;return t.crossDomainError()}t.emit("end")}};var l=function(e){e.total>0&&(e.percent=e.loaded/e.total*100),e.direction="download",t.emit("progress",e)};this.hasListeners("progress")&&(r.onprogress=l);try{r.upload&&this.hasListeners("progress")&&(r.upload.onprogress=l)}catch(u){}if(a&&!this._timer&&(this._timer=setTimeout(function(){t.timedout=!0,t.abort()},a)),i&&(i=y.serializeObject(i),this.url+=~this.url.indexOf("?")?"&"+i:"?"+i),r.open(this.method,this.url,!0),this._withCredentials&&(r.withCredentials=!0),"GET"!=this.method&&"HEAD"!=this.method&&"string"!=typeof s&&!o(s)){var c=this.getHeader("Content-Type"),d=this._parser||y.serialize[c?c.split(";")[0]:""];!d&&p(c)&&(d=y.serialize["application/json"]),d&&(s=d(s))}for(var f in this.header)null!=this.header[f]&&r.setRequestHeader(f,this.header[f]);return this.emit("request",this),r.send("undefined"!=typeof s?s:null),this},h.prototype.then=function(e,t){return this.end(function(r,n){r?t(r):e(n)})},y.Request=h,y.get=function(e,t,r){var n=y("GET",e);return"function"==typeof t&&(r=t,t=null),t&&n.query(t),r&&n.end(r),n},y.head=function(e,t,r){var n=y("HEAD",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},y.del=m,y["delete"]=m,y.patch=function(e,t,r){var n=y("PATCH",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},y.post=function(e,t,r){var n=y("POST",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},y.put=function(e,t,r){var n=y("PUT",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},e.exports=y},function(e,t){function r(e){return e?n(e):void 0}function n(e){for(var t in r.prototype)e[t]=r.prototype[t];return e}e.exports=r,r.prototype.on=r.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},r.prototype.once=function(e,t){function r(){this.off(e,r),t.apply(this,arguments)}return r.fn=t,this.on(e,r),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var n,o=0;on;++n)r[n].apply(this,t)}return this},r.prototype.listeners=function(e){return this._callbacks=this._callbacks||{},this._callbacks["$"+e]||[]},r.prototype.hasListeners=function(e){return!!this.listeners(e).length}},function(e,t){e.exports=function(e,t,r){for(var n=0,o=e.length,i=3==arguments.length?r:e[n++];o>n;)i=t.call(null,i,e[n],++n,e);return i}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(603),i=n(o),a=5e3,s=1e4,l={ws:null,wsReady:!1,timer:null,requests:[],nextRequestId:1,initialized:!1,socketUrl:null};t["default"]={_sendMessage:function(e,t,r,n){l.ws.send(JSON.stringify({op:e,id:t,url:r,params:n}))},_onOpen:function(){l.wsReady=!0,l.requests.forEach(function(e){this._sendMessage("start",e.id,e.url,e.params)},this)},_onError:function(e){console.log("!!! RestWatch _onError TODO",e)},_onMessage:function(e){var t=JSON.parse(e.data);l.requests.some(function(e){e.id===t.id&&e.handler(t.result)})},_onClose:function(){l.ws=null,l.wsReady=!1,l.initialized=!1,l.timer=setTimeout(this.initialize.bind(this),a)},_getREST:function(e){e.pollBusy=!0,i["default"].get(e.url,e.params).end(function(t,r){if(t)throw t;r.ok&&e.handler(r.body),e.pollBusy=!1})},_poll:function(){l.requests.forEach(function(e){e.pollBusy||this._getREST(e)})},initialize:function(e){l.initialized||l.ws||!this.available()||!l.socketUrl&&!e||(l.socketUrl=l.socketUrl||e,l.ws=new WebSocket(l.socketUrl),l.ws.onopen=this._onOpen.bind(this),l.ws.onerror=this._onError.bind(this),l.ws.onmessage=this._onMessage.bind(this),l.ws.onclose=this._onClose.bind(this),l.initialized=!0)},available:function(){return"WebSocket"in window||"MozWebSocket"in window},start:function(e,t,r){this.initialize();var n={id:l.nextRequestId,url:e,params:t,handler:r};return l.nextRequestId+=1,l.requests.push(n),l.wsReady?this._sendMessage("start",n.id,n.url,n.params):this.available()||(this._getREST(n),clearTimeout(l.timer),l.timer=setTimeout(this._poll.bind(this),s)),n.id},stop:function(e){l.requests=l.requests.filter(function(t){return t.id===e?(l.wsReady&&this._sendMessage("stop",t.id),!1):!0},this)}},e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={validate:function(e){var t={valid:!0,errors:{},firstError:null};return e.forEach(function(e){e.hasOwnProperty("test")?e.test&&(t.errors[e.field]=e.message,t.valid=!1,t.firstError=t.firstError||e.field):e.hasOwnProperty("tests")&&e.tests.some(function(r){return r.test?(t.errors[e.field]=r.message,t.valid=!1,t.firstError=t.firstError||e.field,!0):!1})}),t}},e.exports=t["default"]}]);
\ No newline at end of file
+"use strict";function n(e){return K.expBCP47Syntax.test(e)?K.expVariantDupes.test(e)?!1:!K.expSingletonDupes.test(e):!1}function o(e){var t,r;e=e.toLowerCase(),r=e.split("-");for(var n=1,o=r.length;o>n;n++)if(2===r[n].length)r[n]=r[n].toUpperCase();else if(4===r[n].length)r[n]=r[n].charAt(0).toUpperCase()+r[n].slice(1);else if(1===r[n].length&&"x"!==r[n])break;e=ne.call(r,"-"),(t=e.match(K.expExtSequences))&&t.length>1&&(t.sort(),e=e.replace(RegExp("(?:"+K.expExtSequences.source+")+","i"),ne.call(t,""))),X.call(de.tags,e)&&(e=de.tags[e]),r=e.split("-");for(var n=1,o=r.length;o>n;n++)X.call(de.subtags,r[n])?r[n]=de.subtags[r[n]]:X.call(de.extLang,r[n])&&(r[n]=de.extLang[r[n]][0],1===n&&de.extLang[r[1]][1]===r[0]&&(r=ee.call(r,n++),o-=1));return ne.call(r,"-")}function i(){return V}function a(e){var t=String(e),r=A(t);return fe.test(r)!==!1}function l(e){if(void 0===e)return new R;for(var t=new R,e="string"==typeof e?[e]:e,r=F(e),i=r.length,a=0;i>a;){var l=String(a),s=l in r;if(s){var u=r[l];if(null==u||"string"!=typeof u&&"object"!=typeof u)throw new TypeError("String or Object type expected");var c=String(u);if(!n(c))throw new RangeError("'"+c+"' is not a structurally valid language tag");c=o(c),-1===$.call(t,c)&&re.call(t,c)}a++}return t}function s(e,t){for(var r=t;;){if($.call(e,r)>-1)return r;var n=r.lastIndexOf("-");if(0>n)return;n>=2&&"-"===r.charAt(n-2)&&(n-=2),r=r.substring(0,n)}}function u(e,t){for(var r,n=0,o=t.length;o>n&&!r;){var a=t[n],l=String(a).replace(pe,""),r=s(e,l);n++}var u=new H;if(void 0!==r){if(u["[[locale]]"]=r,String(a)!==String(l)){var c=a.match(pe)[0],f=a.indexOf("-u-");u["[[extension]]"]=c,u["[[extensionIndex]]"]=f}}else u["[[locale]]"]=i();return u}function c(e,t){return u(e,t)}function f(e,t,r,n,o){if(0===e.length)throw new ReferenceError("No locale data has been provided for this object yet.");var i=r["[[localeMatcher]]"];if("lookup"===i)var a=u(e,t);else var a=c(e,t);var l=a["[[locale]]"];if(X.call(a,"[[extension]]"))var s=a["[[extension]]"],f=a["[[extensionIndex]]"],p=String.prototype.split,d=p.call(s,"-"),h=d.length;var y=new H;y["[[dataLocale]]"]=l;for(var m="-u",b=0,_=n.length;_>b;){var g=n[b],v=o[l],T=v[g],w=T[0],M="",P=$;if(void 0!==d){var E=P.call(d,g);if(-1!==E)if(h>E+1&&d[E+1].length>2){var k=d[E+1],O=P.call(T,k);if(-1!==O)var w=k,M="-"+g+"-"+w}else{var O=P(T,"true");if(-1!==O)var w="true"}}if(X.call(r,"[["+g+"]]")){var x=r["[["+g+"]]"];-1!==P.call(T,x)&&x!==w&&(w=x,M="")}y["[["+g+"]]"]=w,m+=M,b++}if(m.length>2)var j=l.substring(0,f),L=l.substring(f),l=j+m+L;return y["[[locale]]"]=l,y}function p(e,t){for(var r=t.length,n=new R,o=0;r>o;){var i=t[o],a=String(i).replace(pe,""),l=s(e,a);void 0!==l&&re.call(n,i),o++}var u=ee.call(n);return u}function d(e,t){return p(e,t)}function h(e,t,r){if(void 0!==r){var r=new H(F(r)),n=r.localeMatcher;if(void 0!==n&&(n=String(n),"lookup"!==n&&"best fit"!==n))throw new RangeError('matcher should be "lookup" or "best fit"')}if(void 0===n||"best fit"===n)var o=d(e,t);else var o=p(e,t);for(var i in o)X.call(o,i)&&Q(o,i,{writable:!1,configurable:!1,value:o[i]});return Q(o,"length",{writable:!1}),o}function y(e,t,r,n,o){var i=e[t];if(void 0!==i){if(i="boolean"===r?Boolean(i):"string"===r?String(i):i,void 0!==n&&-1===$.call(n,i))throw new RangeError("'"+i+"' is not an allowed value for `"+t+"`");return i}return o}function m(e,t,r,n,o){var i=e[t];if(void 0!==i){if(i=Number(i),isNaN(i)||r>i||i>n)throw new RangeError("Value is not a number or outside accepted range");return Math.floor(i)}return o}function b(){var e=arguments[0],t=arguments[1];return this&&this!==G?_(F(this),e,t):new G.NumberFormat(e,t)}function _(e,t,r){var n=B(e),o=W();if(n["[[initializedIntlObject]]"]===!0)throw new TypeError("`this` object has already been initialized as an Intl object");Q(e,"__getInternalProperties",{value:function(){return arguments[0]===le?n:void 0}}),n["[[initializedIntlObject]]"]=!0;var i=l(t);r=void 0===r?{}:F(r);var s=new H,u=y(r,"localeMatcher","string",new R("lookup","best fit"),"best fit");s["[[localeMatcher]]"]=u;var c=ae.NumberFormat["[[localeData]]"],p=f(ae.NumberFormat["[[availableLocales]]"],i,s,ae.NumberFormat["[[relevantExtensionKeys]]"],c);n["[[locale]]"]=p["[[locale]]"],n["[[numberingSystem]]"]=p["[[nu]]"],n["[[dataLocale]]"]=p["[[dataLocale]]"];var d=p["[[dataLocale]]"],h=y(r,"style","string",new R("decimal","percent","currency"),"decimal");n["[[style]]"]=h;var b=y(r,"currency","string");if(void 0!==b&&!a(b))throw new RangeError("'"+b+"' is not a valid currency code");if("currency"===h&&void 0===b)throw new TypeError("Currency code is required when style is currency");if("currency"===h){b=b.toUpperCase(),n["[[currency]]"]=b;var _=g(b)}var T=y(r,"currencyDisplay","string",new R("code","symbol","name"),"symbol");"currency"===h&&(n["[[currencyDisplay]]"]=T);var w=m(r,"minimumIntegerDigits",1,21,1);n["[[minimumIntegerDigits]]"]=w;var M="currency"===h?_:0,P=m(r,"minimumFractionDigits",0,20,M);n["[[minimumFractionDigits]]"]=P;var E="currency"===h?Math.max(P,_):"percent"===h?Math.max(P,0):Math.max(P,3),k=m(r,"maximumFractionDigits",P,20,E);n["[[maximumFractionDigits]]"]=k;var O=r.minimumSignificantDigits,x=r.maximumSignificantDigits;void 0===O&&void 0===x||(O=m(r,"minimumSignificantDigits",1,21,1),x=m(r,"maximumSignificantDigits",O,21,21),n["[[minimumSignificantDigits]]"]=O,n["[[maximumSignificantDigits]]"]=x);var j=y(r,"useGrouping","boolean",void 0,!0);n["[[useGrouping]]"]=j;var L=c[d],I=L.patterns,S=I[h];return n["[[positivePattern]]"]=S.positivePattern,n["[[negativePattern]]"]=S.negativePattern,n["[[boundFormat]]"]=void 0,n["[[initializedNumberFormat]]"]=!0,U&&(e.format=v.call(e)),o.exp.test(o.input),e}function g(e){return void 0!==he[e]?he[e]:2}function v(){var e=null!=this&&"object"==typeof this&&B(this);if(!e||!e["[[initializedNumberFormat]]"])throw new TypeError("`this` value for format() is not an initialized Intl.NumberFormat object.");if(void 0===e["[[boundFormat]]"]){var t=function(e){return T(this,Number(e))},r=ie.call(t,this);e["[[boundFormat]]"]=r}return e["[[boundFormat]]"]}function T(e,t){var r,n=W(),o=B(e),i=o["[[dataLocale]]"],a=o["[[numberingSystem]]"],l=ae.NumberFormat["[[localeData]]"][i],s=l.symbols[a]||l.symbols.latn,u=!1;if(isFinite(t)===!1)isNaN(t)?r=s.nan:(r=s.infinity,0>t&&(u=!0));else{if(0>t&&(u=!0,t=-t),"percent"===o["[[style]]"]&&(t*=100),r=X.call(o,"[[minimumSignificantDigits]]")&&X.call(o,"[[maximumSignificantDigits]]")?w(t,o["[[minimumSignificantDigits]]"],o["[[maximumSignificantDigits]]"]):M(t,o["[[minimumIntegerDigits]]"],o["[[minimumFractionDigits]]"],o["[[maximumFractionDigits]]"]),ye[a]){var c=ye[o["[[numberingSystem]]"]];r=String(r).replace(/\d/g,function(e){return c[e]})}else r=String(r);if(r=r.replace(/\./g,s.decimal),o["[[useGrouping]]"]===!0){var f=r.split(s.decimal),p=f[0],d=l.patterns.primaryGroupSize||3,h=l.patterns.secondaryGroupSize||d;if(p.length>d){var y=new R,m=p.length-d,b=m%h,_=p.slice(0,b);for(_.length&&re.call(y,_);m>b;)re.call(y,p.slice(b,b+h)),b+=h;re.call(y,p.slice(m)),f[0]=ne.call(y,s.group)}r=ne.call(f,s.decimal)}}var g=o[u===!0?"[[negativePattern]]":"[[positivePattern]]"];if(g=g.replace("{number}",r),"currency"===o["[[style]]"]){var v,T=o["[[currency]]"],P=l.currencies[T];switch(o["[[currencyDisplay]]"]){case"symbol":v=P||T;break;default:case"code":case"name":v=T}g=g.replace("{currency}",v)}return n.exp.test(n.input),g}function w(e,t,r){var n=r;if(0===e)var o=ne.call(Array(n+1),"0"),i=0;else var i=Y(Math.abs(e)),a=Math.round(Math.exp(Math.abs(i-n+1)*Math.LN10)),o=String(Math.round(0>i-n+1?e*a:e/a));if(i>=n)return o+ne.call(Array(i-n+1+1),"0");if(i===n-1)return o;if(i>=0?o=o.slice(0,i+1)+"."+o.slice(i+1):0>i&&(o="0."+ne.call(Array(-(i+1)+1),"0")+o),o.indexOf(".")>=0&&r>t){for(var l=r-t;l>0&&"0"===o.charAt(o.length-1);)o=o.slice(0,-1),l--;"."===o.charAt(o.length-1)&&(o=o.slice(0,-1))}return o}function M(e,t,r,n){var o,i=Number.prototype.toFixed.call(e,n),a=i.split(".")[0].length,l=n-r,s=(o=i.indexOf("e"))>-1?i.slice(o+1):0;for(s&&(i=i.slice(0,o).replace(".",""),i+=ne.call(Array(s-(i.length-1)+1),"0")+"."+ne.call(Array(n+1),"0"),a=i.length);l>0&&"0"===i.slice(-1);)i=i.slice(0,-1),l--;if("."===i.slice(-1)&&(i=i.slice(0,-1)),t>a)var u=ne.call(Array(t-a+1),"0");return(u?u:"")+i}function P(){var e=arguments[0],t=arguments[1];return this&&this!==G?E(F(this),e,t):new G.DateTimeFormat(e,t)}function E(e,t,r){var n=B(e),o=W();if(n["[[initializedIntlObject]]"]===!0)throw new TypeError("`this` object has already been initialized as an Intl object");Q(e,"__getInternalProperties",{value:function(){return arguments[0]===le?n:void 0}}),n["[[initializedIntlObject]]"]=!0;var i=l(t),r=O(r,"any","date"),a=new H;v=y(r,"localeMatcher","string",new R("lookup","best fit"),"best fit"),a["[[localeMatcher]]"]=v;var s=ae.DateTimeFormat,u=s["[[localeData]]"],c=f(s["[[availableLocales]]"],i,a,s["[[relevantExtensionKeys]]"],u);n["[[locale]]"]=c["[[locale]]"],n["[[calendar]]"]=c["[[ca]]"],n["[[numberingSystem]]"]=c["[[nu]]"],n["[[dataLocale]]"]=c["[[dataLocale]]"];var p=c["[[dataLocale]]"],d=r.timeZone;if(void 0!==d&&(d=A(d),"UTC"!==d))throw new RangeError("timeZone is not supported.");n["[[timeZone]]"]=d,a=new H;for(var h in me)if(X.call(me,h)){var m=y(r,h,"string",me[h]);a["[["+h+"]]"]=m}var b,_=u[p],g=k(_.formats),v=y(r,"formatMatcher","string",new R("basic","best fit"),"best fit");_.formats=g,b="basic"===v?x(a,g):L(a,g);for(var h in me)if(X.call(me,h)&&X.call(b,h)){var T=b[h];n["[["+h+"]]"]=a["[["+h+"]]"]||T}var w,M=y(r,"hour12","boolean");if(n["[[hour]]"])if(M=void 0===M?_.hour12:M,n["[[hour12]]"]=M,M===!0){var P=_.hourNo0;n["[[hourNo0]]"]=P,w=b.pattern12}else w=b.pattern;else w=b.pattern;return n["[[pattern]]"]=w,n["[[boundFormat]]"]=void 0,n["[[initializedDateTimeFormat]]"]=!0,U&&(e.format=I.call(e)),o.exp.test(o.input),e}function k(e){return"[object Array]"===Object.prototype.toString.call(e)?e:J.createDateTimeFormats(e)}function O(e,t,r){if(void 0===e)e=null;else{var n=F(e);e=new H;for(var o in n)e[o]=n[o]}var i=Z,e=i(e),a=!0;return"date"!==t&&"any"!==t||void 0===e.weekday&&void 0===e.year&&void 0===e.month&&void 0===e.day||(a=!1),"time"!==t&&"any"!==t||void 0===e.hour&&void 0===e.minute&&void 0===e.second||(a=!1),!a||"date"!==r&&"all"!==r||(e.year=e.month=e.day="numeric"),!a||"time"!==r&&"all"!==r||(e.hour=e.minute=e.second="numeric"),e}function x(e,t){return j(e,t)}function j(e,t,r){for(var n,o=8,i=120,a=20,l=8,s=6,u=6,c=3,f=-(1/0),p=0,d=t.length;d>p;){var h=t[p],y=0;for(var m in me)if(X.call(me,m)){var b=e["[["+m+"]]"],_=X.call(h,m)?h[m]:void 0;if(void 0===b&&void 0!==_)y-=a;else if(void 0!==b&&void 0===_)y-=i;else{var g=["2-digit","numeric","narrow","short","long"],v=$.call(g,b),T=$.call(g,_),w=Math.max(Math.min(T-v,2),-2);!r||("numeric"!==b&&"2-digit"!==b||"numeric"===_||"2-digit"===_)&&("numeric"===b||"2-digit"===b||"2-digit"!==_&&"numeric"!==_)||(y-=o),2===w?y-=s:1===w?y-=c:-1===w?y-=u:-2===w&&(y-=l)}}y>f&&(f=y,n=h),p++}return n}function L(e,t){return j(e,t,!0)}function I(){var e=null!=this&&"object"==typeof this&&B(this);if(!e||!e["[[initializedDateTimeFormat]]"])throw new TypeError("`this` value for format() is not an initialized Intl.DateTimeFormat object.");if(void 0===e["[[boundFormat]]"]){var t=function(){var e=Number(0===arguments.length?Date.now():arguments[0]);return S(this,e)},r=ie.call(t,this);e["[[boundFormat]]"]=r}return e["[[boundFormat]]"]}function S(e,t){if(!isFinite(t))throw new RangeError("Invalid valid date passed to format");var r=e.__getInternalProperties(le),n=W(),o=r["[[locale]]"],i=new G.NumberFormat([o],{useGrouping:!1}),a=new G.NumberFormat([o],{minimumIntegerDigits:2,useGrouping:!1}),l=C(t,r["[[calendar]]"],r["[[timeZone]]"]),s=r["[[pattern]]"],u=r["[[dataLocale]]"],c=ae.DateTimeFormat["[[localeData]]"][u].calendars,f=r["[[calendar]]"];for(var p in me)if(X.call(r,"[["+p+"]]")){var d,h,y=r["[["+p+"]]"],m=l["[["+p+"]]"];if("year"===p&&0>=m?m=1-m:"month"===p?m++:"hour"===p&&r["[[hour12]]"]===!0&&(m%=12,d=m!==l["[["+p+"]]"],0===m&&r["[[hourNo0]]"]===!0&&(m=12)),"numeric"===y)h=T(i,m);else if("2-digit"===y)h=T(a,m),h.length>2&&(h=h.slice(-2));else if(y in se)switch(p){case"month":h=z(c,f,"months",y,l["[["+p+"]]"]);break;case"weekday":try{h=z(c,f,"days",y,l["[["+p+"]]"])}catch(b){throw new Error("Could not find weekday data for locale "+o)}break;case"timeZoneName":h="";break;default:h=l["[["+p+"]]"]}s=s.replace("{"+p+"}",h)}return r["[[hour12]]"]===!0&&(h=z(c,f,"dayPeriods",d?"pm":"am"),s=s.replace("{ampm}",h)),n.exp.test(n.input),s}function C(e,t,r){var n=new Date(e),o="get"+(r||"");return new H({"[[weekday]]":n[o+"Day"](),"[[era]]":+(n[o+"FullYear"]()>=0),"[[year]]":n[o+"FullYear"](),"[[month]]":n[o+"Month"](),"[[day]]":n[o+"Date"](),"[[hour]]":n[o+"Hours"](),"[[minute]]":n[o+"Minutes"](),"[[second]]":n[o+"Seconds"](),"[[inDST]]":!1})}function D(e,t){if(!e.number)throw new Error("Object passed doesn't contain locale data for Intl.NumberFormat");var r,n=[t],o=t.split("-");for(o.length>2&&4===o[1].length&&re.call(n,o[0]+"-"+o[2]);r=oe.call(n);)re.call(ae.NumberFormat["[[availableLocales]]"],r),ae.NumberFormat["[[localeData]]"][r]=e.number,e.date&&(e.date.nu=e.number.nu,re.call(ae.DateTimeFormat["[[availableLocales]]"],r),ae.DateTimeFormat["[[localeData]]"][r]=e.date);void 0===V&&(V=t),ue||(_(G.NumberFormat.prototype),ue=!0),e.date&&!ce&&(E(G.DateTimeFormat.prototype),ce=!0)}function Y(e){if("function"==typeof Math.log10)return Math.floor(Math.log10(e));var t=Math.round(Math.log(e)*Math.LOG10E);return t-(Number("1e"+t)>e)}function N(e){if(!X.call(this,"[[availableLocales]]"))throw new TypeError("supportedLocalesOf() is not a constructor");var t=W(),r=arguments[1],n=this["[[availableLocales]]"],o=l(e);return t.exp.test(t.input),h(n,o,r)}function z(e,t,r,n,o){var i=e[t]&&e[t][r]?e[t][r]:e.gregory[r],a={narrow:["short","long"],"short":["long","narrow"],"long":["short","narrow"]},l=X.call(i,n)?i[n]:X.call(i,a[n][0])?i[a[n][0]]:i[a[n][1]];return null!=o?l[o]:l}function H(e){for(var t in e)(e instanceof H||X.call(e,t))&&Q(this,t,{value:e[t],enumerable:!0,writable:!0,configurable:!0})}function R(){Q(this,"length",{writable:!0,value:0}),arguments.length&&re.apply(this,ee.call(arguments))}function W(){for(var e=/[.?*+^$[\]\\(){}|-]/g,t=RegExp.lastMatch||"",r=RegExp.multiline?"m":"",n={input:RegExp.input},o=new R,i=!1,a={},l=1;9>=l;l++)i=(a["$"+l]=RegExp["$"+l])||i;if(t=t.replace(e,"\\$&"),i)for(var l=1;9>=l;l++){var s=a["$"+l];s?(s=s.replace(e,"\\$&"),t=t.replace(s,"("+s+")")):t="()"+t,re.call(o,t.slice(0,t.indexOf("(")+1)),t=t.slice(t.indexOf("(")+1)}return n.exp=new RegExp(ne.call(o,"")+t,r),n}function A(e){for(var t=e.length;t--;){var r=e.charAt(t);r>="a"&&"z">=r&&(e=e.slice(0,t)+r.toUpperCase()+e.slice(t+1))}return e}function F(e){if(null==e)throw new TypeError("Cannot convert null or undefined to object");return Object(e)}function B(e){return X.call(e,"__getInternalProperties")?e.__getInternalProperties(le):Z(null)}var V,K=r(55),J=r(56),G={},q=function(){var e={};try{return Object.defineProperty(e,"a",{}),"a"in e}catch(t){return!1}}(),U=!q&&!Object.prototype.__defineGetter__,X=Object.prototype.hasOwnProperty,Q=q?Object.defineProperty:function(e,t,r){"get"in r&&e.__defineGetter__?e.__defineGetter__(t,r.get):(!X.call(e,t)||"value"in r)&&(e[t]=r.value)},$=Array.prototype.indexOf||function(e){var t=this;if(!t.length)return-1;for(var r=arguments[1]||0,n=t.length;n>r;r++)if(t[r]===e)return r;return-1},Z=Object.create||function(e,t){function r(){}var n;r.prototype=e,n=new r;for(var o in t)X.call(t,o)&&Q(n,o,t[o]);return n},ee=Array.prototype.slice,te=Array.prototype.concat,re=Array.prototype.push,ne=Array.prototype.join,oe=Array.prototype.shift,ie=(Array.prototype.unshift,Function.prototype.bind||function(e){var t=this,r=ee.call(arguments,1);return 1===t.length?function(n){return t.apply(e,te.call(r,ee.call(arguments)))}:function(){return t.apply(e,te.call(r,ee.call(arguments)))}}),ae=Z(null),le=Math.random(),se=Z(null,{narrow:{},"short":{},"long":{}}),ue=!1,ce=!1,fe=/^[A-Z]{3}$/,pe=/-u(?:-[0-9a-z]{2,8})+/gi,de={tags:{"art-lojban":"jbo","i-ami":"ami","i-bnn":"bnn","i-hak":"hak","i-klingon":"tlh","i-lux":"lb","i-navajo":"nv","i-pwn":"pwn","i-tao":"tao","i-tay":"tay","i-tsu":"tsu","no-bok":"nb","no-nyn":"nn","sgn-BE-FR":"sfb","sgn-BE-NL":"vgt","sgn-CH-DE":"sgg","zh-guoyu":"cmn","zh-hakka":"hak","zh-min-nan":"nan","zh-xiang":"hsn","sgn-BR":"bzs","sgn-CO":"csn","sgn-DE":"gsg","sgn-DK":"dsl","sgn-ES":"ssp","sgn-FR":"fsl","sgn-GB":"bfi","sgn-GR":"gss","sgn-IE":"isg","sgn-IT":"ise","sgn-JP":"jsl","sgn-MX":"mfs","sgn-NI":"ncs","sgn-NL":"dse","sgn-NO":"nsl","sgn-PT":"psr","sgn-SE":"swl","sgn-US":"ase","sgn-ZA":"sfs","zh-cmn":"cmn","zh-cmn-Hans":"cmn-Hans","zh-cmn-Hant":"cmn-Hant","zh-gan":"gan","zh-wuu":"wuu","zh-yue":"yue"},subtags:{BU:"MM",DD:"DE",FX:"FR",TP:"TL",YD:"YE",ZR:"CD",heploc:"alalc97","in":"id",iw:"he",ji:"yi",jw:"jv",mo:"ro",ayx:"nun",bjd:"drl",ccq:"rki",cjr:"mom",cka:"cmr",cmk:"xch",drh:"khk",drw:"prs",gav:"dev",hrr:"jal",ibi:"opa",kgh:"kml",lcq:"ppr",mst:"mry",myt:"mry",sca:"hle",tie:"ras",tkk:"twm",tlw:"weo",tnf:"prs",ybd:"rki",yma:"lrr"},extLang:{aao:["aao","ar"],abh:["abh","ar"],abv:["abv","ar"],acm:["acm","ar"],acq:["acq","ar"],acw:["acw","ar"],acx:["acx","ar"],acy:["acy","ar"],adf:["adf","ar"],ads:["ads","sgn"],aeb:["aeb","ar"],aec:["aec","ar"],aed:["aed","sgn"],aen:["aen","sgn"],afb:["afb","ar"],afg:["afg","sgn"],ajp:["ajp","ar"],apc:["apc","ar"],apd:["apd","ar"],arb:["arb","ar"],arq:["arq","ar"],ars:["ars","ar"],ary:["ary","ar"],arz:["arz","ar"],ase:["ase","sgn"],asf:["asf","sgn"],asp:["asp","sgn"],asq:["asq","sgn"],asw:["asw","sgn"],auz:["auz","ar"],avl:["avl","ar"],ayh:["ayh","ar"],ayl:["ayl","ar"],ayn:["ayn","ar"],ayp:["ayp","ar"],bbz:["bbz","ar"],bfi:["bfi","sgn"],bfk:["bfk","sgn"],bjn:["bjn","ms"],bog:["bog","sgn"],bqn:["bqn","sgn"],bqy:["bqy","sgn"],btj:["btj","ms"],bve:["bve","ms"],bvl:["bvl","sgn"],bvu:["bvu","ms"],bzs:["bzs","sgn"],cdo:["cdo","zh"],cds:["cds","sgn"],cjy:["cjy","zh"],cmn:["cmn","zh"],coa:["coa","ms"],cpx:["cpx","zh"],csc:["csc","sgn"],csd:["csd","sgn"],cse:["cse","sgn"],csf:["csf","sgn"],csg:["csg","sgn"],csl:["csl","sgn"],csn:["csn","sgn"],csq:["csq","sgn"],csr:["csr","sgn"],czh:["czh","zh"],czo:["czo","zh"],doq:["doq","sgn"],dse:["dse","sgn"],dsl:["dsl","sgn"],dup:["dup","ms"],ecs:["ecs","sgn"],esl:["esl","sgn"],esn:["esn","sgn"],eso:["eso","sgn"],eth:["eth","sgn"],fcs:["fcs","sgn"],fse:["fse","sgn"],fsl:["fsl","sgn"],fss:["fss","sgn"],gan:["gan","zh"],gds:["gds","sgn"],gom:["gom","kok"],gse:["gse","sgn"],gsg:["gsg","sgn"],gsm:["gsm","sgn"],gss:["gss","sgn"],gus:["gus","sgn"],hab:["hab","sgn"],haf:["haf","sgn"],hak:["hak","zh"],hds:["hds","sgn"],hji:["hji","ms"],hks:["hks","sgn"],hos:["hos","sgn"],hps:["hps","sgn"],hsh:["hsh","sgn"],hsl:["hsl","sgn"],hsn:["hsn","zh"],icl:["icl","sgn"],ils:["ils","sgn"],inl:["inl","sgn"],ins:["ins","sgn"],ise:["ise","sgn"],isg:["isg","sgn"],isr:["isr","sgn"],jak:["jak","ms"],jax:["jax","ms"],jcs:["jcs","sgn"],jhs:["jhs","sgn"],jls:["jls","sgn"],jos:["jos","sgn"],jsl:["jsl","sgn"],jus:["jus","sgn"],kgi:["kgi","sgn"],knn:["knn","kok"],kvb:["kvb","ms"],kvk:["kvk","sgn"],kvr:["kvr","ms"],kxd:["kxd","ms"],lbs:["lbs","sgn"],lce:["lce","ms"],lcf:["lcf","ms"],liw:["liw","ms"],lls:["lls","sgn"],lsg:["lsg","sgn"],lsl:["lsl","sgn"],lso:["lso","sgn"],lsp:["lsp","sgn"],lst:["lst","sgn"],lsy:["lsy","sgn"],ltg:["ltg","lv"],lvs:["lvs","lv"],lzh:["lzh","zh"],max:["max","ms"],mdl:["mdl","sgn"],meo:["meo","ms"],mfa:["mfa","ms"],mfb:["mfb","ms"],mfs:["mfs","sgn"],min:["min","ms"],mnp:["mnp","zh"],mqg:["mqg","ms"],mre:["mre","sgn"],msd:["msd","sgn"],msi:["msi","ms"],msr:["msr","sgn"],mui:["mui","ms"],mzc:["mzc","sgn"],mzg:["mzg","sgn"],mzy:["mzy","sgn"],nan:["nan","zh"],nbs:["nbs","sgn"],ncs:["ncs","sgn"],nsi:["nsi","sgn"],nsl:["nsl","sgn"],nsp:["nsp","sgn"],nsr:["nsr","sgn"],nzs:["nzs","sgn"],okl:["okl","sgn"],orn:["orn","ms"],ors:["ors","ms"],pel:["pel","ms"],pga:["pga","ar"],pks:["pks","sgn"],prl:["prl","sgn"],prz:["prz","sgn"],psc:["psc","sgn"],psd:["psd","sgn"],pse:["pse","ms"],psg:["psg","sgn"],psl:["psl","sgn"],pso:["pso","sgn"],psp:["psp","sgn"],psr:["psr","sgn"],pys:["pys","sgn"],rms:["rms","sgn"],rsi:["rsi","sgn"],rsl:["rsl","sgn"],sdl:["sdl","sgn"],sfb:["sfb","sgn"],sfs:["sfs","sgn"],sgg:["sgg","sgn"],sgx:["sgx","sgn"],shu:["shu","ar"],slf:["slf","sgn"],sls:["sls","sgn"],sqk:["sqk","sgn"],sqs:["sqs","sgn"],ssh:["ssh","ar"],ssp:["ssp","sgn"],ssr:["ssr","sgn"],svk:["svk","sgn"],swc:["swc","sw"],swh:["swh","sw"],swl:["swl","sgn"],syy:["syy","sgn"],tmw:["tmw","ms"],tse:["tse","sgn"],tsm:["tsm","sgn"],tsq:["tsq","sgn"],tss:["tss","sgn"],tsy:["tsy","sgn"],tza:["tza","sgn"],ugn:["ugn","sgn"],ugy:["ugy","sgn"],ukl:["ukl","sgn"],uks:["uks","sgn"],urk:["urk","ms"],uzn:["uzn","uz"],uzs:["uzs","uz"],vgt:["vgt","sgn"],vkk:["vkk","ms"],vkt:["vkt","ms"],vsi:["vsi","sgn"],vsl:["vsl","sgn"],vsv:["vsv","sgn"],wuu:["wuu","zh"],xki:["xki","sgn"],xml:["xml","sgn"],xmm:["xmm","ms"],xms:["xms","sgn"],yds:["yds","sgn"],ysl:["ysl","sgn"],yue:["yue","zh"],zib:["zib","sgn"],zlm:["zlm","ms"],zmi:["zmi","ms"],zsl:["zsl","sgn"],zsm:["zsm","ms"]}},he={BHD:3,BYR:0,XOF:0,BIF:0,XAF:0,CLF:4,CLP:0,KMF:0,DJF:0,XPF:0,GNF:0,ISK:0,IQD:3,JPY:0,JOD:3,KRW:0,KWD:3,LYD:3,OMR:3,PYG:0,RWF:0,TND:3,UGX:0,UYI:0,VUV:0,VND:0};Q(G,"NumberFormat",{configurable:!0,writable:!0,value:b}),Q(G.NumberFormat,"prototype",{writable:!1}),ae.NumberFormat={"[[availableLocales]]":[],"[[relevantExtensionKeys]]":["nu"],"[[localeData]]":{}},Q(G.NumberFormat,"supportedLocalesOf",{configurable:!0,writable:!0,value:ie.call(N,ae.NumberFormat)}),Q(G.NumberFormat.prototype,"format",{configurable:!0,get:v});var ye={arab:["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],arabext:["۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"],bali:["᭐","᭑","᭒","᭓","᭔","᭕","᭖","᭗","᭘","᭙"],beng:["০","১","২","৩","৪","৫","৬","৭","৮","৯"],deva:["०","१","२","३","४","५","६","७","८","९"],fullwide:["0","1","2","3","4","5","6","7","8","9"],gujr:["૦","૧","૨","૩","૪","૫","૬","૭","૮","૯"],guru:["੦","੧","੨","੩","੪","੫","੬","੭","੮","੯"],hanidec:["〇","一","二","三","四","五","六","七","八","九"],khmr:["០","១","២","៣","៤","៥","៦","៧","៨","៩"],knda:["೦","೧","೨","೩","೪","೫","೬","೭","೮","೯"],laoo:["໐","໑","໒","໓","໔","໕","໖","໗","໘","໙"],latn:["0","1","2","3","4","5","6","7","8","9"],limb:["᥆","᥇","᥈","᥉","᥊","᥋","᥌","᥍","᥎","᥏"],mlym:["൦","൧","൨","൩","൪","൫","൬","൭","൮","൯"],mong:["᠐","᠑","᠒","᠓","᠔","᠕","᠖","᠗","᠘","᠙"],mymr:["၀","၁","၂","၃","၄","၅","၆","၇","၈","၉"],orya:["୦","୧","୨","୩","୪","୫","୬","୭","୮","୯"],tamldec:["௦","௧","௨","௩","௪","௫","௬","௭","௮","௯"],telu:["౦","౧","౨","౩","౪","౫","౬","౭","౮","౯"],thai:["๐","๑","๒","๓","๔","๕","๖","๗","๘","๙"],tibt:["༠","༡","༢","༣","༤","༥","༦","༧","༨","༩"]};Q(G.NumberFormat.prototype,"resolvedOptions",{configurable:!0,writable:!0,value:function(){var e,t=new H,r=["locale","numberingSystem","style","currency","currencyDisplay","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","useGrouping"],n=null!=this&&"object"==typeof this&&B(this);if(!n||!n["[[initializedNumberFormat]]"])throw new TypeError("`this` value for resolvedOptions() is not an initialized Intl.NumberFormat object.");for(var o=0,i=r.length;i>o;o++)X.call(n,e="[["+r[o]+"]]")&&(t[r[o]]={value:n[e],writable:!0,configurable:!0,enumerable:!0});return Z({},t)}}),Q(G,"DateTimeFormat",{configurable:!0,writable:!0,value:P}),Q(P,"prototype",{writable:!1});var me={weekday:["narrow","short","long"],era:["narrow","short","long"],year:["2-digit","numeric"],month:["2-digit","numeric","narrow","short","long"],day:["2-digit","numeric"],hour:["2-digit","numeric"],minute:["2-digit","numeric"],second:["2-digit","numeric"],timeZoneName:["short","long"]};ae.DateTimeFormat={"[[availableLocales]]":[],"[[relevantExtensionKeys]]":["ca","nu"],"[[localeData]]":{}},Q(G.DateTimeFormat,"supportedLocalesOf",{configurable:!0,writable:!0,value:ie.call(N,ae.DateTimeFormat)}),Q(G.DateTimeFormat.prototype,"format",{configurable:!0,get:I}),Q(G.DateTimeFormat.prototype,"resolvedOptions",{writable:!0,configurable:!0,value:function(){var e,t=new H,r=["locale","calendar","numberingSystem","timeZone","hour12","weekday","era","year","month","day","hour","minute","second","timeZoneName"],n=null!=this&&"object"==typeof this&&B(this);if(!n||!n["[[initializedDateTimeFormat]]"])throw new TypeError("`this` value for resolvedOptions() is not an initialized Intl.DateTimeFormat object.");for(var o=0,i=r.length;i>o;o++)X.call(n,e="[["+r[o]+"]]")&&(t[r[o]]={value:n[e],writable:!0,configurable:!0,enumerable:!0});return Z({},t)}});var be=G.__localeSensitiveProtos={Number:{},Date:{}};be.Number.toLocaleString=function(){if("[object Number]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a number for Number.prototype.toLocaleString()");return T(new b(arguments[0],arguments[1]),this)},be.Date.toLocaleString=function(){if("[object Date]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a Date instance for Date.prototype.toLocaleString()");var e=+this;if(isNaN(e))return"Invalid Date";var t=arguments[0],r=arguments[1],r=O(r,"any","all"),n=new P(t,r);return S(n,e)},be.Date.toLocaleDateString=function(){if("[object Date]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a Date instance for Date.prototype.toLocaleDateString()");var e=+this;if(isNaN(e))return"Invalid Date";var t=arguments[0],r=arguments[1],r=O(r,"date","date"),n=new P(t,r);return S(n,e)},be.Date.toLocaleTimeString=function(){if("[object Date]"!==Object.prototype.toString.call(this))throw new TypeError("`this` value must be a Date instance for Date.prototype.toLocaleTimeString()");var e=+this;if(isNaN(e))return"Invalid Date";var t=arguments[0],r=arguments[1],r=O(r,"time","time"),n=new P(t,r);return S(n,e)},Q(G,"__applyLocaleSensitivePrototypes",{writable:!0,configurable:!0,value:function(){Q(Number.prototype,"toLocaleString",{writable:!0,configurable:!0,value:be.Number.toLocaleString}),Q(Date.prototype,"toLocaleString",{writable:!0,configurable:!0,value:be.Date.toLocaleString});for(var e in be.Date)X.call(be.Date,e)&&Q(Date.prototype,e,{writable:!0,configurable:!0,value:be.Date[e]})}}),Q(G,"__addLocaleData",{value:function(e){if(!n(e.locale))throw new Error("Object passed doesn't identify itself with a valid language tag");D(e,e.locale)}}),H.prototype=Z(null),R.prototype=Z(null),t["default"]=G},function(e,t){"use strict";var r="[a-z]{3}(?:-[a-z]{3}){0,2}",n="(?:[a-z]{2,3}(?:-"+r+")?|[a-z]{4}|[a-z]{5,8})",o="[a-z]{4}",i="(?:[a-z]{2}|\\d{3})",a="(?:[a-z0-9]{5,8}|\\d[a-z0-9]{3})",l="[0-9a-wy-z]",s=l+"(?:-[a-z0-9]{2,8})+",u="x(?:-[a-z0-9]{1,8})+",c="(?:en-GB-oed|i-(?:ami|bnn|default|enochian|hak|klingon|lux|mingo|navajo|pwn|tao|tay|tsu)|sgn-(?:BE-FR|BE-NL|CH-DE))",f="(?:art-lojban|cel-gaulish|no-bok|no-nyn|zh-(?:guoyu|hakka|min|min-nan|xiang))",p="(?:"+c+"|"+f+")",d=n+"(?:-"+o+")?(?:-"+i+")?(?:-"+a+")*(?:-"+s+")*(?:-"+u+")?",h=RegExp("^(?:"+d+"|"+u+"|"+p+")$","i"),y=RegExp("^(?!x).*?-("+a+")-(?:\\w{4,8}-(?!x-))*\\1\\b","i"),m=RegExp("^(?!x).*?-("+l+")-(?:\\w+-(?!x-))*\\1\\b","i"),b=RegExp("-"+s,"ig");t.expBCP47Syntax=h,t.expVariantDupes=y,t.expSingletonDupes=m,t.expExtSequences=b},function(e,t){"use strict";function r(e){for(var t=0;t100?(clearInterval(this._wheelTimer),clearInterval(this._wheelLongTimer),this._wheelLongTimer=setTimeout(function(){this._wheelLongTimer=null}.bind(this),2e3)):this._wheelLongTimer||(t>10?(clearInterval(this._wheelTimer),this._wheelTimer=setTimeout(this._onNext,200)):-10>t&&(clearInterval(this._wheelTimer),this._wheelTimer=setTimeout(this._onPrevious,200)))}},{key:"_onNext",value:function(e,t){e&&(this._stop(),e.preventDefault());for(var r=c["default"].Children.count(this.props.children),n="row"===this.props.direction?window.innerWidth:window.innerHeight,o=!1,i=0;r>i;i+=1){var a=p["default"].findDOMNode(this.refs[i]),l=a.getBoundingClientRect(),s="row"===this.props.direction?l.right:l.bottom;if(s>10&&(e||t||n>s)){i+1!==this.state.activeIndex&&this._onSelect(i+1),o=!0;break}}t&&!o&&this._onSelect(1)}},{key:"_onPrevious",value:function(e){e&&(this._stop(),e.preventDefault());for(var t=c["default"].Children.count(this.props.children),r="row"===this.props.direction?window.innerWidth:window.innerHeight,n=t-1;n>=0;n-=1){var o=p["default"].findDOMNode(this.refs[n]),i=o.getBoundingClientRect(),a="row"===this.props.direction?i.left:i.top;if(r>a&&(e||a>10)){n-1!==this.state.activeIndex&&this._onSelect(n-1);break}}}},{key:"_start",value:function(){this._playTimer=setInterval(function(){this._onNext(null,!0)}.bind(this),S),this.setState({playing:!0})}},{key:"_stop",value:function(){clearInterval(this._playTimer),this.setState({playing:!1})}},{key:"_onTogglePlay",value:function(e){e.preventDefault(),this.state.playing?this._stop():this._start()}},{key:"_onSelect",value:function(e){var t=p["default"].findDOMNode(this.refs[e]),r=t.getBoundingClientRect();"row"===this.props.direction?v["default"].scrollBy(this._scrollParent,"scrollLeft",r.left):v["default"].scrollBy(this._scrollParent,"scrollTop",r.top),this.setState({activeIndex:e})}},{key:"_onFocusChange",value:function(e){c["default"].Children.forEach(this.props.children,function(t,r){var n=p["default"].findDOMNode(this.refs[r]);n&&n.contains(e.target)&&this._onSelect(r)}.bind(this))}},{key:"_renderControls",value:function(){var e=I+"__control "+I+"__control",t=c["default"].Children.count(this.props.children),r=[];return"row"===this.props.direction?(this.state.activeIndex>0&&r.push(c["default"].createElement(w["default"],{key:"previous",plain:!0,className:e+"-left",onClick:this._onPrevious},c["default"].createElement(k["default"],{size:"large"}))),this.state.activeIndex0&&r.push(c["default"].createElement(w["default"],{key:"previous",plain:!0,className:e+"-up",onClick:this._onPrevious},c["default"].createElement(x["default"],null))),this.state.activeIndexe?2*e*e:-1+(4-2*e)*e},scrollBy:function(e,t,n){clearInterval(this._scrollToTimer);var o=e[t],i=o+n,a=1;this._scrollToTimer=setInterval(function(){var n,l=this._easeInOutQuad(a/r);n=i>o?Math.min(i,Math.max(e[t],Math.round(o+(i-o)*l))):Math.max(i,Math.min(e[t],Math.round(o-(o-i)*l))),e[t]=n,a+=1,a>r&&(clearInterval(this._scrollToTimer),this._scrollToTimer=setTimeout(function(){e[t]=n},200))}.bind(this),8)}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;rs;s+=1){var c=[j+"__day"];this.state.current&&i.isSame(this.state.current)&&c.push(j+"__day--active"),i.isSame(r,"month")||c.push(j+"__day--other-month"),l.push(u["default"].createElement("td",{key:i.valueOf()},u["default"].createElement("div",{className:c.join(" "),onClick:this._onClickDay.bind(this,(0,f["default"])(i))},i.date()))),i.add(1,"days")}a.push(u["default"].createElement("tr",{key:i.valueOf()},l))}return u["default"].createElement("div",{id:j+"-drop",className:j+"__drop",onClick:this._onClose},u["default"].createElement(_["default"],{justify:"between"},u["default"].createElement(w["default"],{className:j+"__previous",icon:u["default"].createElement(k["default"],null),onClick:this._onPrevious}),u["default"].createElement(v["default"],{className:j+"__title",responsive:!1},this.state.reference.format("MMMM YYYY")),u["default"].createElement(w["default"],{className:j+"__next",icon:u["default"].createElement(x["default"],null),onClick:this._onNext})),u["default"].createElement("div",{className:j+"__grid"},u["default"].createElement("table",null,u["default"].createElement("thead",null,u["default"].createElement("tr",null,t)),u["default"].createElement("tbody",null,a))))}},{key:"render",value:function(){var e=[j];return this.state.dropActive&&e.push(j+"--active"),this.props.className&&e.push(this.props.className),u["default"].createElement("div",{ref:"component",className:e.join(" ")},u["default"].createElement("input",{className:j+"__input",id:this.props.id,ref:"calendarInput",name:this.props.name,value:this.props.value,onChange:this._onInputChange}),u["default"].createElement(w["default"],{className:j+"__control",icon:u["default"].createElement(P["default"],null),onClick:this._onOpen}))}}]),t}(s.Component);t["default"]=L,L.propTypes={id:s.PropTypes.string,name:s.PropTypes.string,onChange:s.PropTypes.func,value:s.PropTypes.string},L.defaultProps={value:(0,f["default"])().format("YYYY-MM-DD")},e.exports=t["default"]},function(e,t,r){(function(e){!function(t,r){e.exports=r()}(this,function(){"use strict";function t(){return Zr.apply(null,arguments)}function n(e){Zr=e}function o(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function i(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function a(e,t){var r,n=[];for(r=0;r0)for(r in en)n=en[r],o=t[n],h(o)||(e[n]=o);return e}function m(e){y(this,e),this._d=new Date(null!=e._d?e._d.getTime():NaN),
+tn===!1&&(tn=!0,t.updateOffset(this),tn=!1)}function b(e){return e instanceof m||null!=e&&null!=e._isAMomentObject}function _(e){return 0>e?Math.ceil(e):Math.floor(e)}function g(e){var t=+e,r=0;return 0!==t&&isFinite(t)&&(r=_(t)),r}function v(e,t,r){var n,o=Math.min(e.length,t.length),i=Math.abs(e.length-t.length),a=0;for(n=0;o>n;n++)(r&&e[n]!==t[n]||!r&&g(e[n])!==g(t[n]))&&a++;return a+i}function T(e){t.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+e)}function w(e,t){var r=!0;return s(function(){return r&&(T(e+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),r=!1),t.apply(this,arguments)},t)}function M(e,t){rn[e]||(T(t),rn[e]=!0)}function P(e){return e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}function E(e){return"[object Object]"===Object.prototype.toString.call(e)}function k(e){var t,r;for(r in e)t=e[r],P(t)?this[r]=t:this["_"+r]=t;this._config=e,this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function O(e,t){var r,n=s({},e);for(r in t)l(t,r)&&(E(e[r])&&E(t[r])?(n[r]={},s(n[r],e[r]),s(n[r],t[r])):null!=t[r]?n[r]=t[r]:delete n[r]);return n}function x(e){null!=e&&this.set(e)}function j(e){return e?e.toLowerCase().replace("_","-"):e}function L(e){for(var t,r,n,o,i=0;i0;){if(n=I(o.slice(0,t).join("-")))return n;if(r&&r.length>=t&&v(o,r,!0)>=t-1)break;t--}i++}return null}function I(t){var n=null;if(!on[t]&&"undefined"!=typeof e&&e&&e.exports)try{n=nn._abbr,r(67)("./"+t),S(n)}catch(o){}return on[t]}function S(e,t){var r;return e&&(r=h(t)?Y(e):C(e,t),r&&(nn=r)),nn._abbr}function C(e,t){return null!==t?(t.abbr=e,null!=on[e]?(M("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale"),t=O(on[e]._config,t)):null!=t.parentLocale&&(null!=on[t.parentLocale]?t=O(on[t.parentLocale]._config,t):M("parentLocaleUndefined","specified parentLocale is not defined yet")),on[e]=new x(t),S(e),on[e]):(delete on[e],null)}function D(e,t){if(null!=t){var r;null!=on[e]&&(t=O(on[e]._config,t)),r=new x(t),r.parentLocale=on[e],on[e]=r,S(e)}else null!=on[e]&&(null!=on[e].parentLocale?on[e]=on[e].parentLocale:null!=on[e]&&delete on[e]);return on[e]}function Y(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return nn;if(!o(e)){if(t=I(e))return t;e=[e]}return L(e)}function N(){return Object.keys(on)}function z(e,t){var r=e.toLowerCase();an[r]=an[r+"s"]=an[t]=e}function H(e){return"string"==typeof e?an[e]||an[e.toLowerCase()]:void 0}function R(e){var t,r,n={};for(r in e)l(e,r)&&(t=H(r),t&&(n[t]=e[r]));return n}function W(e,r){return function(n){return null!=n?(F(this,e,n),t.updateOffset(this,r),this):A(this,e)}}function A(e,t){return e.isValid()?e._d["get"+(e._isUTC?"UTC":"")+t]():NaN}function F(e,t,r){e.isValid()&&e._d["set"+(e._isUTC?"UTC":"")+t](r)}function B(e,t){var r;if("object"==typeof e)for(r in e)this.set(r,e[r]);else if(e=H(e),P(this[e]))return this[e](t);return this}function V(e,t,r){var n=""+Math.abs(e),o=t-n.length,i=e>=0;return(i?r?"+":"":"-")+Math.pow(10,Math.max(0,o)).toString().substr(1)+n}function K(e,t,r,n){var o=n;"string"==typeof n&&(o=function(){return this[n]()}),e&&(cn[e]=o),t&&(cn[t[0]]=function(){return V(o.apply(this,arguments),t[1],t[2])}),r&&(cn[r]=function(){return this.localeData().ordinal(o.apply(this,arguments),e)})}function J(e){return e.match(/\[[\s\S]/)?e.replace(/^\[|\]$/g,""):e.replace(/\\/g,"")}function G(e){var t,r,n=e.match(ln);for(t=0,r=n.length;r>t;t++)cn[n[t]]?n[t]=cn[n[t]]:n[t]=J(n[t]);return function(o){var i="";for(t=0;r>t;t++)i+=n[t]instanceof Function?n[t].call(o,e):n[t];return i}}function q(e,t){return e.isValid()?(t=U(t,e.localeData()),un[t]=un[t]||G(t),un[t](e)):e.localeData().invalidDate()}function U(e,t){function r(e){return t.longDateFormat(e)||e}var n=5;for(sn.lastIndex=0;n>=0&&sn.test(e);)e=e.replace(sn,r),sn.lastIndex=0,n-=1;return e}function X(e,t,r){xn[e]=P(t)?t:function(e,n){return e&&r?r:t}}function Q(e,t){return l(xn,e)?xn[e](t._strict,t._locale):new RegExp($(e))}function $(e){return Z(e.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(e,t,r,n,o){return t||r||n||o}))}function Z(e){return e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ee(e,t){var r,n=t;for("string"==typeof e&&(e=[e]),"number"==typeof t&&(n=function(e,r){r[t]=g(e)}),r=0;rn;n++){if(o=u([2e3,n]),r&&!this._longMonthsParse[n]&&(this._longMonthsParse[n]=new RegExp("^"+this.months(o,"").replace(".","")+"$","i"),this._shortMonthsParse[n]=new RegExp("^"+this.monthsShort(o,"").replace(".","")+"$","i")),r||this._monthsParse[n]||(i="^"+this.months(o,"")+"|^"+this.monthsShort(o,""),this._monthsParse[n]=new RegExp(i.replace(".",""),"i")),r&&"MMMM"===t&&this._longMonthsParse[n].test(e))return n;if(r&&"MMM"===t&&this._shortMonthsParse[n].test(e))return n;if(!r&&this._monthsParse[n].test(e))return n}}function le(e,t){var r;if(!e.isValid())return e;if("string"==typeof t)if(/^\d+$/.test(t))t=g(t);else if(t=e.localeData().monthsParse(t),"number"!=typeof t)return e;return r=Math.min(e.date(),ne(e.year(),t)),e._d["set"+(e._isUTC?"UTC":"")+"Month"](t,r),e}function se(e){return null!=e?(le(this,e),t.updateOffset(this,!0),this):A(this,"Month")}function ue(){return ne(this.year(),this.month())}function ce(e){return this._monthsParseExact?(l(this,"_monthsRegex")||pe.call(this),e?this._monthsShortStrictRegex:this._monthsShortRegex):this._monthsShortStrictRegex&&e?this._monthsShortStrictRegex:this._monthsShortRegex}function fe(e){return this._monthsParseExact?(l(this,"_monthsRegex")||pe.call(this),e?this._monthsStrictRegex:this._monthsRegex):this._monthsStrictRegex&&e?this._monthsStrictRegex:this._monthsRegex}function pe(){function e(e,t){return t.length-e.length}var t,r,n=[],o=[],i=[];for(t=0;12>t;t++)r=u([2e3,t]),n.push(this.monthsShort(r,"")),o.push(this.months(r,"")),i.push(this.months(r,"")),i.push(this.monthsShort(r,""));for(n.sort(e),o.sort(e),i.sort(e),t=0;12>t;t++)n[t]=Z(n[t]),o[t]=Z(o[t]),i[t]=Z(i[t]);this._monthsRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+o.join("|")+")$","i"),this._monthsShortStrictRegex=new RegExp("^("+n.join("|")+")$","i")}function de(e){var t,r=e._a;return r&&-2===f(e).overflow&&(t=r[In]<0||r[In]>11?In:r[Sn]<1||r[Sn]>ne(r[Ln],r[In])?Sn:r[Cn]<0||r[Cn]>24||24===r[Cn]&&(0!==r[Dn]||0!==r[Yn]||0!==r[Nn])?Cn:r[Dn]<0||r[Dn]>59?Dn:r[Yn]<0||r[Yn]>59?Yn:r[Nn]<0||r[Nn]>999?Nn:-1,f(e)._overflowDayOfYear&&(Ln>t||t>Sn)&&(t=Sn),f(e)._overflowWeeks&&-1===t&&(t=zn),f(e)._overflowWeekday&&-1===t&&(t=Hn),f(e).overflow=t),e}function he(e){var t,r,n,o,i,a,l=e._i,s=Vn.exec(l)||Kn.exec(l);if(s){for(f(e).iso=!0,t=0,r=Gn.length;r>t;t++)if(Gn[t][1].exec(s[1])){o=Gn[t][0],n=Gn[t][2]!==!1;break}if(null==o)return void(e._isValid=!1);if(s[3]){for(t=0,r=qn.length;r>t;t++)if(qn[t][1].exec(s[3])){i=(s[2]||" ")+qn[t][0];break}if(null==i)return void(e._isValid=!1)}if(!n&&null!=i)return void(e._isValid=!1);if(s[4]){if(!Jn.exec(s[4]))return void(e._isValid=!1);a="Z"}e._f=o+(i||"")+(a||""),je(e)}else e._isValid=!1}function ye(e){var r=Un.exec(e._i);return null!==r?void(e._d=new Date(+r[1])):(he(e),void(e._isValid===!1&&(delete e._isValid,t.createFromInputFallback(e))))}function me(e,t,r,n,o,i,a){var l=new Date(e,t,r,n,o,i,a);return 100>e&&e>=0&&isFinite(l.getFullYear())&&l.setFullYear(e),l}function be(e){var t=new Date(Date.UTC.apply(null,arguments));return 100>e&&e>=0&&isFinite(t.getUTCFullYear())&&t.setUTCFullYear(e),t}function _e(e){return ge(e)?366:365}function ge(e){return e%4===0&&e%100!==0||e%400===0}function ve(){return ge(this.year())}function Te(e,t,r){var n=7+t-r,o=(7+be(e,0,n).getUTCDay()-t)%7;return-o+n-1}function we(e,t,r,n,o){var i,a,l=(7+r-n)%7,s=Te(e,n,o),u=1+7*(t-1)+l+s;return 0>=u?(i=e-1,a=_e(i)+u):u>_e(e)?(i=e+1,a=u-_e(e)):(i=e,a=u),{year:i,dayOfYear:a}}function Me(e,t,r){var n,o,i=Te(e.year(),t,r),a=Math.floor((e.dayOfYear()-i-1)/7)+1;return 1>a?(o=e.year()-1,n=a+Pe(o,t,r)):a>Pe(e.year(),t,r)?(n=a-Pe(e.year(),t,r),o=e.year()+1):(o=e.year(),n=a),{week:n,year:o}}function Pe(e,t,r){var n=Te(e,t,r),o=Te(e+1,t,r);return(_e(e)-n+o)/7}function Ee(e,t,r){return null!=e?e:null!=t?t:r}function ke(e){var r=new Date(t.now());return e._useUTC?[r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate()]:[r.getFullYear(),r.getMonth(),r.getDate()]}function Oe(e){var t,r,n,o,i=[];if(!e._d){for(n=ke(e),e._w&&null==e._a[Sn]&&null==e._a[In]&&xe(e),e._dayOfYear&&(o=Ee(e._a[Ln],n[Ln]),e._dayOfYear>_e(o)&&(f(e)._overflowDayOfYear=!0),r=be(o,0,e._dayOfYear),e._a[In]=r.getUTCMonth(),e._a[Sn]=r.getUTCDate()),t=0;3>t&&null==e._a[t];++t)e._a[t]=i[t]=n[t];for(;7>t;t++)e._a[t]=i[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[Cn]&&0===e._a[Dn]&&0===e._a[Yn]&&0===e._a[Nn]&&(e._nextDay=!0,e._a[Cn]=0),e._d=(e._useUTC?be:me).apply(null,i),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[Cn]=24)}}function xe(e){var t,r,n,o,i,a,l,s;t=e._w,null!=t.GG||null!=t.W||null!=t.E?(i=1,a=4,r=Ee(t.GG,e._a[Ln],Me(ze(),1,4).year),n=Ee(t.W,1),o=Ee(t.E,1),(1>o||o>7)&&(s=!0)):(i=e._locale._week.dow,a=e._locale._week.doy,r=Ee(t.gg,e._a[Ln],Me(ze(),i,a).year),n=Ee(t.w,1),null!=t.d?(o=t.d,(0>o||o>6)&&(s=!0)):null!=t.e?(o=t.e+i,(t.e<0||t.e>6)&&(s=!0)):o=i),1>n||n>Pe(r,i,a)?f(e)._overflowWeeks=!0:null!=s?f(e)._overflowWeekday=!0:(l=we(r,n,o,i,a),e._a[Ln]=l.year,e._dayOfYear=l.dayOfYear)}function je(e){if(e._f===t.ISO_8601)return void he(e);e._a=[],f(e).empty=!0;var r,n,o,i,a,l=""+e._i,s=l.length,u=0;for(o=U(e._f,e._locale).match(ln)||[],r=0;r0&&f(e).unusedInput.push(a),l=l.slice(l.indexOf(n)+n.length),u+=n.length),cn[i]?(n?f(e).empty=!1:f(e).unusedTokens.push(i),re(i,n,e)):e._strict&&!n&&f(e).unusedTokens.push(i);f(e).charsLeftOver=s-u,l.length>0&&f(e).unusedInput.push(l),f(e).bigHour===!0&&e._a[Cn]<=12&&e._a[Cn]>0&&(f(e).bigHour=void 0),e._a[Cn]=Le(e._locale,e._a[Cn],e._meridiem),Oe(e),de(e)}function Le(e,t,r){var n;return null==r?t:null!=e.meridiemHour?e.meridiemHour(t,r):null!=e.isPM?(n=e.isPM(r),n&&12>t&&(t+=12),n||12!==t||(t=0),t):t}function Ie(e){var t,r,n,o,i;if(0===e._f.length)return f(e).invalidFormat=!0,void(e._d=new Date(NaN));for(o=0;oi)&&(n=i,r=t));s(e,r||t)}function Se(e){if(!e._d){var t=R(e._i);e._a=a([t.year,t.month,t.day||t.date,t.hour,t.minute,t.second,t.millisecond],function(e){return e&&parseInt(e,10)}),Oe(e)}}function Ce(e){var t=new m(de(De(e)));return t._nextDay&&(t.add(1,"d"),t._nextDay=void 0),t}function De(e){var t=e._i,r=e._f;return e._locale=e._locale||Y(e._l),null===t||void 0===r&&""===t?d({nullInput:!0}):("string"==typeof t&&(e._i=t=e._locale.preparse(t)),b(t)?new m(de(t)):(o(r)?Ie(e):r?je(e):i(t)?e._d=t:Ye(e),p(e)||(e._d=null),e))}function Ye(e){var r=e._i;void 0===r?e._d=new Date(t.now()):i(r)?e._d=new Date(+r):"string"==typeof r?ye(e):o(r)?(e._a=a(r.slice(0),function(e){return parseInt(e,10)}),Oe(e)):"object"==typeof r?Se(e):"number"==typeof r?e._d=new Date(r):t.createFromInputFallback(e)}function Ne(e,t,r,n,o){var i={};return"boolean"==typeof r&&(n=r,r=void 0),i._isAMomentObject=!0,i._useUTC=i._isUTC=o,i._l=r,i._i=e,i._f=t,i._strict=n,Ce(i)}function ze(e,t,r,n){return Ne(e,t,r,n,!1)}function He(e,t){var r,n;if(1===t.length&&o(t[0])&&(t=t[0]),!t.length)return ze();for(r=t[0],n=1;ne&&(e=-e,r="-"),r+V(~~(e/60),2)+t+V(~~e%60,2)})}function Ve(e,t){var r=(t||"").match(e)||[],n=r[r.length-1]||[],o=(n+"").match(eo)||["-",0,0],i=+(60*o[1])+g(o[2]);return"+"===o[0]?i:-i}function Ke(e,r){var n,o;return r._isUTC?(n=r.clone(),o=(b(e)||i(e)?+e:+ze(e))-+n,n._d.setTime(+n._d+o),t.updateOffset(n,!1),n):ze(e).local()}function Je(e){return 15*-Math.round(e._d.getTimezoneOffset()/15)}function Ge(e,r){var n,o=this._offset||0;return this.isValid()?null!=e?("string"==typeof e?e=Ve(En,e):Math.abs(e)<16&&(e=60*e),!this._isUTC&&r&&(n=Je(this)),this._offset=e,this._isUTC=!0,null!=n&&this.add(n,"m"),o!==e&&(!r||this._changeInProgress?ct(this,ot(e-o,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,t.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?o:Je(this):null!=e?this:NaN}function qe(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}function Ue(e){return this.utcOffset(0,e)}function Xe(e){return this._isUTC&&(this.utcOffset(0,e),this._isUTC=!1,e&&this.subtract(Je(this),"m")),this}function Qe(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Ve(Pn,this._i)),this}function $e(e){return this.isValid()?(e=e?ze(e).utcOffset():0,(this.utcOffset()-e)%60===0):!1}function Ze(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function et(){if(!h(this._isDSTShifted))return this._isDSTShifted;var e={};if(y(e,this),e=De(e),e._a){var t=e._isUTC?u(e._a):ze(e._a);this._isDSTShifted=this.isValid()&&v(e._a,t.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function tt(){return this.isValid()?!this._isUTC:!1}function rt(){return this.isValid()?this._isUTC:!1}function nt(){return this.isValid()?this._isUTC&&0===this._offset:!1}function ot(e,t){var r,n,o,i=e,a=null;return Fe(e)?i={ms:e._milliseconds,d:e._days,M:e._months}:"number"==typeof e?(i={},t?i[t]=e:i.milliseconds=e):(a=to.exec(e))?(r="-"===a[1]?-1:1,i={y:0,d:g(a[Sn])*r,h:g(a[Cn])*r,m:g(a[Dn])*r,s:g(a[Yn])*r,ms:g(a[Nn])*r}):(a=ro.exec(e))?(r="-"===a[1]?-1:1,i={y:it(a[2],r),M:it(a[3],r),w:it(a[4],r),d:it(a[5],r),h:it(a[6],r),m:it(a[7],r),s:it(a[8],r)}):null==i?i={}:"object"==typeof i&&("from"in i||"to"in i)&&(o=lt(ze(i.from),ze(i.to)),i={},i.ms=o.milliseconds,i.M=o.months),n=new Ae(i),Fe(e)&&l(e,"_locale")&&(n._locale=e._locale),n}function it(e,t){var r=e&&parseFloat(e.replace(",","."));return(isNaN(r)?0:r)*t}function at(e,t){var r={milliseconds:0,months:0};return r.months=t.month()-e.month()+12*(t.year()-e.year()),e.clone().add(r.months,"M").isAfter(t)&&--r.months,r.milliseconds=+t-+e.clone().add(r.months,"M"),r}function lt(e,t){var r;return e.isValid()&&t.isValid()?(t=Ke(t,e),e.isBefore(t)?r=at(e,t):(r=at(t,e),r.milliseconds=-r.milliseconds,r.months=-r.months),r):{milliseconds:0,months:0}}function st(e){return 0>e?-1*Math.round(-1*e):Math.round(e)}function ut(e,t){return function(r,n){var o,i;return null===n||isNaN(+n)||(M(t,"moment()."+t+"(period, number) is deprecated. Please use moment()."+t+"(number, period)."),i=r,r=n,n=i),r="string"==typeof r?+r:r,o=ot(r,n),ct(this,o,e),this}}function ct(e,r,n,o){var i=r._milliseconds,a=st(r._days),l=st(r._months);e.isValid()&&(o=null==o?!0:o,i&&e._d.setTime(+e._d+i*n),a&&F(e,"Date",A(e,"Date")+a*n),l&&le(e,A(e,"Month")+l*n),o&&t.updateOffset(e,a||l))}function ft(e,t){var r=e||ze(),n=Ke(r,this).startOf("day"),o=this.diff(n,"days",!0),i=-6>o?"sameElse":-1>o?"lastWeek":0>o?"lastDay":1>o?"sameDay":2>o?"nextDay":7>o?"nextWeek":"sameElse",a=t&&(P(t[i])?t[i]():t[i]);return this.format(a||this.localeData().calendar(i,this,ze(r)))}function pt(){return new m(this)}function dt(e,t){var r=b(e)?e:ze(e);return this.isValid()&&r.isValid()?(t=H(h(t)?"millisecond":t),"millisecond"===t?+this>+r:+r<+this.clone().startOf(t)):!1}function ht(e,t){var r=b(e)?e:ze(e);return this.isValid()&&r.isValid()?(t=H(h(t)?"millisecond":t),"millisecond"===t?+r>+this:+this.clone().endOf(t)<+r):!1}function yt(e,t,r){return this.isAfter(e,r)&&this.isBefore(t,r)}function mt(e,t){var r,n=b(e)?e:ze(e);return this.isValid()&&n.isValid()?(t=H(t||"millisecond"),"millisecond"===t?+this===+n:(r=+n,+this.clone().startOf(t)<=r&&r<=+this.clone().endOf(t))):!1}function bt(e,t){return this.isSame(e,t)||this.isAfter(e,t)}function _t(e,t){return this.isSame(e,t)||this.isBefore(e,t)}function gt(e,t,r){var n,o,i,a;return this.isValid()?(n=Ke(e,this),n.isValid()?(o=6e4*(n.utcOffset()-this.utcOffset()),t=H(t),"year"===t||"month"===t||"quarter"===t?(a=vt(this,n),"quarter"===t?a/=3:"year"===t&&(a/=12)):(i=this-n,a="second"===t?i/1e3:"minute"===t?i/6e4:"hour"===t?i/36e5:"day"===t?(i-o)/864e5:"week"===t?(i-o)/6048e5:i),r?a:_(a)):NaN):NaN}function vt(e,t){var r,n,o=12*(t.year()-e.year())+(t.month()-e.month()),i=e.clone().add(o,"months");return 0>t-i?(r=e.clone().add(o-1,"months"),n=(t-i)/(i-r)):(r=e.clone().add(o+1,"months"),n=(t-i)/(r-i)),-(o+n)}function Tt(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function wt(){var e=this.clone().utc();return 0i&&(t=i),qt.call(this,e,t,r,n,o))}function qt(e,t,r,n,o){var i=we(e,t,r,n,o),a=be(i.year,0,i.dayOfYear);return this.year(a.getUTCFullYear()),this.month(a.getUTCMonth()),this.date(a.getUTCDate()),this}function Ut(e){return null==e?Math.ceil((this.month()+1)/3):this.month(3*(e-1)+this.month()%3)}function Xt(e){return Me(e,this._week.dow,this._week.doy).week}function Qt(){return this._week.dow}function $t(){return this._week.doy}function Zt(e){var t=this.localeData().week(this);return null==e?t:this.add(7*(e-t),"d")}function er(e){var t=Me(this,1,4).week;return null==e?t:this.add(7*(e-t),"d")}function tr(e,t){return"string"!=typeof e?e:isNaN(e)?(e=t.weekdaysParse(e),"number"==typeof e?e:null):parseInt(e,10)}function rr(e,t){return o(this._weekdays)?this._weekdays[e.day()]:this._weekdays[this._weekdays.isFormat.test(t)?"format":"standalone"][e.day()]}function nr(e){return this._weekdaysShort[e.day()]}function or(e){return this._weekdaysMin[e.day()]}function ir(e,t,r){var n,o,i;for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),n=0;7>n;n++){if(o=ze([2e3,1]).day(n),r&&!this._fullWeekdaysParse[n]&&(this._fullWeekdaysParse[n]=new RegExp("^"+this.weekdays(o,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[n]=new RegExp("^"+this.weekdaysShort(o,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[n]=new RegExp("^"+this.weekdaysMin(o,"").replace(".",".?")+"$","i")),this._weekdaysParse[n]||(i="^"+this.weekdays(o,"")+"|^"+this.weekdaysShort(o,"")+"|^"+this.weekdaysMin(o,""),this._weekdaysParse[n]=new RegExp(i.replace(".",""),"i")),r&&"dddd"===t&&this._fullWeekdaysParse[n].test(e))return n;if(r&&"ddd"===t&&this._shortWeekdaysParse[n].test(e))return n;if(r&&"dd"===t&&this._minWeekdaysParse[n].test(e))return n;if(!r&&this._weekdaysParse[n].test(e))return n}}function ar(e){if(!this.isValid())return null!=e?this:NaN;var t=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=e?(e=tr(e,this.localeData()),this.add(e-t,"d")):t}function lr(e){if(!this.isValid())return null!=e?this:NaN;var t=(this.day()+7-this.localeData()._week.dow)%7;return null==e?t:this.add(e-t,"d")}function sr(e){return this.isValid()?null==e?this.day()||7:this.day(this.day()%7?e:e-7):null!=e?this:NaN}function ur(e){var t=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"d")}function cr(){return this.hours()%12||12}function fr(e,t){K(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function pr(e,t){return t._meridiemParse}function dr(e){return"p"===(e+"").toLowerCase().charAt(0)}function hr(e,t,r){return e>11?r?"pm":"PM":r?"am":"AM"}function yr(e,t){t[Nn]=g(1e3*("0."+e))}function mr(){return this._isUTC?"UTC":""}function br(){return this._isUTC?"Coordinated Universal Time":""}function _r(e){return ze(1e3*e)}function gr(){return ze.apply(null,arguments).parseZone()}function vr(e,t,r){var n=this._calendar[e];return P(n)?n.call(t,r):n}function Tr(e){var t=this._longDateFormat[e],r=this._longDateFormat[e.toUpperCase()];return t||!r?t:(this._longDateFormat[e]=r.replace(/MMMM|MM|DD|dddd/g,function(e){return e.slice(1)}),this._longDateFormat[e])}function wr(){return this._invalidDate}function Mr(e){return this._ordinal.replace("%d",e)}function Pr(e){return e}function Er(e,t,r,n){var o=this._relativeTime[r];return P(o)?o(e,t,r,n):o.replace(/%d/i,e)}function kr(e,t){var r=this._relativeTime[e>0?"future":"past"];return P(r)?r(t):r.replace(/%s/i,t)}function Or(e,t,r,n){var o=Y(),i=u().set(n,t);return o[r](i,e)}function xr(e,t,r,n,o){if("number"==typeof e&&(t=e,e=void 0),e=e||"",null!=t)return Or(e,t,r,o);var i,a=[];for(i=0;n>i;i++)a[i]=Or(e,i,r,o);return a}function jr(e,t){return xr(e,t,"months",12,"month")}function Lr(e,t){return xr(e,t,"monthsShort",12,"month")}function Ir(e,t){return xr(e,t,"weekdays",7,"day")}function Sr(e,t){return xr(e,t,"weekdaysShort",7,"day")}function Cr(e,t){return xr(e,t,"weekdaysMin",7,"day")}function Dr(){var e=this._data;return this._milliseconds=Oo(this._milliseconds),this._days=Oo(this._days),this._months=Oo(this._months),e.milliseconds=Oo(e.milliseconds),e.seconds=Oo(e.seconds),e.minutes=Oo(e.minutes),e.hours=Oo(e.hours),e.months=Oo(e.months),e.years=Oo(e.years),this}function Yr(e,t,r,n){var o=ot(t,r);return e._milliseconds+=n*o._milliseconds,e._days+=n*o._days,e._months+=n*o._months,e._bubble()}function Nr(e,t){return Yr(this,e,t,1)}function zr(e,t){return Yr(this,e,t,-1)}function Hr(e){return 0>e?Math.floor(e):Math.ceil(e)}function Rr(){var e,t,r,n,o,i=this._milliseconds,a=this._days,l=this._months,s=this._data;return i>=0&&a>=0&&l>=0||0>=i&&0>=a&&0>=l||(i+=864e5*Hr(Ar(l)+a),a=0,l=0),s.milliseconds=i%1e3,e=_(i/1e3),s.seconds=e%60,t=_(e/60),s.minutes=t%60,r=_(t/60),s.hours=r%24,a+=_(r/24),o=_(Wr(a)),l+=o,a-=Hr(Ar(o)),n=_(l/12),l%=12,s.days=a,s.months=l,s.years=n,this}function Wr(e){return 4800*e/146097}function Ar(e){return 146097*e/4800}function Fr(e){var t,r,n=this._milliseconds;if(e=H(e),"month"===e||"year"===e)return t=this._days+n/864e5,r=this._months+Wr(t),"month"===e?r:r/12;switch(t=this._days+Math.round(Ar(this._months)),e){case"week":return t/7+n/6048e5;case"day":return t+n/864e5;case"hour":return 24*t+n/36e5;case"minute":return 1440*t+n/6e4;case"second":return 86400*t+n/1e3;case"millisecond":return Math.floor(864e5*t)+n;default:throw new Error("Unknown unit "+e)}}function Br(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*g(this._months/12)}function Vr(e){return function(){return this.as(e)}}function Kr(e){return e=H(e),this[e+"s"]()}function Jr(e){return function(){return this._data[e]}}function Gr(){return _(this.days()/7)}function qr(e,t,r,n,o){return o.relativeTime(t||1,!!r,e,n)}function Ur(e,t,r){var n=ot(e).abs(),o=Bo(n.as("s")),i=Bo(n.as("m")),a=Bo(n.as("h")),l=Bo(n.as("d")),s=Bo(n.as("M")),u=Bo(n.as("y")),c=o=i&&["m"]||i=a&&["h"]||a=l&&["d"]||l=s&&["M"]||s=u&&["y"]||["yy",u];return c[2]=t,c[3]=+e>0,c[4]=r,qr.apply(null,c)}function Xr(e,t){return void 0===Vo[e]?!1:void 0===t?Vo[e]:(Vo[e]=t,!0)}function Qr(e){var t=this.localeData(),r=Ur(this,!e,t);return e&&(r=t.pastFuture(+this,r)),t.postformat(r)}function $r(){var e,t,r,n=Ko(this._milliseconds)/1e3,o=Ko(this._days),i=Ko(this._months);e=_(n/60),t=_(e/60),n%=60,e%=60,r=_(i/12),i%=12;var a=r,l=i,s=o,u=t,c=e,f=n,p=this.asSeconds();return p?(0>p?"-":"")+"P"+(a?a+"Y":"")+(l?l+"M":"")+(s?s+"D":"")+(u||c||f?"T":"")+(u?u+"H":"")+(c?c+"M":"")+(f?f+"S":""):"P0D"}var Zr,en=t.momentProperties=[],tn=!1,rn={};t.suppressDeprecationWarnings=!1;var nn,on={},an={},ln=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,sn=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,un={},cn={},fn=/\d/,pn=/\d\d/,dn=/\d{3}/,hn=/\d{4}/,yn=/[+-]?\d{6}/,mn=/\d\d?/,bn=/\d\d\d\d?/,_n=/\d\d\d\d\d\d?/,gn=/\d{1,3}/,vn=/\d{1,4}/,Tn=/[+-]?\d{1,6}/,wn=/\d+/,Mn=/[+-]?\d+/,Pn=/Z|[+-]\d\d:?\d\d/gi,En=/Z|[+-]\d\d(?::?\d\d)?/gi,kn=/[+-]?\d+(\.\d{1,3})?/,On=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,xn={},jn={},Ln=0,In=1,Sn=2,Cn=3,Dn=4,Yn=5,Nn=6,zn=7,Hn=8;K("M",["MM",2],"Mo",function(){return this.month()+1}),K("MMM",0,0,function(e){return this.localeData().monthsShort(this,e)}),K("MMMM",0,0,function(e){return this.localeData().months(this,e)}),z("month","M"),X("M",mn),X("MM",mn,pn),X("MMM",function(e,t){return t.monthsShortRegex(e)}),X("MMMM",function(e,t){return t.monthsRegex(e)}),ee(["M","MM"],function(e,t){t[In]=g(e)-1}),ee(["MMM","MMMM"],function(e,t,r,n){var o=r._locale.monthsParse(e,n,r._strict);null!=o?t[In]=o:f(r).invalidMonth=e});var Rn=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,Wn="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),An="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Fn=On,Bn=On,Vn=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,Kn=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,Jn=/Z|[+-]\d\d(?::?\d\d)?/,Gn=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],qn=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Un=/^\/?Date\((\-?\d+)/i;t.createFromInputFallback=w("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(e){e._d=new Date(e._i+(e._useUTC?" UTC":""))}),K("Y",0,0,function(){var e=this.year();return 9999>=e?""+e:"+"+e}),K(0,["YY",2],0,function(){return this.year()%100}),K(0,["YYYY",4],0,"year"),K(0,["YYYYY",5],0,"year"),K(0,["YYYYYY",6,!0],0,"year"),z("year","y"),X("Y",Mn),X("YY",mn,pn),X("YYYY",vn,hn),X("YYYYY",Tn,yn),X("YYYYYY",Tn,yn),ee(["YYYYY","YYYYYY"],Ln),ee("YYYY",function(e,r){r[Ln]=2===e.length?t.parseTwoDigitYear(e):g(e)}),ee("YY",function(e,r){r[Ln]=t.parseTwoDigitYear(e)}),ee("Y",function(e,t){t[Ln]=parseInt(e,10)}),t.parseTwoDigitYear=function(e){return g(e)+(g(e)>68?1900:2e3)};var Xn=W("FullYear",!1);t.ISO_8601=function(){};var Qn=w("moment().min is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var e=ze.apply(null,arguments);return this.isValid()&&e.isValid()?this>e?this:e:d()}),$n=w("moment().max is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var e=ze.apply(null,arguments);return this.isValid()&&e.isValid()?e>this?this:e:d()}),Zn=function(){return Date.now?Date.now():+new Date};Be("Z",":"),Be("ZZ",""),X("Z",En),X("ZZ",En),ee(["Z","ZZ"],function(e,t,r){r._useUTC=!0,r._tzm=Ve(En,e)});var eo=/([\+\-]|\d\d)/gi;t.updateOffset=function(){};var to=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?\d*)?$/,ro=/^(-)?P(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)W)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?$/;ot.fn=Ae.prototype;var no=ut(1,"add"),oo=ut(-1,"subtract");t.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var io=w("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(e){return void 0===e?this.localeData():this.locale(e)});K(0,["gg",2],0,function(){return this.weekYear()%100}),K(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Ft("gggg","weekYear"),Ft("ggggg","weekYear"),Ft("GGGG","isoWeekYear"),Ft("GGGGG","isoWeekYear"),z("weekYear","gg"),z("isoWeekYear","GG"),X("G",Mn),X("g",Mn),X("GG",mn,pn),X("gg",mn,pn),X("GGGG",vn,hn),X("gggg",vn,hn),X("GGGGG",Tn,yn),X("ggggg",Tn,yn),te(["gggg","ggggg","GGGG","GGGGG"],function(e,t,r,n){t[n.substr(0,2)]=g(e)}),te(["gg","GG"],function(e,r,n,o){r[o]=t.parseTwoDigitYear(e)}),K("Q",0,"Qo","quarter"),z("quarter","Q"),
+X("Q",fn),ee("Q",function(e,t){t[In]=3*(g(e)-1)}),K("w",["ww",2],"wo","week"),K("W",["WW",2],"Wo","isoWeek"),z("week","w"),z("isoWeek","W"),X("w",mn),X("ww",mn,pn),X("W",mn),X("WW",mn,pn),te(["w","ww","W","WW"],function(e,t,r,n){t[n.substr(0,1)]=g(e)});var ao={dow:0,doy:6};K("D",["DD",2],"Do","date"),z("date","D"),X("D",mn),X("DD",mn,pn),X("Do",function(e,t){return e?t._ordinalParse:t._ordinalParseLenient}),ee(["D","DD"],Sn),ee("Do",function(e,t){t[Sn]=g(e.match(mn)[0],10)});var lo=W("Date",!0);K("d",0,"do","day"),K("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),K("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),K("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),K("e",0,0,"weekday"),K("E",0,0,"isoWeekday"),z("day","d"),z("weekday","e"),z("isoWeekday","E"),X("d",mn),X("e",mn),X("E",mn),X("dd",On),X("ddd",On),X("dddd",On),te(["dd","ddd","dddd"],function(e,t,r,n){var o=r._locale.weekdaysParse(e,n,r._strict);null!=o?t.d=o:f(r).invalidWeekday=e}),te(["d","e","E"],function(e,t,r,n){t[n]=g(e)});var so="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),uo="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),co="Su_Mo_Tu_We_Th_Fr_Sa".split("_");K("DDD",["DDDD",3],"DDDo","dayOfYear"),z("dayOfYear","DDD"),X("DDD",gn),X("DDDD",dn),ee(["DDD","DDDD"],function(e,t,r){r._dayOfYear=g(e)}),K("H",["HH",2],0,"hour"),K("h",["hh",2],0,cr),K("hmm",0,0,function(){return""+cr.apply(this)+V(this.minutes(),2)}),K("hmmss",0,0,function(){return""+cr.apply(this)+V(this.minutes(),2)+V(this.seconds(),2)}),K("Hmm",0,0,function(){return""+this.hours()+V(this.minutes(),2)}),K("Hmmss",0,0,function(){return""+this.hours()+V(this.minutes(),2)+V(this.seconds(),2)}),fr("a",!0),fr("A",!1),z("hour","h"),X("a",pr),X("A",pr),X("H",mn),X("h",mn),X("HH",mn,pn),X("hh",mn,pn),X("hmm",bn),X("hmmss",_n),X("Hmm",bn),X("Hmmss",_n),ee(["H","HH"],Cn),ee(["a","A"],function(e,t,r){r._isPm=r._locale.isPM(e),r._meridiem=e}),ee(["h","hh"],function(e,t,r){t[Cn]=g(e),f(r).bigHour=!0}),ee("hmm",function(e,t,r){var n=e.length-2;t[Cn]=g(e.substr(0,n)),t[Dn]=g(e.substr(n)),f(r).bigHour=!0}),ee("hmmss",function(e,t,r){var n=e.length-4,o=e.length-2;t[Cn]=g(e.substr(0,n)),t[Dn]=g(e.substr(n,2)),t[Yn]=g(e.substr(o)),f(r).bigHour=!0}),ee("Hmm",function(e,t,r){var n=e.length-2;t[Cn]=g(e.substr(0,n)),t[Dn]=g(e.substr(n))}),ee("Hmmss",function(e,t,r){var n=e.length-4,o=e.length-2;t[Cn]=g(e.substr(0,n)),t[Dn]=g(e.substr(n,2)),t[Yn]=g(e.substr(o))});var fo=/[ap]\.?m?\.?/i,po=W("Hours",!0);K("m",["mm",2],0,"minute"),z("minute","m"),X("m",mn),X("mm",mn,pn),ee(["m","mm"],Dn);var ho=W("Minutes",!1);K("s",["ss",2],0,"second"),z("second","s"),X("s",mn),X("ss",mn,pn),ee(["s","ss"],Yn);var yo=W("Seconds",!1);K("S",0,0,function(){return~~(this.millisecond()/100)}),K(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),K(0,["SSS",3],0,"millisecond"),K(0,["SSSS",4],0,function(){return 10*this.millisecond()}),K(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),K(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),K(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),K(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),K(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),z("millisecond","ms"),X("S",gn,fn),X("SS",gn,pn),X("SSS",gn,dn);var mo;for(mo="SSSS";mo.length<=9;mo+="S")X(mo,wn);for(mo="S";mo.length<=9;mo+="S")ee(mo,yr);var bo=W("Milliseconds",!1);K("z",0,0,"zoneAbbr"),K("zz",0,0,"zoneName");var _o=m.prototype;_o.add=no,_o.calendar=ft,_o.clone=pt,_o.diff=gt,_o.endOf=It,_o.format=Mt,_o.from=Pt,_o.fromNow=Et,_o.to=kt,_o.toNow=Ot,_o.get=B,_o.invalidAt=Wt,_o.isAfter=dt,_o.isBefore=ht,_o.isBetween=yt,_o.isSame=mt,_o.isSameOrAfter=bt,_o.isSameOrBefore=_t,_o.isValid=Ht,_o.lang=io,_o.locale=xt,_o.localeData=jt,_o.max=$n,_o.min=Qn,_o.parsingFlags=Rt,_o.set=B,_o.startOf=Lt,_o.subtract=oo,_o.toArray=Yt,_o.toObject=Nt,_o.toDate=Dt,_o.toISOString=wt,_o.toJSON=zt,_o.toString=Tt,_o.unix=Ct,_o.valueOf=St,_o.creationData=At,_o.year=Xn,_o.isLeapYear=ve,_o.weekYear=Bt,_o.isoWeekYear=Vt,_o.quarter=_o.quarters=Ut,_o.month=se,_o.daysInMonth=ue,_o.week=_o.weeks=Zt,_o.isoWeek=_o.isoWeeks=er,_o.weeksInYear=Jt,_o.isoWeeksInYear=Kt,_o.date=lo,_o.day=_o.days=ar,_o.weekday=lr,_o.isoWeekday=sr,_o.dayOfYear=ur,_o.hour=_o.hours=po,_o.minute=_o.minutes=ho,_o.second=_o.seconds=yo,_o.millisecond=_o.milliseconds=bo,_o.utcOffset=Ge,_o.utc=Ue,_o.local=Xe,_o.parseZone=Qe,_o.hasAlignedHourOffset=$e,_o.isDST=Ze,_o.isDSTShifted=et,_o.isLocal=tt,_o.isUtcOffset=rt,_o.isUtc=nt,_o.isUTC=nt,_o.zoneAbbr=mr,_o.zoneName=br,_o.dates=w("dates accessor is deprecated. Use date instead.",lo),_o.months=w("months accessor is deprecated. Use month instead",se),_o.years=w("years accessor is deprecated. Use year instead",Xn),_o.zone=w("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",qe);var go=_o,vo={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},To={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},wo="Invalid date",Mo="%d",Po=/\d{1,2}/,Eo={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ko=x.prototype;ko._calendar=vo,ko.calendar=vr,ko._longDateFormat=To,ko.longDateFormat=Tr,ko._invalidDate=wo,ko.invalidDate=wr,ko._ordinal=Mo,ko.ordinal=Mr,ko._ordinalParse=Po,ko.preparse=Pr,ko.postformat=Pr,ko._relativeTime=Eo,ko.relativeTime=Er,ko.pastFuture=kr,ko.set=k,ko.months=oe,ko._months=Wn,ko.monthsShort=ie,ko._monthsShort=An,ko.monthsParse=ae,ko._monthsRegex=Bn,ko.monthsRegex=fe,ko._monthsShortRegex=Fn,ko.monthsShortRegex=ce,ko.week=Xt,ko._week=ao,ko.firstDayOfYear=$t,ko.firstDayOfWeek=Qt,ko.weekdays=rr,ko._weekdays=so,ko.weekdaysMin=or,ko._weekdaysMin=co,ko.weekdaysShort=nr,ko._weekdaysShort=uo,ko.weekdaysParse=ir,ko.isPM=dr,ko._meridiemParse=fo,ko.meridiem=hr,S("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(e){var t=e%10,r=1===g(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r}}),t.lang=w("moment.lang is deprecated. Use moment.locale instead.",S),t.langData=w("moment.langData is deprecated. Use moment.localeData instead.",Y);var Oo=Math.abs,xo=Vr("ms"),jo=Vr("s"),Lo=Vr("m"),Io=Vr("h"),So=Vr("d"),Co=Vr("w"),Do=Vr("M"),Yo=Vr("y"),No=Jr("milliseconds"),zo=Jr("seconds"),Ho=Jr("minutes"),Ro=Jr("hours"),Wo=Jr("days"),Ao=Jr("months"),Fo=Jr("years"),Bo=Math.round,Vo={s:45,m:45,h:22,d:26,M:11},Ko=Math.abs,Jo=Ae.prototype;Jo.abs=Dr,Jo.add=Nr,Jo.subtract=zr,Jo.as=Fr,Jo.asMilliseconds=xo,Jo.asSeconds=jo,Jo.asMinutes=Lo,Jo.asHours=Io,Jo.asDays=So,Jo.asWeeks=Co,Jo.asMonths=Do,Jo.asYears=Yo,Jo.valueOf=Br,Jo._bubble=Rr,Jo.get=Kr,Jo.milliseconds=No,Jo.seconds=zo,Jo.minutes=Ho,Jo.hours=Ro,Jo.days=Wo,Jo.weeks=Gr,Jo.months=Ao,Jo.years=Fo,Jo.humanize=Qr,Jo.toISOString=$r,Jo.toString=$r,Jo.toJSON=$r,Jo.locale=xt,Jo.localeData=jt,Jo.toIsoString=w("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",$r),Jo.lang=io,K("X",0,0,"unix"),K("x",0,0,"valueOf"),X("x",Mn),X("X",kn),ee("X",function(e,t,r){r._d=new Date(1e3*parseFloat(e,10))}),ee("x",function(e,t,r){r._d=new Date(g(e))}),t.version="2.12.0",n(ze),t.fn=go,t.min=Re,t.max=We,t.now=Zn,t.utc=u,t.unix=_r,t.months=jr,t.isDate=i,t.locale=S,t.invalid=d,t.duration=ot,t.isMoment=b,t.weekdays=Ir,t.parseZone=gr,t.localeData=Y,t.isDuration=Fe,t.monthsShort=Lr,t.weekdaysMin=Cr,t.defineLocale=C,t.updateLocale=D,t.locales=N,t.weekdaysShort=Sr,t.normalizeUnits=H,t.relativeTimeThreshold=Xr,t.prototype=go;var Go=t;return Go})}).call(t,r(66)(e))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children=[],e.webpackPolyfill=1),e}},function(e,t,r){function n(e){return r(o(e))}function o(e){return i[e]||function(){throw new Error("Cannot find module '"+e+"'.")}()}var i={"./af":68,"./af.js":68,"./ar":69,"./ar-ma":70,"./ar-ma.js":70,"./ar-sa":71,"./ar-sa.js":71,"./ar-tn":72,"./ar-tn.js":72,"./ar.js":69,"./az":73,"./az.js":73,"./be":74,"./be.js":74,"./bg":75,"./bg.js":75,"./bn":76,"./bn.js":76,"./bo":77,"./bo.js":77,"./br":78,"./br.js":78,"./bs":79,"./bs.js":79,"./ca":80,"./ca.js":80,"./cs":81,"./cs.js":81,"./cv":82,"./cv.js":82,"./cy":83,"./cy.js":83,"./da":84,"./da.js":84,"./de":85,"./de-at":86,"./de-at.js":86,"./de.js":85,"./dv":87,"./dv.js":87,"./el":88,"./el.js":88,"./en-au":89,"./en-au.js":89,"./en-ca":90,"./en-ca.js":90,"./en-gb":91,"./en-gb.js":91,"./en-ie":92,"./en-ie.js":92,"./en-nz":93,"./en-nz.js":93,"./eo":94,"./eo.js":94,"./es":95,"./es.js":95,"./et":96,"./et.js":96,"./eu":97,"./eu.js":97,"./fa":98,"./fa.js":98,"./fi":99,"./fi.js":99,"./fo":100,"./fo.js":100,"./fr":101,"./fr-ca":102,"./fr-ca.js":102,"./fr-ch":103,"./fr-ch.js":103,"./fr.js":101,"./fy":104,"./fy.js":104,"./gd":105,"./gd.js":105,"./gl":106,"./gl.js":106,"./he":107,"./he.js":107,"./hi":108,"./hi.js":108,"./hr":109,"./hr.js":109,"./hu":110,"./hu.js":110,"./hy-am":111,"./hy-am.js":111,"./id":112,"./id.js":112,"./is":113,"./is.js":113,"./it":114,"./it.js":114,"./ja":115,"./ja.js":115,"./jv":116,"./jv.js":116,"./ka":117,"./ka.js":117,"./kk":118,"./kk.js":118,"./km":119,"./km.js":119,"./ko":120,"./ko.js":120,"./lb":121,"./lb.js":121,"./lo":122,"./lo.js":122,"./lt":123,"./lt.js":123,"./lv":124,"./lv.js":124,"./me":125,"./me.js":125,"./mk":126,"./mk.js":126,"./ml":127,"./ml.js":127,"./mr":128,"./mr.js":128,"./ms":129,"./ms-my":130,"./ms-my.js":130,"./ms.js":129,"./my":131,"./my.js":131,"./nb":132,"./nb.js":132,"./ne":133,"./ne.js":133,"./nl":134,"./nl.js":134,"./nn":135,"./nn.js":135,"./pa-in":136,"./pa-in.js":136,"./pl":137,"./pl.js":137,"./pt":138,"./pt-br":139,"./pt-br.js":139,"./pt.js":138,"./ro":140,"./ro.js":140,"./ru":141,"./ru.js":141,"./se":142,"./se.js":142,"./si":143,"./si.js":143,"./sk":144,"./sk.js":144,"./sl":145,"./sl.js":145,"./sq":146,"./sq.js":146,"./sr":147,"./sr-cyrl":148,"./sr-cyrl.js":148,"./sr.js":147,"./sv":149,"./sv.js":149,"./sw":150,"./sw.js":150,"./ta":151,"./ta.js":151,"./te":152,"./te.js":152,"./th":153,"./th.js":153,"./tl-ph":154,"./tl-ph.js":154,"./tlh":155,"./tlh.js":155,"./tr":156,"./tr.js":156,"./tzl":157,"./tzl.js":157,"./tzm":158,"./tzm-latn":159,"./tzm-latn.js":159,"./tzm.js":158,"./uk":160,"./uk.js":160,"./uz":161,"./uz.js":161,"./vi":162,"./vi.js":162,"./zh-cn":163,"./zh-cn.js":163,"./zh-tw":164,"./zh-tw.js":164};n.keys=function(){return Object.keys(i)},n.resolve=o,e.exports=n,n.id=67},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(e){return/^nm$/i.test(e)},meridiem:function(e,t,r){return 12>e?r?"vm":"VM":r?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[Môre om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},r={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},n=function(e){return 0===e?0:1===e?1:2===e?2:e%100>=3&&10>=e%100?3:e%100>=11?4:5},o={s:["أقل من ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d أشهر","%d شهرا","%d شهر"],y:["أقل من عام","عام واحد",["عامان","عامين"],"%d أعوام","%d عامًا","%d عام"]},i=function(e){return function(t,r,i,a){var l=n(t),s=o[e][n(t)];return 2===l&&(s=s[r?0:1]),s.replace(/%d/i,t)}},a=["كانون الثاني يناير","شباط فبراير","آذار مارس","نيسان أبريل","أيار مايو","حزيران يونيو","تموز يوليو","آب أغسطس","أيلول سبتمبر","تشرين الأول أكتوبر","تشرين الثاني نوفمبر","كانون الأول ديسمبر"],l=e.defineLocale("ar",{months:a,monthsShort:a,weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/‏M/‏YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,r){return 12>e?"ص":"م"},calendar:{sameDay:"[اليوم عند الساعة] LT",nextDay:"[غدًا عند الساعة] LT",nextWeek:"dddd [عند الساعة] LT",lastDay:"[أمس عند الساعة] LT",lastWeek:"dddd [عند الساعة] LT",sameElse:"L"},relativeTime:{future:"بعد %s",past:"منذ %s",s:i("s"),m:i("m"),mm:i("m"),h:i("h"),hh:i("h"),d:i("d"),dd:i("d"),M:i("M"),MM:i("M"),y:i("y"),yy:i("y")},preparse:function(e){return e.replace(/\u200f/g,"").replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(e){return r[e]}).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]}).replace(/,/g,"،")},week:{dow:6,doy:12}});return l})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ar-ma",{months:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),weekdays:"الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:6,doy:12}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"١",2:"٢",3:"٣",4:"٤",5:"٥",6:"٦",7:"٧",8:"٨",9:"٩",0:"٠"},r={"١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","٠":"0"},n=e.defineLocale("ar-sa",{months:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM:function(e){return"م"===e},meridiem:function(e,t,r){return 12>e?"ص":"م"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},preparse:function(e){return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(e){return r[e]}).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]}).replace(/,/g,"،")},week:{dow:6,doy:12}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ar-tn",{months:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),monthsShort:"جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),weekdays:"الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),weekdaysShort:"أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),weekdaysMin:"ح_ن_ث_ر_خ_ج_س".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[اليوم على الساعة] LT",nextDay:"[غدا على الساعة] LT",nextWeek:"dddd [على الساعة] LT",lastDay:"[أمس على الساعة] LT",lastWeek:"dddd [على الساعة] LT",sameElse:"L"},relativeTime:{future:"في %s",past:"منذ %s",s:"ثوان",m:"دقيقة",mm:"%d دقائق",h:"ساعة",hh:"%d ساعات",d:"يوم",dd:"%d أيام",M:"شهر",MM:"%d أشهر",y:"سنة",yy:"%d سنوات"},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-üncü",4:"-üncü",100:"-üncü",6:"-ncı",9:"-uncu",10:"-uncu",30:"-uncu",60:"-ıncı",90:"-ıncı"},r=e.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),weekdaysShort:"Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),weekdaysMin:"Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[gələn həftə] dddd [saat] LT",lastDay:"[dünən] LT",lastWeek:"[keçən həftə] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s əvvəl",s:"birneçə saniyyə",m:"bir dəqiqə",mm:"%d dəqiqə",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gecə|səhər|gündüz|axşam/,isPM:function(e){return/^(gündüz|axşam)$/.test(e)},meridiem:function(e,t,r){return 4>e?"gecə":12>e?"səhər":17>e?"gündüz":"axşam"},ordinalParse:/\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,ordinal:function(e){if(0===e)return e+"-ıncı";var r=e%10,n=e%100-r,o=e>=100?100:null;return e+(t[r]||t[n]||t[o])},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t){var r=e.split("_");return t%10===1&&t%100!==11?r[0]:t%10>=2&&4>=t%10&&(10>t%100||t%100>=20)?r[1]:r[2]}function r(e,r,n){var o={mm:r?"хвіліна_хвіліны_хвілін":"хвіліну_хвіліны_хвілін",hh:r?"гадзіна_гадзіны_гадзін":"гадзіну_гадзіны_гадзін",dd:"дзень_дні_дзён",MM:"месяц_месяцы_месяцаў",yy:"год_гады_гадоў"};return"m"===n?r?"хвіліна":"хвіліну":"h"===n?r?"гадзіна":"гадзіну":e+" "+t(o[n],+e)}var n=e.defineLocale("be",{months:{format:"студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),standalone:"студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")},monthsShort:"студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),weekdays:{format:"нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),standalone:"нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),isFormat:/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/},weekdaysShort:"нд_пн_ат_ср_чц_пт_сб".split("_"),weekdaysMin:"нд_пн_ат_ср_чц_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сёння ў] LT",nextDay:"[Заўтра ў] LT",lastDay:"[Учора ў] LT",nextWeek:function(){return"[У] dddd [ў] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[У мінулую] dddd [ў] LT";case 1:case 2:case 4:return"[У мінулы] dddd [ў] LT"}},sameElse:"L"},relativeTime:{future:"праз %s",past:"%s таму",s:"некалькі секунд",m:r,mm:r,h:r,hh:r,d:"дзень",dd:r,M:"месяц",MM:r,y:"год",yy:r},meridiemParse:/ночы|раніцы|дня|вечара/,isPM:function(e){return/^(дня|вечара)$/.test(e)},meridiem:function(e,t,r){return 4>e?"ночы":12>e?"раніцы":17>e?"дня":"вечара"},ordinalParse:/\d{1,2}-(і|ы|га)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e%10!==2&&e%10!==3||e%100===12||e%100===13?e+"-ы":e+"-і";case"D":return e+"-га";default:return e}},week:{dow:1,doy:7}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("bg",{months:"януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),monthsShort:"янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),weekdays:"неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),weekdaysShort:"нед_пон_вто_сря_чет_пет_съб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Днес в] LT",nextDay:"[Утре в] LT",nextWeek:"dddd [в] LT",lastDay:"[Вчера в] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[В изминалата] dddd [в] LT";case 1:case 2:case 4:case 5:return"[В изминалия] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"след %s",past:"преди %s",s:"няколко секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дни",M:"месец",MM:"%d месеца",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,r=e%100;return 0===e?e+"-ев":0===r?e+"-ен":r>10&&20>r?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"১",2:"২",3:"৩",4:"৪",5:"৫",6:"৬",7:"৭",8:"৮",9:"৯",0:"০"},r={"১":"1","২":"2","৩":"3","৪":"4","৫":"5","৬":"6","৭":"7","৮":"8","৯":"9","০":"0"},n=e.defineLocale("bn",{months:"জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),monthsShort:"জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্".split("_"),weekdays:"রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রবার_শনিবার".split("_"),weekdaysShort:"রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্র_শনি".split("_"),weekdaysMin:"রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি".split("_"),longDateFormat:{LT:"A h:mm সময়",LTS:"A h:mm:ss সময়",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm সময়",LLLL:"dddd, D MMMM YYYY, A h:mm সময়"},calendar:{sameDay:"[আজ] LT",nextDay:"[আগামীকাল] LT",nextWeek:"dddd, LT",lastDay:"[গতকাল] LT",lastWeek:"[গত] dddd, LT",sameElse:"L"},relativeTime:{future:"%s পরে",past:"%s আগে",s:"কয়েক সেকেন্ড",m:"এক মিনিট",mm:"%d মিনিট",h:"এক ঘন্টা",hh:"%d ঘন্টা",d:"এক দিন",dd:"%d দিন",M:"এক মাস",MM:"%d মাস",y:"এক বছর",yy:"%d বছর"},preparse:function(e){return e.replace(/[১২৩৪৫৬৭৮৯০]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/রাত|সকাল|দুপুর|বিকাল|রাত/,meridiemHour:function(e,t){return 12===e&&(e=0),"রাত"===t&&e>=4||"দুপুর"===t&&5>e||"বিকাল"===t?e+12:e},meridiem:function(e,t,r){return 4>e?"রাত":10>e?"সকাল":17>e?"দুপুর":20>e?"বিকাল":"রাত"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"༡",2:"༢",3:"༣",4:"༤",5:"༥",6:"༦",7:"༧",8:"༨",9:"༩",0:"༠"},r={"༡":"1","༢":"2","༣":"3","༤":"4","༥":"5","༦":"6","༧":"7","༨":"8","༩":"9","༠":"0"},n=e.defineLocale("bo",{months:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),monthsShort:"ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),weekdays:"གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),weekdaysShort:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),weekdaysMin:"ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[དི་རིང] LT",nextDay:"[སང་ཉིན] LT",nextWeek:"[བདུན་ཕྲག་རྗེས་མ], LT",lastDay:"[ཁ་སང] LT",lastWeek:"[བདུན་ཕྲག་མཐའ་མ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ལ་",past:"%s སྔན་ལ",s:"ལམ་སང",m:"སྐར་མ་གཅིག",mm:"%d སྐར་མ",h:"ཆུ་ཚོད་གཅིག",hh:"%d ཆུ་ཚོད",d:"ཉིན་གཅིག",dd:"%d ཉིན་",M:"ཟླ་བ་གཅིག",MM:"%d ཟླ་བ",y:"ལོ་གཅིག",yy:"%d ལོ"},preparse:function(e){return e.replace(/[༡༢༣༤༥༦༧༨༩༠]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,meridiemHour:function(e,t){return 12===e&&(e=0),"མཚན་མོ"===t&&e>=4||"ཉིན་གུང"===t&&5>e||"དགོང་དག"===t?e+12:e},meridiem:function(e,t,r){return 4>e?"མཚན་མོ":10>e?"ཞོགས་ཀས":17>e?"ཉིན་གུང":20>e?"དགོང་དག":"མཚན་མོ"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r){var n={mm:"munutenn",MM:"miz",dd:"devezh"};return e+" "+o(n[r],e)}function r(e){switch(n(e)){case 1:case 3:case 4:case 5:case 9:return e+" bloaz";default:return e+" vloaz"}}function n(e){return e>9?n(e%10):e}function o(e,t){return 2===t?i(e):e}function i(e){var t={m:"v",b:"v",d:"z"};return void 0===t[e.charAt(0)]?e:t[e.charAt(0)]+e.substring(1)}var a=e.defineLocale("br",{months:"Genver_C'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc'her_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),longDateFormat:{LT:"h[e]mm A",LTS:"h[e]mm:ss A",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY h[e]mm A",LLLL:"dddd, D [a viz] MMMM YYYY h[e]mm A"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc'hoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec'h da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s 'zo",s:"un nebeud segondennoù",m:"ur vunutenn",mm:t,h:"un eur",hh:"%d eur",d:"un devezh",dd:t,M:"ur miz",MM:t,y:"ur bloaz",yy:r},ordinalParse:/\d{1,2}(añ|vet)/,ordinal:function(e){var t=1===e?"añ":"vet";return e+t},week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r){var n=e+" ";switch(r){case"m":return t?"jedna minuta":"jedne minute";case"mm":return n+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return n+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return n+=1===e?"dan":"dana";case"MM":return n+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return n+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}var r=e.defineLocale("bs",{months:"januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ca",{months:"gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort:"gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.".split("_"),weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"dg._dl._dt._dc._dj._dv._ds.".split("_"),weekdaysMin:"Dg_Dl_Dt_Dc_Dj_Dv_Ds".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd D MMMM YYYY H:mm"},calendar:{sameDay:function(){return"[avui a "+(1!==this.hours()?"les":"la")+"] LT"},nextDay:function(){return"[demà a "+(1!==this.hours()?"les":"la")+"] LT"},nextWeek:function(){return"dddd [a "+(1!==this.hours()?"les":"la")+"] LT"},lastDay:function(){return"[ahir a "+(1!==this.hours()?"les":"la")+"] LT"},lastWeek:function(){return"[el] dddd [passat a "+(1!==this.hours()?"les":"la")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},ordinalParse:/\d{1,2}(r|n|t|è|a)/,ordinal:function(e,t){var r=1===e?"r":2===e?"n":3===e?"r":4===e?"t":"è";return"w"!==t&&"W"!==t||(r="a"),e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e){return e>1&&5>e&&1!==~~(e/10)}function r(e,r,n,o){var i=e+" ";switch(n){case"s":return r||o?"pár sekund":"pár sekundami";case"m":return r?"minuta":o?"minutu":"minutou";case"mm":return r||o?i+(t(e)?"minuty":"minut"):i+"minutami";case"h":return r?"hodina":o?"hodinu":"hodinou";case"hh":return r||o?i+(t(e)?"hodiny":"hodin"):i+"hodinami";case"d":return r||o?"den":"dnem";case"dd":return r||o?i+(t(e)?"dny":"dní"):i+"dny";case"M":return r||o?"měsíc":"měsícem";case"MM":return r||o?i+(t(e)?"měsíce":"měsíců"):i+"měsíci";case"y":return r||o?"rok":"rokem";case"yy":return r||o?i+(t(e)?"roky":"let"):i+"lety"}}var n="leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),o="led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),i=e.defineLocale("cs",{months:n,monthsShort:o,monthsParse:function(e,t){var r,n=[];for(r=0;12>r;r++)n[r]=new RegExp("^"+e[r]+"$|^"+t[r]+"$","i");return n}(n,o),shortMonthsParse:function(e){var t,r=[];for(t=0;12>t;t++)r[t]=new RegExp("^"+e[t]+"$","i");return r}(o),longMonthsParse:function(e){var t,r=[];for(t=0;12>t;t++)r[t]=new RegExp("^"+e[t]+"$","i");return r}(n),weekdays:"neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),weekdaysShort:"ne_po_út_st_čt_pá_so".split("_"),weekdaysMin:"ne_po_út_st_čt_pá_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes v] LT",nextDay:"[zítra v] LT",nextWeek:function(){switch(this.day()){case 0:return"[v neděli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve středu v] LT";case 4:return"[ve čtvrtek v] LT";case 5:return"[v pátek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[včera v] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulou neděli v] LT";case 1:case 2:return"[minulé] dddd [v] LT";case 3:return"[minulou středu v] LT";
+case 4:case 5:return"[minulý] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"před %s",s:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("cv",{months:"кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),monthsShort:"кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),weekdays:"вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),weekdaysShort:"выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),weekdaysMin:"вр_тн_ыт_юн_кҫ_эр_шм".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",LLL:"YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",LLLL:"dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"},calendar:{sameDay:"[Паян] LT [сехетре]",nextDay:"[Ыран] LT [сехетре]",lastDay:"[Ӗнер] LT [сехетре]",nextWeek:"[Ҫитес] dddd LT [сехетре]",lastWeek:"[Иртнӗ] dddd LT [сехетре]",sameElse:"L"},relativeTime:{future:function(e){var t=/сехет$/i.exec(e)?"рен":/ҫул$/i.exec(e)?"тан":"ран";return e+t},past:"%s каялла",s:"пӗр-ик ҫеккунт",m:"пӗр минут",mm:"%d минут",h:"пӗр сехет",hh:"%d сехет",d:"пӗр кун",dd:"%d кун",M:"пӗр уйӑх",MM:"%d уйӑх",y:"пӗр ҫул",yy:"%d ҫул"},ordinalParse:/\d{1,2}-мӗш/,ordinal:"%d-мӗш",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("cy",{months:"Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),monthsShort:"Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),weekdays:"Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),weekdaysShort:"Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),weekdaysMin:"Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Heddiw am] LT",nextDay:"[Yfory am] LT",nextWeek:"dddd [am] LT",lastDay:"[Ddoe am] LT",lastWeek:"dddd [diwethaf am] LT",sameElse:"L"},relativeTime:{future:"mewn %s",past:"%s yn ôl",s:"ychydig eiliadau",m:"munud",mm:"%d munud",h:"awr",hh:"%d awr",d:"diwrnod",dd:"%d diwrnod",M:"mis",MM:"%d mis",y:"blwyddyn",yy:"%d flynedd"},ordinalParse:/\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,ordinal:function(e){var t=e,r="",n=["","af","il","ydd","ydd","ed","ed","ed","fed","fed","fed","eg","fed","eg","eg","fed","eg","eg","fed","eg","fed"];return t>20?r=40===t||50===t||60===t||80===t||100===t?"fed":"ain":t>0&&(r=n[t]),e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("da",{months:"januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"søn_man_tir_ons_tor_fre_lør".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY HH:mm"},calendar:{sameDay:"[I dag kl.] LT",nextDay:"[I morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[I går kl.] LT",lastWeek:"[sidste] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"få sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en måned",MM:"%d måneder",y:"et år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?o[r][0]:o[r][1]}var r=e.defineLocale("de",{months:"Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[e+" Tage",e+" Tagen"],M:["ein Monat","einem Monat"],MM:[e+" Monate",e+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[e+" Jahre",e+" Jahren"]};return t?o[r][0]:o[r][1]}var r=e.defineLocale("de-at",{months:"Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",m:t,mm:"%d Minuten",h:t,hh:"%d Stunden",d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=["ޖެނުއަރީ","ފެބްރުއަރީ","މާރިޗު","އޭޕްރީލު","މޭ","ޖޫން","ޖުލައި","އޯގަސްޓު","ސެޕްޓެމްބަރު","އޮކްޓޯބަރު","ނޮވެމްބަރު","ޑިސެމްބަރު"],r=["އާދިއްތަ","ހޯމަ","އަންގާރަ","ބުދަ","ބުރާސްފަތި","ހުކުރު","ހޮނިހިރު"],n=e.defineLocale("dv",{months:t,monthsShort:t,weekdays:r,weekdaysShort:r,weekdaysMin:"އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/M/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/މކ|މފ/,isPM:function(e){return"މފ"===e},meridiem:function(e,t,r){return 12>e?"މކ":"މފ"},calendar:{sameDay:"[މިއަދު] LT",nextDay:"[މާދަމާ] LT",nextWeek:"dddd LT",lastDay:"[އިއްޔެ] LT",lastWeek:"[ފާއިތުވި] dddd LT",sameElse:"L"},relativeTime:{future:"ތެރޭގައި %s",past:"ކުރިން %s",s:"ސިކުންތުކޮޅެއް",m:"މިނިޓެއް",mm:"މިނިޓު %d",h:"ގަޑިއިރެއް",hh:"ގަޑިއިރު %d",d:"ދުވަހެއް",dd:"ދުވަސް %d",M:"މަހެއް",MM:"މަސް %d",y:"އަހަރެއް",yy:"އަހަރު %d"},preparse:function(e){return e.replace(/،/g,",")},postformat:function(e){return e.replace(/,/g,"،")},week:{dow:7,doy:12}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e){return e instanceof Function||"[object Function]"===Object.prototype.toString.call(e)}var r=e.defineLocale("el",{monthsNominativeEl:"Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),monthsGenitiveEl:"Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),months:function(e,t){return/D/.test(t.substring(0,t.indexOf("MMMM")))?this._monthsGenitiveEl[e.month()]:this._monthsNominativeEl[e.month()]},monthsShort:"Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),weekdays:"Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),weekdaysShort:"Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),weekdaysMin:"Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),meridiem:function(e,t,r){return e>11?r?"μμ":"ΜΜ":r?"πμ":"ΠΜ"},isPM:function(e){return"μ"===(e+"").toLowerCase()[0]},meridiemParse:/[ΠΜ]\.?Μ?\.?/i,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendarEl:{sameDay:"[Σήμερα {}] LT",nextDay:"[Αύριο {}] LT",nextWeek:"dddd [{}] LT",lastDay:"[Χθες {}] LT",lastWeek:function(){switch(this.day()){case 6:return"[το προηγούμενο] dddd [{}] LT";default:return"[την προηγούμενη] dddd [{}] LT"}},sameElse:"L"},calendar:function(e,r){var n=this._calendarEl[e],o=r&&r.hours();return t(n)&&(n=n.apply(r)),n.replace("{}",o%12===1?"στη":"στις")},relativeTime:{future:"σε %s",past:"%s πριν",s:"λίγα δευτερόλεπτα",m:"ένα λεπτό",mm:"%d λεπτά",h:"μία ώρα",hh:"%d ώρες",d:"μία μέρα",dd:"%d μέρες",M:"ένας μήνας",MM:"%d μήνες",y:"ένας χρόνος",yy:"%d χρόνια"},ordinalParse:/\d{1,2}η/,ordinal:"%dη",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("en-au",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("en-ca",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"YYYY-MM-DD",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("en-gb",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("en-ie",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("en-nz",{months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},ordinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"th":1===t?"st":2===t?"nd":3===t?"rd":"th";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("eo",{months:"januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec".split("_"),weekdays:"Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato".split("_"),weekdaysShort:"Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Ĵa_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D[-an de] MMMM, YYYY",LLL:"D[-an de] MMMM, YYYY HH:mm",LLLL:"dddd, [la] D[-an de] MMMM, YYYY HH:mm"},meridiemParse:/[ap]\.t\.m/i,isPM:function(e){return"p"===e.charAt(0).toLowerCase()},meridiem:function(e,t,r){return e>11?r?"p.t.m.":"P.T.M.":r?"a.t.m.":"A.T.M."},calendar:{sameDay:"[Hodiaŭ je] LT",nextDay:"[Morgaŭ je] LT",nextWeek:"dddd [je] LT",lastDay:"[Hieraŭ je] LT",lastWeek:"[pasinta] dddd [je] LT",sameElse:"L"},relativeTime:{future:"je %s",past:"antaŭ %s",s:"sekundoj",m:"minuto",mm:"%d minutoj",h:"horo",hh:"%d horoj",d:"tago",dd:"%d tagoj",M:"monato",MM:"%d monatoj",y:"jaro",yy:"%d jaroj"},ordinalParse:/\d{1,2}a/,ordinal:"%da",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),r="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),n=e.defineLocale("es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,n){return/-MMM-/.test(n)?r[e.month()]:t[e.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o={s:["mõne sekundi","mõni sekund","paar sekundit"],m:["ühe minuti","üks minut"],mm:[e+" minuti",e+" minutit"],h:["ühe tunni","tund aega","üks tund"],hh:[e+" tunni",e+" tundi"],d:["ühe päeva","üks päev"],M:["kuu aja","kuu aega","üks kuu"],MM:[e+" kuu",e+" kuud"],y:["ühe aasta","aasta","üks aasta"],yy:[e+" aasta",e+" aastat"]};return t?o[r][2]?o[r][2]:o[r][1]:n?o[r][0]:o[r][1]}var r=e.defineLocale("et",{months:"jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[Täna,] LT",nextDay:"[Homme,] LT",nextWeek:"[Järgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s pärast",past:"%s tagasi",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:"%d päeva",M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("eu",{months:"urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),monthsShort:"urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),weekdays:"igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),weekdaysShort:"ig._al._ar._az._og._ol._lr.".split("_"),weekdaysMin:"ig_al_ar_az_og_ol_lr".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY[ko] MMMM[ren] D[a]",LLL:"YYYY[ko] MMMM[ren] D[a] HH:mm",LLLL:"dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",l:"YYYY-M-D",ll:"YYYY[ko] MMM D[a]",lll:"YYYY[ko] MMM D[a] HH:mm",llll:"ddd, YYYY[ko] MMM D[a] HH:mm"},calendar:{sameDay:"[gaur] LT[etan]",nextDay:"[bihar] LT[etan]",nextWeek:"dddd LT[etan]",lastDay:"[atzo] LT[etan]",lastWeek:"[aurreko] dddd LT[etan]",sameElse:"L"},relativeTime:{future:"%s barru",past:"duela %s",s:"segundo batzuk",m:"minutu bat",mm:"%d minutu",h:"ordu bat",hh:"%d ordu",d:"egun bat",dd:"%d egun",M:"hilabete bat",MM:"%d hilabete",y:"urte bat",yy:"%d urte"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"۱",2:"۲",3:"۳",4:"۴",5:"۵",6:"۶",7:"۷",8:"۸",9:"۹",0:"۰"},r={"۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","۰":"0"},n=e.defineLocale("fa",{months:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),monthsShort:"ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),weekdays:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysShort:"یک‌شنبه_دوشنبه_سه‌شنبه_چهارشنبه_پنج‌شنبه_جمعه_شنبه".split("_"),weekdaysMin:"ی_د_س_چ_پ_ج_ش".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},meridiemParse:/قبل از ظهر|بعد از ظهر/,isPM:function(e){return/بعد از ظهر/.test(e)},meridiem:function(e,t,r){return 12>e?"قبل از ظهر":"بعد از ظهر"},calendar:{sameDay:"[امروز ساعت] LT",nextDay:"[فردا ساعت] LT",nextWeek:"dddd [ساعت] LT",lastDay:"[دیروز ساعت] LT",lastWeek:"dddd [پیش] [ساعت] LT",sameElse:"L"},relativeTime:{future:"در %s",past:"%s پیش",s:"چندین ثانیه",m:"یک دقیقه",mm:"%d دقیقه",h:"یک ساعت",hh:"%d ساعت",d:"یک روز",dd:"%d روز",M:"یک ماه",MM:"%d ماه",y:"یک سال",yy:"%d سال"},preparse:function(e){return e.replace(/[۰-۹]/g,function(e){return r[e]}).replace(/،/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]}).replace(/,/g,"،")},ordinalParse:/\d{1,2}م/,ordinal:"%dم",week:{dow:6,doy:12}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,n,o){var i="";switch(n){case"s":return o?"muutaman sekunnin":"muutama sekunti";case"m":return o?"minuutin":"minuutti";case"mm":i=o?"minuutin":"minuuttia";break;case"h":return o?"tunnin":"tunti";case"hh":i=o?"tunnin":"tuntia";break;case"d":return o?"päivän":"päivä";case"dd":i=o?"päivän":"päivää";break;case"M":return o?"kuukauden":"kuukausi";case"MM":i=o?"kuukauden":"kuukautta";break;case"y":return o?"vuoden":"vuosi";case"yy":i=o?"vuoden":"vuotta"}return i=r(e,o)+" "+i}function r(e,t){return 10>e?t?o[e]:n[e]:e}var n="nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),o=["nolla","yhden","kahden","kolmen","neljän","viiden","kuuden",n[7],n[8],n[9]],i=e.defineLocale("fi",{months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[tänään] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s päästä",past:"%s sitten",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("fo",{months:"januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),weekdaysShort:"sun_mán_týs_mik_hós_frí_ley".split("_"),weekdaysMin:"su_má_tý_mi_hó_fr_le".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D. MMMM, YYYY HH:mm"},calendar:{sameDay:"[Í dag kl.] LT",nextDay:"[Í morgin kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[Í gjár kl.] LT",lastWeek:"[síðstu] dddd [kl] LT",sameElse:"L"},relativeTime:{future:"um %s",past:"%s síðani",s:"fá sekund",m:"ein minutt",mm:"%d minuttir",h:"ein tími",hh:"%d tímar",d:"ein dagur",dd:"%d dagar",M:"ein mánaði",MM:"%d mánaðir",y:"eitt ár",yy:"%d ár"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("fr",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|)/,ordinal:function(e){return e+(1===e?"er":"")},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("fr-ca",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|e)/,ordinal:function(e){return e+(1===e?"er":"e")}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("fr-ch",{months:"janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),monthsShort:"janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"Di_Lu_Ma_Me_Je_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd'hui à] LT",nextDay:"[Demain à] LT",nextWeek:"dddd [à] LT",lastDay:"[Hier à] LT",lastWeek:"dddd [dernier à] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},ordinalParse:/\d{1,2}(er|e)/,ordinal:function(e){return e+(1===e?"er":"e")},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t="jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),r="jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),n=e.defineLocale("fy",{months:"jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),monthsShort:function(e,n){return/-MMM-/.test(n)?r[e.month()]:t[e.month()]},weekdays:"snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),weekdaysShort:"si._mo._ti._wo._to._fr._so.".split("_"),weekdaysMin:"Si_Mo_Ti_Wo_To_Fr_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[hjoed om] LT",nextDay:"[moarn om] LT",nextWeek:"dddd [om] LT",lastDay:"[juster om] LT",lastWeek:"[ôfrûne] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oer %s",past:"%s lyn",s:"in pear sekonden",m:"ien minút",mm:"%d minuten",h:"ien oere",hh:"%d oeren",d:"ien dei",dd:"%d dagen",M:"ien moanne",MM:"%d moannen",y:"ien jier",yy:"%d jierren"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=["Am Faoilleach","An Gearran","Am Màrt","An Giblean","An Cèitean","An t-Ògmhios","An t-Iuchar","An Lùnastal","An t-Sultain","An Dàmhair","An t-Samhain","An Dùbhlachd"],r=["Faoi","Gear","Màrt","Gibl","Cèit","Ògmh","Iuch","Lùn","Sult","Dàmh","Samh","Dùbh"],n=["Didòmhnaich","Diluain","Dimàirt","Diciadain","Diardaoin","Dihaoine","Disathairne"],o=["Did","Dil","Dim","Dic","Dia","Dih","Dis"],i=["Dò","Lu","Mà","Ci","Ar","Ha","Sa"],a=e.defineLocale("gd",{months:t,monthsShort:r,monthsParseExact:!0,weekdays:n,weekdaysShort:o,weekdaysMin:i,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[An-diugh aig] LT",nextDay:"[A-màireach aig] LT",nextWeek:"dddd [aig] LT",lastDay:"[An-dè aig] LT",lastWeek:"dddd [seo chaidh] [aig] LT",sameElse:"L"},relativeTime:{future:"ann an %s",past:"bho chionn %s",s:"beagan diogan",m:"mionaid",mm:"%d mionaidean",h:"uair",hh:"%d uairean",d:"latha",dd:"%d latha",M:"mìos",MM:"%d mìosan",y:"bliadhna",yy:"%d bliadhna"},ordinalParse:/\d{1,2}(d|na|mh)/,ordinal:function(e){var t=1===e?"d":e%10===2?"na":"mh";return e+t},week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("gl",{months:"Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro".split("_"),monthsShort:"Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.".split("_"),weekdays:"Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado".split("_"),weekdaysShort:"Dom._Lun._Mar._Mér._Xov._Ven._Sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mé_Xo_Ve_Sá".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd D MMMM YYYY H:mm"},calendar:{sameDay:function(){return"[hoxe "+(1!==this.hours()?"ás":"á")+"] LT"},nextDay:function(){return"[mañá "+(1!==this.hours()?"ás":"á")+"] LT"},nextWeek:function(){return"dddd ["+(1!==this.hours()?"ás":"a")+"] LT"},lastDay:function(){return"[onte "+(1!==this.hours()?"á":"a")+"] LT"},lastWeek:function(){return"[o] dddd [pasado "+(1!==this.hours()?"ás":"a")+"] LT"},sameElse:"L"},relativeTime:{future:function(e){return"uns segundos"===e?"nuns segundos":"en "+e},past:"hai %s",s:"uns segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("he",{months:"ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),monthsShort:"ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),weekdays:"ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),weekdaysShort:"א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),weekdaysMin:"א_ב_ג_ד_ה_ו_ש".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [ב]MMMM YYYY",LLL:"D [ב]MMMM YYYY HH:mm",LLLL:"dddd, D [ב]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[היום ב־]LT",nextDay:"[מחר ב־]LT",nextWeek:"dddd [בשעה] LT",lastDay:"[אתמול ב־]LT",lastWeek:"[ביום] dddd [האחרון בשעה] LT",
+sameElse:"L"},relativeTime:{future:"בעוד %s",past:"לפני %s",s:"מספר שניות",m:"דקה",mm:"%d דקות",h:"שעה",hh:function(e){return 2===e?"שעתיים":e+" שעות"},d:"יום",dd:function(e){return 2===e?"יומיים":e+" ימים"},M:"חודש",MM:function(e){return 2===e?"חודשיים":e+" חודשים"},y:"שנה",yy:function(e){return 2===e?"שנתיים":e%10===0&&10!==e?e+" שנה":e+" שנים"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM:function(e){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(e)},meridiem:function(e,t,r){return 5>e?"לפנות בוקר":10>e?"בבוקר":12>e?r?'לפנה"צ':"לפני הצהריים":18>e?r?'אחה"צ':"אחרי הצהריים":"בערב"}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},r={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},n=e.defineLocale("hi",{months:"जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),monthsShort:"जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),weekdays:"रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm बजे",LTS:"A h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm बजे",LLLL:"dddd, D MMMM YYYY, A h:mm बजे"},calendar:{sameDay:"[आज] LT",nextDay:"[कल] LT",nextWeek:"dddd, LT",lastDay:"[कल] LT",lastWeek:"[पिछले] dddd, LT",sameElse:"L"},relativeTime:{future:"%s में",past:"%s पहले",s:"कुछ ही क्षण",m:"एक मिनट",mm:"%d मिनट",h:"एक घंटा",hh:"%d घंटे",d:"एक दिन",dd:"%d दिन",M:"एक महीने",MM:"%d महीने",y:"एक वर्ष",yy:"%d वर्ष"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात"===t?4>e?e:e+12:"सुबह"===t?e:"दोपहर"===t?e>=10?e:e+12:"शाम"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"रात":10>e?"सुबह":17>e?"दोपहर":20>e?"शाम":"रात"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r){var n=e+" ";switch(r){case"m":return t?"jedna minuta":"jedne minute";case"mm":return n+=1===e?"minuta":2===e||3===e||4===e?"minute":"minuta";case"h":return t?"jedan sat":"jednog sata";case"hh":return n+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return n+=1===e?"dan":"dana";case"MM":return n+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return n+=1===e?"godina":2===e||3===e||4===e?"godine":"godina"}}var r=e.defineLocale("hr",{months:{format:"siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),standalone:"siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")},monthsShort:"sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),weekdays:"nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),weekdaysShort:"ned._pon._uto._sri._čet._pet._sub.".split("_"),weekdaysMin:"ne_po_ut_sr_če_pe_su".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[jučer u] LT",lastWeek:function(){switch(this.day()){case 0:case 3:return"[prošlu] dddd [u] LT";case 6:return"[prošle] [subote] [u] LT";case 1:case 2:case 4:case 5:return"[prošli] dddd [u] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"par sekundi",m:t,mm:t,h:t,hh:t,d:"dan",dd:t,M:"mjesec",MM:t,y:"godinu",yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o=e;switch(r){case"s":return n||t?"néhány másodperc":"néhány másodperce";case"m":return"egy"+(n||t?" perc":" perce");case"mm":return o+(n||t?" perc":" perce");case"h":return"egy"+(n||t?" óra":" órája");case"hh":return o+(n||t?" óra":" órája");case"d":return"egy"+(n||t?" nap":" napja");case"dd":return o+(n||t?" nap":" napja");case"M":return"egy"+(n||t?" hónap":" hónapja");case"MM":return o+(n||t?" hónap":" hónapja");case"y":return"egy"+(n||t?" év":" éve");case"yy":return o+(n||t?" év":" éve")}return""}function r(e){return(e?"":"[múlt] ")+"["+n[this.day()]+"] LT[-kor]"}var n="vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" "),o=e.defineLocale("hu",{months:"január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),monthsShort:"jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec".split("_"),weekdays:"vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),weekdaysShort:"vas_hét_kedd_sze_csüt_pén_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM:function(e){return"u"===e.charAt(1).toLowerCase()},meridiem:function(e,t,r){return 12>e?r===!0?"de":"DE":r===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek:function(){return r.call(this,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek:function(){return r.call(this,!1)},sameElse:"L"},relativeTime:{future:"%s múlva",past:"%s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return o})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("hy-am",{months:{format:"հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),standalone:"հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")},monthsShort:"հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),weekdays:"կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),weekdaysShort:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),weekdaysMin:"կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY թ.",LLL:"D MMMM YYYY թ., HH:mm",LLLL:"dddd, D MMMM YYYY թ., HH:mm"},calendar:{sameDay:"[այսօր] LT",nextDay:"[վաղը] LT",lastDay:"[երեկ] LT",nextWeek:function(){return"dddd [օրը ժամը] LT"},lastWeek:function(){return"[անցած] dddd [օրը ժամը] LT"},sameElse:"L"},relativeTime:{future:"%s հետո",past:"%s առաջ",s:"մի քանի վայրկյան",m:"րոպե",mm:"%d րոպե",h:"ժամ",hh:"%d ժամ",d:"օր",dd:"%d օր",M:"ամիս",MM:"%d ամիս",y:"տարի",yy:"%d տարի"},meridiemParse:/գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,isPM:function(e){return/^(ցերեկվա|երեկոյան)$/.test(e)},meridiem:function(e){return 4>e?"գիշերվա":12>e?"առավոտվա":17>e?"ցերեկվա":"երեկոյան"},ordinalParse:/\d{1,2}|\d{1,2}-(ին|րդ)/,ordinal:function(e,t){switch(t){case"DDD":case"w":case"W":case"DDDo":return 1===e?e+"-ին":e+"-րդ";default:return e}},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("id",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"siang"===t?e>=11?e:e+12:"sore"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"pagi":15>e?"siang":19>e?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e){return e%100===11?!0:e%10!==1}function r(e,r,n,o){var i=e+" ";switch(n){case"s":return r||o?"nokkrar sekúndur":"nokkrum sekúndum";case"m":return r?"mínúta":"mínútu";case"mm":return t(e)?i+(r||o?"mínútur":"mínútum"):r?i+"mínúta":i+"mínútu";case"hh":return t(e)?i+(r||o?"klukkustundir":"klukkustundum"):i+"klukkustund";case"d":return r?"dagur":o?"dag":"degi";case"dd":return t(e)?r?i+"dagar":i+(o?"daga":"dögum"):r?i+"dagur":i+(o?"dag":"degi");case"M":return r?"mánuður":o?"mánuð":"mánuði";case"MM":return t(e)?r?i+"mánuðir":i+(o?"mánuði":"mánuðum"):r?i+"mánuður":i+(o?"mánuð":"mánuði");case"y":return r||o?"ár":"ári";case"yy":return t(e)?i+(r||o?"ár":"árum"):i+(r||o?"ár":"ári")}}var n=e.defineLocale("is",{months:"janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),monthsShort:"jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),weekdays:"sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),weekdaysShort:"sun_mán_þri_mið_fim_fös_lau".split("_"),weekdaysMin:"Su_Má_Þr_Mi_Fi_Fö_La".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd, D. MMMM YYYY [kl.] H:mm"},calendar:{sameDay:"[í dag kl.] LT",nextDay:"[á morgun kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[í gær kl.] LT",lastWeek:"[síðasta] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"eftir %s",past:"fyrir %s síðan",s:r,m:r,mm:r,h:"klukkustund",hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("it",{months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato".split("_"),weekdaysShort:"Dom_Lun_Mar_Mer_Gio_Ven_Sab".split("_"),weekdaysMin:"Do_Lu_Ma_Me_Gi_Ve_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek:function(){switch(this.day()){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future:function(e){return(/^[0-9].+$/.test(e)?"tra":"in")+" "+e},past:"%s fa",s:"alcuni secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ja",{months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),longDateFormat:{LT:"Ah時m分",LTS:"Ah時m分s秒",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah時m分",LLLL:"YYYY年M月D日Ah時m分 dddd"},meridiemParse:/午前|午後/i,isPM:function(e){return"午後"===e},meridiem:function(e,t,r){return 12>e?"午前":"午後"},calendar:{sameDay:"[今日] LT",nextDay:"[明日] LT",nextWeek:"[来週]dddd LT",lastDay:"[昨日] LT",lastWeek:"[前週]dddd LT",sameElse:"L"},ordinalParse:/\d{1,2}日/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";default:return e}},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("jv",{months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),weekdays:"Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),weekdaysShort:"Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/enjing|siyang|sonten|ndalu/,meridiemHour:function(e,t){return 12===e&&(e=0),"enjing"===t?e:"siyang"===t?e>=11?e:e+12:"sonten"===t||"ndalu"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"enjing":15>e?"siyang":19>e?"sonten":"ndalu"},calendar:{sameDay:"[Dinten puniko pukul] LT",nextDay:"[Mbenjang pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kala wingi pukul] LT",lastWeek:"dddd [kepengker pukul] LT",sameElse:"L"},relativeTime:{future:"wonten ing %s",past:"%s ingkang kepengker",s:"sawetawis detik",m:"setunggal menit",mm:"%d menit",h:"setunggal jam",hh:"%d jam",d:"sedinten",dd:"%d dinten",M:"sewulan",MM:"%d wulan",y:"setaun",yy:"%d taun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ka",{months:{standalone:"იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),format:"იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს".split("_")},monthsShort:"იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),weekdays:{standalone:"კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),format:"კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),weekdaysMin:"კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[დღეს] LT[-ზე]",nextDay:"[ხვალ] LT[-ზე]",lastDay:"[გუშინ] LT[-ზე]",nextWeek:"[შემდეგ] dddd LT[-ზე]",lastWeek:"[წინა] dddd LT-ზე",sameElse:"L"},relativeTime:{future:function(e){return/(წამი|წუთი|საათი|წელი)/.test(e)?e.replace(/ი$/,"ში"):e+"ში"},past:function(e){return/(წამი|წუთი|საათი|დღე|თვე)/.test(e)?e.replace(/(ი|ე)$/,"ის წინ"):/წელი/.test(e)?e.replace(/წელი$/,"წლის წინ"):void 0},s:"რამდენიმე წამი",m:"წუთი",mm:"%d წუთი",h:"საათი",hh:"%d საათი",d:"დღე",dd:"%d დღე",M:"თვე",MM:"%d თვე",y:"წელი",yy:"%d წელი"},ordinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal:function(e){return 0===e?e:1===e?e+"-ლი":20>e||100>=e&&e%20===0||e%100===0?"მე-"+e:e+"-ე"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={0:"-ші",1:"-ші",2:"-ші",3:"-ші",4:"-ші",5:"-ші",6:"-шы",7:"-ші",8:"-ші",9:"-шы",10:"-шы",20:"-шы",30:"-шы",40:"-шы",50:"-ші",60:"-шы",70:"-ші",80:"-ші",90:"-шы",100:"-ші"},r=e.defineLocale("kk",{months:"Қаңтар_Ақпан_Наурыз_Сәуір_Мамыр_Маусым_Шілде_Тамыз_Қыркүйек_Қазан_Қараша_Желтоқсан".split("_"),monthsShort:"Қаң_Ақп_Нау_Сәу_Мам_Мау_Шіл_Там_Қыр_Қаз_Қар_Жел".split("_"),weekdays:"Жексенбі_Дүйсенбі_Сейсенбі_Сәрсенбі_Бейсенбі_Жұма_Сенбі".split("_"),weekdaysShort:"Жек_Дүй_Сей_Сәр_Бей_Жұм_Сен".split("_"),weekdaysMin:"Жк_Дй_Сй_Ср_Бй_Жм_Сн".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Бүгін сағат] LT",nextDay:"[Ертең сағат] LT",nextWeek:"dddd [сағат] LT",lastDay:"[Кеше сағат] LT",lastWeek:"[Өткен аптаның] dddd [сағат] LT",sameElse:"L"},relativeTime:{future:"%s ішінде",past:"%s бұрын",s:"бірнеше секунд",m:"бір минут",mm:"%d минут",h:"бір сағат",hh:"%d сағат",d:"бір күн",dd:"%d күн",M:"бір ай",MM:"%d ай",y:"бір жыл",yy:"%d жыл"},ordinalParse:/\d{1,2}-(ші|шы)/,ordinal:function(e){var r=e%10,n=e>=100?100:null;return e+(t[e]||t[r]||t[n])},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("km",{months:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),monthsShort:"មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),weekdays:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysShort:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),weekdaysMin:"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[ថ្ងៃនេះ ម៉ោង] LT",nextDay:"[ស្អែក ម៉ោង] LT",nextWeek:"dddd [ម៉ោង] LT",lastDay:"[ម្សិលមិញ ម៉ោង] LT",lastWeek:"dddd [សប្តាហ៍មុន] [ម៉ោង] LT",sameElse:"L"},relativeTime:{future:"%sទៀត",past:"%sមុន",s:"ប៉ុន្មានវិនាទី",m:"មួយនាទី",mm:"%d នាទី",h:"មួយម៉ោង",hh:"%d ម៉ោង",d:"មួយថ្ងៃ",dd:"%d ថ្ងៃ",M:"មួយខែ",MM:"%d ខែ",y:"មួយឆ្នាំ",yy:"%d ឆ្នាំ"},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ko",{months:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),monthsShort:"1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),weekdays:"일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),weekdaysShort:"일_월_화_수_목_금_토".split("_"),weekdaysMin:"일_월_화_수_목_금_토".split("_"),longDateFormat:{LT:"A h시 m분",LTS:"A h시 m분 s초",L:"YYYY.MM.DD",LL:"YYYY년 MMMM D일",LLL:"YYYY년 MMMM D일 A h시 m분",LLLL:"YYYY년 MMMM D일 dddd A h시 m분"},calendar:{sameDay:"오늘 LT",nextDay:"내일 LT",nextWeek:"dddd LT",lastDay:"어제 LT",lastWeek:"지난주 dddd LT",sameElse:"L"},relativeTime:{future:"%s 후",past:"%s 전",s:"몇초",ss:"%d초",m:"일분",mm:"%d분",h:"한시간",hh:"%d시간",d:"하루",dd:"%d일",M:"한달",MM:"%d달",y:"일년",yy:"%d년"},ordinalParse:/\d{1,2}일/,ordinal:"%d일",meridiemParse:/오전|오후/,isPM:function(e){return"오후"===e},meridiem:function(e,t,r){return 12>e?"오전":"오후"}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o={m:["eng Minutt","enger Minutt"],h:["eng Stonn","enger Stonn"],d:["een Dag","engem Dag"],M:["ee Mount","engem Mount"],y:["ee Joer","engem Joer"]};return t?o[r][0]:o[r][1]}function r(e){var t=e.substr(0,e.indexOf(" "));return o(t)?"a "+e:"an "+e}function n(e){var t=e.substr(0,e.indexOf(" "));return o(t)?"viru "+e:"virun "+e}function o(e){if(e=parseInt(e,10),isNaN(e))return!1;if(0>e)return!0;if(10>e)return e>=4&&7>=e;if(100>e){var t=e%10,r=e/10;return o(0===t?r:t)}if(1e4>e){for(;e>=10;)e/=10;return o(e)}return e/=1e3,o(e)}var i=e.defineLocale("lb",{months:"Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),weekdays:"Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),weekdaysShort:"So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mé_Dë_Më_Do_Fr_Sa".split("_"),longDateFormat:{LT:"H:mm [Auer]",LTS:"H:mm:ss [Auer]",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm [Auer]",LLLL:"dddd, D. MMMM YYYY H:mm [Auer]"},calendar:{sameDay:"[Haut um] LT",sameElse:"L",nextDay:"[Muer um] LT",nextWeek:"dddd [um] LT",lastDay:"[Gëschter um] LT",lastWeek:function(){switch(this.day()){case 2:case 4:return"[Leschten] dddd [um] LT";default:return"[Leschte] dddd [um] LT"}}},relativeTime:{future:r,past:n,s:"e puer Sekonnen",m:t,mm:"%d Minutten",h:t,hh:"%d Stonnen",d:t,dd:"%d Deeg",M:t,MM:"%d Méint",y:t,yy:"%d Joer"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("lo",{months:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),monthsShort:"ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),weekdays:"ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysShort:"ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),weekdaysMin:"ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"ວັນdddd D MMMM YYYY HH:mm"},meridiemParse:/ຕອນເຊົ້າ|ຕອນແລງ/,isPM:function(e){return"ຕອນແລງ"===e},meridiem:function(e,t,r){return 12>e?"ຕອນເຊົ້າ":"ຕອນແລງ"},calendar:{sameDay:"[ມື້ນີ້ເວລາ] LT",nextDay:"[ມື້ອື່ນເວລາ] LT",nextWeek:"[ວັນ]dddd[ໜ້າເວລາ] LT",lastDay:"[ມື້ວານນີ້ເວລາ] LT",lastWeek:"[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",sameElse:"L"},relativeTime:{future:"ອີກ %s",past:"%sຜ່ານມາ",s:"ບໍ່ເທົ່າໃດວິນາທີ",m:"1 ນາທີ",mm:"%d ນາທີ",h:"1 ຊົ່ວໂມງ",hh:"%d ຊົ່ວໂມງ",d:"1 ມື້",dd:"%d ມື້",M:"1 ເດືອນ",MM:"%d ເດືອນ",y:"1 ປີ",yy:"%d ປີ"},ordinalParse:/(ທີ່)\d{1,2}/,ordinal:function(e){return"ທີ່"+e}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){return t?"kelios sekundės":n?"kelių sekundžių":"kelias sekundes"}function r(e,t,r,n){return t?o(r)[0]:n?o(r)[1]:o(r)[2]}function n(e){return e%10===0||e>10&&20>e}function o(e){return a[e].split("_")}function i(e,t,i,a){var l=e+" ";return 1===e?l+r(e,t,i[0],a):t?l+(n(e)?o(i)[1]:o(i)[0]):a?l+o(i)[1]:l+(n(e)?o(i)[1]:o(i)[2])}var a={m:"minutė_minutės_minutę",mm:"minutės_minučių_minutes",h:"valanda_valandos_valandą",hh:"valandos_valandų_valandas",d:"diena_dienos_dieną",dd:"dienos_dienų_dienas",M:"mėnuo_mėnesio_mėnesį",MM:"mėnesiai_mėnesių_mėnesius",y:"metai_metų_metus",yy:"metai_metų_metus"},l=e.defineLocale("lt",{months:{format:"sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_")},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),weekdaysMin:"S_P_A_T_K_Pn_Š".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[Šiandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Praėjusį] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prieš %s",s:t,m:r,mm:i,h:r,hh:i,d:r,dd:i,M:r,MM:i,y:r,yy:i},ordinalParse:/\d{1,2}-oji/,ordinal:function(e){return e+"-oji"},week:{dow:1,doy:4}});return l})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r){return r?t%10===1&&11!==t?e[2]:e[3]:t%10===1&&11!==t?e[0]:e[1]}function r(e,r,n){return e+" "+t(i[n],e,r)}function n(e,r,n){return t(i[n],e,r)}function o(e,t){return t?"dažas sekundes":"dažām sekundēm"}var i={m:"minūtes_minūtēm_minūte_minūtes".split("_"),mm:"minūtes_minūtēm_minūte_minūtes".split("_"),h:"stundas_stundām_stunda_stundas".split("_"),hh:"stundas_stundām_stunda_stundas".split("_"),d:"dienas_dienām_diena_dienas".split("_"),dd:"dienas_dienām_diena_dienas".split("_"),M:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),MM:"mēneša_mēnešiem_mēnesis_mēneši".split("_"),y:"gada_gadiem_gads_gadi".split("_"),yy:"gada_gadiem_gads_gadi".split("_")},a=e.defineLocale("lv",{months:"janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),monthsShort:"jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),weekdays:"svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),weekdaysShort:"Sv_P_O_T_C_Pk_S".split("_"),weekdaysMin:"Sv_P_O_T_C_Pk_S".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"YYYY. [gada] D. MMMM",LLL:"YYYY. [gada] D. MMMM, HH:mm",LLLL:"YYYY. [gada] D. MMMM, dddd, HH:mm"},calendar:{sameDay:"[Šodien pulksten] LT",nextDay:"[Rīt pulksten] LT",nextWeek:"dddd [pulksten] LT",lastDay:"[Vakar pulksten] LT",lastWeek:"[Pagājušā] dddd [pulksten] LT",sameElse:"L"},relativeTime:{future:"pēc %s",past:"pirms %s",s:o,m:n,mm:r,h:n,hh:r,d:n,dd:r,M:n,MM:r,y:n,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={words:{m:["jedan minut","jednog minuta"],mm:["minut","minuta","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mjesec","mjeseca","mjeseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&4>=e?t[1]:t[2]},translate:function(e,r,n){var o=t.words[n];return 1===n.length?r?o[0]:o[1]:e+" "+t.correctGrammaticalCase(e,o)}},r=e.defineLocale("me",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sri.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sjutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedjelju] [u] LT";case 3:return"[u] [srijedu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var e=["[prošle] [nedjelje] [u] LT","[prošlog] [ponedjeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srijede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"prije %s",s:"nekoliko sekundi",m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mjesec",MM:t.translate,y:"godinu",yy:t.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("mk",{months:"јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),monthsShort:"јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),weekdays:"недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),weekdaysShort:"нед_пон_вто_сре_чет_пет_саб".split("_"),weekdaysMin:"нe_пo_вт_ср_че_пе_сa".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[Денес во] LT",nextDay:"[Утре во] LT",nextWeek:"[Во] dddd [во] LT",lastDay:"[Вчера во] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[Изминатата] dddd [во] LT";case 1:case 2:case 4:case 5:return"[Изминатиот] dddd [во] LT"}},sameElse:"L"},relativeTime:{future:"после %s",past:"пред %s",s:"неколку секунди",m:"минута",mm:"%d минути",h:"час",hh:"%d часа",d:"ден",dd:"%d дена",M:"месец",MM:"%d месеци",y:"година",yy:"%d години"},ordinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(e){var t=e%10,r=e%100;return 0===e?e+"-ев":0===r?e+"-ен":r>10&&20>r?e+"-ти":1===t?e+"-ви":2===t?e+"-ри":7===t||8===t?e+"-ми":e+"-ти"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ml",{months:"ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),monthsShort:"ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),weekdays:"ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),weekdaysShort:"ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),weekdaysMin:"ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),longDateFormat:{LT:"A h:mm -നു",LTS:"A h:mm:ss -നു",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm -നു",LLLL:"dddd, D MMMM YYYY, A h:mm -നു"},calendar:{sameDay:"[ഇന്ന്] LT",nextDay:"[നാളെ] LT",nextWeek:"dddd, LT",lastDay:"[ഇന്നലെ] LT",lastWeek:"[കഴിഞ്ഞ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s കഴിഞ്ഞ്",past:"%s മുൻപ്",s:"അൽപ നിമിഷങ്ങൾ",m:"ഒരു മിനിറ്റ്",mm:"%d മിനിറ്റ്",h:"ഒരു മണിക്കൂർ",hh:"%d മണിക്കൂർ",d:"ഒരു ദിവസം",dd:"%d ദിവസം",M:"ഒരു മാസം",MM:"%d മാസം",y:"ഒരു വർഷം",yy:"%d വർഷം"},meridiemParse:/രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,meridiemHour:function(e,t){return 12===e&&(e=0),"രാത്രി"===t&&e>=4||"ഉച്ച കഴിഞ്ഞ്"===t||"വൈകുന്നേരം"===t?e+12:e},meridiem:function(e,t,r){return 4>e?"രാത്രി":12>e?"രാവിലെ":17>e?"ഉച്ച കഴിഞ്ഞ്":20>e?"വൈകുന്നേരം":"രാത്രി"}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o="";if(t)switch(r){case"s":o="काही सेकंद";break;case"m":o="एक मिनिट";break;case"mm":o="%d मिनिटे";break;case"h":o="एक तास";break;case"hh":o="%d तास";break;case"d":o="एक दिवस";break;case"dd":o="%d दिवस";break;case"M":o="एक महिना";break;case"MM":o="%d महिने";break;case"y":o="एक वर्ष";break;case"yy":o="%d वर्षे"}else switch(r){case"s":o="काही सेकंदां";break;case"m":o="एका मिनिटा";break;case"mm":o="%d मिनिटां";break;case"h":o="एका तासा";break;case"hh":o="%d तासां";break;case"d":o="एका दिवसा";break;case"dd":o="%d दिवसां";break;case"M":o="एका महिन्या";break;case"MM":o="%d महिन्यां";break;case"y":o="एका वर्षा";break;case"yy":o="%d वर्षां"}return o.replace(/%d/i,e)}var r={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},n={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},o=e.defineLocale("mr",{months:"जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),monthsShort:"जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),weekdays:"रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),weekdaysShort:"रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),weekdaysMin:"र_सो_मं_बु_गु_शु_श".split("_"),longDateFormat:{LT:"A h:mm वाजता",LTS:"A h:mm:ss वाजता",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm वाजता",LLLL:"dddd, D MMMM YYYY, A h:mm वाजता"},calendar:{sameDay:"[आज] LT",nextDay:"[उद्या] LT",nextWeek:"dddd, LT",lastDay:"[काल] LT",lastWeek:"[मागील] dddd, LT",sameElse:"L"},relativeTime:{future:"%sमध्ये",past:"%sपूर्वी",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,function(e){return n[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return r[e]})},meridiemParse:/रात्री|सकाळी|दुपारी|सायंकाळी/,meridiemHour:function(e,t){return 12===e&&(e=0),"रात्री"===t?4>e?e:e+12:"सकाळी"===t?e:"दुपारी"===t?e>=10?e:e+12:"सायंकाळी"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"रात्री":10>e?"सकाळी":17>e?"दुपारी":20>e?"सायंकाळी":"रात्री"},week:{dow:0,doy:6}});return o})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ms",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"
+},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"pagi":15>e?"tengahari":19>e?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("ms-my",{months:"Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),weekdays:"Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),weekdaysShort:"Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),weekdaysMin:"Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|tengahari|petang|malam/,meridiemHour:function(e,t){return 12===e&&(e=0),"pagi"===t?e:"tengahari"===t?e>=11?e:e+12:"petang"===t||"malam"===t?e+12:void 0},meridiem:function(e,t,r){return 11>e?"pagi":15>e?"tengahari":19>e?"petang":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Esok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kelmarin pukul] LT",lastWeek:"dddd [lepas pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lepas",s:"beberapa saat",m:"seminit",mm:"%d minit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"၁",2:"၂",3:"၃",4:"၄",5:"၅",6:"၆",7:"၇",8:"၈",9:"၉",0:"၀"},r={"၁":"1","၂":"2","၃":"3","၄":"4","၅":"5","၆":"6","၇":"7","၈":"8","၉":"9","၀":"0"},n=e.defineLocale("my",{months:"ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),monthsShort:"ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),weekdays:"တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),weekdaysShort:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),weekdaysMin:"နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ယနေ.] LT [မှာ]",nextDay:"[မနက်ဖြန်] LT [မှာ]",nextWeek:"dddd LT [မှာ]",lastDay:"[မနေ.က] LT [မှာ]",lastWeek:"[ပြီးခဲ့သော] dddd LT [မှာ]",sameElse:"L"},relativeTime:{future:"လာမည့် %s မှာ",past:"လွန်ခဲ့သော %s က",s:"စက္ကန်.အနည်းငယ်",m:"တစ်မိနစ်",mm:"%d မိနစ်",h:"တစ်နာရီ",hh:"%d နာရီ",d:"တစ်ရက်",dd:"%d ရက်",M:"တစ်လ",MM:"%d လ",y:"တစ်နှစ်",yy:"%d နှစ်"},preparse:function(e){return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("nb",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),weekdays:"søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),weekdaysShort:"sø._ma._ti._on._to._fr._lø.".split("_"),weekdaysMin:"sø_ma_ti_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i går kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s siden",s:"noen sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en måned",MM:"%d måneder",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"१",2:"२",3:"३",4:"४",5:"५",6:"६",7:"७",8:"८",9:"९",0:"०"},r={"१":"1","२":"2","३":"3","४":"4","५":"5","६":"6","७":"7","८":"8","९":"9","०":"0"},n=e.defineLocale("ne",{months:"जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),monthsShort:"जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),weekdays:"आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),weekdaysShort:"आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),weekdaysMin:"आ._सो._मं._बु._बि._शु._श.".split("_"),longDateFormat:{LT:"Aको h:mm बजे",LTS:"Aको h:mm:ss बजे",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, Aको h:mm बजे",LLLL:"dddd, D MMMM YYYY, Aको h:mm बजे"},preparse:function(e){return e.replace(/[१२३४५६७८९०]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/राति|बिहान|दिउँसो|साँझ/,meridiemHour:function(e,t){return 12===e&&(e=0),"राति"===t?4>e?e:e+12:"बिहान"===t?e:"दिउँसो"===t?e>=10?e:e+12:"साँझ"===t?e+12:void 0},meridiem:function(e,t,r){return 3>e?"राति":12>e?"बिहान":16>e?"दिउँसो":20>e?"साँझ":"राति"},calendar:{sameDay:"[आज] LT",nextDay:"[भोलि] LT",nextWeek:"[आउँदो] dddd[,] LT",lastDay:"[हिजो] LT",lastWeek:"[गएको] dddd[,] LT",sameElse:"L"},relativeTime:{future:"%sमा",past:"%s अगाडि",s:"केही क्षण",m:"एक मिनेट",mm:"%d मिनेट",h:"एक घण्टा",hh:"%d घण्टा",d:"एक दिन",dd:"%d दिन",M:"एक महिना",MM:"%d महिना",y:"एक बर्ष",yy:"%d बर्ष"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),r="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),n=e.defineLocale("nl",{months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort:function(e,n){return/-MMM-/.test(n)?r[e.month()]:t[e.month()]},weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"Zo_Ma_Di_Wo_Do_Vr_Za".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",m:"één minuut",mm:"%d minuten",h:"één uur",hh:"%d uur",d:"één dag",dd:"%d dagen",M:"één maand",MM:"%d maanden",y:"één jaar",yy:"%d jaar"},ordinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||e>=20?"ste":"de")},week:{dow:1,doy:4}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("nn",{months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),weekdays:"sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),weekdaysShort:"sun_mån_tys_ons_tor_fre_lau".split("_"),weekdaysMin:"su_må_ty_on_to_fr_lø".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] H:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[I dag klokka] LT",nextDay:"[I morgon klokka] LT",nextWeek:"dddd [klokka] LT",lastDay:"[I går klokka] LT",lastWeek:"[Føregåande] dddd [klokka] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"for %s sidan",s:"nokre sekund",m:"eit minutt",mm:"%d minutt",h:"ein time",hh:"%d timar",d:"ein dag",dd:"%d dagar",M:"ein månad",MM:"%d månader",y:"eit år",yy:"%d år"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"੧",2:"੨",3:"੩",4:"੪",5:"੫",6:"੬",7:"੭",8:"੮",9:"੯",0:"੦"},r={"੧":"1","੨":"2","੩":"3","੪":"4","੫":"5","੬":"6","੭":"7","੮":"8","੯":"9","੦":"0"},n=e.defineLocale("pa-in",{months:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),monthsShort:"ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),weekdays:"ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),weekdaysShort:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),weekdaysMin:"ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),longDateFormat:{LT:"A h:mm ਵਜੇ",LTS:"A h:mm:ss ਵਜੇ",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm ਵਜੇ",LLLL:"dddd, D MMMM YYYY, A h:mm ਵਜੇ"},calendar:{sameDay:"[ਅਜ] LT",nextDay:"[ਕਲ] LT",nextWeek:"dddd, LT",lastDay:"[ਕਲ] LT",lastWeek:"[ਪਿਛਲੇ] dddd, LT",sameElse:"L"},relativeTime:{future:"%s ਵਿੱਚ",past:"%s ਪਿਛਲੇ",s:"ਕੁਝ ਸਕਿੰਟ",m:"ਇਕ ਮਿੰਟ",mm:"%d ਮਿੰਟ",h:"ਇੱਕ ਘੰਟਾ",hh:"%d ਘੰਟੇ",d:"ਇੱਕ ਦਿਨ",dd:"%d ਦਿਨ",M:"ਇੱਕ ਮਹੀਨਾ",MM:"%d ਮਹੀਨੇ",y:"ਇੱਕ ਸਾਲ",yy:"%d ਸਾਲ"},preparse:function(e){return e.replace(/[੧੨੩੪੫੬੭੮੯੦]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,meridiemHour:function(e,t){return 12===e&&(e=0),"ਰਾਤ"===t?4>e?e:e+12:"ਸਵੇਰ"===t?e:"ਦੁਪਹਿਰ"===t?e>=10?e:e+12:"ਸ਼ਾਮ"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"ਰਾਤ":10>e?"ਸਵੇਰ":17>e?"ਦੁਪਹਿਰ":20>e?"ਸ਼ਾਮ":"ਰਾਤ"},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e){return 5>e%10&&e%10>1&&~~(e/10)%10!==1}function r(e,r,n){var o=e+" ";switch(n){case"m":return r?"minuta":"minutę";case"mm":return o+(t(e)?"minuty":"minut");case"h":return r?"godzina":"godzinę";case"hh":return o+(t(e)?"godziny":"godzin");case"MM":return o+(t(e)?"miesiące":"miesięcy");case"yy":return o+(t(e)?"lata":"lat")}}var n="styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),o="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_"),i=e.defineLocale("pl",{months:function(e,t){return""===t?"("+o[e.month()]+"|"+n[e.month()]+")":/D MMMM/.test(t)?o[e.month()]:n[e.month()]},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),weekdays:"niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),weekdaysShort:"nie_pon_wt_śr_czw_pt_sb".split("_"),weekdaysMin:"Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dziś o] LT",nextDay:"[Jutro o] LT",nextWeek:"[W] dddd [o] LT",lastDay:"[Wczoraj o] LT",lastWeek:function(){switch(this.day()){case 0:return"[W zeszłą niedzielę o] LT";case 3:return"[W zeszłą środę o] LT";case 6:return"[W zeszłą sobotę o] LT";default:return"[W zeszły] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",m:r,mm:r,h:r,hh:r,d:"1 dzień",dd:"%d dni",M:"miesiąc",MM:r,y:"rok",yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("pt",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Dom_2ª_3ª_4ª_5ª_6ª_Sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"há %s",s:"segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("pt-br",{months:"Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),weekdaysMin:"Dom_2ª_3ª_4ª_5ª_6ª_Sáb".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [às] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [às] HH:mm"},calendar:{sameDay:"[Hoje às] LT",nextDay:"[Amanhã às] LT",nextWeek:"dddd [às] LT",lastDay:"[Ontem às] LT",lastWeek:function(){return 0===this.day()||6===this.day()?"[Último] dddd [às] LT":"[Última] dddd [às] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atrás",s:"poucos segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um mês",MM:"%d meses",y:"um ano",yy:"%d anos"},ordinalParse:/\d{1,2}º/,ordinal:"%dº"});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r){var n={mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},o=" ";return(e%100>=20||e>=100&&e%100===0)&&(o=" de "),e+o+n[r]}var r=e.defineLocale("ro",{months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),weekdays:"duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[mâine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s în urmă",s:"câteva secunde",m:"un minut",mm:t,h:"o oră",hh:t,d:"o zi",dd:t,M:"o lună",MM:t,y:"un an",yy:t},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t){var r=e.split("_");return t%10===1&&t%100!==11?r[0]:t%10>=2&&4>=t%10&&(10>t%100||t%100>=20)?r[1]:r[2]}function r(e,r,n){var o={mm:r?"минута_минуты_минут":"минуту_минуты_минут",hh:"час_часа_часов",dd:"день_дня_дней",MM:"месяц_месяца_месяцев",yy:"год_года_лет"};return"m"===n?r?"минута":"минуту":e+" "+t(o[n],+e)}var n=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[й|я]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],o=e.defineLocale("ru",{months:{format:"января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),standalone:"январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")},monthsShort:{format:"янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек".split("_"),standalone:"янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_")},weekdays:{standalone:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),format:"воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"вс_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),monthsParse:n,longMonthsParse:n,shortMonthsParse:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., HH:mm",LLLL:"dddd, D MMMM YYYY г., HH:mm"},calendar:{sameDay:"[Сегодня в] LT",nextDay:"[Завтра в] LT",lastDay:"[Вчера в] LT",nextWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT";switch(this.day()){case 0:return"[В следующее] dddd [в] LT";case 1:case 2:case 4:return"[В следующий] dddd [в] LT";case 3:case 5:case 6:return"[В следующую] dddd [в] LT"}},lastWeek:function(e){if(e.week()===this.week())return 2===this.day()?"[Во] dddd [в] LT":"[В] dddd [в] LT";switch(this.day()){case 0:return"[В прошлое] dddd [в] LT";case 1:case 2:case 4:return"[В прошлый] dddd [в] LT";case 3:case 5:case 6:return"[В прошлую] dddd [в] LT"}},sameElse:"L"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:r,mm:r,h:"час",hh:r,d:"день",dd:r,M:"месяц",MM:r,y:"год",yy:r},meridiemParse:/ночи|утра|дня|вечера/i,isPM:function(e){return/^(дня|вечера)$/.test(e)},meridiem:function(e,t,r){return 4>e?"ночи":12>e?"утра":17>e?"дня":"вечера"},ordinalParse:/\d{1,2}-(й|го|я)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":return e+"-й";case"D":return e+"-го";case"w":case"W":return e+"-я";default:return e}},week:{dow:1,doy:7}});return o})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("se",{months:"ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),monthsShort:"ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),weekdays:"sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),weekdaysShort:"sotn_vuos_maŋ_gask_duor_bear_láv".split("_"),weekdaysMin:"s_v_m_g_d_b_L".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"MMMM D. [b.] YYYY",LLL:"MMMM D. [b.] YYYY [ti.] HH:mm",LLLL:"dddd, MMMM D. [b.] YYYY [ti.] HH:mm"},calendar:{sameDay:"[otne ti] LT",nextDay:"[ihttin ti] LT",nextWeek:"dddd [ti] LT",lastDay:"[ikte ti] LT",lastWeek:"[ovddit] dddd [ti] LT",sameElse:"L"},relativeTime:{future:"%s geažes",past:"maŋit %s",s:"moadde sekunddat",m:"okta minuhta",mm:"%d minuhtat",h:"okta diimmu",hh:"%d diimmut",d:"okta beaivi",dd:"%d beaivvit",M:"okta mánnu",MM:"%d mánut",y:"okta jahki",yy:"%d jagit"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("si",{months:"ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),monthsShort:"ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),weekdays:"ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),weekdaysShort:"ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන".split("_"),weekdaysMin:"ඉ_ස_අ_බ_බ්‍ර_සි_සෙ".split("_"),longDateFormat:{LT:"a h:mm",LTS:"a h:mm:ss",L:"YYYY/MM/DD",LL:"YYYY MMMM D",LLL:"YYYY MMMM D, a h:mm",LLLL:"YYYY MMMM D [වැනි] dddd, a h:mm:ss"},calendar:{sameDay:"[අද] LT[ට]",nextDay:"[හෙට] LT[ට]",nextWeek:"dddd LT[ට]",lastDay:"[ඊයේ] LT[ට]",lastWeek:"[පසුගිය] dddd LT[ට]",sameElse:"L"},relativeTime:{future:"%sකින්",past:"%sකට පෙර",s:"තත්පර කිහිපය",m:"මිනිත්තුව",mm:"මිනිත්තු %d",h:"පැය",hh:"පැය %d",d:"දිනය",dd:"දින %d",M:"මාසය",MM:"මාස %d",y:"වසර",yy:"වසර %d"},ordinalParse:/\d{1,2} වැනි/,ordinal:function(e){return e+" වැනි"},meridiemParse:/පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,isPM:function(e){return"ප.ව."===e||"පස් වරු"===e},meridiem:function(e,t,r){return e>11?r?"ප.ව.":"පස් වරු":r?"පෙ.ව.":"පෙර වරු"}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e){return e>1&&5>e}function r(e,r,n,o){var i=e+" ";switch(n){case"s":return r||o?"pár sekúnd":"pár sekundami";case"m":return r?"minúta":o?"minútu":"minútou";case"mm":return r||o?i+(t(e)?"minúty":"minút"):i+"minútami";case"h":return r?"hodina":o?"hodinu":"hodinou";case"hh":return r||o?i+(t(e)?"hodiny":"hodín"):i+"hodinami";case"d":return r||o?"deň":"dňom";case"dd":return r||o?i+(t(e)?"dni":"dní"):i+"dňami";case"M":return r||o?"mesiac":"mesiacom";case"MM":return r||o?i+(t(e)?"mesiace":"mesiacov"):i+"mesiacmi";case"y":return r||o?"rok":"rokom";case"yy":return r||o?i+(t(e)?"roky":"rokov"):i+"rokmi"}}var n="január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),o="jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_"),i=e.defineLocale("sk",{months:n,monthsShort:o,weekdays:"nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_št_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_št_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek:function(){switch(this.day()){case 0:return"[v nedeľu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo štvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[včera o] LT",lastWeek:function(){switch(this.day()){case 0:return"[minulú nedeľu o] LT";case 1:case 2:return"[minulý] dddd [o] LT";case 3:return"[minulú stredu o] LT";case 4:case 5:return"[minulý] dddd [o] LT";case 6:return"[minulú sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"pred %s",s:r,m:r,mm:r,h:r,hh:r,d:r,dd:r,M:r,MM:r,y:r,yy:r},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return i})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o=e+" ";switch(r){case"s":return t||n?"nekaj sekund":"nekaj sekundami";case"m":return t?"ena minuta":"eno minuto";case"mm":return o+=1===e?t?"minuta":"minuto":2===e?t||n?"minuti":"minutama":5>e?t||n?"minute":"minutami":t||n?"minut":"minutami";case"h":return t?"ena ura":"eno uro";case"hh":return o+=1===e?t?"ura":"uro":2===e?t||n?"uri":"urama":5>e?t||n?"ure":"urami":t||n?"ur":"urami";case"d":return t||n?"en dan":"enim dnem";case"dd":return o+=1===e?t||n?"dan":"dnem":2===e?t||n?"dni":"dnevoma":t||n?"dni":"dnevi";case"M":return t||n?"en mesec":"enim mesecem";case"MM":return o+=1===e?t||n?"mesec":"mesecem":2===e?t||n?"meseca":"mesecema":5>e?t||n?"mesece":"meseci":t||n?"mesecev":"meseci";case"y":return t||n?"eno leto":"enim letom";case"yy":return o+=1===e?t||n?"leto":"letom":2===e?t||n?"leti":"letoma":5>e?t||n?"leta":"leti":t||n?"let":"leti"}}var r=e.defineLocale("sl",{months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),weekdays:"nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._čet._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_če_pe_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek:function(){switch(this.day()){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[včeraj ob] LT",lastWeek:function(){switch(this.day()){case 0:return"[prejšnjo] [nedeljo] [ob] LT";case 3:return"[prejšnjo] [sredo] [ob] LT";case 6:return"[prejšnjo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prejšnji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"čez %s",past:"pred %s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("sq",{months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),weekdays:"E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),weekdaysShort:"Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),weekdaysMin:"D_H_Ma_Më_E_P_Sh".split("_"),meridiemParse:/PD|MD/,isPM:function(e){return"M"===e.charAt(0)},meridiem:function(e,t,r){return 12>e?"PD":"MD"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot në] LT",nextDay:"[Nesër në] LT",nextWeek:"dddd [në] LT",lastDay:"[Dje në] LT",lastWeek:"dddd [e kaluar në] LT",sameElse:"L"},relativeTime:{future:"në %s",past:"%s më parë",s:"disa sekonda",m:"një minutë",mm:"%d minuta",h:"një orë",hh:"%d orë",d:"një ditë",dd:"%d ditë",M:"një muaj",MM:"%d muaj",y:"një vit",yy:"%d vite"},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={words:{m:["jedan minut","jedne minute"],mm:["minut","minute","minuta"],h:["jedan sat","jednog sata"],hh:["sat","sata","sati"],dd:["dan","dana","dana"],MM:["mesec","meseca","meseci"],yy:["godina","godine","godina"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&4>=e?t[1]:t[2]},translate:function(e,r,n){var o=t.words[n];return 1===n.length?r?o[0]:o[1]:e+" "+t.correctGrammaticalCase(e,o)}},r=e.defineLocale("sr",{months:["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"],monthsShort:["jan.","feb.","mar.","apr.","maj","jun","jul","avg.","sep.","okt.","nov.","dec."],weekdays:["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],weekdaysShort:["ned.","pon.","uto.","sre.","čet.","pet.","sub."],weekdaysMin:["ne","po","ut","sr","če","pe","su"],longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danas u] LT",nextDay:"[sutra u] LT",nextWeek:function(){switch(this.day()){case 0:return"[u] [nedelju] [u] LT";case 3:return"[u] [sredu] [u] LT";case 6:return"[u] [subotu] [u] LT";case 1:case 2:case 4:case 5:return"[u] dddd [u] LT"}},lastDay:"[juče u] LT",lastWeek:function(){var e=["[prošle] [nedelje] [u] LT","[prošlog] [ponedeljka] [u] LT","[prošlog] [utorka] [u] LT","[prošle] [srede] [u] LT","[prošlog] [četvrtka] [u] LT","[prošlog] [petka] [u] LT","[prošle] [subote] [u] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"za %s",past:"pre %s",s:"nekoliko sekundi",m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"dan",dd:t.translate,M:"mesec",MM:t.translate,y:"godinu",yy:t.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={words:{m:["један минут","једне минуте"],mm:["минут","минуте","минута"],h:["један сат","једног сата"],hh:["сат","сата","сати"],dd:["дан","дана","дана"],MM:["месец","месеца","месеци"],yy:["година","године","година"]},correctGrammaticalCase:function(e,t){return 1===e?t[0]:e>=2&&4>=e?t[1]:t[2]},translate:function(e,r,n){var o=t.words[n];return 1===n.length?r?o[0]:o[1]:e+" "+t.correctGrammaticalCase(e,o)}},r=e.defineLocale("sr-cyrl",{months:["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар"],monthsShort:["јан.","феб.","мар.","апр.","мај","јун","јул","авг.","сеп.","окт.","нов.","дец."],weekdays:["недеља","понедељак","уторак","среда","четвртак","петак","субота"],weekdaysShort:["нед.","пон.","уто.","сре.","чет.","пет.","суб."],weekdaysMin:["не","по","ут","ср","че","пе","су"],longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD. MM. YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[данас у] LT",nextDay:"[сутра у] LT",nextWeek:function(){switch(this.day()){case 0:return"[у] [недељу] [у] LT";case 3:return"[у] [среду] [у] LT";case 6:return"[у] [суботу] [у] LT";case 1:case 2:case 4:case 5:return"[у] dddd [у] LT"}},lastDay:"[јуче у] LT",lastWeek:function(){var e=["[прошле] [недеље] [у] LT","[прошлог] [понедељка] [у] LT","[прошлог] [уторка] [у] LT","[прошле] [среде] [у] LT","[прошлог] [четвртка] [у] LT","[прошлог] [петка] [у] LT","[прошле] [суботе] [у] LT"];return e[this.day()]},sameElse:"L"},relativeTime:{future:"за %s",past:"пре %s",s:"неколико секунди",m:t.translate,mm:t.translate,h:t.translate,hh:t.translate,d:"дан",dd:t.translate,M:"месец",MM:t.translate,y:"годину",yy:t.translate},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("sv",{months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),weekdaysShort:"sön_mån_tis_ons_tor_fre_lör".split("_"),weekdaysMin:"sö_må_ti_on_to_fr_lö".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Igår] LT",nextWeek:"[På] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"för %s sedan",s:"några sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en månad",MM:"%d månader",y:"ett år",yy:"%d år"},ordinalParse:/\d{1,2}(e|a)/,ordinal:function(e){var t=e%10,r=1===~~(e%100/10)?"e":1===t?"a":2===t?"a":"e";return e+r},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("sw",{months:"Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),monthsShort:"Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),weekdays:"Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),weekdaysShort:"Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),weekdaysMin:"J2_J3_J4_J5_Al_Ij_J1".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[leo saa] LT",nextDay:"[kesho saa] LT",nextWeek:"[wiki ijayo] dddd [saat] LT",lastDay:"[jana] LT",lastWeek:"[wiki iliyopita] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s baadaye",past:"tokea %s",s:"hivi punde",m:"dakika moja",mm:"dakika %d",h:"saa limoja",hh:"masaa %d",d:"siku moja",dd:"masiku %d",M:"mwezi mmoja",MM:"miezi %d",y:"mwaka mmoja",yy:"miaka %d"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"௧",2:"௨",3:"௩",4:"௪",5:"௫",6:"௬",7:"௭",8:"௮",9:"௯",0:"௦"},r={"௧":"1","௨":"2","௩":"3","௪":"4","௫":"5","௬":"6","௭":"7","௮":"8","௯":"9","௦":"0"},n=e.defineLocale("ta",{months:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),monthsShort:"ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),weekdays:"ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),weekdaysShort:"ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),weekdaysMin:"ஞா_தி_செ_பு_வி_வெ_ச".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, HH:mm",LLLL:"dddd, D MMMM YYYY, HH:mm"},calendar:{sameDay:"[இன்று] LT",nextDay:"[நாளை] LT",nextWeek:"dddd, LT",lastDay:"[நேற்று] LT",lastWeek:"[கடந்த வாரம்] dddd, LT",sameElse:"L"},relativeTime:{future:"%s இல்",past:"%s முன்",s:"ஒரு சில விநாடிகள்",m:"ஒரு நிமிடம்",mm:"%d நிமிடங்கள்",h:"ஒரு மணி நேரம்",hh:"%d மணி நேரம்",d:"ஒரு நாள்",dd:"%d நாட்கள்",M:"ஒரு மாதம்",MM:"%d மாதங்கள்",y:"ஒரு வருடம்",yy:"%d ஆண்டுகள்"},ordinalParse:/\d{1,2}வது/,ordinal:function(e){return e+"வது"},preparse:function(e){return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g,function(e){return r[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return t[e]})},meridiemParse:/யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,meridiem:function(e,t,r){
+return 2>e?" யாமம்":6>e?" வைகறை":10>e?" காலை":14>e?" நண்பகல்":18>e?" எற்பாடு":22>e?" மாலை":" யாமம்"},meridiemHour:function(e,t){return 12===e&&(e=0),"யாமம்"===t?2>e?e:e+12:"வைகறை"===t||"காலை"===t?e:"நண்பகல்"===t&&e>=10?e:e+12},week:{dow:0,doy:6}});return n})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("te",{months:"జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జూలై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),monthsShort:"జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జూలై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),weekdays:"ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),weekdaysShort:"ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),weekdaysMin:"ఆ_సో_మం_బు_గు_శు_శ".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[నేడు] LT",nextDay:"[రేపు] LT",nextWeek:"dddd, LT",lastDay:"[నిన్న] LT",lastWeek:"[గత] dddd, LT",sameElse:"L"},relativeTime:{future:"%s లో",past:"%s క్రితం",s:"కొన్ని క్షణాలు",m:"ఒక నిమిషం",mm:"%d నిమిషాలు",h:"ఒక గంట",hh:"%d గంటలు",d:"ఒక రోజు",dd:"%d రోజులు",M:"ఒక నెల",MM:"%d నెలలు",y:"ఒక సంవత్సరం",yy:"%d సంవత్సరాలు"},ordinalParse:/\d{1,2}వ/,ordinal:"%dవ",meridiemParse:/రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,meridiemHour:function(e,t){return 12===e&&(e=0),"రాత్రి"===t?4>e?e:e+12:"ఉదయం"===t?e:"మధ్యాహ్నం"===t?e>=10?e:e+12:"సాయంత్రం"===t?e+12:void 0},meridiem:function(e,t,r){return 4>e?"రాత్రి":10>e?"ఉదయం":17>e?"మధ్యాహ్నం":20>e?"సాయంత్రం":"రాత్రి"},week:{dow:0,doy:6}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("th",{months:"มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),monthsShort:"มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา".split("_"),weekdays:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),weekdaysShort:"อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),weekdaysMin:"อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),longDateFormat:{LT:"H นาฬิกา m นาที",LTS:"H นาฬิกา m นาที s วินาที",L:"YYYY/MM/DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY เวลา H นาฬิกา m นาที",LLLL:"วันddddที่ D MMMM YYYY เวลา H นาฬิกา m นาที"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM:function(e){return"หลังเที่ยง"===e},meridiem:function(e,t,r){return 12>e?"ก่อนเที่ยง":"หลังเที่ยง"},calendar:{sameDay:"[วันนี้ เวลา] LT",nextDay:"[พรุ่งนี้ เวลา] LT",nextWeek:"dddd[หน้า เวลา] LT",lastDay:"[เมื่อวานนี้ เวลา] LT",lastWeek:"[วัน]dddd[ที่แล้ว เวลา] LT",sameElse:"L"},relativeTime:{future:"อีก %s",past:"%sที่แล้ว",s:"ไม่กี่วินาที",m:"1 นาที",mm:"%d นาที",h:"1 ชั่วโมง",hh:"%d ชั่วโมง",d:"1 วัน",dd:"%d วัน",M:"1 เดือน",MM:"%d เดือน",y:"1 ปี",yy:"%d ปี"}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("tl-ph",{months:"Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),monthsShort:"Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),weekdays:"Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),weekdaysShort:"Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),weekdaysMin:"Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"MM/D/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY HH:mm",LLLL:"dddd, MMMM DD, YYYY HH:mm"},calendar:{sameDay:"[Ngayon sa] LT",nextDay:"[Bukas sa] LT",nextWeek:"dddd [sa] LT",lastDay:"[Kahapon sa] LT",lastWeek:"dddd [huling linggo] LT",sameElse:"L"},relativeTime:{future:"sa loob ng %s",past:"%s ang nakalipas",s:"ilang segundo",m:"isang minuto",mm:"%d minuto",h:"isang oras",hh:"%d oras",d:"isang araw",dd:"%d araw",M:"isang buwan",MM:"%d buwan",y:"isang taon",yy:"%d taon"},ordinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"leS":-1!==e.indexOf("jar")?t.slice(0,-3)+"waQ":-1!==e.indexOf("DIS")?t.slice(0,-3)+"nem":t+" pIq"}function r(e){var t=e;return t=-1!==e.indexOf("jaj")?t.slice(0,-3)+"Hu’":-1!==e.indexOf("jar")?t.slice(0,-3)+"wen":-1!==e.indexOf("DIS")?t.slice(0,-3)+"ben":t+" ret"}function n(e,t,r,n){var i=o(e);switch(r){case"mm":return i+" tup";case"hh":return i+" rep";case"dd":return i+" jaj";case"MM":return i+" jar";case"yy":return i+" DIS"}}function o(e){var t=Math.floor(e%1e3/100),r=Math.floor(e%100/10),n=e%10,o="";return t>0&&(o+=i[t]+"vatlh"),r>0&&(o+=(""!==o?" ":"")+i[r]+"maH"),n>0&&(o+=(""!==o?" ":"")+i[n]),""===o?"pagh":o}var i="pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_"),a=e.defineLocale("tlh",{months:"tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),monthsShort:"jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".split("_"),weekdays:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysShort:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),weekdaysMin:"lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[DaHjaj] LT",nextDay:"[wa’leS] LT",nextWeek:"LLL",lastDay:"[wa’Hu’] LT",lastWeek:"LLL",sameElse:"L"},relativeTime:{future:t,past:r,s:"puS lup",m:"wa’ tup",mm:n,h:"wa’ rep",hh:n,d:"wa’ jaj",dd:n,M:"wa’ jar",MM:n,y:"wa’ DIS",yy:n},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return a})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'üncü",4:"'üncü",100:"'üncü",6:"'ncı",9:"'uncu",10:"'uncu",30:"'uncu",60:"'ıncı",90:"'ıncı"},r=e.defineLocale("tr",{months:"Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),monthsShort:"Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_Çar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bugün saat] LT",nextDay:"[yarın saat] LT",nextWeek:"[haftaya] dddd [saat] LT",lastDay:"[dün] LT",lastWeek:"[geçen hafta] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s önce",s:"birkaç saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir gün",dd:"%d gün",M:"bir ay",MM:"%d ay",y:"bir yıl",yy:"%d yıl"},ordinalParse:/\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,ordinal:function(e){if(0===e)return e+"'ıncı";var r=e%10,n=e%100-r,o=e>=100?100:null;return e+(t[r]||t[n]||t[o])},week:{dow:1,doy:7}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t,r,n){var o={s:["viensas secunds","'iensas secunds"],m:["'n míut","'iens míut"],mm:[e+" míuts",""+e+" míuts"],h:["'n þora","'iensa þora"],hh:[e+" þoras",""+e+" þoras"],d:["'n ziua","'iensa ziua"],dd:[e+" ziuas",""+e+" ziuas"],M:["'n mes","'iens mes"],MM:[e+" mesen",""+e+" mesen"],y:["'n ar","'iens ar"],yy:[e+" ars",""+e+" ars"]};return n?o[r][0]:t?o[r][0]:o[r][1]}var r=e.defineLocale("tzl",{months:"Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),monthsShort:"Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),weekdays:"Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),weekdaysShort:"Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),weekdaysMin:"Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"D. MMMM [dallas] YYYY",LLL:"D. MMMM [dallas] YYYY HH.mm",LLLL:"dddd, [li] D. MMMM [dallas] YYYY HH.mm"},meridiemParse:/d\'o|d\'a/i,isPM:function(e){return"d'o"===e.toLowerCase()},meridiem:function(e,t,r){return e>11?r?"d'o":"D'O":r?"d'a":"D'A"},calendar:{sameDay:"[oxhi à] LT",nextDay:"[demà à] LT",nextWeek:"dddd [à] LT",lastDay:"[ieiri à] LT",lastWeek:"[sür el] dddd [lasteu à] LT",sameElse:"L"},relativeTime:{future:"osprei %s",past:"ja%s",s:t,m:t,mm:t,h:t,hh:t,d:t,dd:t,M:t,MM:t,y:t,yy:t},ordinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}});return r})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("tzm",{months:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),monthsShort:"ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),weekdays:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysShort:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),weekdaysMin:"ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[ⴰⵙⴷⵅ ⴴ] LT",nextDay:"[ⴰⵙⴽⴰ ⴴ] LT",nextWeek:"dddd [ⴴ] LT",lastDay:"[ⴰⵚⴰⵏⵜ ⴴ] LT",lastWeek:"dddd [ⴴ] LT",sameElse:"L"},relativeTime:{future:"ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",past:"ⵢⴰⵏ %s",s:"ⵉⵎⵉⴽ",m:"ⵎⵉⵏⵓⴺ",mm:"%d ⵎⵉⵏⵓⴺ",h:"ⵙⴰⵄⴰ",hh:"%d ⵜⴰⵙⵙⴰⵄⵉⵏ",d:"ⴰⵙⵙ",dd:"%d oⵙⵙⴰⵏ",M:"ⴰⵢoⵓⵔ",MM:"%d ⵉⵢⵢⵉⵔⵏ",y:"ⴰⵙⴳⴰⵙ",yy:"%d ⵉⵙⴳⴰⵙⵏ"},week:{dow:6,doy:12}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("tzm-latn",{months:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),monthsShort:"innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),weekdays:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysShort:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),weekdaysMin:"asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[asdkh g] LT",nextDay:"[aska g] LT",nextWeek:"dddd [g] LT",lastDay:"[assant g] LT",lastWeek:"dddd [g] LT",sameElse:"L"},relativeTime:{future:"dadkh s yan %s",past:"yan %s",s:"imik",m:"minuḍ",mm:"%d minuḍ",h:"saɛa",hh:"%d tassaɛin",d:"ass",dd:"%d ossan",M:"ayowr",MM:"%d iyyirn",y:"asgas",yy:"%d isgasn"},week:{dow:6,doy:12}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";function t(e,t){var r=e.split("_");return t%10===1&&t%100!==11?r[0]:t%10>=2&&4>=t%10&&(10>t%100||t%100>=20)?r[1]:r[2]}function r(e,r,n){var o={mm:r?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:r?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===n?r?"хвилина":"хвилину":"h"===n?r?"година":"годину":e+" "+t(o[n],+e)}function n(e,t){var r={nominative:"неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),accusative:"неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),genitive:"неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")},n=/(\[[ВвУу]\]) ?dddd/.test(t)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(t)?"genitive":"nominative";return r[n][e.day()]}function o(e){return function(){return e+"о"+(11===this.hours()?"б":"")+"] LT"}}var i=e.defineLocale("uk",{months:{format:"січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),standalone:"січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")},monthsShort:"січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),weekdays:n,weekdaysShort:"нд_пн_вт_ср_чт_пт_сб".split("_"),weekdaysMin:"нд_пн_вт_ср_чт_пт_сб".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY р.",LLL:"D MMMM YYYY р., HH:mm",LLLL:"dddd, D MMMM YYYY р., HH:mm"},calendar:{sameDay:o("[Сьогодні "),nextDay:o("[Завтра "),lastDay:o("[Вчора "),nextWeek:o("[У] dddd ["),lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return o("[Минулої] dddd [").call(this);case 1:case 2:case 4:return o("[Минулого] dddd [").call(this)}},sameElse:"L"},relativeTime:{future:"за %s",past:"%s тому",s:"декілька секунд",m:r,mm:r,h:"годину",hh:r,d:"день",dd:r,M:"місяць",MM:r,y:"рік",yy:r},meridiemParse:/ночі|ранку|дня|вечора/,isPM:function(e){return/^(дня|вечора)$/.test(e)},meridiem:function(e,t,r){return 4>e?"ночі":12>e?"ранку":17>e?"дня":"вечора"},ordinalParse:/\d{1,2}-(й|го)/,ordinal:function(e,t){switch(t){case"M":case"d":case"DDD":case"w":case"W":return e+"-й";case"D":return e+"-го";default:return e}},week:{dow:1,doy:7}});return i})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("uz",{months:"январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),monthsShort:"янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),weekdays:"Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),weekdaysShort:"Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),weekdaysMin:"Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"D MMMM YYYY, dddd HH:mm"},calendar:{sameDay:"[Бугун соат] LT [да]",nextDay:"[Эртага] LT [да]",nextWeek:"dddd [куни соат] LT [да]",lastDay:"[Кеча соат] LT [да]",lastWeek:"[Утган] dddd [куни соат] LT [да]",sameElse:"L"},relativeTime:{future:"Якин %s ичида",past:"Бир неча %s олдин",s:"фурсат",m:"бир дакика",mm:"%d дакика",h:"бир соат",hh:"%d соат",d:"бир кун",dd:"%d кун",M:"бир ой",MM:"%d ой",y:"бир йил",yy:"%d йил"},week:{dow:1,doy:7}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("vi",{months:"tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),weekdays:"chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),meridiemParse:/sa|ch/i,isPM:function(e){return/^ch$/i.test(e)},meridiem:function(e,t,r){return 12>e?r?"sa":"SA":r?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [năm] YYYY",LLL:"D MMMM [năm] YYYY HH:mm",LLLL:"dddd, D MMMM [năm] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[Hôm nay lúc] LT",nextDay:"[Ngày mai lúc] LT",nextWeek:"dddd [tuần tới lúc] LT",lastDay:"[Hôm qua lúc] LT",lastWeek:"dddd [tuần rồi lúc] LT",sameElse:"L"},relativeTime:{future:"%s tới",past:"%s trước",s:"vài giây",m:"một phút",mm:"%d phút",h:"một giờ",hh:"%d giờ",d:"một ngày",dd:"%d ngày",M:"một tháng",MM:"%d tháng",y:"một năm",yy:"%d năm"},ordinalParse:/\d{1,2}/,ordinal:function(e){return e},week:{dow:1,doy:4}});return t})},function(e,t,r){!function(e,t){t(r(65))}(this,function(e){"use strict";var t=e.defineLocale("zh-cn",{months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),longDateFormat:{LT:"Ah点mm分",LTS:"Ah点m分s秒",L:"YYYY-MM-DD",LL:"YYYY年MMMD日",LLL:"YYYY年MMMD日Ah点mm分",LLLL:"YYYY年MMMD日ddddAh点mm分",l:"YYYY-MM-DD",ll:"YYYY年MMMD日",lll:"YYYY年MMMD日Ah点mm分",llll:"YYYY年MMMD日ddddAh点mm分"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour:function(e,t){return 12===e&&(e=0),"凌晨"===t||"早上"===t||"上午"===t?e:"下午"===t||"晚上"===t?e+12:e>=11?e:e+12},meridiem:function(e,t,r){var n=100*e+t;return 600>n?"凌晨":900>n?"早上":1130>n?"上午":1230>n?"中午":1800>n?"下午":"晚上"},calendar:{sameDay:function(){return 0===this.minutes()?"[今天]Ah[点整]":"[今天]LT"},nextDay:function(){return 0===this.minutes()?"[明天]Ah[点整]":"[明天]LT"},lastDay:function(){return 0===this.minutes()?"[昨天]Ah[点整]":"[昨天]LT"},nextWeek:function(){var t,r;return t=e().startOf("week"),r=this.unix()-t.unix()>=604800?"[下]":"[本]",0===this.minutes()?r+"dddAh点整":r+"dddAh点mm"},lastWeek:function(){var t,r;return t=e().startOf("week"),r=this.unix()=11?e:e+12:"下午"===t||"晚上"===t?e+12:void 0},meridiem:function(e,t,r){var n=100*e+t;return 900>n?"早上":1130>n?"上午":1230>n?"中午":1800>n?"下午":"晚上"},calendar:{sameDay:"[今天]LT",nextDay:"[明天]LT",nextWeek:"[下]ddddLT",lastDay:"[昨天]LT",lastWeek:"[上]ddddLT",sameElse:"L"},ordinalParse:/\d{1,2}(日|月|週)/,ordinal:function(e,t){switch(t){case"d":case"D":case"DDD":return e+"日";case"M":return e+"月";case"w":case"W":return e+"週";default:return e}},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"一分鐘",mm:"%d分鐘",h:"一小時",hh:"%d小時",d:"一天",dd:"%d天",M:"一個月",MM:"%d個月",y:"一年",yy:"%d年"}});return t})},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t=t&&t>=-r/2?this.state.slide===!1&&(this._setSlideInterval(),this.setState({slide:!0})):(clearInterval(this._slideAnimation),this.setState({slide:!1}))}},{key:"_setSlideInterval",value:function(){this._slideAnimation=setInterval(function(){var e=this.state.activeIndex,t=this.props.children.length;this.setState({activeIndex:(e+1)%t}),this.props.infinite||e!==t-1||clearInterval(this._slideAnimation)}.bind(this),this.props.autoplaySpeed)}},{key:"_onSelect",value:function(e){e!==this.state.activeIndex&&this.setState({activeIndex:e})}},{key:"_onMouseOver",value:function(){this.props.autoplay&&clearInterval(this._slideAnimation),this.props.persistentNav||this.setState({hideControls:!1})}},{key:"_onMouseOut",value:function(){this.props.autoplay&&(this.props.infinite||this.state.activeIndex!==this.props.children.length-1)&&this._setSlideInterval(),this.props.persistentNav||this.setState({hideControls:!0})}},{key:"_onResize",value:function(){this.setState({width:this.refs.carousel.offsetWidth})}},{key:"_slidePrev",value:function(){var e=this.props.children.length;this.setState({activeIndex:(this.state.activeIndex+e-1)%e})}},{key:"_slideNext",value:function(){var e=this.props.children.length;this.setState({activeIndex:(this.state.activeIndex+1)%e})}},{key:"_renderPrevButton",value:function(){var e=void 0;return(this.props.infinite||0!==this.state.activeIndex)&&(e=u["default"].createElement(b["default"],{className:E+"__arrow "+E+"__arrow--prev",plain:!0,onClick:this._slidePrev},u["default"].createElement(g["default"],{size:"large"}))),e}},{key:"_renderNextButton",value:function(){var e=void 0;return(this.props.infinite||this.state.activeIndex!==this.props.children.length-1)&&(e=u["default"].createElement(b["default"],{className:E+"__arrow "+E+"__arrow--next",plain:!0,onClick:this._slideNext},u["default"].createElement(T["default"],{size:"large"}))),e}},{key:"render",value:function(){var e=[E];this.state.hideControls&&e.push(E+"--hide-controls"),this.props.className&&e.push(this.props.className);var t=-1,r=this.props.children,n=this.state.width,o=n*r.length,i=-(n*this.state.activeIndex),a=u["default"].Children.map(r,function(e){return u["default"].createElement(y["default"],{className:E+"__item"},e)},this),l=u["default"].Children.map(r,function(e){t+=1;var r=[E+"__control"];return t===this.state.activeIndex&&r.push(E+"__control--active"),u["default"].createElement("svg",{className:r.join(" "),viewBox:"0 0 24 24",version:"1.1",onClick:this._onSelect.bind(this,t)},u["default"].createElement("circle",{cx:12,cy:12,r:6}))},this);return u["default"].createElement("div",{ref:"carousel",className:e.join(" "),onMouseEnter:this._onMouseOver,onMouseLeave:this._onMouseOut},u["default"].createElement("div",{className:E+"__track",style:{width:o,marginLeft:i}},u["default"].createElement(d["default"],{fill:!0,responsive:!1,wrap:!1,direction:"row"},a)),this._renderPrevButton(),this._renderNextButton(),u["default"].createElement(f["default"],{className:E+"__controls",direction:"row",justify:"center",responsive:!1},l))}}]),t}(s.Component);t["default"]=k,k.propTypes={autoplay:s.PropTypes.bool,autoplaySpeed:s.PropTypes.number,infinite:s.PropTypes.bool,persistentNav:s.PropTypes.bool},k.defaultProps={autoplay:!0,autoplaySpeed:5e3,infinite:!0,persistentNav:!0},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){
+if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t100?clearInterval(this._scrollTimer):e.deltaX>5?this._onRight():e.deltaX<-5&&this._onLeft()}},{key:"_layout",value:function(){if("row"===this.props.direction){var e=(0,f.findDOMNode)(this.refs.tiles);this.setState({overflow:e.scrollWidth>e.offsetWidth+20,overflowStart:e.scrollLeft<=20,overflowEnd:e.scrollLeft>=e.scrollWidth-e.offsetWidth});for(var t=e.getBoundingClientRect(),r=e.querySelectorAll(".tile"),n=0;nt.right?o.classList.add("tile--eclipsed"):o.classList.remove("tile--eclipsed")}}}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_trackHorizontalScroll",value:function(){if(this.state.overflow&&!this._tracking){var e=(0,f.findDOMNode)(this.refs.tiles);e.addEventListener("scroll",this._onScrollHorizontal),this._tracking=!0}}},{key:"_setSelection",value:function(){E["default"].setClassFromIndexes({containerElement:(0,f.findDOMNode)(this.refs.tiles),childSelector:".tile",selectedClass:I,selectedIndexes:this.state.selected})}},{key:"_onClick",value:function(e){var t=E["default"].onClick(e,{containerElement:(0,f.findDOMNode)(this.refs.tiles),childSelector:".tile",selectedClass:I,multiSelect:"multiple"===this.props.selectable,priorSelectedIndexes:this.state.selected});this.props.selected||this.setState({selected:t},this._setSelection),this.props.onSelect&&(1===t.length&&(t=t[0]),this.props.onSelect(t))}},{key:"render",value:function(){var e=[L];this.props.fill&&e.push(L+"--fill"),this.props.flush&&e.push(L+"--flush"),this.props.size&&e.push(L+"--"+this.props.size),this.props.selectable&&e.push(L+"--selectable"),this.props.className&&e.push(this.props.className);var t=d["default"].pick(this.props,Object.keys(y["default"].propTypes)),r=null;this.props.onMore&&(e.push(L+"--moreable"),r=c["default"].createElement("div",{ref:"more",className:L+"__more"},c["default"].createElement(g["default"],null)));var n=void 0;this.props.selectable&&(n=this._onClick);var o=c["default"].createElement(y["default"],l({ref:"tiles"},t,{wrap:!this.props.direction,direction:this.props.direction?this.props.direction:"row",className:e.join(" "),onClick:n,focusable:!1}),this.props.children,r);if(this.state.overflow){if(e.push(L+"--overflowed"),!this.state.overflowStart)var i=c["default"].createElement(b["default"],{className:L+"__left",icon:c["default"].createElement(O["default"],null),onClick:this._onLeft});if(!this.state.overflowEnd)var a=c["default"].createElement(b["default"],{className:L+"__right",icon:c["default"].createElement(j["default"],null),onClick:this._onRight});o=c["default"].createElement("div",{className:L+"__container"},i,o,a)}return o}}]),t}(u.Component);t["default"]=S,S.propTypes=l({fill:u.PropTypes.bool,flush:u.PropTypes.bool,onMore:u.PropTypes.func,onSelect:u.PropTypes.func,selectable:u.PropTypes.oneOfType([u.PropTypes.bool,u.PropTypes.oneOf(["multiple"])]),selected:u.PropTypes.oneOfType([u.PropTypes.number,u.PropTypes.arrayOf(u.PropTypes.number)]),size:u.PropTypes.oneOf(["small","medium","large"])},y["default"].propTypes),S.defaultProps={flush:!0,justify:"start"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;re?l-=1:l+=1;window.getSelection().removeAllRanges()}()}else-1===a?i.push(n):i.splice(a,1);else i=-1!==a&&(e.ctrlKey||e.metaKey)?[]:t.priorSelectedIndexes}else i=[n];return i}Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={normalizeIndexes:r,clearClass:n,getIndexesFromClass:i,setClassFromIndexes:o,onClick:a},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;tn;n++)t.call(r,e[n],n,e);else for(n in e)e.hasOwnProperty(n)&&t.call(r,e[n],n,e)}function u(e,t,r){for(var n=Object.keys(t),o=0,a=n.length;a>o;o++)(!r||r&&e[n[o]]===i)&&(e[n[o]]=t[n[o]]);return e}function c(e,t){return u(e,t,!0)}function f(e,t,r){var n,o=t.prototype;n=e.prototype=Object.create(o),n.constructor=e,n._super=o,r&&u(n,r)}function p(e,t){return function(){return e.apply(t,arguments)}}function d(e,t){return typeof e==se?e.apply(t?t[0]||i:i,t):e}function h(e,t){return e===i?t:e}function y(e,t,r){s(g(t),function(t){e.addEventListener(t,r,!1)})}function m(e,t,r){s(g(t),function(t){e.removeEventListener(t,r,!1)})}function b(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function _(e,t){return e.indexOf(t)>-1}function g(e){return e.trim().split(/\s+/g)}function v(e,t,r){if(e.indexOf&&!r)return e.indexOf(t);for(var n=0,o=e.length;o>n;n++)if(r&&e[n][r]==t||!r&&e[n]===t)return n;return-1}function T(e){return Array.prototype.slice.call(e,0)}function w(e,t){for(var r=[],n=[],o=0,i=e.length;i>o;o++){var a=t?e[o][t]:e[o];v(n,a)<0&&r.push(e[o]),n[o]=a}return r}function M(e,t){for(var r,n,o=t[0].toUpperCase()+t.slice(1),a=0,l=ae.length;l>a;a++)if(r=ae[a],n=r?r+o:t,n in e)return n;return i}function P(){return de++}function E(e,t){var r=this;this.manager=e,this.callback=t,this.domHandler=function(e){d(r.manager.options.enable,[r.manager])&&r.handler(e)},this.evEl&&y(this.manager.element,this.evEl,this.domHandler),this.evWin&&y(o,this.evWin,this.domHandler)}function k(e){var t;return new(t=me?R:be?W:ye?F:H)(e,O)}function O(e,t,r){var n=r.pointers.length,o=r.changedPointers.length,i=t&Me&&n-o===0,a=t&(Ee|ke)&&n-o===0;r.isFirst=i,r.isFinal=a,i&&(e.session={}),r.eventType=t,x(e,r),e.emit("hammer.input",r),e.recognize(r)}function x(e,t){var r=e.session,n=t.pointers,o=n.length;r.firstInput||(r.firstInput=L(t)),o>1&&!r.firstMultiple?r.firstMultiple=L(t):1===o&&(r.firstMultiple=!1);var i=r.firstInput,a=r.firstMultiple,l=a?a.center:i.center,s=I(n);t.timeStamp=pe(),t.deltaTime=t.timeStamp-i.timeStamp,t.deltaX=s.x-l.x,t.deltaY=s.y-l.y,t.center=s,t.angle=Y(l,s),t.distance=D(l,s),t.offsetDirection=C(t.deltaX,t.deltaY),t.scale=a?z(a.pointers,n):1,t.rotation=a?N(a.pointers,n):0;var u=e.element;b(t.srcEvent.target,u)&&(u=t.srcEvent.target),t.target=u,j(r,t)}function j(e,t){var r=e.lastInterval;r||(r=e.lastInterval=L(t));var n,o,a,l,s=t.timeStamp-r.timeStamp;if(s>we||r.velocity===i){var u=r.deltaX-t.deltaX,c=r.deltaY-t.deltaY,f=S(s,u,c);o=f.x,a=f.y,n=fe(f.x)>fe(f.y)?f.x:f.y,l=C(u,c)}else n=r.velocity,o=r.velocityX,a=r.velocityY,l=r.direction;t.velocity=n,t.velocityX=o,t.velocityY=a,t.direction=l}function L(e){for(var t=[],r=0;ro;o++)r+=e[o].clientX,n+=e[o].clientY;return{x:ce(r/t),y:ce(n/t)}}function S(e,t,r){return{x:t/e||0,y:r/e||0}}function C(e,t){return e===t?Oe:fe(e)>=fe(t)?e>0?xe:je:t>0?Le:Ie}function D(e,t,r){r||(r=Ye);var n=t[r[0]]-e[r[0]],o=t[r[1]]-e[r[1]];return Math.sqrt(n*n+o*o)}function Y(e,t,r){r||(r=Ye);var n=t[r[0]]-e[r[0]],o=t[r[1]]-e[r[1]];return 180*Math.atan2(o,n)/Math.PI}function N(e,t){return Y(t[1],t[0],Ne)-Y(e[1],e[0],Ne)}function z(e,t){return D(t[0],t[1],Ne)/D(e[0],e[1],Ne)}function H(){this.evEl=He,this.evWin=Re,this.allow=!0,this.pressed=!1,E.apply(this,arguments)}function R(){this.evEl=Fe,this.evWin=Be,E.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function W(){this.evEl=Ke,this.targetIds={},E.apply(this,arguments)}function A(e,t){var r,n,o=t.targetIds,i=T(e.targetTouches),a=T(e.changedTouches),l=[];if("touchstart"==e.type)for(r=0,n=i.length;n>r;r++)o[i[r].identifier]=!0;for(r=0,n=a.length;n>r;r++)o[a[r].identifier]&&l.push(a[r]),"touchend"!=e.type&&"touchcancel"!=e.type||delete o[a[r].identifier];return[w(i.concat(l),"identifier"),l]}function F(){E.apply(this,arguments);var e=p(this.handler,this);this.touch=new W(this.manager,e),this.mouse=new H(this.manager,e)}function B(e,t){this.manager=e,this.set(t)}function V(e){if(_(e,Qe))return Qe;var t=_(e,$e),r=_(e,Ze);return t&&r?$e+" "+Ze:t||r?t?$e:Ze:_(e,Xe)?Xe:Ue}function K(e){this.id=P(),this.manager=null,this.options=c(e||{},this.defaults),this.options.enable=h(this.options.enable,!0),this.state=et,this.simultaneous={},this.requireFail=[]}function J(e){return e&it?"cancel":e&nt?"end":e&rt?"move":e&tt?"start":""}function G(e){return e==Ie?"down":e==Le?"up":e==xe?"left":e==je?"right":""}function q(e,t){var r=t.manager;return r?r.get(e):e}function U(){K.apply(this,arguments)}function X(){U.apply(this,arguments),this.pX=null,this.pY=null}function Q(){U.apply(this,arguments)}function $(){K.apply(this,arguments),this._timer=null,this._input=null}function Z(){U.apply(this,arguments)}function ee(){U.apply(this,arguments)}function te(){K.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function re(e,t){return t=t||{},t.recognizers=h(t.recognizers,re.defaults.preset),new ne(e,t)}function ne(e,t){t=t||{},this.options=c(t,re.defaults),this.handlers={},this.session={},this.recognizers=[],this.element=e,this.input=k(this),this.touchAction=new B(this,this.options.touchAction),oe(this,!0),s(t.recognizers,function(e){var t=this.add(new e[0](e[1]));e[2]&&t.recognizeWith(e[2]),e[3]&&t.requireFailure(e[2])},this)}function oe(e,t){var r=e.element,n=e.options.cssProps;s(n,function(e,n){r.style[M(r.style,n)]=t?e:""});var o=t&&function(){return!1};"none"==n.userSelect&&(r.onselectstart=o),"none"==n.userDrag&&(r.ondragstart=o)}function ie(e,t){var r=document.createEvent("Event");r.initEvent(e,!0,!0),r.gesture=t,t.target.dispatchEvent(r)}var ae=["","webkit","moz","MS","ms","o"],le=document.createElement("div"),se="function",ue="undefined",ce=Math.round,fe=Math.abs,pe=Date.now,de=1,he=/mobile|tablet|ip(ad|hone|od)|android/i,ye="ontouchstart"in o,me=M(o,"PointerEvent")!==i,be=ye&&he.test(navigator.userAgent),_e="touch",ge="pen",ve="mouse",Te="kinect",we=25,Me=1,Pe=2,Ee=4,ke=8,Oe=1,xe=2,je=4,Le=8,Ie=16,Se=xe|je,Ce=Le|Ie,De=Se|Ce,Ye=["x","y"],Ne=["clientX","clientY"];E.prototype={handler:function(){},destroy:function(){this.elEvents&&m(this.manager.element,this.elEvents,this.domHandler),this.winEvents&&m(o,this.winEvents,this.domHandler)}};var ze={mousedown:Me,mousemove:Pe,mouseup:Ee,mouseout:ke},He="mousedown",Re="mousemove mouseout mouseup";f(H,E,{handler:function(e){var t=ze[e.type];if(t&Me&&0===e.button&&(this.pressed=!0),t&Pe&&1!==e.which&&(t=Ee),this.pressed&&this.allow){var r=e.relatedTarget||e.toElement||e.target;"mouseout"==e.type&&"HTML"!=r.nodeName&&(t=Pe),t&(Ee|ke)&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:ve,srcEvent:e})}}});var We={pointerdown:Me,pointermove:Pe,pointerup:Ee,pointercancel:ke,pointerout:ke},Ae={2:_e,3:ge,4:ve,5:Te},Fe="pointerdown",Be="pointermove pointerout pointerup pointercancel";o.MSPointerEvent&&(Fe="MSPointerDown",Be="MSPointerMove MSPointerOut MSPointerUp MSPointerCancel"),f(R,E,{handler:function(e){var t=this.store,r=!1,n=e.type.toLowerCase().replace("ms",""),o=We[n],i=Ae[e.pointerType]||e.pointerType,a=e.relatedTarget||e.toElement||e.target;"pointerout"==n&&"HTML"!=a.nodeName&&(o=Pe),o&Me&&(0===e.button||i==_e)?t.push(e):o&(Ee|ke)&&(r=!0);var l=v(t,e.pointerId,"pointerId");0>l||(t[l]=e,this.callback(this.manager,o,{pointers:t,changedPointers:[e],pointerType:i,srcEvent:e}),r&&t.splice(l,1))}});var Ve={touchstart:Me,touchmove:Pe,touchend:Ee,touchcancel:ke},Ke="touchstart touchmove touchend touchcancel";f(W,E,{handler:function(e){var t=A(e,this);this.callback(this.manager,Ve[e.type],{pointers:t[0],changedPointers:t[1],pointerType:_e,srcEvent:e})}}),f(F,E,{handler:function(e,t,r){var n=r.pointerType==_e,o=r.pointerType==ve;if(n)this.mouse.allow=!1;else if(o&&!this.mouse.allow)return;t&(Ee|ke)&&(this.mouse.allow=!0),this.callback(e,t,r)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Je=M(le.style,"touchAction"),Ge=Je!==i,qe="compute",Ue="auto",Xe="manipulation",Qe="none",$e="pan-x",Ze="pan-y";B.prototype={set:function(e){e==qe&&(e=this.compute()),Ge&&(this.manager.element.style[Je]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return s(this.manager.recognizers,function(t){d(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),V(e.join(" "))},preventDefaults:function(e){if(!Ge){var t=e.srcEvent,r=e.offsetDirection;if(this.manager.session.prevented)return void t.preventDefault();var n=this.actions,o=_(n,Qe),i=_(n,Ze),a=_(n,$e);return o||i&&a||i&&r&Se||a&&r&Ce?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var et=1,tt=2,rt=4,nt=8,ot=nt,it=16,at=32;K.prototype={defaults:{},set:function(e){return u(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(l(e,"recognizeWith",this))return this;var t=this.simultaneous;return e=q(e,this),t[e.id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return l(e,"dropRecognizeWith",this)?this:(e=q(e,this),delete this.simultaneous[e.id],this)},requireFailure:function(e){if(l(e,"requireFailure",this))return this;var t=this.requireFail;return e=q(e,this),-1===v(t,e)&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(l(e,"dropRequireFailure",this))return this;e=q(e,this);var t=v(this.requireFail,e);return t>-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){this.manager.emit(this.options.event,e),this.manager.emit(this.options.event+J(this.state),e)},tryEmit:function(e){return this.canEmit()?this.emit(e):void(this.state=at)},canEmit:function(){for(var e=0;ei?xe:je,r=i!=this.pX,n=Math.abs(e.deltaX)):(o=0===a?Oe:0>a?Le:Ie,r=a!=this.pY,n=Math.abs(e.deltaY))),e.direction=o,r&&n>t.threshold&&o&t.direction},attrTest:function(e){return U.prototype.attrTest.call(this,e)&&(this.state&tt||!(this.state&tt)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY,this._super.emit.call(this,e);var t=G(e.direction);t&&this.manager.emit(this.options.event+t,e)}}),f(Q,U,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[Qe]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&tt)},emit:function(e){if(this._super.emit.call(this,e),1!==e.scale){var t=e.scale<1?"in":"out";this.manager.emit(this.options.event+t,e)}}}),f($,K,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[Ue]},process:function(e){var t=this.options,r=e.pointers.length===t.pointers,n=e.distancet.time;if(this._input=e,!n||!r||e.eventType&(Ee|ke)&&!o)this.reset();else if(e.eventType&Me)this.reset(),this._timer=a(function(){this.state=ot,this.tryEmit()},t.time,this);else if(e.eventType&Ee)return ot;return at},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===ot&&(e&&e.eventType&Ee?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=pe(),this.manager.emit(this.options.event,this._input)))}}),f(Z,U,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[Qe]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&tt)}}),f(ee,U,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Se|Ce,pointers:1},getTouchAction:function(){return X.prototype.getTouchAction.call(this)},attrTest:function(e){var t,r=this.options.direction;return r&(Se|Ce)?t=e.velocity:r&Se?t=e.velocityX:r&Ce&&(t=e.velocityY),this._super.attrTest.call(this,e)&&r&e.direction&&fe(t)>this.options.velocity&&e.eventType&Ee},emit:function(e){this.manager.emit(this.options.event,e);var t=G(e.direction);t&&this.manager.emit(this.options.event+t,e)}}),f(te,K,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[Xe]},process:function(e){var t=this.options,r=e.pointers.length===t.pointers,n=e.distanceo;o++)t=this.recognizers[o],this.session.stopped===st||n&&t!=n&&!t.canRecognizeWith(n)?t.reset():t.recognize(e),!n&&t.state&(tt|rt|nt)&&(n=r.curRecognizer=t)}},get:function(e){if(e instanceof K)return e;for(var t=this.recognizers,r=0;rn;n++)r[n](t)}},destroy:function(){this.element&&oe(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},u(re,{INPUT_START:Me,INPUT_MOVE:Pe,INPUT_END:Ee,INPUT_CANCEL:ke,STATE_POSSIBLE:et,STATE_BEGAN:tt,STATE_CHANGED:rt,STATE_ENDED:nt,STATE_RECOGNIZED:ot,STATE_CANCELLED:it,STATE_FAILED:at,DIRECTION_NONE:Oe,DIRECTION_LEFT:xe,DIRECTION_RIGHT:je,DIRECTION_UP:Le,DIRECTION_DOWN:Ie,DIRECTION_HORIZONTAL:Se,DIRECTION_VERTICAL:Ce,DIRECTION_ALL:De,Manager:ne,Input:E,TouchAction:B,Recognizer:K,AttrRecognizer:U,Tap:te,Pan:X,Swipe:ee,Pinch:Q,Rotate:Z,Press:$,on:y,off:m,each:s,merge:c,extend:u,inherit:f,bindFn:p,prefixed:M}),"function"==se&&r(177)?(n=function(){return re}.call(t,r,t,e),!(n!==i&&(e.exports=n))):typeof e!=ue&&e.exports?e.exports=re:o.Hammer=re}(window)},function(e,t){(function(t){e.exports=t}).call(t,{})},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;r=t?this._onMouseOver(0):this._onMouseOver(this.state.activeXIndex+1)}}},{key:"_onMouseOver",value:function(e){this.setState({activeXIndex:e})}},{key:"_onMouseOut",value:function(){this.setState({activeXIndex:this.state.defaultXIndex})}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_bounds",value:function(e,t,r,n){var o=void 0;o=t?t.data?t:{data:t,placement:"top"}:{data:[]};var i=null,a=null,l=null,s=null;e.forEach(function(e){e.values.forEach(function(e,t){var r=e[0],n=e[1];null===i?(i=r,a=r,l=n,s=n):(i=Math.min(i,r),a=Math.max(a,r),l=Math.min(l,n),s=Math.max(s,n)),t>=o.data.length&&o.data.push({value:r,label:""})})}),null===i&&(i=0,a=1,l=0,s=100),"bar"===this.props.type&&o.data.forEach(function(t,r){var n=0;e.forEach(function(e){n+=e.values[r][1]}),s=Math.max(s,n)}),this.props.threshold&&(l=Math.min(l,this.props.threshold),s=Math.max(s,this.props.threshold)),this.props.thresholds&&this.props.thresholds.forEach(function(e){s=Math.max(s,e.value)}),this.props.hasOwnProperty("min")&&(l=this.props.min),this.props.hasOwnProperty("max")&&(s=this.props.max);var u=a-i,c=s-l;this.props.sparkline&&(r=u*(E+k));var f=r,p=n;this.props.thresholds&&(f-=w),o.placement&&(p-=T);var d="top"===o.placement?T:0,h="bottom"===o.placement?n-T:n,y=0,m=f;this.props.points&&(y+=O+2,m-=O+2);var b=f/u,_=Math.round(f/(o.data.length-1));"bar"===this.props.type&&(b=f/(u+u/(o.data.length-1)),_=Math.round(f/o.data.length));var g=p/c,v=Math.max(M,Math.round(_/8));this.props.sparkline&&(_=E,v=k);var P={minX:i,maxX:a,minY:l,maxY:s,spanX:u,spanY:c,scaleX:b,scaleY:g,graphWidth:f,graphHeight:p,graphTop:d,graphBottom:h,graphLeft:y,graphRight:m,xStepWidth:_,barPadding:v,xAxis:o};return P}},{key:"_alignLegend",value:function(){if(this.state.activeXIndex>=0&&this.refs.cursor){var e=this.state.bounds,t=this.refs.cursor,r=t.getBoundingClientRect(),n=this.refs.chart,o=n.getBoundingClientRect(),i=f["default"].findDOMNode(this.refs.legend),a=i.getBoundingClientRect(),l=r.left-o.left-a.width-1;0>l&&(l+=a.width+2),i.style.left=""+l+"px ",i.style.top=""+e.graphTop+"px "}}},{key:"_layout",value:function(){this.props.legend&&"below"!==this.props.legend.position&&this._alignLegend();var e=this.refs.chart,t=e.getBoundingClientRect();if(t.width!==this.state.width||t.height!==this.state.height){var r=this._bounds(this.props.series,this.props.xAxis,t.width,t.height),n=t.width;this.props.sparkline&&(n=r.graphWidth),this.setState({width:n,height:t.height,bounds:r})}}},{key:"_stateFromProps",value:function(e,t,r){var n=this._bounds(e.series,e.xAxis,t,r),o=-1;e.series&&e.series.length>0&&(o=0),e.hasOwnProperty("important")&&(o=e.important);var i=o;this.state&&this.state.activeXIndex>=0&&(i=this.state.activeXIndex);var a=e.size||(e.small?"small":e.large?"large":null);return{bounds:n,defaultXIndex:o,activeXIndex:i,width:t,height:r,size:a}}},{key:"_translateX",value:function(e){var t=this.state.bounds;return Math.max(t.graphLeft,Math.min(t.graphRight,Math.round((e-t.minX)*t.scaleX)))}},{key:"_translateY",value:function(e){var t=this.state.bounds;return Math.max(1,t.graphBottom-Math.max(1,this._translateHeight(e)))}},{key:"_translateHeight",value:function(e){var t=this.state.bounds;return Math.round((e-t.minY)*t.scaleY)}},{key:"_coordinates",value:function(e){return[this._translateX(e[0]),this._translateY(e[1])]}},{key:"_itemColorIndex",value:function(e,t){return e.colorIndex||"graph-"+(t+1)}},{key:"_controlCoordinates",value:function(e,t){var r=e[t],n=r;t>0&&(n=e[t-1]);var o=r;tr[1]&&r[1]>o[1]&&(a=Math.min((n[1]-r[1])/2,(r[1]-o[1])/2),l[1]=r[1]+a,s[1]=r[1]-a),[l,s]}},{key:"_renderLinesOrAreas",value:function(){var e=this.state.bounds,t=this.props.series.map(function(t,r){var n=t.values.map(function(e){return this._coordinates(e)},this),o=this._itemColorIndex(t,r),i=null,a=null,l=null,s=[];n.forEach(function(t,r){if(this.props.smooth&&(a=this._controlCoordinates(n,r)),0===r?i="M"+t.join(","):i+=this.props.smooth?" C"+l[1].join(",")+" "+a[0].join(",")+" "+t.join(","):" L"+t.join(","),this.props.points&&!this.props.sparkline){var c=Math.max(O+1,Math.min(e.graphWidth-(O+1),t[0]));s.push(u["default"].createElement("circle",{key:r,className:_+"__values-point color-index-"+o,cx:c,cy:t[1],r:O}))}l=a},this);var c=void 0;if("line"===this.props.type||this.props.points){var f=[_+"__values-line","color-index-"+o];c=u["default"].createElement("path",{fill:"none",className:f.join(" "),d:i})}var p=void 0;if("area"===this.props.type){var d="L"+n[n.length-1][0]+","+e.graphBottom+"L"+n[0][0]+","+e.graphBottom+"Z",h=i+d,y=[_+"__values-area","color-index-"+o];p=u["default"].createElement("path",{stroke:"none",className:y.join(" "),d:h})}return u["default"].createElement("g",{key:"line_group_"+r},p,c,s)},this);return t}},{key:"_renderBars",value:function(){var e=this.state.bounds,t=e.xAxis.data.map(function(t,r){var n=e.minY,o=this.props.series.map(function(t,o){var i=t.colorIndex||"graph-"+(o+1),a=t.values[r],l=this._translateHeight(a[1]),s=this._translateHeight(n);n+=a[1];var c=[_+"__values-bar","color-index-"+i];return this.props.legend&&r!==this.state.activeXIndex||c.push(_+"__values-bar--active"),"bottom"===e.xAxis.placement&&(s+=T),u["default"].createElement("rect",{key:"bar_rect_"+t.label||o,className:c.join(" "),x:this._translateX(a[0])+e.barPadding,y:this.state.height-(l+s),width:e.xStepWidth-2*e.barPadding,height:l})},this);return u["default"].createElement("g",{key:"bar_"+r},o)},this);return t}},{key:"_renderThreshold",value:function(){var e=this._translateY(this.props.threshold),t="M0,"+e+"L"+this.state.width+","+e;return u["default"].createElement("g",{className:_+"__threshold",role:"presentation"},u["default"].createElement("path",{fill:"none",d:t}))}},{key:"_labelPosition",value:function(e,t){var r=this._translateX(e),n=r,o=void 0;return"line"!==this.props.type&&"area"!==this.props.type||(o="middle",n=r-P/2),0>=r&&(r=0,n=r,o="start"),r>=t.graphWidth-P?(r=t.graphWidth,n=r-P,o="end"):"bar"===this.props.type&&(r+=t.barPadding,n=r),{x:r,anchor:o,startX:n,endX:n+P}}},{key:"_labelOverlaps",value:function(e,t){return e&&t&&e.endX>t.startX&&e.startX=0&&e.xAxis.data.length>this.state.activeXIndex&&(n=this._labelPosition(e.xAxis.data[this.state.activeXIndex].value,e));var o=null;e.xAxis.data.length>0&&(o=this._labelPosition(e.xAxis.data[e.xAxis.data.length-1].value,e));var i=e.xAxis.data.map(function(i,a){var l=[_+"__xaxis-index"];a===this.state.activeXIndex&&l.push(_+"__xaxis-index--active");var s=this._labelPosition(i.value,e);return this._labelOverlaps(s,n)||0!==a&&a!==e.xAxis.data.length-1&&(this._labelOverlaps(s,r)||this._labelOverlaps(s,o))?l.push(_+"__xaxis-index--eclipse"):r=s,u["default"].createElement("g",{key:"x_axis_"+a,className:l.join(" ")},u["default"].createElement("text",{x:s.x,y:t,role:"presentation",textAnchor:s.anchor,fontSize:16},i.label))},this);return u["default"].createElement("g",{ref:"xAxis",className:_+"__xaxis"},i)}},{key:"_renderYAxis",value:function(){var e=this.state.bounds,t=e.minY,r=void 0,n=Math.max(4,w/2),o=this.props.thresholds.map(function(o,i){var a=[_+"__bar"];a.push("color-index-"+(o.colorIndex||"graph-"+(i+1))),r=i1&&(r.label=t.label,e&&(r.colorIndex=t.colorIndex)),r},this)}},{key:"_renderLegend",value:function(){var e=this._getActiveSeries(!0),t=[_+"__legend",_+"__legend--"+(this.props.legend.position||"overlay")];return u["default"].createElement(d["default"],{ref:"legend",className:t.join(" "),series:e,total:this.props.legend.total,units:this.props.units})}},{key:"_renderA11YTitle",value:function(){var e=this.props.a11yTitle;if(!this.props.a11yTitle){var t=y["default"].getMessage(this.context.intl,"Chart"),r=y["default"].getMessage(this.context.intl,this.props.type);e=r+" "+t}return e}},{key:"render",value:function(){var e=[_];e.push(_+"--"+this.props.type),this.state.size&&e.push(_+"--"+this.state.size),this.props.sparkline&&e.push(_+"--sparkline");var t=[];if("line"===this.props.type||"area"===this.props.type?t=this._renderLinesOrAreas():"bar"===this.props.type&&(t=this._renderBars()),0===t.length){e.push(_+"--loading");var r=[_+"__values"];r.push(_+"__values--loading"),r.push("color-index-loading");var n="M0,"+this.state.height/2+" L"+this.state.width+","+this.state.height/2;t.push(u["default"].createElement("g",{key:"loading"},u["default"].createElement("path",{stroke:"none",className:r.join(" "),d:n})))}var o=null;this.props.threshold&&(o=this._renderThreshold());var i=null,a=null;this.props.legend&&this.state.activeXIndex>=0&&this.props.series[0].values.length>0&&(i=this._renderCursor(),a=this._renderLegend());var l=null;this.props.xAxis&&(l=this._renderXAxis());var s=null;this.props.thresholds&&(s=this._renderYAxis());var c=void 0,f=void 0,p="img";this.props.legend&&(c=this._renderXBands("front"),f=this.props.a11yTitleId+"_x_band_"+this.state.activeXIndex,p="tablist");var d=this._renderA11YTitle(),h=void 0;d&&(h=u["default"].createElement("title",{id:this.props.a11yTitleId},d));var y=void 0;return this.props.a11yDesc&&(y=u["default"].createElement("desc",{id:this.props.a11yDescId},this.props.a11yDesc)),u["default"].createElement("div",{className:e.join(" ")},u["default"].createElement("svg",{ref:"chart",className:_+"__graphic",viewBox:"0 0 "+this.state.width+" "+this.state.height,preserveAspectRatio:"none",role:p,tabIndex:"0","aria-activedescendant":f,"aria-labelledby":this.props.a11yTitleId+" "+this.props.a11yDescId},h,y,l,s,u["default"].createElement("g",{className:_+"__values"},t),c,o,i),a)}}]),t}(s.Component);t["default"]=x,x.propTypes={a11yTitle:s.PropTypes.string,a11yTitleId:s.PropTypes.string,a11yDescId:s.PropTypes.string,a11yDesc:s.PropTypes.string,important:s.PropTypes.number,large:s.PropTypes.bool,legend:s.PropTypes.shape({position:s.PropTypes.oneOf(["overlay","after"]),total:s.PropTypes.bool}),max:s.PropTypes.number,min:s.PropTypes.number,points:s.PropTypes.bool,series:s.PropTypes.arrayOf(s.PropTypes.shape({label:s.PropTypes.string,values:s.PropTypes.arrayOf(s.PropTypes.arrayOf(s.PropTypes.oneOfType([s.PropTypes.number,s.PropTypes.object]))).isRequired,units:s.PropTypes.string,colorIndex:s.PropTypes.string})).isRequired,size:s.PropTypes.oneOf(["small","medium","large"]),small:s.PropTypes.bool,smooth:s.PropTypes.bool,sparkline:s.PropTypes.bool,threshold:s.PropTypes.number,thresholds:s.PropTypes.arrayOf(s.PropTypes.shape({label:s.PropTypes.string,value:s.PropTypes.number.isRequired,colorIndex:s.PropTypes.string})),type:s.PropTypes.oneOf(["line","bar","area"]),units:s.PropTypes.string,xAxis:s.PropTypes.oneOfType([s.PropTypes.arrayOf(s.PropTypes.shape({value:s.PropTypes.oneOfType([s.PropTypes.number,s.PropTypes.object]).isRequired,label:s.PropTypes.string.isRequired})),s.PropTypes.shape({placement:s.PropTypes.oneOf(["top","bottom"]),data:s.PropTypes.arrayOf(s.PropTypes.shape({value:s.PropTypes.oneOfType([s.PropTypes.number,s.PropTypes.object]).isRequired,label:s.PropTypes.string.isRequired}).isRequired)})])},x.contextTypes={intl:s.PropTypes.object},x.defaultProps={a11yTitleId:"chart-title",a11yDescId:"chart-desc",min:0,type:"line"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;r1&&(n=u["default"].createElement("li",{className:p+"__total"},u["default"].createElement("span",{className:p+"__total-label"},u["default"].createElement(f["default"],{id:"Total",defaultMessage:"Total"})),u["default"].createElement("span",{className:p+"__total-value"},t,u["default"].createElement("span",{className:p+"__total-units"},this.props.units)))),u["default"].createElement("ol",{className:e.join(" "),role:"presentation"},r.reverse(),n)}}]),t}(s.Component);t["default"]=d,d.propTypes={activeIndex:s.PropTypes.number,onActive:s.PropTypes.func,series:s.PropTypes.arrayOf(s.PropTypes.shape({label:s.PropTypes.string,value:s.PropTypes.number,units:s.PropTypes.string,colorIndex:s.PropTypes.oneOfType([s.PropTypes.number,s.PropTypes.string]),onClick:s.PropTypes.func})).isRequired,total:s.PropTypes.bool,units:s.PropTypes.string,value:s.PropTypes.number},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;rn.x+n.width&&(n.x+=P/2,n.width-=P),0!==n.y&&r>n.y+n.height&&(n.y+=P/2,n.height-=P),n.width-=P,n.height-=P,n.x+n.width>t-2*P&&(n.width=t-n.x),n.y+n.height>r-2*P&&(n.height=r-n.y),n}},{key:"_labelRect",value:function(e){var t=l({},e);return t.x+=k,t.width-=2*k,t.y+=E,t.height-=2*E,t}},{key:"_placeItems",value:function(){for(var e=this,t=this.state.width,r=this.state.height,n=t*r/this.state.total,o={x:0,y:0,width:t,height:r},i=[],a=this.props.series?this.props.series.slice(0):[],l=function(){var l=a.shift();if(l.value<=0)return"continue";var s=l.value,u=void 0,c=n*l.value,f=Math.round(Math.sqrt(c)),p=void 0,d=void 0;o.width>o.height?(p=Math.min(o.height,f),d=Math.round(c/p),u=Math.round(d*o.height/n)):(d=Math.min(o.width,f),p=Math.round(c/d),u=Math.round(p*o.width/n));for(var h=[l];u>s&&a.length>0;){var y=a.shift();s+=y.value,h.push(y)}var m=void 0;o.width>o.height?(m={x:o.x,y:o.y,width:Math.round(n*s/o.height),height:o.height},o.x+=m.width,o.width-=m.width):(m={x:o.x,y:o.y,width:o.width,height:Math.round(n*s/o.width)},o.y+=m.height,o.height-=m.height),h.forEach(function(o){
+var a=void 0;m.width>m.height?(a={x:m.x,y:m.y,width:Math.round(n*o.value/m.height),height:m.height},m.x+=a.width,m.width-=a.width):(a={x:m.x,y:m.y,width:m.width,height:Math.round(n*o.value/m.width)},m.y+=a.height,m.height-=a.height);var l=e._boxRect(a,t,r),s=e._labelRect(l);i.push({datum:o,rect:a,boxRect:l,labelRect:s})})};a.length>0;){l()}this.setState({items:i})}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_layout",value:function(){var e=window.innerWidth/window.innerHeight;.8>e?this.setState({legendPosition:"bottom"}):e>1.2&&this.setState({legendPosition:"right"});var t=this.refs.container,r=t.getBoundingClientRect(),n=Math.round(r.width),o=Math.round(r.height);n===this.state.width&&o===this.state.height&&this.state.items||this.setState({width:n,height:o},this._placeItems)}},{key:"_itemColorIndex",value:function(e,t){return e.colorIndex||"graph-"+(t+1)}},{key:"_onPreviousDistribution",value:function(e){if(e.preventDefault(),document.activeElement===this.refs.distribution){var t=p["default"].findDOMNode(this.refs.distributionItems).childNodes.length;this.state.activeIndex-1<0?this._onActivate(t-1):this._onActivate(this.state.activeIndex-1)}}},{key:"_onNextDistribution",value:function(e){if(e.preventDefault(),document.activeElement===this.refs.distribution){var t=p["default"].findDOMNode(this.refs.distributionItems).childNodes.length;this.state.activeIndex+1>=t?this._onActivate(0):this._onActivate(this.state.activeIndex+1)}}},{key:"_onEnter",value:function(e){if(document.activeElement===this.refs.distribution&&this.refs.activeDistribution){var t=this.refs.activeDistribution.getAttribute("data-index"),r=this.props.series.filter(function(e){return e.value>0})[t];r.onClick&&r.onClick()}}},{key:"_onActivate",value:function(e){this.setState({activeIndex:e})}},{key:"_onDeactivate",value:function(){this.setState({activeIndex:0})}},{key:"_renderLegend",value:function(){return c["default"].createElement(h["default"],{ref:"legend",className:g+"__legend",series:this.props.series,units:this.props.units,activeIndex:this.state.activeIndex,onActive:this._onActivate})}},{key:"_renderItemLabel",value:function(e,t,r){var n=[g+"__label"];e.icon||n.push("color-index-"+this._itemColorIndex(e,r)),e.icon&&n.push(g+"__label--icons"),(t.width=0&&(l=this.props.a11yTitleId+"_item_"+this.state.activeIndex);var s=c["default"].createElement("title",{id:this.props.a11yTitleId},a),u=void 0;return this.props.a11yDesc&&(u=c["default"].createElement("desc",{id:this.props.a11yDescId},this.props.a11yDesc)),c["default"].createElement("div",{ref:"container",className:e.join(" ")},c["default"].createElement("svg",{ref:"distribution",className:g+"__graphic",viewBox:"0 0 "+this.state.width+" "+this.state.height,preserveAspectRatio:"none",tabIndex:"0",role:i,"aria-activedescendant":l,"aria-labelledby":this.props.a11yTitleId+" "+this.props.a11yDescId},r,s,u,n),c["default"].createElement("div",{ref:"distributionItems",className:g+"__labels"},o),t)}}]),t}(u.Component);t["default"]=O,O.contextTypes={intl:u.PropTypes.object},O.propTypes={a11yTitle:u.PropTypes.string,a11yTitleId:u.PropTypes.string,a11yDescId:u.PropTypes.string,a11yDesc:u.PropTypes.string,full:u.PropTypes.bool,legend:u.PropTypes.bool,legendTotal:u.PropTypes.bool,series:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.node,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string,important:u.PropTypes.bool,onClick:u.PropTypes.func,icon:u.PropTypes.shape({width:u.PropTypes.number,height:u.PropTypes.number,svgElement:u.PropTypes.node})})),size:u.PropTypes.oneOf(["small","medium","large"]),units:u.PropTypes.string,vertical:u.PropTypes.bool},O.defaultProps={a11yTitleId:"distribution-title",a11yDescId:"distribution-desc"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;te?"portrait":"landscape"})}},{key:"render",value:function(){var e=null;if(this.props.background){var t=["login__background"];this.state.orientation&&t.push("login__background--"+this.state.orientation),e=u["default"].createElement("img",{ref:"background",className:t.join(" "),src:this.props.background})}return u["default"].createElement("div",{className:"login"},e,u["default"].createElement("div",{className:"login__container"},this.props.children))}}]),t}(s.Component);t["default"]=c,c.propTypes={background:s.PropTypes.string},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;re?this.setState({legendPlacement:"bottom"}):e>1.2&&this.setState({legendPlacement:"right"})}if("right"===this.state.legendPlacement&&this.refs.legend){var t=this.refs.activeGraphic.offsetHeight,r=p["default"].findDOMNode(this.refs.legend).offsetHeight;this.setState({tallLegend:r>t})}}},{key:"_normalizeSeries",value:function(e,t,r,n){var o=[];return e.series?o=e.series:(e.value||0===e.value)&&(o=[{value:e.value,important:!0}]),1===o.length&&e.thresholds?!function(){var e=o[0];e.colorIndex||!function(){var t=0;n.some(function(r){return t+=r.value,e.value1?this._seriesTotal(e.series):e.max&&e.max.value?e.max.value:100;var r=void 0;e.series&&"spiral"===e.type&&(r=this._seriesMax(e.series));var n=this._terminal(e.min||0),o=this._terminal(e.max||r||t),i=this._normalizeThresholds(e,n,o),a=this._normalizeSeries(e,n,o,i),l=this._importantIndex(e,a),s={importantIndex:l,activeIndex:l,series:a,thresholds:i,min:n,max:o,total:t};return s.placeLegend=!(e.legend&&e.legend.placement),s.placeLegend||(s.legendPlacement=e.legend.placement),s}},{key:"_getActiveFields",value:function(){var e=void 0;if(null===this.state.activeIndex)e={value:this.state.total,label:P["default"].getMessage(this.context.intl,"Total")};else{var t=this.state.series[this.state.activeIndex];t||(t=this.state.series[0]),e={value:t.value,label:t.label,onClick:t.onClick}}return e}},{key:"_renderActiveValue",value:function(){var e=this._getActiveFields(),t=[E+"__value"];e.onClick&&t.push(E+"__value--active");var r=void 0;return this.props.units&&(r=c["default"].createElement("span",{className:E+"__value-units large-number-font"},this.props.units)),c["default"].createElement("div",{"aria-hidden":"true",role:"presentation",className:t.join(" "),onClick:e.onClick},c["default"].createElement("span",{className:E+"__value-value large-number-font"},e.value,r),c["default"].createElement("span",{className:E+"__value-label"},e.label))}},{key:"_renderMinMax",value:function(e){var t=void 0;this.state.min.label&&(t=c["default"].createElement("div",{className:E+"__minmax-min"},this.state.min.label));var r=void 0;this.state.max.label&&(r=c["default"].createElement("div",{className:E+"__minmax-max"},this.state.max.label));var n=void 0;return(t||r)&&(n=c["default"].createElement("div",{className:E+"__minmax-container"},c["default"].createElement("div",{className:E+"__minmax"},t,r)),e.push(E+"--minmax")),n}},{key:"_renderLegend",value:function(){var e="object"===l(this.props.legend)&&this.props.legend.total;return c["default"].createElement(h["default"],{ref:"legend",className:E+"__legend",series:this.state.series,units:this.props.units,total:e,activeIndex:this.state.activeIndex,onActive:this._onActivate})}},{key:"render",value:function(){var e=[E];e.push(E+"--"+this.props.type),this.props.vertical&&e.push(E+"--vertical"),this.props.stacked&&e.push(E+"--stacked"),this.props.size&&e.push(E+"--"+this.props.size),0===this.state.series.length?e.push(E+"--loading"):1===this.state.series.length?e.push(E+"--single"):e.push(E+"--count-"+this.state.series.length),null!==this.state.activeIndex&&e.push(E+"--active"),this.state.tallLegend&&e.push(E+"--tall-legend"),this.props.className&&e.push(this.props.className);var t=this._renderMinMax(e),r=this._renderActiveValue(),n=void 0,o=void 0;(this.props.legend||this.props.series)&&(o="tablist",this.props.legend&&("inline"!==this.props.legend.placement?n=this._renderLegend():this.props.legend.total||(r=null),e.push(E+"--legend-"+this.state.legendPlacement),this.props.legend.align&&e.push(E+"--legend-align-"+this.props.legend.align)));var i=k[this.props.type],a=c["default"].createElement(i,{a11yTitle:this.props.a11yTitle,a11yTitleId:this.props.a11yTitleId,a11yDesc:this.props.a11yDesc,a11yDescId:this.props.a11yDescId,a11yRole:o,activeIndex:this.state.activeIndex,min:this.state.min,max:this.state.max,legend:this.props.legend,onActivate:this._onActivate,series:this.state.series,stacked:this.props.stacked,thresholds:this.state.thresholds,total:this.state.total,units:this.props.units,vertical:this.props.vertical}),l=void 0;return this.state.total>0&&(l=c["default"].createElement("div",{className:E+"__graphic-container"},a,t)),c["default"].createElement("div",{className:e.join(" ")},c["default"].createElement("div",{ref:"activeGraphic",className:E+"__value-container"},l,r),n)}}]),t}(u.Component);t["default"]=O,O.propTypes={a11yTitle:u.PropTypes.string,a11yTitleId:u.PropTypes.string,a11yDescId:u.PropTypes.string,a11yDesc:u.PropTypes.string,important:u.PropTypes.number,legend:u.PropTypes.oneOfType([u.PropTypes.bool,u.PropTypes.shape({align:u.PropTypes.oneOf(["start","center","end"]),placement:u.PropTypes.oneOf(["right","bottom","inline"]),total:u.PropTypes.bool})]),max:u.PropTypes.oneOfType([u.PropTypes.shape({value:u.PropTypes.number.isRequired,label:u.PropTypes.string}),u.PropTypes.number]),min:u.PropTypes.oneOfType([u.PropTypes.shape({value:u.PropTypes.number.isRequired,label:u.PropTypes.string}),u.PropTypes.number]),size:u.PropTypes.oneOf(["small","medium","large"]),series:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string,important:u.PropTypes.bool,onClick:u.PropTypes.func})),stacked:u.PropTypes.bool,threshold:u.PropTypes.number,thresholds:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string})),type:u.PropTypes.oneOf(["bar","arc","circle","spiral"]),units:u.PropTypes.string,value:u.PropTypes.number,vertical:u.PropTypes.bool},O.defaultProps={a11yTitleId:"meter-title",a11yDescId:"meter-desc",type:"bar"},O.contextTypes={intl:u.PropTypes.object},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;r0?y:0,this._translateBarWidth(n)),a=void 0;this.props.legend&&"inline"===this.props.legend.placement&&(e*=2);var l=e*h+y;return this.props.legend&&"inline"===this.props.legend.placement&&(l+=y),a=this.props.vertical?"M"+l+","+(d-o)+" L"+l+","+(d-(o+i)):"M"+o+","+l+" L"+(o+i)+","+l}},{key:"_renderInlineLegend",value:function(){var e=void 0;return this.props.legend&&"inline"===this.props.legend.placement&&(e=this.props.series.map(function(e,t){var r,n=t*h*2+y;e.hasOwnProperty("label")&&(r=u["default"].createElement("text",{key:"label",x:"0",y:n,role:"presentation",textAnchor:"start",fontSize:16},e.label));var o;if(e.hasOwnProperty("value")){var i=e.value;(e.units||this.props.units)&&(i+=" "+(e.units||this.props.units));var a=this._translateBarWidth(this.props.max.value);o=u["default"].createElement("text",{key:"value",x:a,y:n,role:"presentation",textAnchor:"end",fontSize:16},i)}return[r,o]},this)),e}}]),t}(p["default"]);t["default"]=m,m.displayName="Bar",e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r,n){var o=(n-90)*Math.PI/180;return{x:e+r*Math.cos(o),y:t+r*Math.sin(o)}}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t=360&&(i=n+359.99);var a=o(e,t,r,i),l=o(e,t,r,n),s=180>=i-n?"0":"1",u=["M",a.x,a.y,"A",r,r,0,s,0,l.x,l.y].join(" ");return u},translateEndAngle:function(e,t,r){return Math.min(360,Math.max(0,e+t*r))},buildPath:function(e,t,r,n,o,a,s,u){if(n){var c=n.bind(null,e),f=n.bind(null,null),p={},d=void 0,h=void 0;if(s&&a){h=u;var y="title_"+a;p["aria-labelledby"]=y,p.id=a,p.role="tab",d=l["default"].createElement("title",{id:y},s)}return l["default"].createElement("g",i({key:e,ref:a},p),d,l["default"].createElement("path",{ref:h,className:r.join(" "),d:t,onFocus:c,onBlur:f,"data-index":e,onMouseOver:c,onMouseOut:f,onClick:o}))}return l["default"].createElement("path",{key:e,className:r.join(" "),d:t})}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t=t?this.props.onActivate(0):this.props.onActivate(this.props.activeIndex+1)}}},{key:"_onEnter",value:function(e){if(document.activeElement===this.refs.meter&&this.refs.activeMeterSlice){var t=this.refs.activeMeterSlice.getAttribute("data-index");this.props.series[t].onClick&&this.props.series[t].onClick()}}},{key:"_renderLoading",value:function(){var e=[_+"__slice"];e.push(_+"__slice--loading"),e.push("color-index-loading");var t=this._loadingCommands();return[c["default"].createElement("path",{key:"loading",className:e.join(" "),d:t})]}},{key:"_renderValues",value:function(){var e=this,t=void 0;return t=this.props.stacked?this._renderSlices(this.props.series,0):this.props.series.map(function(t,r){return e._renderSlice(r,t,r,e.props.min.value)}),0===t.length&&(t=this._renderLoading()),c["default"].createElement("g",{ref:"meterValues",className:_+"__values"},t)}},{key:"_renderTracks",value:function(){var e=this,t={value:this.props.max.value,colorIndex:"unset"},r=void 0;return r=this.props.stacked?this._renderSlice(0,t,0,this.props.min.value,!0):this.props.series.map(function(r,n){return e._renderSlice(n,t,n,e.props.min.value,!0)}),c["default"].createElement("g",{className:_+"__tracks"},r)}},{key:"_renderThresholds",value:function(){var e=void 0,t=this._renderSlices(this.props.thresholds,-.4,!0);return t.length>0&&(e=c["default"].createElement("g",{className:_+"__thresholds"},t)),e}},{key:"_renderTotal",value:function(){return this.props.series.map(function(e){return e.value}).reduce(function(e,t){return e+t},0)}},{key:"_renderTopLayer",value:function(){return null}},{key:"_renderInlineLegend",value:function(){return null}},{key:"_renderA11YTitle",value:function(){var e=this.props.a11yTitle;if(!e){var t=y["default"].getMessage(this.context.intl,this.displayName),r=y["default"].getMessage(this.context.intl,"Meter");e=t+" "+r}return e}},{key:"_renderA11YDesc",value:function(){var e=this,t=this.props.a11yDesc,r=this.props.units||"";if(!t){var n=y["default"].getMessage(this.context.intl,"Value");if(t=", "+n+": "+this._renderTotal()+" "+r,this.props.min){var o=y["default"].getMessage(this.context.intl,"Min");t+=", "+o+": "+this.props.min.value+" "+r}if(this.props.max){var i=y["default"].getMessage(this.context.intl,"Max");t+=", "+i+": "+this.props.max.value+" "+r}this.props.thresholds&&!function(){var r=y["default"].getMessage(e.context.intl,"Threshold");e.props.thresholds.forEach(function(e){e.ariaLabel&&(t+=", "+r+": "+e.ariaLabel)})}()}return t}},{key:"render",value:function(){var e=[_];this.props.className&&e.push(this.props.className);var t=this._renderTracks(),r=this._renderValues(),n=this._renderThresholds(),o=this._renderTopLayer(),i=this._renderInlineLegend(),a=this._renderA11YTitle(),l=this._renderA11YDesc(),s=this.props.a11yDescId+"_"+(this.props.activeIndex||0);return c["default"].createElement("svg",{ref:"meter",className:_+"__graphic",tabIndex:"0",role:this.props.a11yRole,width:this.state.viewBoxWidth,height:this.state.viewBoxHeight,viewBox:"0 0 "+this.state.viewBoxWidth+" "+this.state.viewBoxHeight,preserveAspectRatio:"xMidYMid meet","aria-activedescendant":s,"aria-labelledby":this.props.a11yTitleId+" "+this.props.a11yDescId},c["default"].createElement("title",{id:this.props.a11yTitleId},a),c["default"].createElement("desc",{id:this.props.a11yDescId},l),t,n,r,i,o)}}]),t}(u.Component);t["default"]=g,g.propTypes=l({a11yRole:u.PropTypes.string,stacked:u.PropTypes.bool,thresholds:u.PropTypes.arrayOf(u.PropTypes.shape({label:u.PropTypes.string,value:u.PropTypes.number.isRequired,colorIndex:u.PropTypes.string})).isRequired,vertical:u.PropTypes.bool},d.propTypes),g.contextTypes={intl:u.PropTypes.object},g.defaultProps={a11yRole:"img"},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;rp&&console.warn("You cannot have more than "+Math.round(p/d)+" data values in a circle Meter");var t={startAngle:0,anglePer:e.max?360/(e.max.value-e.min.value):0,angleOffset:180,viewBoxWidth:f,viewBoxHeight:f};return t}},{key:"_sliceCommands",value:function(e,t,r){var n=(0,s.translateEndAngle)(this.state.startAngle,this.state.anglePer,r),o=Math.max(n+(t.value>0?d/2:0),(0,s.translateEndAngle)(n,this.state.anglePer,t.value)),i=Math.max(1,p-e*d);return(0,s.arcCommands)(f/2,f/2,i,n+this.state.angleOffset,o+this.state.angleOffset)}}]),t}(c["default"]);t["default"]=h,h.displayName="Circle",e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function l(e,t,r,n,o,i){var a=(0,f.polarToCartesian)(e,t,r-(i-_),o-1),l=(0,f.polarToCartesian)(e,t,r,o-1),s=["M",e,t-_,"A",_,_,0,1,1,e,t+_,"A",_,_,0,1,1,e,t-_,"M",a.x,a.y,"L",l.x,l.y].join(" ");return s}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;r0?g/2:0),(0,f.translateEndAngle)(n,this.state.anglePer,t.value)),i=Math.max(1,b-e*g);return(0,f.arcCommands)(y/2,y/2,i,n+this.state.angleOffset,o+this.state.angleOffset)}},{key:"_renderTopLayer",value:function(){var e;if(1===this.props.series.length){var t=this.props.series[0],r=this.state.startAngle,n=(0,f.translateEndAngle)(r,this.state.anglePer,t.value),o=b,i=y/2,a=y/2,s=l(i,a,b,r+this.state.angleOffset,n+this.state.angleOffset,o);e=c["default"].createElement("path",{fill:"none",className:h+"__slice-indicator color-index-"+t.colorIndex,d:s})}return e}}]),t}(d["default"]);t["default"]=v,e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=Object.assign||function(e){for(var t=1;t0&&!this.state.dropActive&&this.refs.input===document.activeElement?this.setState({dropActive:!0}):e.suggestions&&0!==e.suggestions.length||!this.state.inline||this.setState({dropActive:!1})}},{key:"componentDidUpdate",value:function(e,t){var r={esc:this._onRemoveDrop,tab:this._onRemoveDrop,up:this._onPreviousSuggestion,down:this._onNextSuggestion,enter:this._onEnter},n={space:this._onAddDrop};if(!this.state.controlFocused&&t.controlFocused&&y["default"].stopListeningToKeyboard(this,n),!this.state.dropActive&&t.dropActive&&(document.removeEventListener("click",this._onRemoveDrop),y["default"].stopListeningToKeyboard(this,r),this._drop&&(this._drop.remove(),this._drop=null)),this.state.controlFocused&&!t.controlFocused&&y["default"].startListeningToKeyboard(this,n),this.state.dropActive&&!t.dropActive){document.addEventListener("click",this._onRemoveDrop),y["default"].startListeningToKeyboard(this,r);var o=void 0;o=this.refs.control?this.refs.control.firstChild:this.refs.input;var i=this.props.dropAlign||{top:this.state.inline?"bottom":"top",left:"left"};this._drop=b["default"].add(o,this._renderDrop(),{align:i}),this.state.inline||document.getElementById("search-drop-input").focus()}else this._drop&&this._drop.render(this._renderDrop())}},{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this._onRemoveDrop),y["default"].stopListeningToKeyboard(this),this._responsive&&this._responsive.stop(),this._drop&&this._drop.remove()}},{key:"_onAddDrop",value:function(e){e.preventDefault(),this.setState({dropActive:!0,activeSuggestionIndex:-1})}},{key:"_onRemoveDrop",value:function(){this.setState({dropActive:!1})}},{key:"_onFocusControl",value:function(){this.setState({controlFocused:!0,dropActive:!0,activeSuggestionIndex:-1})}},{key:"_onBlurControl",value:function(){this.setState({controlFocused:!1})}},{key:"_onFocusInput",value:function(){this.refs.input.select(),this.setState({activeSuggestionIndex:-1})}},{key:"_onBlurInput",value:function(){}},{key:"_fireDOMChange",value:function(){var e=void 0;try{e=new Event("change",{bubbles:!0,cancelable:!0})}catch(t){e=document.createEvent("Event"),e.initEvent("change",!0,!0)}var r=document.getElementById("search-drop-input"),n=this.refs.input||r;n.dispatchEvent(e),this.props.onDOMChange(e)}},{key:"_onChangeInput",value:function(e){this.setState({activeSuggestionIndex:-1}),this.props.onChange&&this.props.onChange(e.target.value),this.props.onDOMChange&&this._fireDOMChange()}},{key:"_onNextSuggestion",value:function(){var e=this.state.activeSuggestionIndex;e=Math.min(e+1,this.props.suggestions.length-1),this.setState({activeSuggestionIndex:e})}},{key:"_onPreviousSuggestion",value:function(){var e=this.state.activeSuggestionIndex;e=Math.max(e-1,0),this.setState({activeSuggestionIndex:e})}},{key:"_onEnter",value:function(e){e.preventDefault(),this._onRemoveDrop();var t=void 0;this.state.activeSuggestionIndex>=0?(t=this.props.suggestions[this.state.activeSuggestionIndex],this.setState({value:t}),this.props.onChange&&this.props.onChange(t),this.props.onSelect&&this.props.onSelect({target:this.refs.input||this.refs.control,suggestion:t},!0)):this.props.onSelect&&this.props.onSelect({target:this.refs.input||this.refs.control,suggestion:t},!1)}},{key:"_onClickSuggestion",value:function(e){this._onRemoveDrop(),this.props.onChange&&this.props.onChange(e),this.props.onSelect&&this.props.onSelect({target:this.refs.input||this.refs.control,suggestion:e},!0)}},{key:"_onSink",value:function(e){e.stopPropagation(),e.nativeEvent.stopImmediatePropagation()}},{key:"_onResponsive",value:function(e){e?this.setState({inline:!1}):this.setState({inline:this.props.inline})}},{key:"focus",value:function(){var e=this.refs.input||this.refs.control;e&&e.focus()}},{key:"_renderLabel",value:function(e){return"object"===("undefined"==typeof e?"undefined":s(e))?e.label||e.value:e}},{key:"_renderDrop",value:function(){var e,t=(0,d["default"])((e={},o(e,"background-color-index-"+this.props.dropColorIndex,this.props.dropColorIndex),o(e,P+"__drop",!0),o(e,P+"__drop--controlled",!this.state.inline),o(e,P+"__drop--large",this.props.large),e)),r=void 0;this.state.inline||(r=f["default"].createElement("input",{key:"input",id:"search-drop-input",type:"search",autoComplete:"off",defaultValue:this.props.defaultValue,value:this.props.value,className:P+"__input",onChange:this._onChangeInput}));var n=void 0;this.props.suggestions&&(n=this.props.suggestions.map(function(e,t){var r,n=(0,d["default"])((r={},o(r,P+"__suggestion",!0),o(r,P+"__suggestion--active",t===this.state.activeSuggestionIndex),r));return f["default"].createElement("div",{key:t,className:n,onClick:this._onClickSuggestion.bind(this,e)},this._renderLabel(e))},this),n=f["default"].createElement("div",{key:"suggestions",className:P+"__suggestions"},n));var i=[r,n];return this.state.inline||(i=[f["default"].createElement(T["default"],{key:"icon",icon:f["default"].createElement(M["default"],null),className:P+"__drop-control",onClick:this._onRemoveDrop}),f["default"].createElement("div",{key:"contents",className:P+"__drop-contents",onClick:this._onSink},i)],this.props.dropAlign&&!this.props.dropAlign.left&&i.reverse()),f["default"].createElement("div",{id:"search-drop",className:t},i)}},{key:"render",value:function(){var e,t=(0,d["default"])(P,(e={},o(e,P+"--controlled",!this.state.inline),o(e,P+"--fill",this.props.fill),o(e,P+"--icon-align-"+this.props.iconAlign,this.props.iconAlign),o(e,P+"--inline",this.state.inline),o(e,P+"--large",this.props.large&&!this.props.size),o(e,P+"--"+this.props.size,this.props.size),e),this.props.className);return this.state.inline?f["default"].createElement("div",{className:t},f["default"].createElement("input",{ref:"input",type:"search",id:this.props.id,placeholder:this.props.placeHolder,autoComplete:"off",defaultValue:this._renderLabel(this.props.defaultValue),value:this._renderLabel(this.props.value),className:P+"__input",onFocus:this._onFocusInput,onBlur:this._onBlurInput,onChange:this._onChangeInput}),f["default"].createElement(M["default"],null)):f["default"].createElement("div",{ref:"control"},f["default"].createElement(T["default"],{id:this.props.id,className:t,icon:f["default"].createElement(M["default"],null),tabIndex:"0",onClick:this._onAddDrop,onFocus:this._onFocusControl,onBlur:this._onBlurControl}))}}]),t}(c.Component);t["default"]=E,E.propTypes={defaultValue:c.PropTypes.string,dropAlign:b["default"].alignPropType,dropColorIndex:c.PropTypes.string,fill:c.PropTypes.bool,iconAlign:f["default"].PropTypes.oneOf(["start","end"]),id:f["default"].PropTypes.string,inline:c.PropTypes.bool,large:c.PropTypes.bool,onChange:c.PropTypes.func,onDOMChange:c.PropTypes.func,onSelect:c.PropTypes.func,placeHolder:c.PropTypes.string,responsive:c.PropTypes.bool,size:f["default"].PropTypes.oneOf(["small","medium","large"]),suggestions:c.PropTypes.arrayOf(c.PropTypes.oneOfType([c.PropTypes.shape({label:c.PropTypes.node,value:c.PropTypes.any}),c.PropTypes.string])),value:c.PropTypes.string},E.defaultProps={align:"left",iconAlign:"end",inline:!1,responsive:!0},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;r=0){var t=this.props.suggestions[this.state.activeSuggestionIndex];this.setState({value:t}),this.props.onChange&&this.props.onChange(t,!0),this.props.onSelect&&this.props.onSelect({target:this.refs.input,suggestion:t})}}},{key:"_onClickSuggestion",value:function(e){this.setState({value:e,dropActive:!1}),this.props.onChange&&this.props.onChange(e,!0),this.props.onSelect&&this.props.onSelect({target:this.refs.input,suggestion:e})}},{key:"_onFocus",value:function(){var e=this;this.setState({focused:!0,activeSuggestionIndex:-1}),setTimeout(function(){e.refs.input.select()},10)}},{key:"_renderLabel",value:function(e){return"object"===("undefined"==typeof e?"undefined":s(e))?e.label||e.value:e}},{key:"_renderDrop",value:function(){var e=null;return this.props.suggestions&&(e=this.props.suggestions.map(function(e,t){var r,n=(0,d["default"])((r={},o(r,M+"__suggestion",!0),o(r,M+"__suggestion--active",t===this.state.activeSuggestionIndex),r));return f["default"].createElement("li",{key:t,className:n,onClick:this._onClickSuggestion.bind(this,e)},this._renderLabel(e))},this)),f["default"].createElement("ol",{className:M+"__suggestions",onClick:this._onRemoveDrop},e)}},{key:"render",value:function(){var e=(0,d["default"])(M,o({},M+"--active",this.state.active),this.props.className);return f["default"].createElement("div",{ref:"component",className:e},f["default"].createElement("input",{ref:"input",className:M+"__input",id:this.props.id,name:this.props.name,value:this._renderLabel(this.props.value),defaultValue:this._renderLabel(this.props.defaultValue),placeholder:this.props.placeHolder,autoComplete:"off",onChange:this._onInputChange,onFocus:this._onFocus}),f["default"].createElement(v["default"],{className:M+"__control",icon:f["default"].createElement(w["default"],null),onClick:this._onAddDrop}))}}]),t}(c.Component);t["default"]=P,P.propTypes={defaultValue:c.PropTypes.oneOfType([c.PropTypes.shape({label:c.PropTypes.string,value:c.PropTypes.string}),c.PropTypes.string]),id:c.PropTypes.string,name:c.PropTypes.string,onChange:c.PropTypes.func,onDOMChange:c.PropTypes.func,onSelect:c.PropTypes.func,placeHolder:c.PropTypes.string,suggestions:c.PropTypes.arrayOf(c.PropTypes.oneOfType([c.PropTypes.shape({label:c.PropTypes.node,value:c.PropTypes.any}),c.PropTypes.string])),value:c.PropTypes.oneOfType([c.PropTypes.shape({label:c.PropTypes.string,value:c.PropTypes.string}),c.PropTypes.string])},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=Object.assign||function(e){for(var t=1;t0&&(e=t[0]),e}},{key:"_setSelection",value:function(){_["default"].setClassFromIndexes({containerElement:this._container(),childSelector:"tr",selectedClass:v,selectedIndexes:this.state.selected})}},{key:"_onClick",value:function(e){if(this.props.selectable){var t=_["default"].onClick(e,{containerElement:this._container(),childSelector:"tr",selectedClass:v,multiSelect:"multiple"===this.props.selectable,priorSelectedIndexes:this.state.selected});this.props.selected||this.setState({selected:t},this._setSelection),this.props.onSelect&&(1===t.length&&(t=t[0]),this.props.onSelect(t))}}},{key:"_adjustBodyCells",value:function(){var e=this.refs.table.querySelectorAll("thead th");if(e.length>0){var t=this.refs.table.querySelectorAll("tbody tr");[].forEach.call(t,function(t){[].forEach.call(t.cells,function(t,r){t.setAttribute("data-th",e[r].innerText)})})}}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_layout",value:function(){this._alignMirror();var e=this.refs.container.offsetWidth,t=this.refs.table.querySelectorAll("thead th").length;t*T>e?this.setState({small:!0}):this.setState({small:!1})}},{key:"_buildMirror",value:function(){var e=this.refs.table,t=e.querySelectorAll("thead tr th"),r=this.refs.mirror;if(r){for(var n=r.querySelectorAll("thead tr")[0];n.hasChildNodes();)n.removeChild(n.lastChild);for(var o=0;o0){var a=this._coords(e,r),l=[Math.abs(s[0]-a[0]),Math.abs(s[1]-a[1])];t.beginPath(),t.moveTo(s[0],s[1]);var u=void 0,c=void 0;if(this.state.highlights[e]&&(t.lineWidth=4),l[0]>l[1])u=[s[0],Math.min(s[1],a[1])+Math.max(n,l[1]/2)+2*o],c=[a[0],u[1]];else{var f=Math.max(n,l[0]/2+2*o);u=s[0]>a[0]?[a[0]+f,s[1]]:[s[0]-f,s[1]],c=[u[0],a[1]]}t.bezierCurveTo(u[0],u[1],c[0],c[1],a[0],a[1]),t.stroke()}},this)},this)}}},{key:"_layout",value:function(){var e=this.refs.contents;e.scrollWidth===this.state.canvasWidth&&e.scrollHeight===this.state.canvasHeight||this.setState({canvasWidth:e.scrollWidth,canvasHeight:e.scrollHeight})}},{key:"_onResize",value:function(){clearTimeout(this._resizeTimer),this._resizeTimer=setTimeout(this._layout,50)}},{key:"_highlight",value:function(e){for(var t=this.refs.topology,r=!1,n={};e&&e!==t;){var o=e.getAttribute("id");o&&this.state.linkIds[o]&&(r=!0,n[o]=!0),e=e.parentNode}this.setState({highlighting:r,highlights:n})}},{key:"_onMouseMove",value:function(e){clearTimeout(this._mouseMoveTimer),this._mouseMoveTimer=setTimeout(this._highlight.bind(this,e.target),100)}},{key:"_onMouseLeave",value:function(){this.setState({highlights:{}})}},{key:"_cacheLinkIds",value:function(e){var t={};e.forEach(function(e){e.ids.forEach(function(e){t[e]=!0})}),this.setState({linkIds:t})}},{key:"render",value:function(){var e=[d];this.props.className&&e.push(this.props.className);var t=[],r={};return this.props.links.forEach(function(e){e.colorIndex&&!r[e.colorIndex]&&(t.push(u["default"].createElement("div",{key:e.colorIndex,ref:e.colorIndex,className:"background-color-index-"+e.colorIndex})),r[e.colorIndex]=!0)}),u["default"].createElement("div",{ref:"topology",className:e.join(" ")},u["default"].createElement("canvas",{ref:"canvas",className:d+"__canvas",width:this.state.canvasWidth,height:this.state.canvasHeight}),u["default"].createElement("div",{ref:"contents",className:d+"__contents"},this.props.children),u["default"].createElement("div",{className:d+"__color-key"},t))}}]),t}(s.Component);t["default"]=b,b.propTypes={links:s.PropTypes.arrayOf(s.PropTypes.shape({colorIndex:s.PropTypes.string,ids:s.PropTypes.arrayOf(s.PropTypes.string).isRequired})),linkOffset:s.PropTypes.number},b.defaultProps={links:[],linkOffset:18},b.Parts=m,b.Part=y,b.Label=h,e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var l=function(){function e(e,t){for(var r=0;rr?"0"+r:r);return u["default"].createElement("div",{key:e.time,className:_+"__timeline-chapter",style:{left:t.toString()+"%"},onClick:this._onClickChapter.bind(this,e.time)},u["default"].createElement("label",null,e.label),u["default"].createElement("time",null,n))},this);o=u["default"].createElement("div",{className:_+"__timeline"},i)}var a;if(this.props.duration){var l=Math.round(this.state.progress/this.props.duration*100);a=u["default"].createElement("div",{className:_+"__progress"},u["default"].createElement("div",{className:_+"__progress-meter",style:{width:l.toString()+"%"}}))}return u["default"].createElement("div",{className:e.join(" "),onMouseMove:this._onMouseMove},u["default"].createElement("video",{ref:"video",poster:this.props.poster},this.props.children),u["default"].createElement("div",{className:_+"__summary"},u["default"].createElement(f["default"],{className:_+"__control",plain:!0,primary:!0,onClick:this._onClickControl},n),t),o,a)}}]),t}(s.Component);t["default"]=g,g.propTypes={colorIndex:s.PropTypes.string,duration:s.PropTypes.number,full:s.PropTypes.oneOf([!0,"horizontal","vertical",!1]),poster:s.PropTypes.string,size:u["default"].PropTypes.oneOf(["small","medium","large"]),timeline:s.PropTypes.arrayOf(s.PropTypes.shape({label:s.PropTypes.string,time:s.PropTypes.number})),title:s.PropTypes.node},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var r=0;r=0;r--){var a=i[r],l=n[a].handlers;if(l.hasOwnProperty(t)&&l[t](e))break}};t["default"]={_initKeyboardAccelerators:function(){var e=this.getDOMNode().getAttribute("data-reactid");n[e]={handlers:{}}},_getKeyboardAcceleratorHandlers:function(){var e=this.getDOMNode().getAttribute("data-reactid");return n[e].handlers},_getDowns:function(){var e=this.getDOMNode().getAttribute("data-reactid");return n[e].downs},_isComponentListening:function(){for(var e=this.getDOMNode().getAttribute("data-reactid"),t=0;o>t;t++)if(i[t]===e)return!0;return!1},_subscribeComponent:function(){var e=this.getDOMNode().getAttribute("data-reactid");i[o]=e,o++},_unsubscribeComponent:function(){for(var e=this.getDOMNode().getAttribute("data-reactid"),t=0;o>t&&i[t]!=e;t++);for(;o-1>t;t++)i[t]=i[t+1];o--,i[o]=null,delete n[e]},startListeningToKeyboard:function(e){console.warn("grommet/mixins/KeyboardAccelerators is deprecated. Please switch to grommet/utils/KeyboardAccelerators."),this._initKeyboardAccelerators();var t=0;for(var n in e)if(e.hasOwnProperty(n)){var o=n;r.hasOwnProperty(n)&&(o=r[n]),t+=1,this._getKeyboardAcceleratorHandlers()[o]=e[n]}t>0&&(a||(window.addEventListener("keydown",l),a=!0),this._isComponentListening()||this._subscribeComponent())},stopListeningToKeyboard:function(e){if(this._isComponentListening()){if(e)for(var t in e)if(e.hasOwnProperty(t)){var n=t;r.hasOwnProperty(t)&&(n=r[t]),delete this._getKeyboardAcceleratorHandlers()[n]}var i=0;for(var s in this._getKeyboardAcceleratorHandlers())this._getKeyboardAcceleratorHandlers().hasOwnProperty(s)&&(i+=1);e&&0!==i||(this._initKeyboardAccelerators(),this._unsubscribeComponent()),0===o&&(window.removeEventListener("keydown",l),a=!1)}},componentWillUnmount:function(){this.stopListeningToKeyboard()}},e.exports=t["default"]},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}function o(e){var t=[];for(var r in e)if(e.hasOwnProperty(r)){var n=e[r];if(null!==n&&void 0!==n)if(Array.isArray(n))for(var o=0;oi;++i)r=o[i],t=r.split("="),n[decodeURIComponent(t[0])]=decodeURIComponent(t[1]);return n}function u(e){var t,r,n,o,i=e.split(/\r?\n/),a={};i.pop();for(var l=0,s=i.length;s>l;++l)r=i[l],t=r.indexOf(":"),n=r.slice(0,t).toLowerCase(),o=v(r.slice(t+1)),a[n]=o;return a}function c(e){return/[\/+]json\b/.test(e)}function f(e){return e.split(/ *; */).shift()}function p(e){return g(e.split(/ *; */),function(e,t){var r=t.split(/ *= */),n=r.shift(),o=r.shift();return n&&o&&(e[n]=o),e},{})}function d(e,t){t=t||{},this.req=e,this.xhr=this.req.xhr,this.text="HEAD"!=this.req.method&&(""===this.xhr.responseType||"text"===this.xhr.responseType)||"undefined"==typeof this.xhr.responseType?this.xhr.responseText:null,this.statusText=this.req.xhr.statusText,this.setStatusProperties(this.xhr.status),this.header=this.headers=u(this.xhr.getAllResponseHeaders()),this.header["content-type"]=this.xhr.getResponseHeader("content-type"),this.setHeaderProperties(this.header),this.body="HEAD"!=this.req.method?this.parseBody(this.text?this.text:this.xhr.response):null}function h(e,t){var r=this;_.call(this),this._query=this._query||[],this.method=e,this.url=t,this.header={},this._header={},this.on("end",function(){var e=null,t=null;try{t=new d(r)}catch(n){return e=new Error("Parser is unable to parse the response"),e.parse=!0,e.original=n,e.rawResponse=r.xhr&&r.xhr.responseText?r.xhr.responseText:null,r.callback(e)}if(r.emit("response",t),e)return r.callback(e,t);if(t.status>=200&&t.status<300)return r.callback(e,t);var o=new Error(t.statusText||"Unsuccessful HTTP response");o.original=e,o.response=t,o.status=t.status,r.callback(o,t)})}function y(e,t){return"function"==typeof t?new h("GET",e).end(t):1==arguments.length?new h("GET",e):new h(e,t)}function m(e,t){var r=y("DELETE",e);return t&&r.end(t),r}var b,_=r(553),g=r(554);b="undefined"!=typeof window?window:"undefined"!=typeof self?self:this,y.getXHR=function(){if(!(!b.XMLHttpRequest||b.location&&"file:"==b.location.protocol&&b.ActiveXObject))return new XMLHttpRequest;try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(e){}return!1};var v="".trim?function(e){return e.trim()}:function(e){return e.replace(/(^\s*|\s*$)/g,"")};y.serializeObject=a,y.parseString=s,y.types={html:"text/html",json:"application/json",xml:"application/xml",urlencoded:"application/x-www-form-urlencoded",form:"application/x-www-form-urlencoded","form-data":"application/x-www-form-urlencoded"},y.serialize={"application/x-www-form-urlencoded":a,"application/json":JSON.stringify},y.parse={"application/x-www-form-urlencoded":s,"application/json":JSON.parse},d.prototype.get=function(e){return this.header[e.toLowerCase()]},d.prototype.setHeaderProperties=function(e){var t=this.header["content-type"]||"";this.type=f(t);var r=p(t);for(var n in r)this[n]=r[n]},d.prototype.parseBody=function(e){var t=y.parse[this.type];return t&&e&&(e.length||e instanceof Object)?t(e):null},d.prototype.setStatusProperties=function(e){1223===e&&(e=204);var t=e/100|0;this.status=this.statusCode=e,this.statusType=t,this.info=1==t,this.ok=2==t,this.clientError=4==t,this.serverError=5==t,this.error=4==t||5==t?this.toError():!1,this.accepted=202==e,this.noContent=204==e,this.badRequest=400==e,this.unauthorized=401==e,this.notAcceptable=406==e,this.notFound=404==e,this.forbidden=403==e},d.prototype.toError=function(){var e=this.req,t=e.method,r=e.url,n="cannot "+t+" "+r+" ("+this.status+")",o=new Error(n);return o.status=this.status,o.method=t,o.url=r,o},y.Response=d,_(h.prototype),h.prototype.use=function(e){return e(this),this},h.prototype.timeout=function(e){return this._timeout=e,this},h.prototype.clearTimeout=function(){return this._timeout=0,clearTimeout(this._timer),this},h.prototype.abort=function(){return this.aborted?void 0:(this.aborted=!0,this.xhr.abort(),this.clearTimeout(),this.emit("abort"),this)},h.prototype.set=function(e,t){if(i(e)){for(var r in e)this.set(r,e[r]);return this}return this._header[e.toLowerCase()]=t,this.header[e]=t,this},h.prototype.unset=function(e){return delete this._header[e.toLowerCase()],delete this.header[e],this},h.prototype.getHeader=function(e){return this._header[e.toLowerCase()]},h.prototype.type=function(e){return this.set("Content-Type",y.types[e]||e),this},h.prototype.parse=function(e){return this._parser=e,this},h.prototype.accept=function(e){return this.set("Accept",y.types[e]||e),this},h.prototype.auth=function(e,t){var r=btoa(e+":"+t);return this.set("Authorization","Basic "+r),this},h.prototype.query=function(e){return"string"!=typeof e&&(e=a(e)),e&&this._query.push(e),this},h.prototype.field=function(e,t){return this._formData||(this._formData=new b.FormData),this._formData.append(e,t),this},h.prototype.attach=function(e,t,r){return this._formData||(this._formData=new b.FormData),this._formData.append(e,t,r||t.name),this},h.prototype.send=function(e){var t=i(e),r=this.getHeader("Content-Type");if(t&&i(this._data))for(var n in e)this._data[n]=e[n];else"string"==typeof e?(r||this.type("form"),r=this.getHeader("Content-Type"),"application/x-www-form-urlencoded"==r?this._data=this._data?this._data+"&"+e:e:this._data=(this._data||"")+e):this._data=e;return!t||o(e)?this:(r||this.type("json"),this)},h.prototype.callback=function(e,t){var r=this._callback;this.clearTimeout(),r(e,t)},h.prototype.crossDomainError=function(){var e=new Error("Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.");e.crossDomain=!0,e.status=this.status,e.method=this.method,e.url=this.url,this.callback(e)},h.prototype.timeoutError=function(){var e=this._timeout,t=new Error("timeout of "+e+"ms exceeded");t.timeout=e,this.callback(t)},h.prototype.withCredentials=function(){return this._withCredentials=!0,this},h.prototype.end=function(e){var t=this,r=this.xhr=y.getXHR(),i=this._query.join("&"),a=this._timeout,l=this._formData||this._data;this._callback=e||n,r.onreadystatechange=function(){if(4==r.readyState){var e;try{e=r.status}catch(n){e=0}if(0==e){if(t.timedout)return t.timeoutError();if(t.aborted)return;return t.crossDomainError()}t.emit("end")}};var s=function(e){e.total>0&&(e.percent=e.loaded/e.total*100),e.direction="download",t.emit("progress",e)};this.hasListeners("progress")&&(r.onprogress=s);try{r.upload&&this.hasListeners("progress")&&(r.upload.onprogress=s)}catch(u){}if(a&&!this._timer&&(this._timer=setTimeout(function(){t.timedout=!0,t.abort()},a)),i&&(i=y.serializeObject(i),this.url+=~this.url.indexOf("?")?"&"+i:"?"+i),r.open(this.method,this.url,!0),this._withCredentials&&(r.withCredentials=!0),"GET"!=this.method&&"HEAD"!=this.method&&"string"!=typeof l&&!o(l)){var f=this.getHeader("Content-Type"),p=this._parser||y.serialize[f?f.split(";")[0]:""];!p&&c(f)&&(p=y.serialize["application/json"]),p&&(l=p(l))}for(var d in this.header)null!=this.header[d]&&r.setRequestHeader(d,this.header[d]);return this.emit("request",this),r.send("undefined"!=typeof l?l:null),this},h.prototype.then=function(e,t){return this.end(function(r,n){r?t(r):e(n)})},y.Request=h,y.get=function(e,t,r){var n=y("GET",e);return"function"==typeof t&&(r=t,t=null),t&&n.query(t),r&&n.end(r),n},y.head=function(e,t,r){var n=y("HEAD",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},y.del=m,y["delete"]=m,y.patch=function(e,t,r){var n=y("PATCH",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},y.post=function(e,t,r){var n=y("POST",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},y.put=function(e,t,r){var n=y("PUT",e);return"function"==typeof t&&(r=t,t=null),t&&n.send(t),r&&n.end(r),n},e.exports=y},function(e,t){function r(e){return e?n(e):void 0}function n(e){for(var t in r.prototype)e[t]=r.prototype[t];return e}e.exports=r,r.prototype.on=r.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},r.prototype.once=function(e,t){function r(){this.off(e,r),t.apply(this,arguments)}return r.fn=t,this.on(e,r),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var n,o=0;on;++n)r[n].apply(this,t)}return this},r.prototype.listeners=function(e){return this._callbacks=this._callbacks||{},this._callbacks["$"+e]||[]},r.prototype.hasListeners=function(e){return!!this.listeners(e).length}},function(e,t){e.exports=function(e,t,r){for(var n=0,o=e.length,i=3==arguments.length?r:e[n++];o>n;)i=t.call(null,i,e[n],++n,e);return i}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(551),i=n(o),a=5e3,l=1e4,s={ws:null,wsReady:!1,timer:null,requests:[],nextRequestId:1,initialized:!1,socketUrl:null};t["default"]={_sendMessage:function(e,t,r,n){s.ws.send(JSON.stringify({op:e,id:t,url:r,params:n}))},_onOpen:function(){s.wsReady=!0,s.requests.forEach(function(e){this._sendMessage("start",e.id,e.url,e.params)},this)},_onError:function(e){console.log("!!! RestWatch _onError TODO",e)},_onMessage:function(e){var t=JSON.parse(e.data);s.requests.some(function(e){e.id===t.id&&e.handler(t.result)})},_onClose:function(){s.ws=null,s.wsReady=!1,s.initialized=!1,s.timer=setTimeout(this.initialize.bind(this),a)},_getREST:function(e){e.pollBusy=!0,i["default"].get(e.url,e.params).end(function(t,r){if(t)throw t;r.ok&&e.handler(r.body),e.pollBusy=!1})},_poll:function(){s.requests.forEach(function(e){e.pollBusy||this._getREST(e)})},initialize:function(e){s.initialized||s.ws||!this.available()||!s.socketUrl&&!e||(s.socketUrl=s.socketUrl||e,s.ws=new WebSocket(s.socketUrl),s.ws.onopen=this._onOpen.bind(this),s.ws.onerror=this._onError.bind(this),s.ws.onmessage=this._onMessage.bind(this),s.ws.onclose=this._onClose.bind(this),s.initialized=!0)},available:function(){return"WebSocket"in window||"MozWebSocket"in window},start:function(e,t,r){this.initialize();var n={id:s.nextRequestId,url:e,params:t,handler:r};return s.nextRequestId+=1,s.requests.push(n),s.wsReady?this._sendMessage("start",n.id,n.url,n.params):this.available()||(this._getREST(n),clearTimeout(s.timer),s.timer=setTimeout(this._poll.bind(this),l)),n.id},stop:function(e){s.requests=s.requests.filter(function(t){return t.id===e?(s.wsReady&&this._sendMessage("stop",t.id),!1):!0},this)}},e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={validate:function(e){var t={valid:!0,errors:{},firstError:null};return e.forEach(function(e){e.hasOwnProperty("test")?e.test&&(t.errors[e.field]=e.message,t.valid=!1,t.firstError=t.firstError||e.field):e.hasOwnProperty("tests")&&e.tests.some(function(r){return r.test?(t.errors[e.field]=r.message,t.valid=!1,t.firstError=t.firstError||e.field,!0):!1})}),t}},e.exports=t["default"]}]);
\ No newline at end of file