From f19a454620acbf9a66489728f8b0bacb19adbeef Mon Sep 17 00:00:00 2001 From: ibogdanov Date: Fri, 12 Feb 2016 13:35:53 -0800 Subject: [PATCH] build --- dist/demo.css | 442 - dist/demo.js | 52400 ---------------- .../SLDSYearSelector/index.js | 1 + lib/SLDSDatepickerSingleSelect/index.js | 55 +- lib/SLDSIcon/InputIcon/index.js | 1 + .../List.js | 0 .../ListItem.js | 0 .../ListItemLabel.js | 2 +- lib/SLDSMenuList/index.js | 200 + lib/SLDSMenuPicklist/index.js | 9 +- lib/SLDSTimepicker/index.js | 272 + lib/index.js | 27 +- package.json | 2 +- 13 files changed, 528 insertions(+), 52883 deletions(-) delete mode 100644 dist/demo.css delete mode 100644 dist/demo.js rename lib/{SLDSMenuPicklist => SLDSMenuList}/List.js (100%) rename lib/{SLDSMenuPicklist => SLDSMenuList}/ListItem.js (100%) rename lib/{SLDSMenuPicklist => SLDSMenuList}/ListItemLabel.js (99%) create mode 100644 lib/SLDSMenuList/index.js create mode 100644 lib/SLDSTimepicker/index.js diff --git a/dist/demo.css b/dist/demo.css deleted file mode 100644 index e229b5f937..0000000000 --- a/dist/demo.css +++ /dev/null @@ -1,442 +0,0 @@ -/* Lightning Design System 0.12.1 */ -/* -Copyright (c) 2015, salesforce.com, inc. All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: -Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. -Neither the name of salesforce.com, inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -@font-face{font-family:"Salesforce Sans";src:url("../fonts/webfonts/SalesforceSans-Light.woff2") format("woff2"),url("../fonts/webfonts/SalesforceSans-Light.woff") format("woff");font-weight:300}@font-face{font-family:"Salesforce Sans";src:url("../fonts/webfonts/SalesforceSans-LightItalic.woff2") format("woff2"),url("../fonts/webfonts/SalesforceSans-LightItalic.woff") format("woff");font-style:italic;font-weight:300}@font-face{font-family:"Salesforce Sans";src:url("../fonts/webfonts/SalesforceSans-Regular.woff2") format("woff2"),url("../fonts/webfonts/SalesforceSans-Regular.woff") format("woff");font-weight:400}@font-face{font-family:"Salesforce Sans";src:url("../fonts/webfonts/SalesforceSans-Italic.woff2") format("woff2"),url("../fonts/webfonts/SalesforceSans-Italic.woff") format("woff");font-style:italic;font-weight:400}@font-face{font-family:"Salesforce Sans";src:url("../fonts/webfonts/SalesforceSans-Bold.woff2") format("woff2"),url("../fonts/webfonts/SalesforceSans-Bold.woff") format("woff");font-weight:700}@font-face{font-family:"Salesforce Sans";src:url("../fonts/webfonts/SalesforceSans-BoldItalic.woff2") format("woff2"),url("../fonts/webfonts/SalesforceSans-BoldItalic.woff") format("woff");font-style:italic;font-weight:700}html{font:100%/1.5 "Salesforce Sans", Arial, sans-serif;background:white;color:#16325c;-webkit-tap-highlight-color:transparent}body{font-size:0.875rem;background:transparent}.slds{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;margin:0}.slds article,.slds aside,.slds details,.slds figcaption,.slds figure,.slds footer,.slds header,.slds hgroup,.slds main,.slds menu,.slds nav,.slds section,.slds summary{display:block}.slds audio,.slds canvas,.slds progress,.slds video{display:inline-block;vertical-align:baseline}.slds audio:not([controls]){display:none;height:0}.slds [hidden],.slds template{display:none}.slds a{background-color:transparent}.slds a:active,.slds a:hover{outline:0}.slds abbr[title]{border-bottom:1px dotted}.slds b,.slds strong{font-weight:bold}.slds dfn{font-style:italic}.slds mark{background:#ff0;color:#000}.slds small{font-size:80%}.slds sub,.slds sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.slds sup{top:-0.5em}.slds sub{bottom:-0.25em}.slds img{border:0}.slds svg:not(:root){overflow:hidden}.slds figure{margin:1em 40px}.slds hr{box-sizing:content-box;height:0}.slds pre{overflow:auto}.slds code,.slds kbd,.slds pre,.slds samp{font-family:monospace, monospace;font-size:1em}.slds button,.slds input,.slds optgroup,.slds select,.slds textarea{color:inherit;font:inherit;margin:0}.slds button{overflow:visible}.slds button,.slds select{text-transform:none}.slds button,.slds input[type="button"],.slds input[type="reset"],.slds input[type="submit"]{-webkit-appearance:button;cursor:pointer}.slds button[disabled],.slds input[disabled]{cursor:default}.slds button::-moz-focus-inner,.slds input::-moz-focus-inner{border:0;padding:0}.slds input{line-height:normal}.slds input[type="checkbox"],.slds input[type="radio"]{box-sizing:border-box;padding:0}.slds input[type="number"]::-webkit-inner-spin-button,.slds input[type="number"]::-webkit-outer-spin-button{height:auto}.slds input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}.slds input[type="search"]::-webkit-search-cancel-button,.slds input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}.slds fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}.slds legend{border:0;padding:0}.slds textarea{overflow:auto}.slds optgroup{font-weight:bold}.slds table{border-collapse:collapse;border-spacing:0}.slds td,.slds th{padding:0}.slds *,.slds *:before,.slds *:after{box-sizing:border-box}.slds *::-webkit-input-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds *:-moz-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds *::-moz-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds *:-ms-input-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds ::-moz-selection{background:#faffbd;text-shadow:none}.slds ::selection{background:#faffbd;text-shadow:none}.slds h1,.slds h2,.slds h3,.slds h4,.slds h5,.slds h6,.slds p,.slds ol,.slds ul,.slds dl,.slds fieldset{margin:0;padding:0}.slds dd,.slds figure{margin:0}.slds abbr[title],.slds fieldset,.slds hr{border:0}.slds hr{padding:0}.slds h1,.slds h2,.slds h3,.slds h4,.slds h5,.slds h6{font-weight:inherit;font-size:1em}.slds ol,.slds ul{list-style:none}.slds a{color:#0070d2;text-decoration:none;-webkit-transition:color 0.1s linear;transition:color 0.1s linear}.slds a:hover,.slds a:focus{text-decoration:underline;color:#005fb2}.slds a:focus{outline:thin dotted;outline:5px auto #1589ee;outline-offset:-2px}.slds a:active{color:#00396b}.slds b,.slds strong,.slds dfn{font-weight:700}.slds mark{background-color:#faffbd}.slds abbr[title]{cursor:help}.slds input[type=search]{box-sizing:border-box}.slds table{width:100%}.slds caption,.slds th,.slds td{text-align:left}.slds hr{display:block;margin:2rem 0;border-top:1px solid #d8dde6;height:1px;clear:both}.slds audio,.slds canvas,.slds iframe,.slds img,.slds svg,.slds video{vertical-align:middle}.slds img{max-width:100%;height:auto}.slds .slds-media--timeline{padding-bottom:2rem;position:relative}.slds .slds-media--timeline:before{content:'';background:#d8dde6;height:100%;width:2px;position:absolute;left:1.125rem;top:0;bottom:0;margin-left:-1px;z-index:-1}.slds .slds-media--timeline:before{margin-left:-3px}.slds .slds-media--timeline .slds-timeline__icon{border:2px solid white}.slds .slds-timeline__actions{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-flow:column nowrap;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.slds .slds-timeline__date{margin-bottom:0.25rem;font-size:0.75rem;color:#54698d}.slds .slds-timeline__media--call:before{background:#48c3cc}.slds .slds-timeline__media--email:before{background:#95aec5}.slds .slds-timeline__media--event:before{background:#eb7092}.slds .slds-timeline__media--task:before{background:#4bc076}.slds .slds-timeline__item{padding-left:0.75rem;padding-right:0.75rem}.slds .slds-page-header__detail-row{margin:1.5rem 0 0.75rem 3rem}.slds .slds-breadcrumb .slds-list__item{position:relative}.slds .slds-breadcrumb .slds-list__item:before{content:'\003E';position:absolute;left:-0.25rem}.slds .slds-breadcrumb .slds-list__item>a{display:block;padding:0 0.5rem}.slds .slds-breadcrumb .slds-list__item>a:hover{text-decoration:none}.slds .slds-breadcrumb .slds-list__item:first-child>a{padding-left:0}.slds .slds-breadcrumb .slds-list__item:first-child:before{content:""}.slds .slds-button-group{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-button-group .slds-button{border-radius:0;border-left:0}.slds .slds-button-group .slds-button+.slds-button{margin-left:0}.slds .slds-button-group .slds-button:first-child{border-radius:0.25rem 0 0 0.25rem;border-left:1px solid #d8dde6}.slds .slds-button-group .slds-button:first-child:not(.slds-button--last .slds-button){border-left:1px solid #d8dde6}.slds .slds-button-group .slds-button:last-child{border-radius:0 0.25rem 0.25rem 0}.slds .slds-button-group .slds-button:focus{z-index:1}.slds .slds-button-group .slds-button:only-child{border-radius:.25rem}.slds .slds-button-group .slds-toggle-visibility:last-child[disabled]{display:none}.slds .slds-button-group+.slds-button-group,.slds .slds-button-group+.slds-button{margin-left:0.25rem}.slds .slds-button-group .slds-button--last .slds-button{border-radius:0 0.25rem 0.25rem 0;border-left:0}.slds .slds-button-group .slds-button.slds-button--last{border-radius:0 0.25rem 0.25rem 0}.slds .slds-button-group .slds-button:first-child.slds-button--inverse[disabled]{border-left-color:rgba(255,255,255,0.15)}.slds .slds-button-group .slds-button--inverse:first-child[disabled]+.slds-button--inverse{border-left:1px solid #d8dde6}.slds .slds-button-group .slds-button--icon-border.slds-is-selected+.slds-button--icon-border.slds-is-selected{border-left:1px solid #d8dde6}.slds .slds-button-group .slds-button--icon-border.slds-is-selected:first-child{border-left:1px solid #0070d2}.slds .slds-button-group .slds-button--icon-more:hover,.slds .slds-button-group .slds-button--icon-more:focus{border-left-width:0}.slds .slds-button{position:relative;display:inline-block;padding:0;background:transparent;background-clip:padding-box;border:none;border-radius:0.25rem;color:#0070d2;font-size:inherit;line-height:2.125rem;text-decoration:none;-webkit-appearance:none;white-space:normal;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:color 0.05s linear,background-color 0.05s linear;transition:color 0.05s linear,background-color 0.05s linear}.slds .slds-button:hover,.slds .slds-button:focus,.slds .slds-button:active,.slds .slds-button:visited{text-decoration:none}.slds .slds-button:hover,.slds .slds-button:focus{color:#005fb2}.slds .slds-button:focus{outline:0;box-shadow:0 0 3px #0070D2}.slds .slds-button:active{color:#00396b}.slds .slds-button[disabled]{color:#d8dde6}.slds .slds-button:hover .slds-button__icon,.slds .slds-button:focus .slds-button__icon,.slds .slds-button:active .slds-button__icon,.slds .slds-button[disabled] .slds-button__icon{fill:currentColor}.slds .slds-button+.slds-button-group{margin-left:0.25rem}.slds .slds-button+.slds-button{margin-left:0.25rem}.slds .slds-button-space-left{margin-left:0.25rem}.slds a.slds-button{text-align:center}.slds a.slds-button:focus{outline:0;box-shadow:0 0 3px #0070D2}.slds .slds-button--small{line-height:1.875rem;min-height:2rem}.slds .slds-button--neutral{padding-left:1rem;padding-right:1rem;text-align:center;vertical-align:middle;border:1px solid #d8dde6;background-color:white}.slds .slds-button--neutral:hover,.slds .slds-button--neutral:focus{background-color:#f4f6f9}.slds .slds-button--neutral:active{background-color:#eef1f6}.slds .slds-button--neutral[disabled]{background-color:white;cursor:default}.slds .slds-button--hint{color:#9faab5}.slds .slds-button--hint:hover,.slds .slds-button--hint:focus,.slds .slds-button--hint:active{color:#0070d2}.slds .slds-hint-parent:hover .slds-button--hint,.slds .slds-hint-parent:focus .slds-button--hint{color:#0070d2}.slds .slds-button__icon--left{margin-right:0.5rem}.slds .slds-button__icon--right{margin-left:0.5rem}.slds .slds-button--brand{padding-left:1rem;padding-right:1rem;text-align:center;vertical-align:middle;background-color:#0070d2;border:1px solid #0070d2;color:white}.slds .slds-button--brand:link,.slds .slds-button--brand:visited,.slds .slds-button--brand:active{color:white}.slds .slds-button--brand:hover,.slds .slds-button--brand:focus{background-color:#005fb2;color:white}.slds .slds-button--brand:active{background-color:#00396b}.slds .slds-button--brand[disabled]{background:#e0e5ee;border-color:transparent;color:white}.slds .slds-button--destructive{padding-left:1rem;padding-right:1rem;text-align:center;vertical-align:middle;background-color:#c23934;border:1px solid #c23934;color:white}.slds .slds-button--destructive:link,.slds .slds-button--destructive:visited,.slds .slds-button--destructive:active{color:white}.slds .slds-button--destructive:hover,.slds .slds-button--destructive:focus{background-color:#A61A14;color:white}.slds .slds-button--destructive:active{background-color:#870500;border-color:#870500}.slds .slds-button--destructive[disabled]{background:#e0e5ee;border-color:transparent;color:white}.slds .slds-button--inverse{padding-left:1rem;padding-right:1rem;text-align:center;vertical-align:middle;border:1px solid #d8dde6;background-color:transparent}.slds .slds-button--inverse:hover,.slds .slds-button--inverse:focus{background-color:#f4f6f9}.slds .slds-button--inverse:active{background-color:#eef1f6}.slds .slds-button--inverse[disabled]{background-color:transparent;border-color:rgba(255,255,255,0.15);color:rgba(255,255,255,0.15)}.slds .slds-button--inverse,.slds .slds-button--inverse:link,.slds .slds-button--inverse:visited,.slds .slds-button-group .slds-button--icon-inverse,.slds .slds-button-group .slds-button--icon-inverse:link,.slds .slds-button-group .slds-button--icon-inverse:visited{color:#e0e5ee}.slds .slds-button--inverse:hover,.slds .slds-button--inverse:focus,.slds .slds-button--inverse:active,.slds .slds-button-group .slds-button--icon-inverse:hover,.slds .slds-button-group .slds-button--icon-inverse:focus,.slds .slds-button-group .slds-button--icon-inverse:active{color:#0070d2}.slds .slds-button--inverse:focus,.slds .slds-button-group .slds-button--icon-inverse:focus{outline:none;box-shadow:0 0 3px #E0E5EE}.slds a.slds-button--inverse:focus{outline:none;box-shadow:0 0 3px #E0E5EE}.slds .slds-button--neutral.slds-is-selected{border-color:transparent;background-color:transparent}.slds .slds-button--neutral.slds-is-selected:hover:not([disabled]),.slds .slds-button--neutral.slds-is-selected:focus:not([disabled]){border:1px solid #d8dde6;background-color:#f4f6f9}.slds .slds-button--neutral.slds-is-selected:active{background-color:#eef1f6}.slds .slds-button__icon--stateful{width:0.75rem;height:0.75rem;fill:currentColor}.slds .slds-text-not-selected,.slds .slds-text-selected,.slds .slds-text-selected-focus,.slds .slds-is-selected[disabled]:hover .slds-text-selected,.slds .slds-is-selected[disabled]:focus .slds-text-selected{display:block}.slds .slds-not-selected .slds-text-selected,.slds .slds-not-selected .slds-text-selected-focus,.slds .slds-is-selected .slds-text-not-selected,.slds .slds-is-selected:not(:hover):not(:focus) .slds-text-selected-focus,.slds .slds-is-selected[disabled]:hover .slds-text-selected-focus,.slds .slds-is-selected:hover .slds-text-selected,.slds .slds-is-selected:focus .slds-text-selected{display:none}.slds .slds-button--inverse.slds-is-selected{border-color:transparent}.slds .slds-button--icon-container,.slds .slds-button--icon-border,.slds .slds-button--icon-border-filled,.slds .slds-button--icon-bare,.slds .slds-button--icon-more{vertical-align:middle;color:#54698d}.slds .slds-button--icon-bare{line-height:1}.slds .slds-button--icon-border[disabled]:hover,.slds .slds-button--icon-border[disabled]:focus{background-color:transparent}.slds .slds-button--icon-border-filled,.slds .slds-button--icon-border{border:1px solid #d8dde6}.slds .slds-button--icon-border-filled:hover,.slds .slds-button--icon-border-filled:focus,.slds .slds-button--icon-border:hover,.slds .slds-button--icon-border:focus{background-color:#f4f6f9}.slds .slds-button--icon-border-filled:active,.slds .slds-button--icon-border:active{background-color:#eef1f6}.slds .slds-button--icon-container,.slds .slds-button--icon-border,.slds .slds-button--icon-border-filled{width:2.25rem;height:2.25rem}.slds .slds-button--icon-small{width:2rem;height:2rem;line-height:1.875rem}.slds .slds-button--icon-x-small{width:1.25rem;height:1.25rem;border-radius:0.125rem;line-height:1}.slds .slds-button--icon-border-filled{background-color:white}.slds .slds-button--icon-border-filled[disabled]{border:1px solid #d8dde6;background-color:white}.slds .slds-button__icon{width:1rem;height:1rem;fill:currentColor}.slds .slds-button__icon--large{width:1.5rem;height:1.5rem}.slds .slds-button__icon--small{width:0.75rem;height:0.75rem}.slds .slds-button__icon--x-small{width:0.5rem;height:0.5rem;margin-left:0.25rem}.slds .slds-icon--small .slds-button__icon{width:1.5rem;height:1.5rem}.slds .slds-button__icon--hint{fill:#9faab5}.slds .slds-hint-parent:hover .slds-button__icon--hint,.slds .slds-hint-parent:focus .slds-button__icon--hint{fill:#54698d}.slds .slds-button--icon-more{padding:0 0.5rem;vertical-align:middle;border:1px solid #d8dde6}.slds .slds-button--icon-more:hover,.slds .slds-button--icon-more:focus{border:1px solid #d8dde6}.slds .slds-button--icon-more:hover:hover,.slds .slds-button--icon-more:hover:focus,.slds .slds-button--icon-more:focus:hover,.slds .slds-button--icon-more:focus:focus{background-color:#f4f6f9}.slds .slds-button--icon-more:hover:active,.slds .slds-button--icon-more:focus:active{background-color:#eef1f6}.slds .slds-button--icon-more:hover .slds-button__icon,.slds .slds-button--icon-more:focus .slds-button__icon{fill:#0070d2}.slds .slds-button--icon-more:active .slds-button__icon{fill:#00396b}.slds .slds-button--icon-more[disabled]{cursor:default}.slds .slds-button--icon-more[disabled] .slds-button__icon{fill:#d8dde6}.slds .slds-button--icon-border.slds-is-selected{background-color:#0070d2;border:1px solid #0070d2;color:white}.slds .slds-button--icon-border.slds-is-selected:link,.slds .slds-button--icon-border.slds-is-selected:visited,.slds .slds-button--icon-border.slds-is-selected:active{color:white}.slds .slds-button--icon-border.slds-is-selected:hover,.slds .slds-button--icon-border.slds-is-selected:focus{background-color:#005fb2;color:white}.slds .slds-button--icon-border.slds-is-selected:active{background-color:#00396b}.slds .slds-button--icon-border.slds-is-selected .slds-button__icon{fill:white}.slds .slds-button--icon-border.slds-is-selected:hover .slds-button__icon,.slds .slds-button--icon-border.slds-is-selected:focus .slds-button__icon{fill:white}.slds .slds-button--icon-inverse{color:white}.slds .slds-button--icon-inverse:hover,.slds .slds-button--icon-inverse:focus{color:rgba(255,255,255,0.75)}.slds .slds-button--icon-inverse:active{color:rgba(255,255,255,0.5)}.slds .slds-button--icon-inverse[disabled]{color:rgba(255,255,255,0.15)}@media (max-width: 30em){.slds .slds-max-small-button--stretch,.slds .slds-max-small-buttons--stretch .slds-button{width:100%}}@media (min-width: 320px){.slds .slds-x-small-button--stacked+.slds-x-small-button--stacked,.slds .slds-x-small-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-x-small-button--horizontal+.slds-x-small-button--horizontal,.slds .slds-x-small-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (max-width: 320px){.slds .slds-max-x-small-button--stacked+.slds-max-x-small-button--stacked,.slds .slds-max-x-small-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-max-x-small-button--horizontal+.slds-max-x-small-button--horizontal,.slds .slds-max-x-small-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (min-width: 480px){.slds .slds-small-button--stacked+.slds-small-button--stacked,.slds .slds-small-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-small-button--horizontal+.slds-small-button--horizontal,.slds .slds-small-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (max-width: 480px){.slds .slds-max-small-button--stacked+.slds-max-small-button--stacked,.slds .slds-max-small-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-max-small-button--horizontal+.slds-max-small-button--horizontal,.slds .slds-max-small-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (min-width: 768px){.slds .slds-medium-button--stacked+.slds-medium-button--stacked,.slds .slds-medium-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-medium-button--horizontal+.slds-medium-button--horizontal,.slds .slds-medium-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (max-width: 768px){.slds .slds-max-medium-button--stacked+.slds-max-medium-button--stacked,.slds .slds-max-medium-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-max-medium-button--horizontal+.slds-max-medium-button--horizontal,.slds .slds-max-medium-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (min-width: 1024px){.slds .slds-large-button--stacked+.slds-large-button--stacked,.slds .slds-large-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-large-button--horizontal+.slds-large-button--horizontal,.slds .slds-large-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}@media (max-width: 1024px){.slds .slds-max-large-button--stacked+.slds-max-large-button--stacked,.slds .slds-max-large-buttons--stacked .slds-button+.slds-button{display:block;margin-top:0.5rem;margin-left:0}.slds .slds-max-large-button--horizontal+.slds-max-large-button--horizontal,.slds .slds-max-large-buttons--horizontal .slds-button+.slds-button{margin-left:0.5rem}}.slds .slds-icon__container{display:inline-block;border-radius:0.25rem}.slds .slds-icon__container--circle{padding:0.5rem;border-radius:50%}.slds .slds-icon{width:2rem;height:2rem;border-radius:0.25rem;fill:white}.slds .slds-icon-action-approval{background-color:#00c6b7}.slds .slds-icon-action-canvasapp{background-color:#8199af}.slds .slds-icon-action-goal{background-color:#56aadf}.slds .slds-icon-action-opportunity-competitor{background-color:#fcb95b}.slds .slds-icon-action-opportunity-line-item{background-color:#fcb95b}.slds .slds-icon-action-opportunity-team-member{background-color:#fcb95b}.slds .slds-icon-action-question-post-action{background-color:#32af5c}.slds .slds-icon-action-quote{background-color:#88c651}.slds .slds-icon-action-reject{background-color:#00c6b7}.slds .slds-icon-action-social-post{background-color:#ea74a2}.slds .slds-icon-action-fallback{background-color:#9895ee}.slds .slds-icon-action-edit{background-color:#1dccbf}.slds .slds-icon-action-delete{background-color:#e6717c}.slds .slds-icon-action-clone{background-color:#6ca1e9}.slds .slds-icon-action-follow{background-color:#31b9f8}.slds .slds-icon-action-following{background-color:#7dcf64}.slds .slds-icon-action-join-group{background-color:#779ef2}.slds .slds-icon-action-leave-group{background-color:#f39e58}.slds .slds-icon-action-edit-group{background-color:#34becd}.slds .slds-icon-action-share-post{background-color:#65cae4}.slds .slds-icon-action-share-file{background-color:#baac93}.slds .slds-icon-action-new-task{background-color:#4bc076}.slds .slds-icon-action-new-contact{background-color:#a094ed}.slds .slds-icon-action-new-opportunity{background-color:#fcb95b}.slds .slds-icon-action-new-case{background-color:#f2cf5b}.slds .slds-icon-action-new-lead{background-color:#f88962}.slds .slds-icon-action-share-thanks{background-color:#e9696e}.slds .slds-icon-action-share-link{background-color:#7a9ae6}.slds .slds-icon-action-share-poll{background-color:#699be1}.slds .slds-icon-action-new-event{background-color:#eb7092}.slds .slds-icon-action-new-child-case{background-color:#fa975c}.slds .slds-icon-action-log-a-call{background-color:#48c3cc}.slds .slds-icon-action-new-note{background-color:#e6d478}.slds .slds-icon-action-new{background-color:#33bce7}.slds .slds-icon-action-filter{background-color:#fd90b5}.slds .slds-icon-action-sort{background-color:#fab9a5}.slds .slds-icon-action-description{background-color:#7dc37d}.slds .slds-icon-action-defer{background-color:#ef7ead}.slds .slds-icon-action-update{background-color:#81b4d6}.slds .slds-icon-action-log-this-event{background-color:#f86268}.slds .slds-icon-action-email{background-color:#95aec5}.slds .slds-icon-action-dial-in{background-color:#8b9ae3}.slds .slds-icon-action-map{background-color:#76c6ee}.slds .slds-icon-action-call{background-color:#1fcaa0}.slds .slds-icon-action-google-news{background-color:#f5675b}.slds .slds-icon-action-web-link{background-color:#56aadf}.slds .slds-icon-action-submit-for-approval{background-color:#50cc7a}.slds .slds-icon-action-search{background-color:#48adeb}.slds .slds-icon-action-close{background-color:#ef6e64}.slds .slds-icon-action-back{background-color:#0dc2d9}.slds .slds-icon-action-office-365{background-color:#ff8041}.slds .slds-icon-action-concur{background-color:#4cc3c7}.slds .slds-icon-action-dropbox{background-color:#52aef9}.slds .slds-icon-action-evernote{background-color:#86c86f}.slds .slds-icon-action-docusign{background-color:#5080db}.slds .slds-icon-action-more{background-color:#62b7ed}.slds .slds-icon-action-notebook{background-color:#c871d6}.slds .slds-icon-action-preview{background-color:#7f8de1}.slds .slds-icon-action-priority{background-color:#fbb439}.slds .slds-icon-action-default-custom-object{background-color:#8199af}.slds .slds-icon-action-new-custom-object{background-color:#a7d44d}.slds .slds-icon-action-lead-convert{background-color:#f88962}.slds .slds-icon-action-new-account{background-color:#7f8de1}.slds .slds-icon-action-new-campaign{background-color:#f49756}.slds .slds-icon-action-new-group{background-color:#83b6ff}.slds .slds-icon-action-update-status{background-color:#1ec7be}.slds .slds-icon-action-new-custom-1{background-color:#ff7b84}.slds .slds-icon-action-new-custom-2{background-color:#cfd05c}.slds .slds-icon-action-new-custom-3{background-color:#ecb46c}.slds .slds-icon-action-new-custom-4{background-color:#e1d951}.slds .slds-icon-action-new-custom-5{background-color:#9fdb66}.slds .slds-icon-action-new-custom-6{background-color:#54c473}.slds .slds-icon-action-new-custom-7{background-color:#6a89e5}.slds .slds-icon-action-new-custom-8{background-color:#50ceb9}.slds .slds-icon-action-new-custom-9{background-color:#6b9ee2}.slds .slds-icon-action-new-custom-10{background-color:#6488e3}.slds .slds-icon-action-new-custom-11{background-color:#8784ea}.slds .slds-icon-action-new-custom-12{background-color:#dc71d1}.slds .slds-icon-action-new-custom-13{background-color:#df6184}.slds .slds-icon-action-new-custom-14{background-color:#3cc2b3}.slds .slds-icon-action-new-custom-15{background-color:#f77e75}.slds .slds-icon-action-new-custom-16{background-color:#e9af67}.slds .slds-icon-action-new-custom-17{background-color:#acd360}.slds .slds-icon-action-new-custom-18{background-color:#4dca76}.slds .slds-icon-action-new-custom-19{background-color:#3abeb1}.slds .slds-icon-action-new-custom-20{background-color:#48c7c8}.slds .slds-icon-action-new-custom-21{background-color:#8a7aed}.slds .slds-icon-action-new-custom-22{background-color:#8b85f9}.slds .slds-icon-action-new-custom-23{background-color:#b070e6}.slds .slds-icon-action-new-custom-24{background-color:#e56798}.slds .slds-icon-action-new-custom-25{background-color:#e46fbe}.slds .slds-icon-action-new-custom-26{background-color:#7698f0}.slds .slds-icon-action-new-custom-27{background-color:#5ab0d2}.slds .slds-icon-action-new-custom-28{background-color:#89c059}.slds .slds-icon-action-new-custom-29{background-color:#bdd25f}.slds .slds-icon-action-new-custom-30{background-color:#f59f71}.slds .slds-icon-action-new-custom-31{background-color:#eb687f}.slds .slds-icon-action-new-custom-32{background-color:#38c393}.slds .slds-icon-action-new-custom-33{background-color:#97cf5d}.slds .slds-icon-action-new-custom-34{background-color:#d58a6a}.slds .slds-icon-action-new-custom-35{background-color:#e9637e}.slds .slds-icon-action-new-custom-36{background-color:#d472d4}.slds .slds-icon-action-new-custom-37{background-color:#8c89f2}.slds .slds-icon-action-new-custom-38{background-color:#53b6d7}.slds .slds-icon-action-new-custom-39{background-color:#4fbe75}.slds .slds-icon-action-new-custom-40{background-color:#83c75e}.slds .slds-icon-action-new-custom-41{background-color:#43b5b5}.slds .slds-icon-action-new-custom-42{background-color:#cfd05b}.slds .slds-icon-action-new-custom-43{background-color:#7f93f9}.slds .slds-icon-action-new-custom-44{background-color:#c8ca58}.slds .slds-icon-action-new-custom-45{background-color:#d95879}.slds .slds-icon-action-new-custom-46{background-color:#67a5e7}.slds .slds-icon-action-new-custom-47{background-color:#5fcc64}.slds .slds-icon-action-new-custom-48{background-color:#ef697f}.slds .slds-icon-action-new-custom-49{background-color:#e25c80}.slds .slds-icon-action-new-custom-50{background-color:#49bcd3}.slds .slds-icon-action-new-custom-51{background-color:#d8c760}.slds .slds-icon-action-new-custom-52{background-color:#ee8e6f}.slds .slds-icon-action-new-custom-53{background-color:#f36e83}.slds .slds-icon-action-new-custom-54{background-color:#ea70b1}.slds .slds-icon-action-new-custom-55{background-color:#d66ee0}.slds .slds-icon-action-new-custom-56{background-color:#718deb}.slds .slds-icon-action-new-custom-57{background-color:#5a9cdd}.slds .slds-icon-action-new-custom-58{background-color:#34b59d}.slds .slds-icon-action-new-custom-59{background-color:#e3d067}.slds .slds-icon-action-new-custom-60{background-color:#bf5a88}.slds .slds-icon-action-new-custom-61{background-color:#f57376}.slds .slds-icon-action-new-custom-62{background-color:#6b92dc}.slds .slds-icon-action-new-custom-63{background-color:#7ccf60}.slds .slds-icon-action-new-custom-64{background-color:#618fd8}.slds .slds-icon-action-new-custom-65{background-color:#f279ab}.slds .slds-icon-action-new-custom-66{background-color:#d8be5f}.slds .slds-icon-action-new-custom-67{background-color:#f87d76}.slds .slds-icon-action-new-custom-68{background-color:#f26979}.slds .slds-icon-action-new-custom-69{background-color:#ed6387}.slds .slds-icon-action-new-custom-70{background-color:#e769b4}.slds .slds-icon-action-new-custom-71{background-color:#e36ee3}.slds .slds-icon-action-new-custom-72{background-color:#8d9bfb}.slds .slds-icon-action-new-custom-73{background-color:#679ef0}.slds .slds-icon-action-new-custom-74{background-color:#41c8a0}.slds .slds-icon-action-new-custom-75{background-color:#cd9f65}.slds .slds-icon-action-new-custom-76{background-color:#db6d7a}.slds .slds-icon-action-new-custom-77{background-color:#b55d5b}.slds .slds-icon-action-new-custom-78{background-color:#5a95dd}.slds .slds-icon-action-new-custom-79{background-color:#8ed363}.slds .slds-icon-action-new-custom-80{background-color:#659ad5}.slds .slds-icon-action-new-custom-81{background-color:#da627f}.slds .slds-icon-action-new-custom-82{background-color:#d15b97}.slds .slds-icon-action-new-custom-83{background-color:#e7806f}.slds .slds-icon-action-new-custom-84{background-color:#f6707b}.slds .slds-icon-action-new-custom-85{background-color:#f26891}.slds .slds-icon-action-new-custom-86{background-color:#e260ab}.slds .slds-icon-action-new-custom-87{background-color:#d876e5}.slds .slds-icon-action-new-custom-88{background-color:#996fe6}.slds .slds-icon-action-new-custom-89{background-color:#3e99be}.slds .slds-icon-action-new-custom-90{background-color:#22a48a}.slds .slds-icon-action-new-custom-91{background-color:#bf7b66}.slds .slds-icon-action-new-custom-92{background-color:#517e82}.slds .slds-icon-action-new-custom-93{background-color:#904d4c}.slds .slds-icon-action-new-custom-94{background-color:#439cba}.slds .slds-icon-action-new-custom-95{background-color:#8bcf6a}.slds .slds-icon-action-new-custom-96{background-color:#6d9de3}.slds .slds-icon-action-new-custom-97{background-color:#dd6085}.slds .slds-icon-action-new-custom-98{background-color:#e1be5c}.slds .slds-icon-action-new-custom-99{background-color:#f0856e}.slds .slds-icon-action-new-custom-100{background-color:#e15d76}.slds .slds-icon-action-apex{background-color:#696e71}.slds .slds-icon-action-flow{background-color:#0079bc}.slds .slds-icon-action-announcement{background-color:#fe8f60}.slds .slds-icon-action-record{background-color:#7dc37d}.slds .slds-icon-custom-1{background-color:#ff7b84}.slds .slds-icon-custom-2{background-color:#cfd05c}.slds .slds-icon-custom-3{background-color:#ecb46c}.slds .slds-icon-custom-4{background-color:#e1d951}.slds .slds-icon-custom-5{background-color:#9fdb66}.slds .slds-icon-custom-6{background-color:#54c473}.slds .slds-icon-custom-7{background-color:#6a89e5}.slds .slds-icon-custom-8{background-color:#50ceb9}.slds .slds-icon-custom-9{background-color:#6b9ee2}.slds .slds-icon-custom-10{background-color:#6488e3}.slds .slds-icon-custom-11{background-color:#8784ea}.slds .slds-icon-custom-12{background-color:#dc71d1}.slds .slds-icon-custom-13{background-color:#df6184}.slds .slds-icon-custom-14{background-color:#3cc2b3}.slds .slds-icon-custom-15{background-color:#f77e75}.slds .slds-icon-custom-16{background-color:#e9af67}.slds .slds-icon-custom-17{background-color:#acd360}.slds .slds-icon-custom-18{background-color:#4dca76}.slds .slds-icon-custom-19{background-color:#3abeb1}.slds .slds-icon-custom-20{background-color:#48c7c8}.slds .slds-icon-custom-21{background-color:#8a7aed}.slds .slds-icon-custom-22{background-color:#8b85f9}.slds .slds-icon-custom-23{background-color:#b070e6}.slds .slds-icon-custom-24{background-color:#e56798}.slds .slds-icon-custom-25{background-color:#e46fbe}.slds .slds-icon-custom-26{background-color:#7698f0}.slds .slds-icon-custom-27{background-color:#5ab0d2}.slds .slds-icon-custom-28{background-color:#89c059}.slds .slds-icon-custom-29{background-color:#bdd25f}.slds .slds-icon-custom-30{background-color:#f59f71}.slds .slds-icon-custom-31{background-color:#eb687f}.slds .slds-icon-custom-32{background-color:#38c393}.slds .slds-icon-custom-33{background-color:#97cf5d}.slds .slds-icon-custom-34{background-color:#d58a6a}.slds .slds-icon-custom-35{background-color:#e9637e}.slds .slds-icon-custom-36{background-color:#d472d4}.slds .slds-icon-custom-37{background-color:#8c89f2}.slds .slds-icon-custom-38{background-color:#53b6d7}.slds .slds-icon-custom-39{background-color:#4fbe75}.slds .slds-icon-custom-40{background-color:#83c75e}.slds .slds-icon-custom-41{background-color:#43b5b5}.slds .slds-icon-custom-42{background-color:#cfd05b}.slds .slds-icon-custom-43{background-color:#7f93f9}.slds .slds-icon-custom-44{background-color:#c8ca58}.slds .slds-icon-custom-45{background-color:#d95879}.slds .slds-icon-custom-46{background-color:#67a5e7}.slds .slds-icon-custom-47{background-color:#5fcc64}.slds .slds-icon-custom-48{background-color:#ef697f}.slds .slds-icon-custom-49{background-color:#e25c80}.slds .slds-icon-custom-50{background-color:#49bcd3}.slds .slds-icon-custom-51{background-color:#d8c760}.slds .slds-icon-custom-52{background-color:#ee8e6f}.slds .slds-icon-custom-53{background-color:#f36e83}.slds .slds-icon-custom-54{background-color:#ea70b1}.slds .slds-icon-custom-55{background-color:#d66ee0}.slds .slds-icon-custom-56{background-color:#718deb}.slds .slds-icon-custom-57{background-color:#5a9cdd}.slds .slds-icon-custom-58{background-color:#34b59d}.slds .slds-icon-custom-59{background-color:#e3d067}.slds .slds-icon-custom-60{background-color:#bf5a88}.slds .slds-icon-custom-61{background-color:#f57376}.slds .slds-icon-custom-62{background-color:#6b92dc}.slds .slds-icon-custom-63{background-color:#7ccf60}.slds .slds-icon-custom-64{background-color:#618fd8}.slds .slds-icon-custom-65{background-color:#f279ab}.slds .slds-icon-custom-66{background-color:#d8be5f}.slds .slds-icon-custom-67{background-color:#f87d76}.slds .slds-icon-custom-68{background-color:#f26979}.slds .slds-icon-custom-69{background-color:#ed6387}.slds .slds-icon-custom-70{background-color:#e769b4}.slds .slds-icon-custom-71{background-color:#e36ee3}.slds .slds-icon-custom-72{background-color:#8d9bfb}.slds .slds-icon-custom-73{background-color:#679ef0}.slds .slds-icon-custom-74{background-color:#41c8a0}.slds .slds-icon-custom-75{background-color:#cd9f65}.slds .slds-icon-custom-76{background-color:#db6d7a}.slds .slds-icon-custom-77{background-color:#b55d5b}.slds .slds-icon-custom-78{background-color:#5a95dd}.slds .slds-icon-custom-79{background-color:#8ed363}.slds .slds-icon-custom-80{background-color:#659ad5}.slds .slds-icon-custom-81{background-color:#da627f}.slds .slds-icon-custom-82{background-color:#d15b97}.slds .slds-icon-custom-83{background-color:#e7806f}.slds .slds-icon-custom-84{background-color:#f6707b}.slds .slds-icon-custom-85{background-color:#f26891}.slds .slds-icon-custom-86{background-color:#e260ab}.slds .slds-icon-custom-87{background-color:#d876e5}.slds .slds-icon-custom-88{background-color:#996fe6}.slds .slds-icon-custom-89{background-color:#3e99be}.slds .slds-icon-custom-90{background-color:#22a48a}.slds .slds-icon-custom-91{background-color:#bf7b66}.slds .slds-icon-custom-92{background-color:#517e82}.slds .slds-icon-custom-93{background-color:#904d4c}.slds .slds-icon-custom-94{background-color:#439cba}.slds .slds-icon-custom-95{background-color:#8bcf6a}.slds .slds-icon-custom-96{background-color:#6d9de3}.slds .slds-icon-custom-97{background-color:#dd6085}.slds .slds-icon-custom-98{background-color:#e1be5c}.slds .slds-icon-custom-99{background-color:#f0856e}.slds .slds-icon-custom-100{background-color:#e15d76}.slds .slds-icon-standard-log-a-call{background-color:#48c3cc}.slds .slds-icon-standard-account{background-color:#7f8de1}.slds .slds-icon-standard-social-post{background-color:#ea74a2}.slds .slds-icon-standard-campaign-members{background-color:#f49756}.slds .slds-icon-standard-article{background-color:#f2cf5b}.slds .slds-icon-standard-answer-public{background-color:#f2cf5b}.slds .slds-icon-standard-answer-private{background-color:#f2cf5b}.slds .slds-icon-standard-answer-best{background-color:#f2cf5b}.slds .slds-icon-standard-avatar-loading{background-color:#b8c3ce}.slds .slds-icon-standard-campaign{background-color:#f49756}.slds .slds-icon-standard-calibration{background-color:#47cfd2}.slds .slds-icon-standard-avatar{background-color:#62b7ed}.slds .slds-icon-standard-approval{background-color:#50cc7a}.slds .slds-icon-standard-apps{background-color:#3c97dd}.slds .slds-icon-standard-user{background-color:#34becd}.slds .slds-icon-standard-evernote{background-color:#86c86f}.slds .slds-icon-standard-coaching{background-color:#f67594}.slds .slds-icon-standard-connected-apps-admins{background-color:#9895ee}.slds .slds-icon-standard-drafts{background-color:#6ca1e9}.slds .slds-icon-standard-email{background-color:#95aec5}.slds .slds-icon-standard-endorsement{background-color:#8b9ae3}.slds .slds-icon-standard-event{background-color:#eb7092}.slds .slds-icon-standard-dropbox{background-color:#52aef9}.slds .slds-icon-standard-concur{background-color:#4cc3c7}.slds .slds-icon-standard-email-chatter{background-color:#f2cf5b}.slds .slds-icon-standard-case-transcript{background-color:#f2cf5b}.slds .slds-icon-standard-case-comment{background-color:#f2cf5b}.slds .slds-icon-standard-case-change-status{background-color:#f2cf5b}.slds .slds-icon-standard-client{background-color:#00d2be}.slds .slds-icon-standard-contract{background-color:#6ec06e}.slds .slds-icon-standard-dashboard{background-color:#ef6e64}.slds .slds-icon-standard-case{background-color:#f2cf5b}.slds .slds-icon-standard-empty{background-color:#8199af}.slds .slds-icon-standard-default{background-color:#8199af}.slds .slds-icon-standard-custom{background-color:#8199af}.slds .slds-icon-standard-canvas{background-color:#8199af}.slds .slds-icon-standard-contact{background-color:#a094ed}.slds .slds-icon-standard-portal{background-color:#aec770}.slds .slds-icon-standard-product{background-color:#b781d3}.slds .slds-icon-standard-feed{background-color:#62b7ed}.slds .slds-icon-standard-feedback{background-color:#6da1ea}.slds .slds-icon-standard-file{background-color:#baac93}.slds .slds-icon-standard-goals{background-color:#56aadf}.slds .slds-icon-standard-groups{background-color:#779ef2}.slds .slds-icon-standard-household{background-color:#00afa0}.slds .slds-icon-standard-insights{background-color:#ec94ed}.slds .slds-icon-standard-investment-account{background-color:#4bc076}.slds .slds-icon-standard-performance{background-color:#f8b156}.slds .slds-icon-standard-link{background-color:#7a9ae6}.slds .slds-icon-standard-metrics{background-color:#56aadf}.slds .slds-icon-standard-note{background-color:#e6d478}.slds .slds-icon-standard-lead{background-color:#f88962}.slds .slds-icon-standard-opportunity{background-color:#fcb95b}.slds .slds-icon-standard-log-a-call-chatter{background-color:#f2cf5b}.slds .slds-icon-standard-orders{background-color:#769ed9}.slds .slds-icon-standard-post{background-color:#65cae4}.slds .slds-icon-standard-poll{background-color:#699be1}.slds .slds-icon-standard-photo{background-color:#d7d1d1}.slds .slds-icon-standard-people{background-color:#34becd}.slds .slds-icon-standard-generic-loading{background-color:#b8c3ce}.slds .slds-icon-standard-group-loading{background-color:#b8c3ce}.slds .slds-icon-standard-recent{background-color:#6ca1e9}.slds .slds-icon-standard-solution{background-color:#8fc972}.slds .slds-icon-standard-record{background-color:#7dc37d}.slds .slds-icon-standard-question-best{background-color:#f2cf5b}.slds .slds-icon-standard-question-feed{background-color:#f2cf5b}.slds .slds-icon-standard-related-list{background-color:#59bcab}.slds .slds-icon-standard-skill-entity{background-color:#8b9ae3}.slds .slds-icon-standard-scan-card{background-color:#f39e58}.slds .slds-icon-standard-report{background-color:#2ecbbe}.slds .slds-icon-standard-quotes{background-color:#88c651}.slds .slds-icon-standard-task{background-color:#4bc076}.slds .slds-icon-standard-team-member{background-color:#f2cf5b}.slds .slds-icon-standard-thanks{background-color:#e9696e}.slds .slds-icon-standard-thanks-loading{background-color:#b8c3ce}.slds .slds-icon-standard-today{background-color:#ef7ead}.slds .slds-icon-standard-topic{background-color:#56aadf}.slds .slds-icon-standard-unmatched{background-color:#62b7ed}.slds .slds-icon-standard-marketing-actions{background-color:#6bbd6e}.slds .slds-icon-standard-marketing-resources{background-color:black}.slds .slds-icon-text-default{fill:#54698d}.slds .slds-icon-text-warning{fill:#ffb75d}.slds .slds-icon-text-error{fill:#c23934}.slds .slds-icon--x-small{line-height:1;width:1rem;height:1rem}.slds .slds-icon--small{line-height:1;width:1.5rem;height:1.5rem}.slds .slds-icon--large{width:3rem;height:3rem}.slds .slds-card{padding:0;border-radius:0.25rem;background-clip:padding-box;background-color:#f4f6f9;border:1px solid #d8dde6}.slds .slds-card+.slds-card{margin-top:1rem}.slds .slds-card__header{padding:0.75rem 0.75rem 0.25rem}.slds .slds-card__body{padding:0.5rem 0}.slds .slds-card__footer{padding:0.25rem 1rem 0.5rem}.slds .slds-card .slds-tile{margin:0.5rem;padding:0.5rem}.slds .slds-card--empty .slds-card__body{text-align:center}.slds .slds-form-element{position:relative}.slds .slds-form-element__helper{font-size:0.75rem}.slds .slds-form-element__label{display:inline-block;color:#54698d;font-size:0.75rem;line-height:1.5;margin-right:0.75rem;margin-bottom:0.25rem}.slds .slds-form-element__label:empty{margin:0}.slds .slds-form-element__help{font-size:0.75rem;margin-top:0.5rem;display:block}.slds .slds-input{background-color:white;color:#16325c;border:1px solid #d8dde6;border-radius:0.25rem;width:100%;-webkit-transition:border 0.1s linear,background-color 0.1s linear;transition:border 0.1s linear,background-color 0.1s linear;display:inline-block;padding:0 1rem 0 0.75rem;line-height:2.125rem;min-height:calc(2.125rem + 2px)}.slds .slds-input:focus,.slds .slds-input:active{outline:0;border-color:#1589ee;background-color:white;box-shadow:0 0 3px #0070D2}.slds .slds-input[disabled],.slds .slds-input.slds-is-disabled{background-color:#e0e5ee;border-color:#a8b7c7;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slds .slds-input[disabled]:focus,.slds .slds-input[disabled]:active,.slds .slds-input.slds-is-disabled:focus,.slds .slds-input.slds-is-disabled:active{box-shadow:none}.slds .slds-input--small{line-height:1.875rem;min-height:calc(1.875rem + 2px);padding-left:0.5rem;padding-right:0.5rem}.slds .slds-input--small::-webkit-input-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds .slds-input--small:-moz-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds .slds-input--small::-moz-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds .slds-input--small:-ms-input-placeholder{color:#54698d;font-weight:400;font-size:0.875rem}.slds .slds-input--bare{background-color:transparent;border:none;color:#16325c}.slds .slds-input--bare:focus,.slds .slds-input--bare:active{outline:0}.slds .slds-input-has-icon{position:relative}.slds .slds-input-has-icon .slds-input__icon{width:1rem;height:1rem;position:absolute;top:50%;margin-top:-0.5rem;fill:#54698d}.slds .slds-input-has-icon--left .slds-input__icon{left:0.75rem}.slds .slds-input-has-icon--left .slds-input,.slds .slds-input-has-icon--left .slds-input--bare{padding-left:2rem}.slds .slds-input-has-icon--right .slds-input__icon{right:0.75rem}.slds .slds-input-has-icon--right .slds-input,.slds .slds-input-has-icon--right .slds-input--bare{padding-right:2rem}.slds .slds-textarea{background-color:white;color:#16325c;border:1px solid #d8dde6;border-radius:0.25rem;width:100%;-webkit-transition:border 0.1s linear,background-color 0.1s linear;transition:border 0.1s linear,background-color 0.1s linear;resize:vertical;padding:0.5rem 0.75rem}.slds .slds-textarea:focus,.slds .slds-textarea:active{outline:0;border-color:#1589ee;background-color:white;box-shadow:0 0 3px #0070D2}.slds .slds-textarea[disabled],.slds .slds-textarea.slds-is-disabled{background-color:#e0e5ee;border-color:#a8b7c7;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slds .slds-textarea[disabled]:focus,.slds .slds-textarea[disabled]:active,.slds .slds-textarea.slds-is-disabled:focus,.slds .slds-textarea.slds-is-disabled:active{box-shadow:none}.slds .slds-radio{display:inline-block}.slds .slds-radio .slds-radio--faux{width:1rem;height:1rem;display:inline-block;position:relative;vertical-align:middle;border:1px solid #d8dde6;border-radius:50%;background:white;-webkit-transition:border 0.1s linear,background-color 0.1s linear;transition:border 0.1s linear,background-color 0.1s linear}.slds .slds-radio .slds-form-element__label{display:inline;vertical-align:middle;font-size:0.875rem}.slds .slds-radio [type="radio"]{width:1px;height:1px;border:0;clip:rect(0 0 0 0);margin:-1px;overflow:hidden;padding:0;position:absolute}.slds .slds-radio [type="radio"]:checked>.slds-radio--faux,.slds .slds-radio [type="radio"]:checked ~ .slds-radio--faux{background:white}.slds .slds-radio [type="radio"]:checked>.slds-radio--faux:after,.slds .slds-radio [type="radio"]:checked ~ .slds-radio--faux:after{width:0.5rem;height:0.5rem;content:'';position:absolute;top:50%;left:50%;-webkit-transform:translate3d(-50%, -50%, 0);transform:translate3d(-50%, -50%, 0);border-radius:50%;background:#1589ee}.slds .slds-radio [type="radio"]:focus>.slds-radio--faux,.slds .slds-radio [type="radio"]:focus ~ .slds-radio--faux{border-color:#1589ee;box-shadow:0 0 3px #0070D2}.slds .slds-radio [type="radio"][disabled]{cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slds .slds-radio [type="radio"][disabled] ~ .slds-radio--faux{background-color:#e0e5ee;border-color:#a8b7c7}.slds .slds-has-error .slds-radio [type="radio"]>.slds-radio--faux,.slds .slds-has-error .slds-radio [type="radio"] ~ .slds-radio--faux{border-color:#c23934;border-width:2px}.slds .slds-has-error .slds-radio [type="radio"]:checked>.slds-radio--faux,.slds .slds-has-error .slds-radio [type="radio"]:checked ~ .slds-radio--faux{background:white}.slds .slds-has-error .slds-radio [type="radio"]:checked>.slds-radio--faux:after,.slds .slds-has-error .slds-radio [type="radio"]:checked ~ .slds-radio--faux:after{background:#d4504c}.slds .slds-is-required>.slds-radio [type="radio"]>.slds-form-element__label:before,.slds .slds-is-required>.slds-radio [type="radio"] ~ .slds-form-element__label:before{content:'*';color:#c23934;position:absolute;left:-0.5rem}.slds .slds-form-element__control .slds-radio{display:block}.slds .slds-form-element .slds-radio [type="radio"]>.slds-radio--faux,.slds .slds-form-element .slds-radio [type="radio"] ~ .slds-radio--faux{margin-right:0.5rem}.slds .slds-checkbox{display:inline-block}.slds .slds-checkbox .slds-checkbox--faux{width:1rem;height:1rem;display:inline-block;position:relative;vertical-align:middle;border:1px solid #d8dde6;border-radius:0.125rem;background:white;-webkit-transition:border 0.1s linear,background-color 0.1s linear;transition:border 0.1s linear,background-color 0.1s linear}.slds .slds-checkbox .slds-form-element__label{display:inline;vertical-align:middle;font-size:0.875rem}.slds .slds-checkbox [type="checkbox"]{width:1px;height:1px;border:0;clip:rect(0 0 0 0);margin:-1px;overflow:hidden;padding:0;position:absolute}.slds .slds-checkbox [type="checkbox"]:checked>.slds-checkbox--faux:after,.slds .slds-checkbox [type="checkbox"]:checked ~ .slds-checkbox--faux:after{display:block;content:'';height:0.25rem;width:0.5rem;position:absolute;top:50%;left:50%;-webkit-transform:translate3d(-50%, -50%, 0) rotate(-45deg);transform:translate3d(-50%, -50%, 0) rotate(-45deg);border-bottom:2px solid #1589ee;border-left:2px solid #1589ee}.slds .slds-checkbox [type="checkbox"]:focus>.slds-checkbox--faux,.slds .slds-checkbox [type="checkbox"]:focus ~ .slds-checkbox--faux{content:'';border-color:#1589ee;box-shadow:0 0 3px #0070D2}.slds .slds-checkbox [type="checkbox"]:focus:checked>.slds-checkbox--faux,.slds .slds-checkbox [type="checkbox"]:focus:checked ~ .slds-checkbox--faux{border-color:#1589ee;background-color:white}.slds .slds-checkbox [type="checkbox"][disabled]>.slds-checkbox--faux,.slds .slds-checkbox [type="checkbox"][disabled] ~ .slds-checkbox--faux{background-color:#e0e5ee;border-color:#a8b7c7}.slds .slds-checkbox [type="checkbox"][disabled]>.slds-checkbox--faux:after,.slds .slds-checkbox [type="checkbox"][disabled] ~ .slds-checkbox--faux:after{border-color:white}.slds .slds-has-error .slds-checkbox [type="checkbox"]>.slds-checkbox--faux,.slds .slds-has-error .slds-checkbox [type="checkbox"] ~ .slds-checkbox--faux{border-color:#c23934;border-width:2px}.slds .slds-has-error .slds-checkbox [type="checkbox"]:checked>.slds-checkbox--faux,.slds .slds-has-error .slds-checkbox [type="checkbox"]:checked ~ .slds-checkbox--faux{border-color:#c23934;background-color:white}.slds .slds-has-error .slds-checkbox [type="checkbox"]:checked>.slds-checkbox--faux:after,.slds .slds-has-error .slds-checkbox [type="checkbox"]:checked ~ .slds-checkbox--faux:after{border-color:#d4504c}.slds .slds-is-required>.slds-checkbox [type="checkbox"]>.slds-form-element__label:before,.slds .slds-is-required>.slds-checkbox [type="checkbox"] ~ .slds-form-element__label:before{content:'*';color:#c23934;position:absolute;left:-0.5rem}.slds .slds-form-element .slds-checkbox [type="checkbox"]>.slds-checkbox--faux,.slds .slds-form-element .slds-checkbox [type="checkbox"] ~ .slds-checkbox--faux{margin-right:0.5rem}.slds .slds-select{background-color:white;color:#16325c;border:1px solid #d8dde6;border-radius:0.25rem;width:100%;-webkit-transition:border 0.1s linear,background-color 0.1s linear;transition:border 0.1s linear,background-color 0.1s linear;height:2.125rem}.slds .slds-select:focus,.slds .slds-select:active{outline:0;border-color:#1589ee;background-color:white;box-shadow:0 0 3px #0070D2}.slds .slds-select[disabled],.slds .slds-select.slds-is-disabled{background-color:#e0e5ee;border-color:#a8b7c7;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slds .slds-select[disabled]:focus,.slds .slds-select[disabled]:active,.slds .slds-select.slds-is-disabled:focus,.slds .slds-select.slds-is-disabled:active{box-shadow:none}.slds .slds-select[size]{min-height:2.125rem;height:inherit}.slds .slds-select[size] option{padding:0.5rem}.slds .slds-select_container{position:relative}.slds .slds-select_container .slds-select{-moz-appearance:none;-webkit-appearance:none;padding-left:0.5rem;padding-right:1.5rem}.slds .slds-select_container .slds-select::-ms-expand{display:none}.slds .slds-select_container:before,.slds .slds-select_container:after{position:absolute;content:'';display:block;right:0.5rem;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent}.slds .slds-select_container:before{border-bottom:5px solid #061c3f;top:calc((2.125rem / 2) - 6px)}.slds .slds-select_container:after{border-top:5px solid #061c3f;bottom:calc((2.125rem / 2) - 6px)}.slds .slds-picklist--draggable .slds-button{margin:0.25rem}.slds .slds-picklist--draggable .slds-button:first-of-type{margin-top:1.5rem}.slds .slds-picklist__options{border:1px solid #d8dde6;border-radius:0.25rem;padding:0.25rem 0;width:15rem;height:15rem;background-color:white}.slds .slds-picklist__options--multi{overflow:auto}.slds .slds-picklist__item{position:relative;line-height:1.5}.slds .slds-picklist__item>a,.slds .slds-picklist__item>span{display:block;padding:0.5rem 0.75rem}.slds .slds-picklist__item>a:hover,.slds .slds-picklist__item>span:hover{background-color:#f4f6f9;cursor:pointer}.slds .slds-picklist__item>a:active,.slds .slds-picklist__item>span:active{background-color:#eef1f6}.slds .slds-picklist__item[aria-selected="true"]{background-color:#eef1f6}@media (min-width: 48em){.slds .slds-form--horizontal{text-align:right}}@media (min-width: 48em){.slds .slds-form--horizontal .slds-form-element>.slds-form-element__label{display:inline-block;max-width:33%;vertical-align:top;position:relative;top:0.3125rem;margin-bottom:0}.slds .slds-form--horizontal .slds-form-element>.slds-form-element__label--top{top:0}}.slds .slds-form--horizontal .slds-form-element__control{width:100%}@media (max-width: 64em){.slds .slds-form--horizontal .slds-form-element__control{vertical-align:top}}@media (min-width: 48em){.slds .slds-form--horizontal .slds-form-element__control{width:calc(66% - (0.75rem * 2));display:inline-block;text-align:left}}.slds .slds-form--horizontal .slds-form-element__control .slds-checkbox,.slds .slds-form--horizontal .slds-form-element__control .slds-radio{display:block}@media (max-width: 30em){.slds .slds-form--horizontal .slds-form-element{margin-bottom:1rem}}.slds .slds-form--horizontal .slds-form-element+.slds-form-element{margin-top:1rem}.slds .slds-form--stacked .slds-form-element{display:block}.slds .slds-form--stacked .slds-form-element+.slds-form-element{margin-top:0.5rem}.slds .slds-form--stacked .slds-form-element .slds-checkbox,.slds .slds-form--stacked .slds-form-element .slds-radio{display:block}@media (max-width: 30em){.slds .slds-form--inline .slds-form-element{margin-bottom:0.75rem}}@media (min-width: 30em){.slds .slds-form--inline .slds-form-element{margin-right:1rem}.slds .slds-form--inline .slds-form-element,.slds .slds-form--inline .slds-form-element__control{display:inline-block;vertical-align:middle}}.slds .slds-form--compound .slds-form-element__row{margin-bottom:0.5rem}.slds .slds-form--compound .slds-form-element__row+.slds-form-element__row{clear:both}.slds .slds-form--compound .slds-form-element__control{display:inline-block;position:relative}.slds .slds-form--compound .slds-form-element__control+.slds-form-element__control{padding-left:0.5rem}@media (min-width: 48em){.slds .slds-form--compound .slds-form-element__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@media (min-width: 48em){.slds .slds-form--compound--horizontal .slds-form-element__label{float:left;text-align:right;position:relative;top:0.5rem;min-width:5rem;max-width:33%}}.slds .slds-form-element__static{display:inline-block;line-height:2.125rem;min-height:calc(2.125rem + 2px)}.slds .slds-is-required>.slds-form-element__label:before{content:'*';color:#c23934;position:absolute;left:-0.5rem}.slds .slds-has-error .slds-input{background-color:white;border-color:#c23934;box-shadow:#c23934 0 0 0 1px inset;background-clip:padding-box}.slds .slds-has-error .slds-input:focus,.slds .slds-has-error .slds-input:active{box-shadow:#c23934 0 0 0 1px inset,0 0 3px #0070D2}.slds .slds-has-error .slds-textarea{background-color:white;border-color:#c23934;box-shadow:#c23934 0 0 0 1px inset;background-clip:padding-box}.slds .slds-has-error .slds-textarea:focus,.slds .slds-has-error .slds-textarea:active{box-shadow:#c23934 0 0 0 1px inset,0 0 3px #0070D2}.slds .slds-has-error .slds-select{background-color:white;border-color:#c23934;box-shadow:#c23934 0 0 0 1px inset;background-clip:padding-box}.slds .slds-has-error .slds-select:focus,.slds .slds-has-error .slds-select:active{box-shadow:#c23934 0 0 0 1px inset,0 0 3px #0070D2}.slds .slds-has-error .slds-form-element__help{color:#c23934}.slds .slds-has-error .slds-input__icon{fill:#c23934}.slds .slds-modal--form .slds-modal__container,.slds .slds-modal--form .slds-modal__header{border-radius:0}.slds .slds-modal--form .slds-modal__container{margin:0;padding:0}.slds .slds-modal--form .slds-modal__header .slds-button{display:inline-block;width:auto}.slds .slds-modal--form .slds-modal__header .slds-button:first-child{float:left}.slds .slds-modal--form .slds-modal__header .slds-button:first-child+.slds-button{float:right;margin-top:0}.slds .slds-grid{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative}.slds .slds-grid--frame{width:100vw;height:100vh;overflow:hidden}.slds .slds-grid--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.slds-text-longform .slds .slds-grid{padding-left:0}.slds .slds-grid,.slds-text-longform .slds .slds-grid{margin-left:0;list-style:none}.slds .slds-col,.slds .slds-col--padded{-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto}.slds-text-longform .slds .slds-col,.slds-text-longform .slds .slds-col--padded{list-style:none}.slds .slds-col--padded{padding-right:0.75rem;padding-left:0.75rem}.slds .slds-col--padded-medium{padding-right:1rem;padding-left:1rem}.slds .slds-col--padded-large{padding-right:1.5rem;padding-left:1.5rem}.slds .slds-grid--pull-padded,.slds .slds-col--padded>.slds-grid{margin-right:-0.75rem;margin-left:-0.75rem}.slds .slds-grid--pull-padded-medium,.slds .slds-col--padded-medium>.slds-grid{margin-right:-1rem;margin-left:-1rem}.slds .slds-grid--pull-padded-large,.slds .slds-col--padded-large>.slds-grid{margin-right:-1.5rem;margin-left:-1.5rem}@media (min-width: 64em){.slds .slds-col-rule--left{border-left:1px solid #f4f6f9}.slds .slds-col-rule--right{border-right:1px solid #f4f6f9}.slds .slds-col-rule--top{border-top:1px solid #f4f6f9}.slds .slds-col-rule--bottom{border-bottom:1px solid #f4f6f9}}.slds .slds-wrap{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.slds .slds-nowrap{-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}@media (min-width: 30em){.slds .slds-nowrap--small{-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}}@media (min-width: 48em){.slds .slds-nowrap--medium{-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}}@media (min-width: 64em){.slds .slds-nowrap--large{-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch}}.slds .slds-has-flexi-truncate{-webkit-box-flex:1;-webkit-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%;min-width:0}.slds .slds-no-flex{-webkit-box-flex:0;-webkit-flex:none;-ms-flex:none;flex:none}.slds .slds-no-space{min-width:0}.slds .slds-grow{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1}.slds .slds-grow-none{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0}.slds .slds-shrink{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1}.slds .slds-shrink-none{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.slds .slds-container--small{max-width:36rem}.slds .slds-container--medium{max-width:60rem}.slds .slds-container--large{max-width:80rem}.slds .slds-container--fluid{width:100%}.slds .slds-container--center{margin-left:auto;margin-right:auto}.slds .slds-container--left{margin-right:auto}.slds .slds-container--right{margin-left:auto}.slds .slds-grid--align-center{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.slds .slds-grid--align-center .slds-col,.slds .slds-grid--align-center .slds-col--padded{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0}.slds .slds-grid--align-space{-webkit-justify-content:space-around;-ms-flex-pack:distribute;justify-content:space-around}.slds .slds-grid--align-space .slds-col,.slds .slds-grid--align-space .slds-col--padded{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0}.slds .slds-grid--align-spread{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.slds .slds-grid--align-spread .slds-col,.slds .slds-grid--align-spread .slds-col--padded{-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0}.slds .slds-align-top{vertical-align:top;-webkit-align-self:flex-start;-ms-flex-item-align:start;align-self:flex-start}.slds .slds-align-middle{vertical-align:middle;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.slds .slds-align-bottom{vertical-align:bottom;-webkit-align-self:flex-end;-ms-flex-item-align:end;align-self:flex-end}.slds .slds-align-content-center{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.slds .slds-grid--overflow{-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap}.slds .slds-grid--overflow .slds-col{min-width:11.25em;max-width:22.5em}.slds .slds-tooltip{position:relative;border-radius:0.25rem;max-width:20rem;min-height:2rem;z-index:6000;background-color:#061c3f}.slds .slds-tooltip__body{padding:0.5rem 0.75rem;font-size:0.75rem;color:white}.slds .slds-popover{position:relative;border-radius:0.25rem;max-width:20rem;min-height:2rem;z-index:6000;background-color:white;box-shadow:0px 2px 3px 0px rgba(0,0,0,0.16);border:1px solid #d8dde6}.slds .slds-popover__body{position:relative;padding:0.5rem 0.75rem}.slds .slds-popover--tooltip{background:#061c3f;border:none}.slds .slds-popover--tooltip .slds-popover__body{font-size:0.75rem;color:white}.slds .slds-rise-from-ground{visibility:visible;opacity:1;-webkit-transform:translate(0%, 0%);transform:translate(0%, 0%);-webkit-transition:opacity 0.1s linear,visibility 0.1s linear,-webkit-transform 0.1s linear;transition:opacity 0.1s linear,visibility 0.1s linear,transform 0.1s linear;will-change:transform}.slds .slds-fall-into-ground{visibility:hidden;opacity:0;-webkit-transform:translate(0%, 0%);transform:translate(0%, 0%);-webkit-transition:opacity 0.1s linear,visibility 0.1s linear,-webkit-transform 0.1s linear;transition:opacity 0.1s linear,visibility 0.1s linear,transform 0.1s linear;will-change:transform}.slds .slds-slide-from-bottom-to-top{-webkit-transform:translateY(10%);transform:translateY(10%);will-change:transform}.slds .slds-slide-from-top-to-bottom{-webkit-transform:translateY(-10%);transform:translateY(-10%);will-change:transform}.slds .slds-slide-from-right-to-left{-webkit-transform:translateX(5%);transform:translateX(5%);will-change:transform}.slds .slds-slide-from-left-to-right{-webkit-transform:translateX(-5%);transform:translateX(-5%);will-change:transform}.slds .slds-popover--panel .slds-popover__header{background:#f4f6f9;padding:1rem;border-radius:0.25rem 0.25rem 0 0}.slds .slds-popover--panel .slds-popover__body{padding:0}.slds .slds-popover--panel .slds-popover__body-list{padding:1rem;border-top:1px solid #d8dde6}.slds .slds-popover--panel.slds-nubbin--left-top:before,.slds .slds-popover--panel.slds-nubbin--left-top:after,.slds .slds-popover--panel.slds-nubbin--right-top:before,.slds .slds-popover--panel.slds-nubbin--right-top:after,.slds .slds-popover--panel.slds-nubbin--top-left:before,.slds .slds-popover--panel.slds-nubbin--top-left:after,.slds .slds-popover--panel.slds-nubbin--top-right:before,.slds .slds-popover--panel.slds-nubbin--top-right:after{background:#f4f6f9}.slds .slds-nubbin--top:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--top:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--top:after{box-shadow:-1px -1px 0 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--top-left:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--top-left:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--top-left:after{box-shadow:-1px -1px 0 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--top-left:before,.slds .slds-nubbin--top-left:after{left:2rem;top:-0.5rem}.slds .slds-nubbin--top-right:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--top-right:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--top-right:after{box-shadow:-1px -1px 0 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--top-right:before,.slds .slds-nubbin--top-right:after{left:auto;right:2rem;top:-0.5rem;margin-right:-0.5rem}.slds .slds-nubbin--bottom:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;bottom:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--bottom:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;bottom:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--bottom:after{box-shadow:2px 2px 4px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--bottom-left:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;bottom:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--bottom-left:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;bottom:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--bottom-left:after{box-shadow:2px 2px 4px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--bottom-left:before,.slds .slds-nubbin--bottom-left:after{left:2rem;top:100%;margin-top:-0.5rem}.slds .slds-nubbin--bottom-right:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;bottom:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--bottom-right:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;left:50%;bottom:-0.5rem;margin-left:-0.5rem}.slds .slds-nubbin--bottom-right:after{box-shadow:2px 2px 4px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--bottom-right:before,.slds .slds-nubbin--bottom-right:after{left:auto;right:2rem;top:100%;margin-top:-0.5rem;margin-right:-0.5rem}.slds .slds-nubbin--left:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;left:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--left:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;left:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--left:after{box-shadow:-1px 1px 2px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--left-top:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;left:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--left-top:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;left:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--left-top:after{box-shadow:-1px 1px 2px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--left-top:before,.slds .slds-nubbin--left-top:after{top:2rem}.slds .slds-nubbin--left-bottom:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;left:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--left-bottom:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;left:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--left-bottom:before{margin-bottom:-1px}.slds .slds-nubbin--left-bottom:after{box-shadow:-1px 2px 3px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--left-bottom:before,.slds .slds-nubbin--left-bottom:after{top:auto;bottom:2rem}.slds .slds-nubbin--right:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;right:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--right:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;right:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--right:after{box-shadow:1px -1px 2px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--right-top:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;right:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--right-top:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;right:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--right-top:after{box-shadow:1px -1px 2px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--right-top:before,.slds .slds-nubbin--right-top:after{top:2rem}.slds .slds-nubbin--right-bottom:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;right:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--right-bottom:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:inherit;top:50%;right:-0.5rem;margin-top:-0.5rem}.slds .slds-nubbin--right-bottom:before{margin-bottom:-1px}.slds .slds-nubbin--right-bottom:after{box-shadow:2px -1px 3px 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-nubbin--right-bottom:before,.slds .slds-nubbin--right-bottom:after{top:auto;bottom:2rem}.slds .slds-dropdown{position:absolute;z-index:7000;left:50%;float:left;min-width:6rem;max-width:20rem;margin-top:0.125rem;border:1px solid #d8dde6;border-radius:0.25rem;padding:0.25rem 0;background:white;box-shadow:0px 2px 3px 0px rgba(0,0,0,0.16);-webkit-transform:translateX(-50%);transform:translateX(-50%)}.slds .slds-dropdown--left{left:0;-webkit-transform:translateX(0);transform:translateX(0)}.slds .slds-dropdown--right{left:auto;right:0;-webkit-transform:translateX(0);transform:translateX(0)}.slds .slds-dropdown--bottom{bottom:100%}.slds .slds-dropdown--small{min-width:15rem}.slds .slds-dropdown--medium{min-width:20rem}.slds .slds-dropdown--large{min-width:25rem;max-width:512px}.slds .slds-dropdown mark{font-weight:700;background-color:transparent}.slds .slds-dropdown[class*="slds-nubbin--top"]{margin-top:0.5rem}.slds .slds-dropdown[class*="slds-nubbin--bottom"]{margin-bottom:0.5rem}.slds .slds-dropdown--nubbin-top{margin-top:0.5rem}.slds .slds-dropdown--nubbin-top:before{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:white;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-dropdown--nubbin-top:after{width:1rem;height:1rem;position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);content:"";background-color:white;left:50%;top:-0.5rem;margin-left:-0.5rem}.slds .slds-dropdown--nubbin-top:before{background:white}.slds .slds-dropdown--nubbin-top:after{background:white;box-shadow:-1px -1px 0 0px rgba(0,0,0,0.16);z-index:-1}.slds .slds-dropdown--nubbin-top.slds-dropdown--left{left:-1rem}.slds .slds-dropdown--nubbin-top.slds-dropdown--left:before,.slds .slds-dropdown--nubbin-top.slds-dropdown--left:after{left:1.5rem;margin-left:0}.slds .slds-dropdown--nubbin-top.slds-dropdown--right{right:-1rem}.slds .slds-dropdown--nubbin-top.slds-dropdown--right:before,.slds .slds-dropdown--nubbin-top.slds-dropdown--right:after{left:auto;right:1.5rem;margin-left:0}.slds .slds-dropdown__header{padding:0.5rem 0.75rem}.slds .slds-dropdown__item{line-height:1.5}.slds .slds-dropdown__item>a{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;padding:0.5rem 0.75rem;color:#16325c;white-space:nowrap;cursor:pointer}.slds .slds-dropdown__item>a:hover,.slds .slds-dropdown__item>a:focus{outline:0;text-decoration:none;background-color:#f4f6f9}.slds .slds-dropdown__item>a:active{text-decoration:none;background-color:#eef1f6}.slds .slds-dropdown__item>a[aria-disabled="true"]{color:#d8dde6;cursor:default}.slds .slds-dropdown__item>a[aria-disabled="true"]:hover{background-color:transparent}.slds .slds-dropdown__item .slds-icon--selected{opacity:0;-webkit-transition:opacity 0.05s ease;transition:opacity 0.05s ease}.slds .slds-dropdown__item.slds-is-selected .slds-icon--selected{fill:#0070d2;opacity:1}.slds .slds-dropdown .slds-has-icon{position:relative}.slds .slds-dropdown .slds-has-icon--left>a,.slds .slds-dropdown .slds-has-icon--left>span{padding-left:2rem}.slds .slds-dropdown .slds-has-icon--right>a,.slds .slds-dropdown .slds-has-icon--right>span{padding-right:2rem}.slds .slds-dropdown .slds-has-icon--left-right>a,.slds .slds-dropdown .slds-has-icon--left-right>span{padding-left:2rem;padding-right:2rem}.slds .slds-dropdown .slds-has-icon .slds-icon{width:1rem;height:1rem;position:absolute;top:50%;margin-top:-0.5rem;fill:#54698d}.slds .slds-dropdown .slds-has-icon .slds-icon--left{left:0.75rem}.slds .slds-dropdown .slds-has-icon .slds-icon--right{right:0.75rem}.slds .slds-dropdown-trigger{position:relative;display:inline-block}.slds .slds-dropdown-trigger .slds-dropdown{visibility:hidden;opacity:0;-webkit-transition:opacity 0.1s linear,visibility 0.1s linear;transition:opacity 0.1s linear,visibility 0.1s linear}.slds .slds-dropdown-trigger:hover,.slds .slds-dropdown-trigger:focus{outline:0}.slds .slds-dropdown-trigger:hover .slds-dropdown,.slds .slds-dropdown-trigger:focus .slds-dropdown{visibility:visible;opacity:1;-webkit-transition:opacity 0.1s linear,visibility 0.1s linear;transition:opacity 0.1s linear,visibility 0.1s linear}.slds .slds-dropdown-trigger--click .slds-dropdown{display:none}.slds .slds-dropdown-trigger--click.slds-is-open .slds-dropdown{display:block;visibility:visible;opacity:1}.slds .slds-dropdown-trigger>[class*="slds-button--icon"] ~ .slds-dropdown--left[class*="slds-nubbin"]{left:-1rem}.slds .slds-dropdown-trigger>[class*="slds-button--icon"] ~ .slds-dropdown--right[class*="slds-nubbin"]{right:-1rem}.slds .slds-picklist{position:relative}.slds .slds-picklist .slds-dropdown{width:15rem;max-height:calc((((0.875rem * 1.5) + 1rem) * 5) + 0.5rem + 2px);overflow-y:auto;-webkit-overflow-scrolling:touch}.slds .slds-picklist--fluid .slds-picklist__label,.slds .slds-picklist--fluid .slds-dropdown{width:auto;min-width:0;max-width:15rem}.slds .slds-picklist__label{padding-right:2rem;width:15rem;color:#16325c;text-align:left}.slds .slds-picklist__label .slds-icon{width:0.75rem;height:0.75rem;position:absolute;right:1rem;top:50%;margin-top:-0.375rem;fill:#54698d}.slds .slds-picklist__label[aria-disabled="true"]{border-color:#a8b7c7;background-color:#e0e5ee;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slds .slds-picklist__label .slds-truncate{display:block}.slds .slds-dropdown--actions a{color:#0070d2}.slds .slds-action-overflow--touch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9001}.slds .slds-action-overflow--touch__container{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;height:100%}.slds .slds-action-overflow--touch__content{padding-top:33.33333333333333%;overflow:hidden;overflow-y:auto}.slds .slds-action-overflow--touch__body{position:relative;top:2rem;background:white;box-shadow:0 -2px 4px rgba(0,0,0,0.07)}.slds .slds-action-overflow--touch__footer{position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;border-top:1px solid #d8dde6;padding:0.75rem 1rem;background-color:#f4f6f9;box-shadow:0 -2px 4px #F4F6F9}.slds .slds-datepicker{padding:0;font-size:0.75rem}.slds .slds-datepicker th,.slds .slds-datepicker td{text-align:center}.slds .slds-datepicker th{padding:0.5rem;font-weight:400;color:#54698d}.slds .slds-datepicker td{padding:0.25rem;text-align:center;font-size:0.75rem}.slds .slds-datepicker td>.slds-day{width:2rem;height:2rem;display:block;position:relative;min-width:2rem;line-height:2rem;border-radius:50%}.slds .slds-datepicker td:hover:not(.slds-disabled-text)>.slds-day,.slds .slds-datepicker td:focus:not(.slds-disabled-text)>.slds-day,.slds .slds-datepicker td.slds-is-today>.slds-day{background:#f4f6f9;cursor:pointer}.slds .slds-datepicker td.slds-is-selected:not(.slds-disabled-text)>.slds-day{background:#005fb2;color:white}.slds .slds-datepicker td.slds-is-selected-multi>.slds-day{overflow:visible}.slds .slds-datepicker td.slds-is-selected-multi+.slds-is-selected-multi>.slds-day:before{content:'';position:absolute;background:#005fb2;top:0;left:-50%;height:100%;width:2.5rem;-webkit-transform:translateX(-0.5rem);transform:translateX(-0.5rem);z-index:-1}.slds .slds-datepicker .slds-has-multi-row-selection .slds-is-selected-multi:first-child>.slds-day:before,.slds .slds-datepicker .slds-has-multi-row-selection .slds-is-selected-multi:last-child>.slds-day:after{content:'';position:absolute;background:#005fb2;top:0;left:-50%;height:100%;width:2.5rem;-webkit-transform:translateX(-0.5rem);transform:translateX(-0.5rem);z-index:-1}.slds .slds-datepicker .slds-has-multi-row-selection .slds-is-selected-multi:first-child>.slds-day:before{left:0;-webkit-transform:translateX(-0.25rem);transform:translateX(-0.25rem)}.slds .slds-datepicker .slds-has-multi-row-selection .slds-is-selected-multi:last-child>.slds-day:after{left:auto;right:0;-webkit-transform:translateX(0.25rem);transform:translateX(0.25rem)}.slds .slds-datepicker__filter{padding:0.25rem}.slds .slds-datepicker__filter--month{padding:0 0.25rem 0 0}.slds .slds-disabled-text{color:#d8dde6}.slds .slds-datepicker--time{max-width:12rem;max-height:13.5rem;overflow:hidden;overflow-y:auto}.slds .slds-datepicker--time__list>li{white-space:nowrap;padding:0.5rem;padding-left:2rem;padding-right:2rem}.slds .slds-datepicker--time__list>li:hover,.slds .slds-datepicker--time__list>li:focus{background:#f4f6f9;text-decoration:none;cursor:pointer}.slds .slds-publisher.slds-is-active .slds-publisher__toggle-visibility{display:inherit}.slds .slds-publisher.slds-is-active .slds-publisher__input{line-height:1.5;height:auto;max-height:10rem;resize:vertical;padding-top:0.75rem;padding-bottom:0.75rem}.slds .slds-publisher__input{line-height:2.125rem;padding:0 1rem;resize:none;min-height:calc(2.125rem + 2px);max-height:calc(2.125rem + 2px);width:100%;-webkit-transition:min-height 0.4s ease,max-height 0.4s ease;transition:min-height 0.4s ease,max-height 0.4s ease}.slds .slds-publisher__actions>.slds-button{margin-left:0.75rem}.slds .slds-publisher .slds-publisher__toggle-visibility{display:none}.slds .slds-publisher--discussion{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-publisher--discussion.slds-is-active{display:block}.slds .slds-publisher--comment{background-color:white;color:#16325c;border:1px solid #d8dde6;border-radius:0.25rem;width:100%;position:relative;min-height:calc(2.125rem + 2px);max-height:calc(2.125rem + 2px);-webkit-transition:min-height 0.4s ease,max-height 0.4s ease;transition:min-height 0.4s ease,max-height 0.4s ease}.slds .slds-publisher--comment.slds-is-active{min-height:6rem;max-height:15rem}.slds .slds-publisher--comment.slds-is-active .slds-publisher__actions{opacity:1}.slds .slds-publisher--comment.slds-has-focus{outline:0;border-color:#1589ee;background-color:white;box-shadow:0 0 3px #0070D2}.slds .slds-publisher--comment .slds-publisher__actions{opacity:0;padding:0 0.75rem 0.75rem}.slds .slds-publisher--comment .slds-attachments{padding:0.5rem 0.75rem}.slds .slds-feed{position:relative}.slds .slds-feed__list{margin:0;padding:0}.slds .slds-feed__item{padding:1rem 0}.slds .slds-feed__item+.slds-feed__item{border-top:1px solid #d8dde6}.slds .slds-comment__content{padding-top:0.5rem;padding-bottom:0.5rem}.slds .slds-comment .slds-text-body--small a{color:inherit}.slds .slds-comment__content{padding-top:0.5rem;padding-bottom:0.5rem}.slds .slds-tags{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-tags__list{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-tags__item{margin-left:0.25rem}.slds .slds-tags__item:after{content:', '}.slds .slds-tags__item:last-child:after{content:none}.slds .slds-comment__replies{padding-top:1rem;margin-left:3.75rem}.slds .slds-comment__replies>:last-child,.slds .slds-comment__replies>:last-child .slds-comment{padding-bottom:0}.slds .slds-comment__replies>:last-child:before,.slds .slds-comment__replies>:last-child .slds-comment:before{content:none}.slds .slds-comment__replies .slds-comment{position:relative;margin-bottom:0;padding-bottom:1rem}.slds .slds-comment__replies .slds-comment:before{content:'';background:#d8dde6;height:100%;width:1px;position:absolute;left:1.125rem;top:0;bottom:0;margin-left:-0.5px;z-index:-1}.slds .slds-comment__replies .slds-avatar{border:2px solid white}.slds .slds-comment__overflow{margin-bottom:1rem}.slds .slds-attachments{padding:0.5rem 0}.slds .slds-attachments:empty{padding:0}.slds .slds-attachments__item+.slds .slds-attachments__item{margin-top:1rem}.slds .slds-modal{opacity:0;visibility:hidden;-webkit-transition:-webkit-transform 0.1s linear,opacity 0.1s linear;transition:transform 0.1s linear,opacity 0.1s linear;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9001}.slds .slds-modal__container{position:relative;-webkit-transform:translate(0, 0);transform:translate(0, 0);-webkit-transition:-webkit-transform 0.1s linear,opacity 0.1s linear;transition:transform 0.1s linear,opacity 0.1s linear;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;margin:0 2rem;height:100%;padding:3rem 0;border-radius:0.25rem}@media (min-width: 48em){.slds .slds-modal__container{margin:0 auto;width:50%;max-width:40rem;min-width:20rem}}.slds .slds-modal__header,.slds .slds-modal__content{background:white}.slds .slds-modal__header,.slds .slds-modal__footer{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.slds .slds-modal__header{position:relative;border-top-right-radius:0.25rem;border-top-left-radius:0.25rem;border-bottom:2px solid #d8dde6;padding:1.5rem 1rem;text-align:center}.slds .slds-modal__header+.slds-modal__menu{border-top-left-radius:0;border-top-right-radius:0}.slds .slds-modal__content{padding:1rem;overflow:hidden;overflow-y:auto}.slds .slds-modal__menu{position:relative;border-radius:0.25rem;padding:1rem;background-color:#f4f6f9}.slds .slds-modal__footer{border-top:2px solid #d8dde6;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0.25rem;padding:0.75rem 1rem;background-color:#f4f6f9;text-align:right;box-shadow:0px 2px 3px 0px rgba(0,0,0,0.16)}.slds .slds-modal__close{width:3rem;height:3rem;position:absolute;top:-3rem;right:-0.5rem}.slds .slds-modal-backdrop{-webkit-transition-duration:0.4s;transition-duration:0.4s;width:100%;height:100%;opacity:0;visibility:hidden;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(126,140,153,0.8);z-index:9000}.slds .slds-modal-backdrop--open{visibility:visible;opacity:1;-webkit-transition:opacity 0.4s linear;transition:opacity 0.4s linear}.slds .slds-backdrop{-webkit-transition-duration:0.4s;transition-duration:0.4s;width:100%;height:100%;opacity:0;visibility:hidden;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(126,140,153,0.8);z-index:9000}.slds .slds-backdrop--open{visibility:visible;opacity:1;-webkit-transition:opacity 0.4s linear;transition:opacity 0.4s linear}.slds .slds-fade-in-open{opacity:1;visibility:visible;-webkit-transition:opacity 0.1s linear;transition:opacity 0.1s linear}.slds .slds-fade-in-open .slds-modal__container-reset{opacity:1;visibility:visible;-webkit-transform:translate(0, 0);transform:translate(0, 0)}.slds .slds-slide-up-open{opacity:1;visibility:visible;-webkit-transform:translate(0, 0);transform:translate(0, 0);-webkit-transition:opacity 0.1s linear,-webkit-transform 0.2s linear;transition:opacity 0.1s linear,transform 0.2s linear}.slds .slds-slide-up-open .slds-modal__container-reset{opacity:0;visibility:hidden;-webkit-transform:translate(0, 1rem);transform:translate(0, 1rem);-webkit-transition:opacity 0.2s linear,-webkit-transform 0.2s linear;transition:opacity 0.2s linear,transform 0.2s linear}.slds .slds-slide-up-saving{opacity:1;visibility:visible;-webkit-transform:translate(0, -1rem);transform:translate(0, -1rem)}.slds .slds-slide-down-cancel{opacity:1;visibility:visible;-webkit-transform:translate(0, 1rem);transform:translate(0, 1rem)}@media (min-width: 48em){.slds .slds-modal--large .slds-modal__container{width:90%;max-width:none;min-width:40rem}}.slds .slds-modal__footer--directional .slds-button:first-child{float:left}.slds .slds-pill{background-color:white;display:inline-block;padding:0.25rem;border:1px solid #d8dde6;border-radius:0.25rem;vertical-align:middle;line-height:1.5}.slds .slds-pill+.slds-pill{margin-left:0.25rem}.slds .slds-pill:hover{background-color:#f4f6f9}.slds .slds-pill:focus{outline:0;box-shadow:0 0 3px #0070D2}.slds .slds-pill--bare{background-color:transparent;border:none}.slds .slds-pill--bare:hover{background-color:transparent}.slds .slds-pill-container{padding:1px;border:1px solid #d8dde6;border-radius:0.25rem;min-height:calc(2.125rem + 2px)}.slds .slds-pill__container{padding:1px;border:1px solid #d8dde6;border-radius:0.25rem;min-height:calc(2.125rem + 2px)}.slds .slds-pill__label{max-width:13.5rem;display:inline-block;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slds .slds-pill__icon{width:1.25rem;height:1.25rem;margin-right:0.5rem;border-radius:0.125rem}.slds .slds-pill__remove{margin-left:0.5rem}.slds .slds-pill .slds-avatar{margin-right:0.5rem}.slds .slds-spinner--small{width:32px;height:32px}.slds .slds-spinner--medium{width:56px;height:56px}.slds .slds-spinner--large{width:68px;height:68px}.slds .slds-tile+.slds-tile{margin-top:0.5rem}.slds .slds-tile__title,.slds .slds-tile__detail{position:relative}.slds .slds-tile__meta{color:#16325c}.slds .slds-tile--board{position:relative}.slds .slds-tile--board__icon{width:1rem;height:1rem;position:absolute;bottom:0.25rem;right:0.25rem}.slds .slds-tile--board .slds-has-alert{padding-right:1.5rem}.slds .slds-tile__meta{color:#16325c}.slds .slds-tree-container{min-width:7.5rem;max-width:25rem}.slds .slds-tree-container>.slds-text-heading--label{margin-bottom:0.5rem}.slds .slds-tree__item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;line-height:2.125rem;padding-left:1rem}.slds .slds-tree__item a{color:#16325c}.slds .slds-tree__item a:hover,.slds .slds-tree__item a:focus{outline:0;text-decoration:none}.slds .slds-tree__item:hover,.slds .slds-tree__item:focus{background:#f4f6f9;cursor:pointer}.slds .slds-tree__group>.slds .slds-tree__item>a{display:inline-block;padding-left:1.5rem}.slds-nested .slds .slds-tree__branch>.slds .slds-tree__item{padding-left:2.5rem}.slds-nested .slds-nested .slds .slds-tree__item>a{padding-left:4rem}.slds .slds-tree .slds-is-selected{background:#f0f8fc;box-shadow:#0070d2 4px 0 0 inset}.slds .slds-tree .slds-is-hovered,.slds .slds-tree .slds-is-focused{background:#f4f6f9;cursor:pointer}.slds .slds-tree .slds-is-open .slds-button__icon{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.slds .slds-tree .slds-button{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.slds .slds-tree .slds-pill{margin-left:0.75rem}.slds .slds-tabs--default{display:block;width:100%}.slds .slds-tabs--default__nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;border-bottom:1px solid #d8dde6}.slds .slds-tabs--default .slds-tabs__item{overflow:hidden}@media (min-width: 48em){.slds .slds-tabs--default .slds-tabs__item+.slds-tabs__item{margin-left:1.5rem}}.slds .slds-tabs--default .slds-tabs__item>a{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-decoration:none;cursor:pointer;height:3rem;line-height:3rem;border-bottom:2px solid transparent;padding:0 0.5rem;color:#54698d}.slds .slds-tabs--default .slds-tabs__item>a:focus{outline:0}@media (min-width: 48em){.slds .slds-tabs--default .slds-tabs__item>a{padding:0 1rem}}.slds .slds-tabs--default .slds-tabs__item>a:hover,.slds .slds-tabs--default .slds-tabs__item>a:focus{text-decoration:none;border-color:#0070d2;color:#16325c}.slds .slds-tabs--default .slds-tabs__item>a:focus{color:#0070d2;box-shadow:#0070d2 0 -1px 0 inset}.slds .slds-tabs--default .slds-tabs__item.slds-active a{border-color:#0070d2;color:#16325c}.slds .slds-tabs--default .slds-tabs__item.slds-active a:focus{color:#0070d2}.slds .slds-tabs--default>.slds-tabs__content{position:relative;padding:1rem 0}.slds .slds-tabs--default__item{overflow:hidden}@media (min-width: 48em){.slds .slds-tabs--default__item+.slds-tabs--default__item{margin-left:1.5rem}}.slds .slds-tabs--default__content{position:relative;padding:1rem 0}.slds .slds-tabs--default__link{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-decoration:none;cursor:pointer;height:3rem;line-height:3rem;border-bottom:2px solid transparent;padding:0 0.5rem;color:#54698d}.slds .slds-tabs--default__link:focus{outline:0}@media (min-width: 48em){.slds .slds-tabs--default__link{padding:0 1rem}}.slds .slds-tabs--default__link:hover,.slds .slds-tabs--default__link:focus{text-decoration:none;border-color:#0070d2;color:#16325c}.slds .slds-tabs--default__link:focus{color:#0070d2;box-shadow:#0070d2 0 -1px 0 inset}.slds.slds-active .slds-tabs--default__link{border-color:#0070d2;color:#16325c}.slds.slds-active .slds-tabs--default__link:focus{color:#0070d2}.slds .slds-tabs--default .slds-tabs__item--overflow{overflow:visible}.slds .slds-dropdown--overflow{max-height:calc((2rem + (0.25rem * 2)) * 10);overflow:auto}.slds .slds-tabs--scoped{display:block;width:100%}.slds .slds-tabs--scoped__nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;background-color:#f4f6f9;border:1px solid #d8dde6;border-radius:0.25rem 0.25rem 0 0}.slds .slds-tabs--scoped .slds-tabs__item{overflow:hidden;position:relative;margin-bottom:-1px}.slds .slds-tabs--scoped .slds-tabs__item+.slds-tabs__item{margin-left:-1px}.slds .slds-tabs--scoped .slds-tabs__item:first-child>a{border-left:none;border-radius:0.25rem 0 0 0}.slds .slds-tabs--scoped .slds-tabs__item>a{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-decoration:none;cursor:pointer;height:3rem;line-height:3rem;padding:0 1.5rem;color:#54698d;background-clip:padding-box;border-left:1px solid transparent;border-right:1px solid transparent}.slds .slds-tabs--scoped .slds-tabs__item>a:focus{outline:0}.slds .slds-tabs--scoped .slds-tabs__item>a:hover,.slds .slds-tabs--scoped .slds-tabs__item>a:focus{text-decoration:none;color:#005fb2;border-color:#d8dde6}.slds .slds-tabs--scoped .slds-tabs__item .slds-active>a{background-color:white;color:#0070d2;border-color:#d8dde6}.slds .slds-tabs--scoped .slds-tabs__item .slds-active>a:focus{text-decoration:underline}.slds .slds-tabs--scoped>.slds-tabs__content{background-color:white;border:1px solid #d8dde6;border-top:none;border-radius:0 0 0.25rem 0.25rem;padding:1rem}.slds .slds-tabs--scoped__item{overflow:hidden;position:relative;margin-bottom:-1px}.slds .slds-tabs--scoped__item+.slds-tabs--scoped__item{margin-left:-1px}.slds .slds-tabs--scoped__item:first-child .slds-tabs--scoped__link{border-left:none;border-radius:0.25rem 0 0 0}.slds .slds-tabs--scoped__content{background-color:white;border:1px solid #d8dde6;border-top:none;border-radius:0 0 0.25rem 0.25rem;padding:1rem}.slds .slds-tabs--scoped__link{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-decoration:none;cursor:pointer;height:3rem;line-height:3rem;padding:0 1.5rem;color:#54698d;background-clip:padding-box;border-left:1px solid transparent;border-right:1px solid transparent}.slds .slds-tabs--scoped__link:focus{outline:0}.slds .slds-tabs--scoped__link:hover,.slds .slds-tabs--scoped__link:focus{text-decoration:none;color:#005fb2;border-color:#d8dde6}.slds .slds-active .slds-tabs--scoped__link{background-color:white;color:#0070d2;border-color:#d8dde6}.slds .slds-active .slds-tabs--scoped__link:focus{text-decoration:underline}.slds .slds-tabs--path{display:block;width:100%}.slds .slds-tabs--path__nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.slds .slds-tabs--path .slds-is-complete{background-color:#4bca81}.slds .slds-tabs--path .slds-is-complete .slds-tabs--path__stage{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}.slds .slds-tabs--path .slds-is-complete .slds-tabs--path__title{-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}.slds .slds-tabs--path .slds-is-complete:hover{background-color:#04844b}.slds .slds-tabs--path .slds-is-complete:hover .slds-tabs--path__stage{-webkit-transform:rotateX(-180deg);transform:rotateX(-180deg)}.slds .slds-tabs--path .slds-is-complete:hover .slds-tabs--path__title{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}.slds .slds-tabs--path .slds-is-current{background-color:#0076DE}.slds .slds-tabs--path .slds-is-current:hover{background-color:#005fb2}.slds .slds-tabs--path .slds-is-current+.slds-is-incomplete:before{background-color:#0076DE}.slds .slds-tabs--path .slds-is-current:hover+.slds-is-incomplete:before{background-color:#005fb2}.slds .slds-tabs--path .slds-is-incomplete{background-color:#e0e5ee}.slds .slds-tabs--path .slds-is-incomplete .slds-tabs--path__link{color:#16325c}.slds .slds-tabs--path .slds-is-current .slds-tabs--path__link,.slds .slds-tabs--path .slds-is-complete .slds-tabs--path__link{color:white}.slds .slds-tabs--path .slds-is-active{background-color:#061c3f}.slds .slds-tabs--path .slds-is-active .slds-tabs--path__link{color:white}.slds .slds-tabs--path .slds-is-active .slds-tabs--path__stage{-webkit-transform:rotateX(-180deg);transform:rotateX(-180deg)}.slds .slds-tabs--path .slds-is-active .slds-tabs--path__title{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}.slds .slds-tabs--path .slds-is-active:hover{background-color:#16325c}.slds .slds-tabs--path .slds-is-active:hover+.slds-tabs--path__item:before{background-color:#16325c}.slds .slds-tabs--path .slds-is-active+.slds-tabs--path__item:before{background-color:#061c3f}.slds .slds-tabs--path .slds-is-active ~ .slds-is-current{background-color:white}.slds .slds-tabs--path .slds-is-active ~ .slds-is-current .slds-tabs--path__link{color:#16325c}.slds .slds-tabs--path .slds-is-active ~ .slds-is-current+.slds-tabs--path__item:before{background-color:white}.slds .slds-tabs--path__item{overflow:hidden;position:relative;-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;min-width:5rem;max-height:2rem;text-align:center;-webkit-perspective:500;perspective:500;-webkit-transition:-webkit-transform 0.1s ease-in-out,background-color 0.1s linear;transition:transform 0.1s ease-in-out,background-color 0.1s linear}.slds .slds-tabs--path__item:first-child{border-radius:15rem 0 0 15rem}.slds .slds-tabs--path__item:last-child{border-radius:0 15rem 15rem 0;border-right:none}.slds .slds-tabs--path__item:hover{background-color:#d8dde6}.slds .slds-tabs--path__item:before{content:"";display:block;position:absolute;left:calc(((2rem - 2px) / 2 ) * -1);top:2px;width:calc(2rem - (2px * 2));height:calc(2rem - (2px * 2));border:2px solid white;border-left:none;border-bottom:none;background-clip:padding-box;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:-webkit-transform 0.1s ease-in-out,background-color 0.1s linear;transition:transform 0.1s ease-in-out,background-color 0.1s linear}.slds .slds-tabs--path__item:first-child:before{display:none}.slds .slds-tabs--path__item+.slds-is-complete:before,.slds .slds-tabs--path__item+.slds-is-current:before{background-color:#4bca81}.slds .slds-tabs--path__item:hover+.slds-is-complete:before{background-color:#04844b}.slds .slds-tabs--path__item:hover+.slds-is-current:before{background-color:#04844b}.slds .slds-tabs--path__item+.slds-is-incomplete:before{background-color:#e0e5ee}.slds .slds-tabs--path__item:hover+.slds-is-incomplete:before{background-color:#d8dde6}.slds .slds-tabs--path__title,.slds .slds-tabs--path__stage{display:block;-webkit-transition:-webkit-transform 0.2s linear;transition:transform 0.2s linear;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slds .slds-tabs--path__stage{position:absolute;top:50%;left:0;width:100%;margin-top:calc((1rem - 0.25rem) * -1);-webkit-transform:rotateX(-180deg);transform:rotateX(-180deg)}.slds .slds-tabs--path__title{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-decoration:none;cursor:pointer;padding-left:0.25rem}.slds .slds-tabs--path__title:focus{outline:0}.slds .slds-tabs--path__link{position:relative;display:block;text-decoration:none;cursor:pointer;padding:0.25rem 0.5rem 0.25rem 1rem;line-height:calc(3rem / 2)}.slds .slds-notify-container{position:fixed;width:100%;left:0;top:0;z-index:10000;text-align:center}.slds .slds-notify{color:white;position:relative;background:#54698d;font-weight:300}.slds .slds-notify a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-notify a:not(.slds-button--neutral):link,.slds .slds-notify a:not(.slds-button--neutral):visited{color:white}.slds .slds-notify a:not(.slds-button--neutral):hover,.slds .slds-notify a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-notify a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-notify a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-notify--toast{border-radius:0.25rem;margin:0.5rem;padding:1rem 1.5rem;min-width:30rem;display:inline-block;text-align:left}.slds .slds-notify--toast .slds-notify__close{-webkit-transform:translate3d(0.5rem, 0, 0);transform:translate3d(0.5rem, 0, 0)}.slds .slds-notify__close{float:right;margin-left:0.25rem;line-height:1}.slds .slds-notify--alert{padding:0.5rem;text-align:center}.slds .slds-modal--prompt .slds-modal__header{border-bottom:none}.slds .slds-modal--prompt .slds-modal__content{padding-left:2rem;padding-right:2rem}.slds .slds-modal--prompt .slds-modal__footer{border-top:none;text-align:center}.slds .slds-modal--prompt .slds-modal__close{display:none}.slds .slds-modal__header .slds-notify-container{position:absolute}.slds .slds-modal__header .slds-notify--toast{display:block}.slds .slds-lookup{position:relative}.slds .slds-lookup__list{max-height:12.5rem;overflow-y:auto}.slds .slds-lookup__menu{background:white;border:1px solid #d8dde6;border-radius:0.25rem;z-index:7000;position:absolute;width:100%;margin-top:0.25rem;padding:0.25rem 0}.slds .slds-lookup__item>a,.slds .slds-lookup__item>span,.slds .slds-lookup__item>button{display:block;padding:0.5rem;color:#16325c;text-align:left;width:100%;line-height:1.5;border-radius:0}.slds .slds-lookup__item>a:hover,.slds .slds-lookup__item>a:focus,.slds .slds-lookup__item>span:hover,.slds .slds-lookup__item>span:focus,.slds .slds-lookup__item>button:hover,.slds .slds-lookup__item>button:focus{outline:0;background-color:#f4f6f9;color:#16325c;text-decoration:none}.slds .slds-lookup__item>a .slds-icon,.slds .slds-lookup__item>span .slds-icon,.slds .slds-lookup__item>button .slds-icon{margin-right:0.5rem}.slds .slds-lookup[data-select="single"] .slds-pill{display:block;width:100%}.slds .slds-lookup[data-select="single"] .slds-pill .slds-button{position:absolute;right:0.75rem;top:50%;margin-top:-0.5rem}.slds .slds-lookup[data-select="single"].slds-has-selection .slds-input,.slds .slds-lookup[data-select="single"].slds-has-selection .slds-input__icon{display:none}.slds .slds-lookup[data-select="multi"] .slds-pill__container{border:transparent;border-bottom:1px solid #d8dde6;border-radius:0}.slds .slds-lookup[data-scope="multi"] .slds-form-element__label{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;margin-left:0.5rem;margin-right:0;margin-bottom:0;font-size:0.875rem;max-width:12rem;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.slds .slds-lookup[data-scope="multi"] .slds-lookup__menu{max-width:calc(100% - 6rem);right:0;top:calc(2.125rem + 2px)}.slds .slds-lookup[data-scope="multi"] .slds-lookup__list{max-height:17.5rem}.slds .slds-lookup[data-scope="multi"] .slds-dropdown-trigger{margin-left:0.5rem}.slds .slds-lookup[data-scope="multi"] .slds-input{padding-left:12rem}.slds .slds-lookup[data-scope="multi"] .slds-form-element__control{background-color:white;color:#16325c;border:1px solid #d8dde6;border-radius:0.25rem;width:100%;-webkit-transition:border 0.1s linear,background-color 0.1s linear;transition:border 0.1s linear,background-color 0.1s linear;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-lookup[data-scope="multi"] .slds-form-element__control:focus,.slds .slds-lookup[data-scope="multi"] .slds-form-element__control:active{outline:0;border-color:#1589ee;background-color:white;box-shadow:0 0 3px #0070D2}.slds .slds-lookup[data-scope="multi"] .slds-form-element__control[disabled],.slds .slds-lookup[data-scope="multi"] .slds-form-element__control.slds-is-disabled{background-color:#e0e5ee;border-color:#a8b7c7;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.slds .slds-lookup[data-scope="multi"] .slds-form-element__control[disabled]:focus,.slds .slds-lookup[data-scope="multi"] .slds-form-element__control[disabled]:active,.slds .slds-lookup[data-scope="multi"] .slds-form-element__control.slds-is-disabled:focus,.slds .slds-lookup[data-scope="multi"] .slds-form-element__control.slds-is-disabled:active{box-shadow:none}.slds .slds-lookup[data-scope="multi"] .slds-form-element__control .slds-input--bare{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;margin-left:0.5rem;line-height:2.125rem}.slds-modal .slds .slds-lookup tr:first-child>th{border-top:2px solid #d8dde6}.slds-modal .slds .slds-lookup tr:last-child>th{border-bottom:2px solid #d8dde6}.slds .slds-media{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.slds .slds-media__figure{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;margin-right:0.75rem}.slds .slds-media__body{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;min-width:0}.slds .slds-media__body,.slds .slds-media__body>:last-child{margin-bottom:0}.slds .slds-media--small .slds-media__figure{margin-right:0.25rem}.slds .slds-media--large .slds-media__figure{margin-right:1.5rem}.slds .slds-media--center{-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.slds .slds-media__figure--reverse{margin:0 0 0 0.75rem}.slds .slds-media--small .slds-media__figure--reverse{margin-left:0.25rem}.slds .slds-media--reverse>.slds-media__figure{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-media--reverse.slds-media--small .slds-media__figure{margin-left:0.25rem}.slds .slds-media--double>.slds-media__figure{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-media--double .slds-media__figure--reverse{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3;margin:0 0 0 1rem}.slds .slds-media--double .slds-media__body{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}@media (max-width: 48em){.slds .slds-media--responsive{display:block}.slds .slds-media--responsive .slds-media__figure{margin:0 0 0.75rem}}.slds .slds-avatar{overflow:hidden;display:inline-block;vertical-align:middle;border-radius:0.25rem;line-height:1}.slds .slds-avatar--x-small{width:1.5rem;height:1.5rem}.slds .slds-avatar--small{width:2.25rem;height:2.25rem}.slds .slds-avatar--medium{width:3rem;height:3rem}.slds .slds-avatar--large{width:5rem;height:5rem}.slds .slds-avatar--circle{border-radius:50%}.slds .slds-badge{background-color:#e0e5ee;padding:0.25rem 0.5rem;border-radius:15rem;font-size:0.625rem;line-height:1.25;text-transform:uppercase;letter-spacing:.0625em;color:#16325c;vertical-align:middle;white-space:nowrap}.slds .slds-badge+.slds-badge{margin-left:0.5rem}.slds .slds-badge:empty{padding:0}.slds .slds-table{background-color:white}.slds .slds-table th,.slds .slds-table td{padding:0.5rem;white-space:nowrap}.slds .slds-table th.slds-text-center,.slds .slds-table td.slds-text-center{text-align:center}.slds .slds-table th.slds-text-right,.slds .slds-table td.slds-text-right{text-align:right}.slds .slds-table tr>th:first-child,.slds .slds-table tr>td:first-child{padding-left:1.5rem}.slds .slds-table tr>th:last-child,.slds .slds-table tr>td:last-child{padding-right:1.5rem}.slds .slds-table th{font-weight:400}.slds .slds-table:not(.slds-no-row-hover) tbody tr:hover>td,.slds .slds-table:not(.slds-no-row-hover) tbody tr:hover>th{background-color:#f4f6f9}.slds .slds-table tbody tr.slds-is-selected>td,.slds .slds-table tbody tr.slds-is-selected>th,.slds .slds-table:not(.slds-no-row-hover) tr.slds-is-selected:hover>td,.slds .slds-table:not(.slds-no-row-hover) tr.slds-is-selected:hover>th{background-color:#f0f8fc}.slds .slds-table td.slds-is-selected,.slds .slds-table td.slds-is-selected:hover{box-shadow:#0070d2 0 0 0 2px inset}.slds .slds-table .slds-truncate{min-width:3.25rem;max-width:15rem}.slds .slds-table .slds-cell-wrap{white-space:normal}.slds .slds-table .slds-cell-shrink{width:1%}.slds .slds-table--bordered{border-top:1px solid #d8dde6;border-bottom:1px solid #d8dde6}.slds .slds-table--bordered thead>tr+tr>th{border-top:1px solid #d8dde6}.slds .slds-table--bordered td,.slds .slds-table--bordered th{border-top:1px solid #d8dde6}.slds .slds-table--bordered:not(.slds-no-row-hover) tbody tr:hover>td,.slds .slds-table--bordered:not(.slds-no-row-hover) tbody tr:hover>th{box-shadow:#d8dde6 0 -1px 0 inset}.slds .slds-table--bordered:not(.slds-no-row-hover) .slds-is-selected:hover>td,.slds .slds-table--bordered:not(.slds-no-row-hover) .slds-is-selected:hover>th{border-color:#0070d2;box-shadow:#0070d2 0 -2px 0 inset}.slds .slds-table--bordered:not(.slds-no-row-hover) .slds-is-selected:hover>td.slds-is-selected,.slds .slds-table--bordered:not(.slds-no-row-hover) .slds-is-selected:hover>th.slds-is-selected{box-shadow:#0070d2 0 -1px 0 2px inset}.slds .slds-table--striped tr:nth-of-type(even)>td{background-color:#f4f6f9}.slds .slds-is-sortable{cursor:pointer}.slds .slds-is-sortable .slds-button{visibility:hidden;margin-left:0.5rem}.slds .slds-is-sortable .slds-button__icon{fill:#0070d2}.slds .slds-is-sortable:hover{background-color:#f4f6f9;color:#0070d2}.slds .slds-is-sortable:hover .slds-button{visibility:visible}@media (max-width: 48em){.slds .slds-max-medium-table--stacked{border:0}.slds .slds-max-medium-table--stacked thead,.slds .slds-max-medium-table--stacked .slds-row-select,.slds .slds-max-medium-table--stacked .slds-row-action{position:absolute;top:0;left:-9999em}.slds .slds-max-medium-table--stacked th{border-top:none}.slds .slds-max-medium-table--stacked tr{display:block;border-top:2px solid #d8dde6}.slds .slds-max-medium-table--stacked td{display:block;padding:0.75rem;width:100%;clear:both;white-space:normal;overflow:hidden;text-align:left}.slds .slds-max-medium-table--stacked td:before{display:block;padding-bottom:0.25rem;content:attr(data-label);color:#54698d;text-transform:uppercase;font-family:"Salesforce Sans", Arial, sans-serif;font-size:0.75rem;font-weight:300}.slds .slds-max-medium-table--stacked tr>td:first-child,.slds .slds-max-medium-table--stacked tr>td:last-child{padding:0.75rem}.slds .slds-max-medium-table--stacked:not(.slds-no-row-hover) tbody tr:hover td,.slds .slds-max-medium-table--stacked:not(.slds-no-row-hover) tbody tr:hover th{background-color:inherit;box-shadow:none}.slds .slds-max-medium-table--stacked .slds-is-interactive .slds-button{visibility:visible}.slds .slds-max-medium-table--stacked .slds-cell-shrink{width:auto}}@media (max-width: 48em){.slds .slds-max-medium-table--stacked td:before,.slds .slds-max-medium-table--stacked th:before{padding-bottom:0.25rem}}@media (max-width: 48em){.slds .slds-max-medium-table--stacked-horizontal{border:0}.slds .slds-max-medium-table--stacked-horizontal thead,.slds .slds-max-medium-table--stacked-horizontal .slds-row-select,.slds .slds-max-medium-table--stacked-horizontal .slds-row-action{position:absolute;top:0;left:-9999em}.slds .slds-max-medium-table--stacked-horizontal th{border-top:none}.slds .slds-max-medium-table--stacked-horizontal tr{display:block;border-top:2px solid #d8dde6}.slds .slds-max-medium-table--stacked-horizontal td{display:block;padding:0.75rem;width:100%;clear:both;white-space:normal;overflow:hidden;text-align:left}.slds .slds-max-medium-table--stacked-horizontal td:before{display:block;padding-bottom:0.25rem;content:attr(data-label);color:#54698d;text-transform:uppercase;font-family:"Salesforce Sans", Arial, sans-serif;font-size:0.75rem;font-weight:300}.slds .slds-max-medium-table--stacked-horizontal tr>td:first-child,.slds .slds-max-medium-table--stacked-horizontal tr>td:last-child{padding:0.75rem}.slds .slds-max-medium-table--stacked-horizontal:not(.slds-no-row-hover) tbody tr:hover td,.slds .slds-max-medium-table--stacked-horizontal:not(.slds-no-row-hover) tbody tr:hover th{background-color:inherit;box-shadow:none}.slds .slds-max-medium-table--stacked-horizontal .slds-is-interactive .slds-button{visibility:visible}.slds .slds-max-medium-table--stacked-horizontal .slds-cell-shrink{width:auto}}@media (max-width: 48em){.slds .slds-max-medium-table--stacked-horizontal td{text-align:right}.slds .slds-max-medium-table--stacked-horizontal td:before{float:left;margin-top:0.125rem}}.slds .slds-m-top--xxx-small{margin-top:0.125rem}.slds .slds-m-right--xxx-small{margin-right:0.125rem}.slds .slds-m-bottom--xxx-small{margin-bottom:0.125rem}.slds .slds-m-left--xxx-small{margin-left:0.125rem}.slds .slds-m-vertical--xxx-small{margin-top:0.125rem;margin-bottom:0.125rem}.slds .slds-m-horizontal--xxx-small{margin-right:0.125rem;margin-left:0.125rem}.slds .slds-m-around--xxx-small{margin:0.125rem}.slds .slds-m-top--xx-small{margin-top:0.25rem}.slds .slds-m-right--xx-small{margin-right:0.25rem}.slds .slds-m-bottom--xx-small{margin-bottom:0.25rem}.slds .slds-m-left--xx-small{margin-left:0.25rem}.slds .slds-m-vertical--xx-small{margin-top:0.25rem;margin-bottom:0.25rem}.slds .slds-m-horizontal--xx-small{margin-right:0.25rem;margin-left:0.25rem}.slds .slds-m-around--xx-small{margin:0.25rem}.slds .slds-m-top--x-small{margin-top:0.5rem}.slds .slds-m-right--x-small{margin-right:0.5rem}.slds .slds-m-bottom--x-small{margin-bottom:0.5rem}.slds .slds-m-left--x-small{margin-left:0.5rem}.slds .slds-m-vertical--x-small{margin-top:0.5rem;margin-bottom:0.5rem}.slds .slds-m-horizontal--x-small{margin-right:0.5rem;margin-left:0.5rem}.slds .slds-m-around--x-small{margin:0.5rem}.slds .slds-m-top--small{margin-top:0.75rem}.slds .slds-m-right--small{margin-right:0.75rem}.slds .slds-m-bottom--small{margin-bottom:0.75rem}.slds .slds-m-left--small{margin-left:0.75rem}.slds .slds-m-vertical--small{margin-top:0.75rem;margin-bottom:0.75rem}.slds .slds-m-horizontal--small{margin-right:0.75rem;margin-left:0.75rem}.slds .slds-m-around--small{margin:0.75rem}.slds .slds-m-top--medium{margin-top:1rem}.slds .slds-m-right--medium{margin-right:1rem}.slds .slds-m-bottom--medium{margin-bottom:1rem}.slds .slds-m-left--medium{margin-left:1rem}.slds .slds-m-vertical--medium{margin-top:1rem;margin-bottom:1rem}.slds .slds-m-horizontal--medium{margin-right:1rem;margin-left:1rem}.slds .slds-m-around--medium{margin:1rem}.slds .slds-m-top--large{margin-top:1.5rem}.slds .slds-m-right--large{margin-right:1.5rem}.slds .slds-m-bottom--large{margin-bottom:1.5rem}.slds .slds-m-left--large{margin-left:1.5rem}.slds .slds-m-vertical--large{margin-top:1.5rem;margin-bottom:1.5rem}.slds .slds-m-horizontal--large{margin-right:1.5rem;margin-left:1.5rem}.slds .slds-m-around--large{margin:1.5rem}.slds .slds-m-top--x-large{margin-top:2rem}.slds .slds-m-right--x-large{margin-right:2rem}.slds .slds-m-bottom--x-large{margin-bottom:2rem}.slds .slds-m-left--x-large{margin-left:2rem}.slds .slds-m-vertical--x-large{margin-top:2rem;margin-bottom:2rem}.slds .slds-m-horizontal--x-large{margin-right:2rem;margin-left:2rem}.slds .slds-m-around--x-large{margin:2rem}.slds .slds-m-top--xx-large{margin-top:3rem}.slds .slds-m-right--xx-large{margin-right:3rem}.slds .slds-m-bottom--xx-large{margin-bottom:3rem}.slds .slds-m-left--xx-large{margin-left:3rem}.slds .slds-m-vertical--xx-large{margin-top:3rem;margin-bottom:3rem}.slds .slds-m-horizontal--xx-large{margin-right:3rem;margin-left:3rem}.slds .slds-m-around--xx-large{margin:3rem}.slds .slds-p-top--xxx-small{padding-top:0.125rem}.slds .slds-p-right--xxx-small{padding-right:0.125rem}.slds .slds-p-bottom--xxx-small{padding-bottom:0.125rem}.slds .slds-p-left--xxx-small{padding-left:0.125rem}.slds .slds-p-vertical--xxx-small{padding-top:0.125rem;padding-bottom:0.125rem}.slds .slds-p-horizontal--xxx-small{padding-right:0.125rem;padding-left:0.125rem}.slds .slds-p-around--xxx-small{padding:0.125rem}.slds .slds-p-top--xx-small{padding-top:0.25rem}.slds .slds-p-right--xx-small{padding-right:0.25rem}.slds .slds-p-bottom--xx-small{padding-bottom:0.25rem}.slds .slds-p-left--xx-small{padding-left:0.25rem}.slds .slds-p-vertical--xx-small{padding-top:0.25rem;padding-bottom:0.25rem}.slds .slds-p-horizontal--xx-small{padding-right:0.25rem;padding-left:0.25rem}.slds .slds-p-around--xx-small{padding:0.25rem}.slds .slds-p-top--x-small{padding-top:0.5rem}.slds .slds-p-right--x-small{padding-right:0.5rem}.slds .slds-p-bottom--x-small{padding-bottom:0.5rem}.slds .slds-p-left--x-small{padding-left:0.5rem}.slds .slds-p-vertical--x-small{padding-top:0.5rem;padding-bottom:0.5rem}.slds .slds-p-horizontal--x-small{padding-right:0.5rem;padding-left:0.5rem}.slds .slds-p-around--x-small{padding:0.5rem}.slds .slds-p-top--small{padding-top:0.75rem}.slds .slds-p-right--small{padding-right:0.75rem}.slds .slds-p-bottom--small{padding-bottom:0.75rem}.slds .slds-p-left--small{padding-left:0.75rem}.slds .slds-p-vertical--small{padding-top:0.75rem;padding-bottom:0.75rem}.slds .slds-p-horizontal--small{padding-right:0.75rem;padding-left:0.75rem}.slds .slds-p-around--small{padding:0.75rem}.slds .slds-p-top--medium{padding-top:1rem}.slds .slds-p-right--medium{padding-right:1rem}.slds .slds-p-bottom--medium{padding-bottom:1rem}.slds .slds-p-left--medium{padding-left:1rem}.slds .slds-p-vertical--medium{padding-top:1rem;padding-bottom:1rem}.slds .slds-p-horizontal--medium{padding-right:1rem;padding-left:1rem}.slds .slds-p-around--medium{padding:1rem}.slds .slds-p-top--large{padding-top:1.5rem}.slds .slds-p-right--large{padding-right:1.5rem}.slds .slds-p-bottom--large{padding-bottom:1.5rem}.slds .slds-p-left--large{padding-left:1.5rem}.slds .slds-p-vertical--large{padding-top:1.5rem;padding-bottom:1.5rem}.slds .slds-p-horizontal--large{padding-right:1.5rem;padding-left:1.5rem}.slds .slds-p-around--large{padding:1.5rem}.slds .slds-p-top--x-large{padding-top:2rem}.slds .slds-p-right--x-large{padding-right:2rem}.slds .slds-p-bottom--x-large{padding-bottom:2rem}.slds .slds-p-left--x-large{padding-left:2rem}.slds .slds-p-vertical--x-large{padding-top:2rem;padding-bottom:2rem}.slds .slds-p-horizontal--x-large{padding-right:2rem;padding-left:2rem}.slds .slds-p-around--x-large{padding:2rem}.slds .slds-p-top--xx-large{padding-top:3rem}.slds .slds-p-right--xx-large{padding-right:3rem}.slds .slds-p-bottom--xx-large{padding-bottom:3rem}.slds .slds-p-left--xx-large{padding-left:3rem}.slds .slds-p-vertical--xx-large{padding-top:3rem;padding-bottom:3rem}.slds .slds-p-horizontal--xx-large{padding-right:3rem;padding-left:3rem}.slds .slds-p-around--xx-large{padding:3rem}.slds .slds-float--left{float:left}.slds .slds-float--right{float:right}.slds .slds-clearfix:after{content:'';display:table;clear:both}.slds .slds-clear{clear:both}.slds .slds-list--dotted{margin-left:1.5rem;list-style:disc}.slds .slds-list--ordered{margin-left:1.5rem;list-style:decimal}.slds .slds-dl--inline:after{content:'';display:table;clear:both}@media (min-width: 48em){.slds .slds-dl--inline__label{float:left;clear:left}.slds .slds-dl--inline__detail{float:left;padding-left:0.25rem}}@media (min-width: 48em){.slds .slds-dl--horizontal{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-dl--horizontal__label{width:33%;padding-right:0.75rem}.slds .slds-dl--horizontal__detail{width:66%}}.slds .slds-list--horizontal{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.slds .slds-list--horizontal>.slds-list__item{-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;display:inline-block;vertical-align:middle}.slds .slds-list--horizontal-large>.slds-list__item>a{padding:0.75rem 1rem}.slds .slds-is-nested{margin-left:1rem}.slds .slds-has-divider{margin-top:0.5rem;padding-top:0.5rem;border-top:1px solid #d8dde6}.slds .slds-has-divider--top{border-top:1px solid #d8dde6}.slds .slds-has-divider--top-space{border-top:1px solid #d8dde6;margin-top:0.5rem;padding-top:0.5rem}.slds .slds-has-divider--bottom{border-bottom:1px solid #d8dde6}.slds .slds-has-divider--bottom-space{border-bottom:1px solid #d8dde6;margin-bottom:0.5rem;padding-bottom:0.5rem}.slds .slds-list--vertical.slds-has-dividers>.slds-list__item{padding:0.5rem;border-bottom:1px solid #d8dde6}.slds .slds-list--vertical.slds-has-dividers>.slds-list__item:hover{background-color:#f4f6f9;border-color:#d8dde6;cursor:pointer}.slds .slds-list--vertical.slds-has-dividers>.slds-list__item:active{background-color:#eef1f6;box-shadow:#d8dde6 0 -1px 0 inset}.slds .slds-list--vertical.slds-has-dividers>.slds-list__item.slds-is-selected{box-shadow:#0070d2 0 0 0 1px inset;background-color:#f0f8fc}.slds .slds-list--vertical.slds-has-dividers>.slds-list__item.slds-is-selected:hover,.slds .slds-list--vertical.slds-has-dividers>.slds-list__item.slds-is-selected:focus{box-shadow:#1589ee 0 -2px 0 inset,#1589ee 0 0 0 1px inset}.slds .slds-has-dividers--top>.slds-list__item{border-top:1px solid #d8dde6}.slds .slds-has-dividers--top-space>.slds-list__item{border-top:1px solid #d8dde6;padding:0.75rem}@media (min-width: 30em){.slds .slds-has-dividers--top-space>.slds-list__item{padding:0.5rem}}.slds .slds-has-dividers--bottom>.slds-list__item{border-bottom:1px solid #d8dde6}.slds .slds-has-dividers--bottom-space>.slds-list__item{border-bottom:1px solid #d8dde6;padding:0.75rem}@media (min-width: 30em){.slds .slds-has-dividers--bottom-space>.slds-list__item{padding:0.5rem}}.slds .slds-has-list-interactions>.slds-list__item:hover{background-color:#f4f6f9;border-color:#d8dde6;cursor:pointer}.slds .slds-has-list-interactions>.slds-list__item:active{background-color:#eef1f6;box-shadow:#d8dde6 0 -1px 0 inset}.slds .slds-has-list-interactions>.slds-list__item.slds-is-selected{box-shadow:#0070d2 0 0 0 1px inset;background-color:#f0f8fc}.slds .slds-has-list-interactions>.slds-list__item.slds-is-selected:hover,.slds .slds-has-list-interactions>.slds-list__item.slds-is-selected:focus{box-shadow:#1589ee 0 -2px 0 inset,#1589ee 0 0 0 1px inset}.slds .slds-list--horizontal.slds-has-dividers>.slds-list__item{position:relative}.slds .slds-list--horizontal.slds-has-dividers>.slds-list__item:after{width:4px;height:4px;content:'';display:inline-block;vertical-align:middle;margin-left:0.5rem;margin-right:0.5rem;border-radius:50%;background-color:#54698d}.slds .slds-list--horizontal.slds-has-dividers>.slds-list__item:last-child{margin-right:0;padding-right:0}.slds .slds-list--horizontal.slds-has-dividers>.slds-list__item:last-child:after{content:none}.slds .slds-has-dividers--left>.slds-list__item{position:relative}.slds .slds-has-dividers--left>.slds-list__item:before{width:4px;height:4px;content:'';display:inline-block;vertical-align:middle;margin-left:0.5rem;margin-right:0.5rem;border-radius:50%;background-color:#54698d}.slds .slds-has-dividers--left>.slds-list__item:first-child{margin-right:0;padding-right:0}.slds .slds-has-dividers--left>.slds-list__item:first-child:before{content:none}.slds .slds-has-dividers--right>.slds-list__item{position:relative}.slds .slds-has-dividers--right>.slds-list__item:after{width:4px;height:4px;content:'';display:inline-block;vertical-align:middle;margin-left:0.5rem;margin-right:0.5rem;border-radius:50%;background-color:#54698d}.slds .slds-has-dividers--right>.slds-list__item:last-child{margin-right:0;padding-right:0}.slds .slds-has-dividers--right>.slds-list__item:last-child:after{content:none}.slds .slds-has-cards .slds-list__item{border:1px solid #d8dde6;border-radius:0.25rem;background-clip:padding-box}.slds .slds-has-cards .slds-list__item+.slds-list__item{margin-top:0.5rem}.slds .slds-has-cards--space .slds-list__item{border:1px solid #d8dde6;border-radius:0.25rem;background-clip:padding-box;padding:0.75rem}@media (min-width: 30em){.slds .slds-has-cards--space .slds-list__item{padding:0.5rem}}.slds .slds-has-cards--space .slds-list__item+.slds-list__item{margin-top:0.5rem}.slds .slds-has-block-links a{display:block;text-decoration:none}.slds .slds-has-block-links .slds-is-nested{margin-left:1rem}.slds .slds-has-block-links--space .slds-list__item{padding:0}.slds .slds-has-block-links--space a{display:block;text-decoration:none;padding:0.75rem}@media (min-width: 48em){.slds .slds-has-block-links--space a{padding:0.5rem}}.slds .slds-has-inline-block-links a{display:inline-block;text-decoration:none}.slds .slds-has-inline-block-links--space a{display:inline-block;text-decoration:none;padding:0.75rem}@media (min-width: 48em){.slds .slds-has-inline-block-links--space a{padding:0.5rem}}.slds .slds-truncate{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slds .slds-page-header{padding:1.5rem 1.5rem 0.75rem;border-bottom:1px solid #d8dde6;background:#f4f6f9}.slds .slds-box{padding:1rem;border-radius:0.25rem;background-clip:padding-box;border:1px solid #d8dde6}.slds .slds-box--x-small{padding:0.5rem}.slds .slds-box--small{padding:0.75rem}.slds .slds-theme--default{background-color:white}.slds .slds-theme--shade{background-color:#f4f6f9}.slds .slds-theme--inverse{background-color:#061c3f;color:white;border-color:#061c3f}.slds .slds-theme--inverse a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--inverse a:not(.slds-button--neutral):link,.slds .slds-theme--inverse a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--inverse a:not(.slds-button--neutral):hover,.slds .slds-theme--inverse a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--inverse a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--inverse a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--alt-inverse{background-color:#16325c;color:white;border-color:#16325c}.slds .slds-theme--alt-inverse a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--alt-inverse a:not(.slds-button--neutral):link,.slds .slds-theme--alt-inverse a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--alt-inverse a:not(.slds-button--neutral):hover,.slds .slds-theme--alt-inverse a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--alt-inverse a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--alt-inverse a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--success{color:white;background-color:#04844b}.slds .slds-theme--success a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--success a:not(.slds-button--neutral):link,.slds .slds-theme--success a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--success a:not(.slds-button--neutral):hover,.slds .slds-theme--success a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--success a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--success a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--info{color:white;background-color:#54698d}.slds .slds-theme--info a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--info a:not(.slds-button--neutral):link,.slds .slds-theme--info a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--info a:not(.slds-button--neutral):hover,.slds .slds-theme--info a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--info a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--info a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--warning{background-color:#ffb75d;color:#16325c}.slds .slds-theme--warning .slds-button__icon{fill:#54698d}.slds .slds-theme--error{color:white;background-color:#c23934}.slds .slds-theme--error a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--error a:not(.slds-button--neutral):link,.slds .slds-theme--error a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--error a:not(.slds-button--neutral):hover,.slds .slds-theme--error a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--error a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--error a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--offline{color:white;background-color:#444}.slds .slds-theme--offline a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--offline a:not(.slds-button--neutral):link,.slds .slds-theme--offline a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--offline a:not(.slds-button--neutral):hover,.slds .slds-theme--offline a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--offline a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--offline a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--alert-texture{background-image:-webkit-linear-gradient(45deg, rgba(0,0,0,0.035) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.035) 50%, rgba(0,0,0,0.035) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(0,0,0,0.035) 25%, transparent 25%, transparent 50%, rgba(0,0,0,0.035) 50%, rgba(0,0,0,0.035) 75%, transparent 75%, transparent);background-size:64px 64px}.slds .slds-theme--inverse-text{color:white}.slds .slds-theme--inverse-text a:not(.slds-button--neutral){color:white;text-decoration:underline}.slds .slds-theme--inverse-text a:not(.slds-button--neutral):link,.slds .slds-theme--inverse-text a:not(.slds-button--neutral):visited{color:white}.slds .slds-theme--inverse-text a:not(.slds-button--neutral):hover,.slds .slds-theme--inverse-text a:not(.slds-button--neutral):focus{color:rgba(255,255,255,0.75)}.slds .slds-theme--inverse-text a:not(.slds-button--neutral):active{color:rgba(255,255,255,0.5)}.slds .slds-theme--inverse-text a:not(.slds-button--neutral)[disabled]{color:rgba(255,255,255,0.15)}.slds .slds-theme--default .slds-text-body--small,.slds .slds-theme--shade .slds-text-body--small,.slds .slds-theme--inverse .slds-text-body--small,.slds .slds-theme--alt-inverse .slds-text-body--small,.slds .slds-theme--success .slds-text-body--small,.slds .slds-theme--info .slds-text-body--small,.slds .slds-theme--warning .slds-text-body--small,.slds .slds-theme--error .slds-text-body--small,.slds .slds-theme--offline .slds-text-body--small,.slds .slds-theme--alert-texture .slds-text-body--small,.slds .slds-theme--inverse-text .slds-text-body--small{color:inherit}.slds .slds-text-body--regular{font-size:0.875rem}.slds .slds-text-heading--small{font-weight:300;font-size:1.125rem;line-height:1.25}.slds .slds-text-heading--medium{font-weight:300;font-size:1.5rem;line-height:1.25}.slds .slds-text-heading--large{font-weight:300;font-size:2rem;line-height:1.25}.slds .slds-text-heading--label{font-size:0.75rem;line-height:1.25;text-transform:uppercase;letter-spacing:.0625em;color:#54698d}.slds .slds-text-body--small{font-size:0.75rem;color:#54698d}.slds .slds-text-align--left{text-align:left}.slds .slds-text-align--center{text-align:center}.slds .slds-text-align--right{text-align:right}.slds .slds-text-longform h1,.slds .slds-text-longform h2,.slds .slds-text-longform h3,.slds .slds-text-longform p,.slds .slds-text-longform ul,.slds .slds-text-longform ol,.slds .slds-text-longform dl,.slds .slds-text-longform img{margin-bottom:0.75rem}.slds .slds-text-longform h1:last-child,.slds .slds-text-longform h2:last-child,.slds .slds-text-longform h3:last-child,.slds .slds-text-longform p:last-child,.slds .slds-text-longform ul:last-child,.slds .slds-text-longform ol:last-child,.slds .slds-text-longform dl:last-child,.slds .slds-text-longform img:last-child{margin-bottom:0}.slds .slds-text-longform ul{margin-left:1.5rem;list-style:disc}.slds .slds-text-longform ol{margin-left:1.5rem;list-style:decimal}.slds .slds-section-title{font-size:1.125rem}.slds .slds-section-title>a{display:inline-block;color:#16325c}.slds .slds-section-title>a:hover,.slds .slds-section-title>a:focus{color:#005fb2}.slds .slds-section-title>a:focus{box-shadow:0 0 3px #0070D2}.slds .slds-section-title>a:active{color:#16325c}.slds .slds-section-title .slds-icon{width:1rem;height:1rem;fill:currentColor}.slds .slds-section-title .slds-section-group--is-closed .slds-icon{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.slds .slds-section-title--divider{font-size:0.75rem;line-height:1.25;text-transform:uppercase;letter-spacing:.0625em;color:#54698d;margin:0 -1rem 1rem;padding:0.75rem 1rem;background:#f4f6f9}.slds .slds-section-title--divider:first-child{margin-top:-1rem}.slds .slds-type-focus{border-bottom:1px solid transparent;cursor:pointer}.slds .slds-type-focus:hover{border-bottom:1px solid #005fb2}.slds .slds-type-focus:focus{outline:thin dotted;outline:5px auto #1589ee;outline-offset:-2px}.slds .slds-scrollable--y{-webkit-overflow-scrolling:touch;max-height:100%;overflow:hidden;overflow-y:auto}.slds .slds-scrollable--y::-webkit-scrollbar{width:10px;height:10px}.slds .slds-scrollable--y::-webkit-scrollbar:window-inactive{opacity:0}.slds .slds-scrollable--y::-webkit-scrollbar-thumb{background:#e0e5ee;border-radius:0.5rem;box-shadow:#a8b7c7 0 0 0 1px inset}.slds .slds-scrollable--y::-webkit-scrollbar-track{background:#a8b7c7}.slds .slds-scrollable--x{-webkit-overflow-scrolling:touch;max-width:100%;overflow:hidden;overflow-x:auto}.slds .slds-scrollable--x::-webkit-scrollbar{width:10px;height:10px}.slds .slds-scrollable--x::-webkit-scrollbar:window-inactive{opacity:0}.slds .slds-scrollable--x::-webkit-scrollbar-thumb{background:#e0e5ee;border-radius:0.5rem;box-shadow:#a8b7c7 0 0 0 1px inset}.slds .slds-scrollable--x::-webkit-scrollbar-track{background:#a8b7c7}.slds .slds-size--1-of-1{width:100%}.slds .slds-size--1-of-2{width:50%}.slds .slds-size--2-of-2{width:100%}.slds .slds-size--1-of-3{width:33.33333%}.slds .slds-size--2-of-3{width:66.66667%}.slds .slds-size--3-of-3{width:100%}.slds .slds-size--1-of-4{width:25%}.slds .slds-size--2-of-4{width:50%}.slds .slds-size--3-of-4{width:75%}.slds .slds-size--4-of-4{width:100%}.slds .slds-size--1-of-5{width:20%}.slds .slds-size--2-of-5{width:40%}.slds .slds-size--3-of-5{width:60%}.slds .slds-size--4-of-5{width:80%}.slds .slds-size--5-of-5{width:100%}.slds .slds-size--1-of-6{width:16.66667%}.slds .slds-size--2-of-6{width:33.33333%}.slds .slds-size--3-of-6{width:50%}.slds .slds-size--4-of-6{width:66.66667%}.slds .slds-size--5-of-6{width:83.33333%}.slds .slds-size--6-of-6{width:100%}.slds .slds-size--1-of-7{width:14.28571%}.slds .slds-size--2-of-7{width:28.57143%}.slds .slds-size--3-of-7{width:42.85714%}.slds .slds-size--4-of-7{width:57.14286%}.slds .slds-size--5-of-7{width:71.42857%}.slds .slds-size--6-of-7{width:85.71429%}.slds .slds-size--7-of-7{width:100%}.slds .slds-size--1-of-8{width:12.5%}.slds .slds-size--2-of-8{width:25%}.slds .slds-size--3-of-8{width:37.5%}.slds .slds-size--4-of-8{width:50%}.slds .slds-size--5-of-8{width:62.5%}.slds .slds-size--6-of-8{width:75%}.slds .slds-size--7-of-8{width:87.5%}.slds .slds-size--8-of-8{width:100%}.slds .slds-size--1-of-12{width:8.33333%}.slds .slds-size--2-of-12{width:16.66667%}.slds .slds-size--3-of-12{width:25%}.slds .slds-size--4-of-12{width:33.33333%}.slds .slds-size--5-of-12{width:41.66667%}.slds .slds-size--6-of-12{width:50%}.slds .slds-size--7-of-12{width:58.33333%}.slds .slds-size--8-of-12{width:66.66667%}.slds .slds-size--9-of-12{width:75%}.slds .slds-size--10-of-12{width:83.33333%}.slds .slds-size--11-of-12{width:91.66667%}.slds .slds-size--12-of-12{width:100%}.slds .slds-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.slds .slds-order--9{-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.slds .slds-order--10{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.slds .slds-order--11{-webkit-box-ordinal-group:12;-webkit-order:11;-ms-flex-order:11;order:11}@media (min-width: 20em){.slds .slds-x-small-size--1-of-1{width:100%}.slds .slds-x-small-size--1-of-2{width:50%}.slds .slds-x-small-size--2-of-2{width:100%}.slds .slds-x-small-size--1-of-3{width:33.33333%}.slds .slds-x-small-size--2-of-3{width:66.66667%}.slds .slds-x-small-size--3-of-3{width:100%}.slds .slds-x-small-size--1-of-4{width:25%}.slds .slds-x-small-size--2-of-4{width:50%}.slds .slds-x-small-size--3-of-4{width:75%}.slds .slds-x-small-size--4-of-4{width:100%}.slds .slds-x-small-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-x-small-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-x-small-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-x-small-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}}@media (max-width: 20em){.slds .slds-max-x-small-size--1-of-1{width:100%}.slds .slds-max-x-small-size--1-of-2{width:50%}.slds .slds-max-x-small-size--2-of-2{width:100%}.slds .slds-max-x-small-size--1-of-3{width:33.33333%}.slds .slds-max-x-small-size--2-of-3{width:66.66667%}.slds .slds-max-x-small-size--3-of-3{width:100%}.slds .slds-max-x-small-size--1-of-4{width:25%}.slds .slds-max-x-small-size--2-of-4{width:50%}.slds .slds-max-x-small-size--3-of-4{width:75%}.slds .slds-max-x-small-size--4-of-4{width:100%}.slds .slds-max-x-small-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-max-x-small-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-max-x-small-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-max-x-small-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}}@media (min-width: 30em){.slds .slds-small-size--1-of-1{width:100%}.slds .slds-small-size--1-of-2{width:50%}.slds .slds-small-size--2-of-2{width:100%}.slds .slds-small-size--1-of-3{width:33.33333%}.slds .slds-small-size--2-of-3{width:66.66667%}.slds .slds-small-size--3-of-3{width:100%}.slds .slds-small-size--1-of-4{width:25%}.slds .slds-small-size--2-of-4{width:50%}.slds .slds-small-size--3-of-4{width:75%}.slds .slds-small-size--4-of-4{width:100%}.slds .slds-small-size--1-of-5{width:20%}.slds .slds-small-size--2-of-5{width:40%}.slds .slds-small-size--3-of-5{width:60%}.slds .slds-small-size--4-of-5{width:80%}.slds .slds-small-size--5-of-5{width:100%}.slds .slds-small-size--1-of-6{width:16.66667%}.slds .slds-small-size--2-of-6{width:33.33333%}.slds .slds-small-size--3-of-6{width:50%}.slds .slds-small-size--4-of-6{width:66.66667%}.slds .slds-small-size--5-of-6{width:83.33333%}.slds .slds-small-size--6-of-6{width:100%}.slds .slds-small-size--1-of-7{width:14.28571%}.slds .slds-small-size--2-of-7{width:28.57143%}.slds .slds-small-size--3-of-7{width:42.85714%}.slds .slds-small-size--4-of-7{width:57.14286%}.slds .slds-small-size--5-of-7{width:71.42857%}.slds .slds-small-size--6-of-7{width:85.71429%}.slds .slds-small-size--7-of-7{width:100%}.slds .slds-small-size--1-of-8{width:12.5%}.slds .slds-small-size--2-of-8{width:25%}.slds .slds-small-size--3-of-8{width:37.5%}.slds .slds-small-size--4-of-8{width:50%}.slds .slds-small-size--5-of-8{width:62.5%}.slds .slds-small-size--6-of-8{width:75%}.slds .slds-small-size--7-of-8{width:87.5%}.slds .slds-small-size--8-of-8{width:100%}.slds .slds-small-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-small-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-small-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-small-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-small-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-small-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-small-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-small-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}}@media (max-width: 30em){.slds .slds-max-small-size--1-of-1{width:100%}.slds .slds-max-small-size--1-of-2{width:50%}.slds .slds-max-small-size--2-of-2{width:100%}.slds .slds-max-small-size--1-of-3{width:33.33333%}.slds .slds-max-small-size--2-of-3{width:66.66667%}.slds .slds-max-small-size--3-of-3{width:100%}.slds .slds-max-small-size--1-of-4{width:25%}.slds .slds-max-small-size--2-of-4{width:50%}.slds .slds-max-small-size--3-of-4{width:75%}.slds .slds-max-small-size--4-of-4{width:100%}.slds .slds-max-small-size--1-of-5{width:20%}.slds .slds-max-small-size--2-of-5{width:40%}.slds .slds-max-small-size--3-of-5{width:60%}.slds .slds-max-small-size--4-of-5{width:80%}.slds .slds-max-small-size--5-of-5{width:100%}.slds .slds-max-small-size--1-of-6{width:16.66667%}.slds .slds-max-small-size--2-of-6{width:33.33333%}.slds .slds-max-small-size--3-of-6{width:50%}.slds .slds-max-small-size--4-of-6{width:66.66667%}.slds .slds-max-small-size--5-of-6{width:83.33333%}.slds .slds-max-small-size--6-of-6{width:100%}.slds .slds-max-small-size--1-of-7{width:14.28571%}.slds .slds-max-small-size--2-of-7{width:28.57143%}.slds .slds-max-small-size--3-of-7{width:42.85714%}.slds .slds-max-small-size--4-of-7{width:57.14286%}.slds .slds-max-small-size--5-of-7{width:71.42857%}.slds .slds-max-small-size--6-of-7{width:85.71429%}.slds .slds-max-small-size--7-of-7{width:100%}.slds .slds-max-small-size--1-of-8{width:12.5%}.slds .slds-max-small-size--2-of-8{width:25%}.slds .slds-max-small-size--3-of-8{width:37.5%}.slds .slds-max-small-size--4-of-8{width:50%}.slds .slds-max-small-size--5-of-8{width:62.5%}.slds .slds-max-small-size--6-of-8{width:75%}.slds .slds-max-small-size--7-of-8{width:87.5%}.slds .slds-max-small-size--8-of-8{width:100%}.slds .slds-max-small-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-max-small-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-max-small-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-max-small-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-max-small-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-max-small-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-max-small-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-max-small-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}}@media (min-width: 48em){.slds .slds-medium-size--1-of-1{width:100%}.slds .slds-medium-size--1-of-2{width:50%}.slds .slds-medium-size--2-of-2{width:100%}.slds .slds-medium-size--1-of-3{width:33.33333%}.slds .slds-medium-size--2-of-3{width:66.66667%}.slds .slds-medium-size--3-of-3{width:100%}.slds .slds-medium-size--1-of-4{width:25%}.slds .slds-medium-size--2-of-4{width:50%}.slds .slds-medium-size--3-of-4{width:75%}.slds .slds-medium-size--4-of-4{width:100%}.slds .slds-medium-size--1-of-5{width:20%}.slds .slds-medium-size--2-of-5{width:40%}.slds .slds-medium-size--3-of-5{width:60%}.slds .slds-medium-size--4-of-5{width:80%}.slds .slds-medium-size--5-of-5{width:100%}.slds .slds-medium-size--1-of-6{width:16.66667%}.slds .slds-medium-size--2-of-6{width:33.33333%}.slds .slds-medium-size--3-of-6{width:50%}.slds .slds-medium-size--4-of-6{width:66.66667%}.slds .slds-medium-size--5-of-6{width:83.33333%}.slds .slds-medium-size--6-of-6{width:100%}.slds .slds-medium-size--1-of-7{width:14.28571%}.slds .slds-medium-size--2-of-7{width:28.57143%}.slds .slds-medium-size--3-of-7{width:42.85714%}.slds .slds-medium-size--4-of-7{width:57.14286%}.slds .slds-medium-size--5-of-7{width:71.42857%}.slds .slds-medium-size--6-of-7{width:85.71429%}.slds .slds-medium-size--7-of-7{width:100%}.slds .slds-medium-size--1-of-8{width:12.5%}.slds .slds-medium-size--2-of-8{width:25%}.slds .slds-medium-size--3-of-8{width:37.5%}.slds .slds-medium-size--4-of-8{width:50%}.slds .slds-medium-size--5-of-8{width:62.5%}.slds .slds-medium-size--6-of-8{width:75%}.slds .slds-medium-size--7-of-8{width:87.5%}.slds .slds-medium-size--8-of-8{width:100%}.slds .slds-medium-size--1-of-12{width:8.33333%}.slds .slds-medium-size--2-of-12{width:16.66667%}.slds .slds-medium-size--3-of-12{width:25%}.slds .slds-medium-size--4-of-12{width:33.33333%}.slds .slds-medium-size--5-of-12{width:41.66667%}.slds .slds-medium-size--6-of-12{width:50%}.slds .slds-medium-size--7-of-12{width:58.33333%}.slds .slds-medium-size--8-of-12{width:66.66667%}.slds .slds-medium-size--9-of-12{width:75%}.slds .slds-medium-size--10-of-12{width:83.33333%}.slds .slds-medium-size--11-of-12{width:91.66667%}.slds .slds-medium-size--12-of-12{width:100%}.slds .slds-medium-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-medium-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-medium-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-medium-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-medium-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-medium-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-medium-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-medium-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.slds .slds-medium-order--9{-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.slds .slds-medium-order--10{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.slds .slds-medium-order--11{-webkit-box-ordinal-group:12;-webkit-order:11;-ms-flex-order:11;order:11}.slds .slds-medium-order--12{-webkit-box-ordinal-group:13;-webkit-order:12;-ms-flex-order:12;order:12}}@media (max-width: 48em){.slds .slds-max-medium-size--1-of-1{width:100%}.slds .slds-max-medium-size--1-of-2{width:50%}.slds .slds-max-medium-size--2-of-2{width:100%}.slds .slds-max-medium-size--1-of-3{width:33.33333%}.slds .slds-max-medium-size--2-of-3{width:66.66667%}.slds .slds-max-medium-size--3-of-3{width:100%}.slds .slds-max-medium-size--1-of-4{width:25%}.slds .slds-max-medium-size--2-of-4{width:50%}.slds .slds-max-medium-size--3-of-4{width:75%}.slds .slds-max-medium-size--4-of-4{width:100%}.slds .slds-max-medium-size--1-of-5{width:20%}.slds .slds-max-medium-size--2-of-5{width:40%}.slds .slds-max-medium-size--3-of-5{width:60%}.slds .slds-max-medium-size--4-of-5{width:80%}.slds .slds-max-medium-size--5-of-5{width:100%}.slds .slds-max-medium-size--1-of-6{width:16.66667%}.slds .slds-max-medium-size--2-of-6{width:33.33333%}.slds .slds-max-medium-size--3-of-6{width:50%}.slds .slds-max-medium-size--4-of-6{width:66.66667%}.slds .slds-max-medium-size--5-of-6{width:83.33333%}.slds .slds-max-medium-size--6-of-6{width:100%}.slds .slds-max-medium-size--1-of-7{width:14.28571%}.slds .slds-max-medium-size--2-of-7{width:28.57143%}.slds .slds-max-medium-size--3-of-7{width:42.85714%}.slds .slds-max-medium-size--4-of-7{width:57.14286%}.slds .slds-max-medium-size--5-of-7{width:71.42857%}.slds .slds-max-medium-size--6-of-7{width:85.71429%}.slds .slds-max-medium-size--7-of-7{width:100%}.slds .slds-max-medium-size--1-of-8{width:12.5%}.slds .slds-max-medium-size--2-of-8{width:25%}.slds .slds-max-medium-size--3-of-8{width:37.5%}.slds .slds-max-medium-size--4-of-8{width:50%}.slds .slds-max-medium-size--5-of-8{width:62.5%}.slds .slds-max-medium-size--6-of-8{width:75%}.slds .slds-max-medium-size--7-of-8{width:87.5%}.slds .slds-max-medium-size--8-of-8{width:100%}.slds .slds-max-medium-size--1-of-12{width:8.33333%}.slds .slds-max-medium-size--2-of-12{width:16.66667%}.slds .slds-max-medium-size--3-of-12{width:25%}.slds .slds-max-medium-size--4-of-12{width:33.33333%}.slds .slds-max-medium-size--5-of-12{width:41.66667%}.slds .slds-max-medium-size--6-of-12{width:50%}.slds .slds-max-medium-size--7-of-12{width:58.33333%}.slds .slds-max-medium-size--8-of-12{width:66.66667%}.slds .slds-max-medium-size--9-of-12{width:75%}.slds .slds-max-medium-size--10-of-12{width:83.33333%}.slds .slds-max-medium-size--11-of-12{width:91.66667%}.slds .slds-max-medium-size--12-of-12{width:100%}.slds .slds-max-medium-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-max-medium-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-max-medium-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-max-medium-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-max-medium-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-max-medium-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-max-medium-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-max-medium-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.slds .slds-max-medium-order--9{-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.slds .slds-max-medium-order--10{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.slds .slds-max-medium-order--11{-webkit-box-ordinal-group:12;-webkit-order:11;-ms-flex-order:11;order:11}.slds .slds-max-medium-order--12{-webkit-box-ordinal-group:13;-webkit-order:12;-ms-flex-order:12;order:12}}@media (min-width: 64em){.slds .slds-large-size--1-of-1{width:100%}.slds .slds-large-size--1-of-2{width:50%}.slds .slds-large-size--2-of-2{width:100%}.slds .slds-large-size--1-of-3{width:33.33333%}.slds .slds-large-size--2-of-3{width:66.66667%}.slds .slds-large-size--3-of-3{width:100%}.slds .slds-large-size--1-of-4{width:25%}.slds .slds-large-size--2-of-4{width:50%}.slds .slds-large-size--3-of-4{width:75%}.slds .slds-large-size--4-of-4{width:100%}.slds .slds-large-size--1-of-5{width:20%}.slds .slds-large-size--2-of-5{width:40%}.slds .slds-large-size--3-of-5{width:60%}.slds .slds-large-size--4-of-5{width:80%}.slds .slds-large-size--5-of-5{width:100%}.slds .slds-large-size--1-of-6{width:16.66667%}.slds .slds-large-size--2-of-6{width:33.33333%}.slds .slds-large-size--3-of-6{width:50%}.slds .slds-large-size--4-of-6{width:66.66667%}.slds .slds-large-size--5-of-6{width:83.33333%}.slds .slds-large-size--6-of-6{width:100%}.slds .slds-large-size--1-of-7{width:14.28571%}.slds .slds-large-size--2-of-7{width:28.57143%}.slds .slds-large-size--3-of-7{width:42.85714%}.slds .slds-large-size--4-of-7{width:57.14286%}.slds .slds-large-size--5-of-7{width:71.42857%}.slds .slds-large-size--6-of-7{width:85.71429%}.slds .slds-large-size--7-of-7{width:100%}.slds .slds-large-size--1-of-8{width:12.5%}.slds .slds-large-size--2-of-8{width:25%}.slds .slds-large-size--3-of-8{width:37.5%}.slds .slds-large-size--4-of-8{width:50%}.slds .slds-large-size--5-of-8{width:62.5%}.slds .slds-large-size--6-of-8{width:75%}.slds .slds-large-size--7-of-8{width:87.5%}.slds .slds-large-size--8-of-8{width:100%}.slds .slds-large-size--1-of-12{width:8.33333%}.slds .slds-large-size--2-of-12{width:16.66667%}.slds .slds-large-size--3-of-12{width:25%}.slds .slds-large-size--4-of-12{width:33.33333%}.slds .slds-large-size--5-of-12{width:41.66667%}.slds .slds-large-size--6-of-12{width:50%}.slds .slds-large-size--7-of-12{width:58.33333%}.slds .slds-large-size--8-of-12{width:66.66667%}.slds .slds-large-size--9-of-12{width:75%}.slds .slds-large-size--10-of-12{width:83.33333%}.slds .slds-large-size--11-of-12{width:91.66667%}.slds .slds-large-size--12-of-12{width:100%}.slds .slds-large-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-large-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-large-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-large-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-large-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-large-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-large-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-large-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.slds .slds-large-order--9{-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.slds .slds-large-order--10{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.slds .slds-large-order--11{-webkit-box-ordinal-group:12;-webkit-order:11;-ms-flex-order:11;order:11}.slds .slds-large-order--12{-webkit-box-ordinal-group:13;-webkit-order:12;-ms-flex-order:12;order:12}}@media (max-width: 64em){.slds .slds-max-large-size--1-of-1{width:100%}.slds .slds-max-large-size--1-of-2{width:50%}.slds .slds-max-large-size--2-of-2{width:100%}.slds .slds-max-large-size--1-of-3{width:33.33333%}.slds .slds-max-large-size--2-of-3{width:66.66667%}.slds .slds-max-large-size--3-of-3{width:100%}.slds .slds-max-large-size--1-of-4{width:25%}.slds .slds-max-large-size--2-of-4{width:50%}.slds .slds-max-large-size--3-of-4{width:75%}.slds .slds-max-large-size--4-of-4{width:100%}.slds .slds-max-large-size--1-of-5{width:20%}.slds .slds-max-large-size--2-of-5{width:40%}.slds .slds-max-large-size--3-of-5{width:60%}.slds .slds-max-large-size--4-of-5{width:80%}.slds .slds-max-large-size--5-of-5{width:100%}.slds .slds-max-large-size--1-of-6{width:16.66667%}.slds .slds-max-large-size--2-of-6{width:33.33333%}.slds .slds-max-large-size--3-of-6{width:50%}.slds .slds-max-large-size--4-of-6{width:66.66667%}.slds .slds-max-large-size--5-of-6{width:83.33333%}.slds .slds-max-large-size--6-of-6{width:100%}.slds .slds-max-large-size--1-of-7{width:14.28571%}.slds .slds-max-large-size--2-of-7{width:28.57143%}.slds .slds-max-large-size--3-of-7{width:42.85714%}.slds .slds-max-large-size--4-of-7{width:57.14286%}.slds .slds-max-large-size--5-of-7{width:71.42857%}.slds .slds-max-large-size--6-of-7{width:85.71429%}.slds .slds-max-large-size--7-of-7{width:100%}.slds .slds-max-large-size--1-of-8{width:12.5%}.slds .slds-max-large-size--2-of-8{width:25%}.slds .slds-max-large-size--3-of-8{width:37.5%}.slds .slds-max-large-size--4-of-8{width:50%}.slds .slds-max-large-size--5-of-8{width:62.5%}.slds .slds-max-large-size--6-of-8{width:75%}.slds .slds-max-large-size--7-of-8{width:87.5%}.slds .slds-max-large-size--8-of-8{width:100%}.slds .slds-max-large-size--1-of-12{width:8.33333%}.slds .slds-max-large-size--2-of-12{width:16.66667%}.slds .slds-max-large-size--3-of-12{width:25%}.slds .slds-max-large-size--4-of-12{width:33.33333%}.slds .slds-max-large-size--5-of-12{width:41.66667%}.slds .slds-max-large-size--6-of-12{width:50%}.slds .slds-max-large-size--7-of-12{width:58.33333%}.slds .slds-max-large-size--8-of-12{width:66.66667%}.slds .slds-max-large-size--9-of-12{width:75%}.slds .slds-max-large-size--10-of-12{width:83.33333%}.slds .slds-max-large-size--11-of-12{width:91.66667%}.slds .slds-max-large-size--12-of-12{width:100%}.slds .slds-max-large-order--1{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1}.slds .slds-max-large-order--2{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2}.slds .slds-max-large-order--3{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.slds .slds-max-large-order--4{-webkit-box-ordinal-group:5;-webkit-order:4;-ms-flex-order:4;order:4}.slds .slds-max-large-order--5{-webkit-box-ordinal-group:6;-webkit-order:5;-ms-flex-order:5;order:5}.slds .slds-max-large-order--6{-webkit-box-ordinal-group:7;-webkit-order:6;-ms-flex-order:6;order:6}.slds .slds-max-large-order--7{-webkit-box-ordinal-group:8;-webkit-order:7;-ms-flex-order:7;order:7}.slds .slds-max-large-order--8{-webkit-box-ordinal-group:9;-webkit-order:8;-ms-flex-order:8;order:8}.slds .slds-max-large-order--9{-webkit-box-ordinal-group:10;-webkit-order:9;-ms-flex-order:9;order:9}.slds .slds-max-large-order--10{-webkit-box-ordinal-group:11;-webkit-order:10;-ms-flex-order:10;order:10}.slds .slds-max-large-order--11{-webkit-box-ordinal-group:12;-webkit-order:11;-ms-flex-order:11;order:11}.slds .slds-max-large-order--12{-webkit-box-ordinal-group:13;-webkit-order:12;-ms-flex-order:12;order:12}}.slds .slds-hide{display:none}.slds .slds-show{display:block}.slds .slds-show--inline-block{display:inline-block}.slds .slds-show--inline{display:inline}.slds .slds-hidden{visibility:hidden}.slds .slds-visible{visibility:visible}.slds .slds-transition-hide{opacity:0}.slds .slds-transition-show{opacity:1}.slds .slds-collapsed{height:0;overflow:hidden}.slds .slds-expanded{height:auto;overflow:visible}.slds .slds-assistive-text{position:absolute !important;margin:-1px !important;border:0 !important;padding:0 !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0 0 0 0) !important}.slds .slds-x-small-show{display:none}@media (min-width: 320px){.slds .slds-x-small-show{display:block}.slds .slds-x-small-show--inline-block{display:inline-block}.slds .slds-x-small-show--inline{display:inline}}.slds .slds-x-small-show-only{display:none}@media (min-width: 320px) and (max-width: 479px){.slds .slds-x-small-show-only{display:block}.slds .slds-x-small-show-only--inline-block{display:inline-block}.slds .slds-x-small-show-only--inline{display:inline}}@media (max-width: 479px){.slds .slds-max-x-small-hide{display:none}}.slds .slds-small-show{display:none}@media (min-width: 480px){.slds .slds-small-show{display:block}.slds .slds-small-show--inline-block{display:inline-block}.slds .slds-small-show--inline{display:inline}}.slds .slds-small-show-only{display:none}@media (min-width: 480px) and (max-width: 767px){.slds .slds-small-show-only{display:block}.slds .slds-small-show-only--inline-block{display:inline-block}.slds .slds-small-show-only--inline{display:inline}}@media (max-width: 767px){.slds .slds-max-small-hide{display:none}}.slds .slds-medium-show{display:none}@media (min-width: 768px){.slds .slds-medium-show{display:block}.slds .slds-medium-show--inline-block{display:inline-block}.slds .slds-medium-show--inline{display:inline}}.slds .slds-medium-show-only{display:none}@media (min-width: 768px) and (max-width: 1023px){.slds .slds-medium-show-only{display:block}.slds .slds-medium-show-only--inline-block{display:inline-block}.slds .slds-medium-show-only--inline{display:inline}}@media (max-width: 1023px){.slds .slds-max-medium-hide{display:none}}.slds .slds-large-show{display:none}@media (min-width: 1024px){.slds .slds-large-show{display:block}.slds .slds-large-show--inline-block{display:inline-block}.slds .slds-large-show--inline{display:inline}}@media print{.slds *,.slds *:before,.slds *:after{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}.slds a,.slds a:visited{text-decoration:underline}.slds a[href]:after{content:" (" attr(href) ")"}.slds abbr[title]:after{content:" (" attr(title) ")"}.slds a[href^="#"]:after,.slds a[href^="javascript:"]:after{content:""}.slds pre,.slds blockquote{border:1px solid #999;page-break-inside:avoid}.slds thead{display:table-header-group}.slds tr,.slds img{page-break-inside:avoid}.slds img{max-width:100% !important}.slds p,.slds h2,.slds h3{orphans:3;widows:3}.slds h2,.slds h3{page-break-after:avoid}} -/* - * Global Demo Styles - */ -html { - line-height: 1.71429; - color: #5876A3; -} - -.mw-readability { max-width: 800px; } - -.site-logo { - display: inline-block; - background-position: center center; - background-size: 100%; - width: 3.9375rem; - height: 2.75rem; - text-indent: -9999em; - background: url('https://www.lightningdesignsystem.com/assets/images/logo.svg') no-repeat; -} - -/* - * Demo Documentation styles - */ -.demo-only .mw-col-m { max-width: 150px; } -.demo-only .mw-col-l { max-width: 300px; } -.demo-only button { - background: white; - border: none; -} - -.bg-lt-gray { background: rgb(244, 246, 249); } -.bh-gray { border-left: 1px solid rgb(216, 221, 230); border-right: 1px solid rgb(216, 221, 230); } -.bb-gray { border-bottom: 1px solid rgb(216, 221, 230); } - - -/* Typography */ -.copy-text p { font-size: .95rem; } -.site-text--bold { font-weight: 700; } -.site-text--xl { font-size: 3rem !important; } -.site-text--center { text-align: center !important; } - -.a-plain { color: inherit !important; } -.a-plain:hover, .a-plain:focus, .a-plain.active { - text-decoration: none !important; - background-color: #f6f6f6; -} -code { - color: black; - background-color: #f6f6f6; - border-radius: 4px; -} -aside a { - display: block; -} - - -/* Property Table */ -.demo-only .slds .slds-table th, .slds .slds-table td { white-space: inherit; } -.demo-only .site-text-heading--label th { - text-transform: uppercase; - font-size: 1.1em; -} - -/* - * Demo Component Specific Styles - */ -.demo-only .slds-notify-container { position: fixed !important; } -.demo-only .slds-icon__container { margin-right: 20px; } - - - -/* - * Animations - */ -.slds .slds-theme--alert-texture-animated { - background-image: -webkit-linear-gradient(45deg, rgba(0, 0, 0, 0.035) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.035) 50%, rgba(0, 0, 0, 0.035) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.035) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.035) 50%, rgba(0, 0, 0, 0.035) 75%, transparent 75%, transparent); - background-size: 64px 64px; - animation: progress-bar-stripes 2.4s 4 linear; -} - -@keyframes progress-bar-stripes{ - 0% { background-position:0 64px; } - 100% { background-position:0 0; } -} - - -/* - * Codemirror - live editor styles - */ -.CodeMirror-code pre { - overflow: inherit; -} - -/* BASICS */ - -.CodeMirror { - /* Set height, width, borders, and global font properties here */ - font-size: 15px; - font-family: monospace; - color: black; - z-index: 0; -} - -/* PADDING */ - -.CodeMirror-lines { - padding: 4px 0; /* Vertical padding around content */ -} -.CodeMirror pre { - padding: 0 4px; /* Horizontal padding of content */ -} - -.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { - background-color: white; /* The little square between H and V scrollbars */ -} - -/* GUTTER */ - -.CodeMirror-gutters { - border-right: 1px solid #ddd; - background-color: #f7f7f7; - white-space: nowrap; -} -.CodeMirror-linenumbers {} -.CodeMirror-linenumber { - padding: 0 3px 0 5px; - min-width: 20px; - text-align: right; - color: #999; - white-space: nowrap; -} - -.CodeMirror-guttermarker { color: black; } -.CodeMirror-guttermarker-subtle { color: #999; } - -/* CURSOR */ - -.CodeMirror-cursor { - border-left: 1px solid black; - border-right: none; - width: 0; -} -/* Shown when moving in bi-directional text */ -.CodeMirror div.CodeMirror-secondarycursor { - border-left: 1px solid silver; -} -.cm-fat-cursor .CodeMirror-cursor { - width: auto; - border: 0; - background: #7e7; -} -.cm-fat-cursor div.CodeMirror-cursors { - z-index: 1; -} - -.cm-animate-fat-cursor { - width: auto; - border: 0; - -webkit-animation: blink 1.06s steps(1) infinite; - -moz-animation: blink 1.06s steps(1) infinite; - animation: blink 1.06s steps(1) infinite; - background-color: #7e7; -} -@-moz-keyframes blink { - 0% {} - 50% { background-color: transparent; } - 100% {} -} -@-webkit-keyframes blink { - 0% {} - 50% { background-color: transparent; } - 100% {} -} -@keyframes blink { - 0% {} - 50% { background-color: transparent; } - 100% {} -} - -/* Can style cursor different in overwrite (non-insert) mode */ -.CodeMirror-overwrite .CodeMirror-cursor {} - -.cm-tab { display: inline-block; text-decoration: inherit; } - -.CodeMirror-ruler { - border-left: 1px solid #ccc; - position: absolute; -} - -/* DEFAULT THEME */ - -.cm-s-default .cm-header {color: blue;} -.cm-s-default .cm-quote {color: #090;} -.cm-negative {color: #d44;} -.cm-positive {color: #292;} -.cm-header, .cm-strong {font-weight: bold;} -.cm-em {font-style: italic;} -.cm-link {text-decoration: underline;} -.cm-strikethrough {text-decoration: line-through;} - -.cm-s-default .cm-keyword {color: #708;} -.cm-s-default .cm-atom {color: #219;} -.cm-s-default .cm-number {color: #164;} -.cm-s-default .cm-def {color: #00f;} -.cm-s-default .cm-variable, -.cm-s-default .cm-punctuation, -.cm-s-default .cm-property, -.cm-s-default .cm-operator {} -.cm-s-default .cm-variable-2 {color: #05a;} -.cm-s-default .cm-variable-3 {color: #085;} -.cm-s-default .cm-comment {color: #a50;} -.cm-s-default .cm-string {color: #a11;} -.cm-s-default .cm-string-2 {color: #f50;} -.cm-s-default .cm-meta {color: #555;} -.cm-s-default .cm-qualifier {color: #555;} -.cm-s-default .cm-builtin {color: #30a;} -.cm-s-default .cm-bracket {color: #997;} -.cm-s-default .cm-tag {color: #170;} -.cm-s-default .cm-attribute {color: #00c;} -.cm-s-default .cm-hr {color: #999;} -.cm-s-default .cm-link {color: #00c;} - -.cm-s-default .cm-error {color: #f00;} -.cm-invalidchar {color: #f00;} - -.CodeMirror-composing { border-bottom: 2px solid; } - -/* Default styles for common addons */ - -div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;} -div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;} -.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); } -.CodeMirror-activeline-background {background: #e8f2ff;} - -/* STOP */ - -/* The rest of this file contains styles related to the mechanics of - the editor. You probably shouldn't touch them. */ - -.CodeMirror { - position: relative; - overflow: hidden; - background: white; -} - -.CodeMirror-scroll { - overflow: scroll !important; /* Things will break if this is overridden */ - /* 30px is the magic margin used to hide the element's real scrollbars */ - /* See overflow: hidden in .CodeMirror */ - margin-bottom: -30px; margin-right: -30px; - padding-bottom: 30px; - height: 100%; - outline: none; /* Prevent dragging from highlighting the element */ - position: relative; -} -.CodeMirror-sizer { - position: relative; - border-right: 30px solid transparent; -} - -/* The fake, visible scrollbars. Used to force redraw during scrolling - before actuall scrolling happens, thus preventing shaking and - flickering artifacts. */ -.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { - position: absolute; - z-index: 6; - display: none; -} -.CodeMirror-vscrollbar { - right: 0; top: 0; - overflow-x: hidden; - overflow-y: scroll; -} -.CodeMirror-hscrollbar { - bottom: 0; left: 0; - overflow-y: hidden; - overflow-x: scroll; -} -.CodeMirror-scrollbar-filler { - right: 0; bottom: 0; -} -.CodeMirror-gutter-filler { - left: 0; bottom: 0; -} - -.CodeMirror-gutters { - position: absolute; left: 0; top: 0; - z-index: 3; -} -.CodeMirror-gutter { - white-space: normal; - height: 100%; - display: inline-block; - margin-bottom: -30px; - /* Hack to make IE7 behave */ - *zoom:1; - *display:inline; -} -.CodeMirror-gutter-wrapper { - position: absolute; - z-index: 4; - background: none !important; - border: none !important; -} -.CodeMirror-gutter-background { - position: absolute; - top: 0; bottom: 0; - z-index: 4; -} -.CodeMirror-gutter-elt { - position: absolute; - cursor: default; - z-index: 4; -} -.CodeMirror-gutter-wrapper { - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; -} - -.CodeMirror-lines { - cursor: text; - min-height: 1px; /* prevents collapsing before first draw */ -} -.CodeMirror pre { - /* Reset some styles that the rest of the page might have set */ - -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; - border-width: 0; - background: transparent; - font-family: inherit; - font-size: inherit; - margin: 0; - white-space: pre; - word-wrap: normal; - line-height: inherit; - color: inherit; - z-index: 2; - position: relative; - overflow: visible; - -webkit-tap-highlight-color: transparent; -} -.CodeMirror-wrap pre { - word-wrap: break-word; - white-space: pre-wrap; - word-break: normal; -} - -.CodeMirror-linebackground { - position: absolute; - left: 0; right: 0; top: 0; bottom: 0; - z-index: 0; -} - -.CodeMirror-linewidget { - position: relative; - z-index: 2; - overflow: auto; -} - -.CodeMirror-widget {} - -.CodeMirror-code { - outline: none; -} - -/* Force content-box sizing for the elements where we expect it */ -.CodeMirror-scroll, -.CodeMirror-sizer, -.CodeMirror-gutter, -.CodeMirror-gutters, -.CodeMirror-linenumber { - -moz-box-sizing: content-box; - box-sizing: content-box; -} - -.CodeMirror-measure { - position: absolute; - width: 100%; - height: 0; - overflow: hidden; - visibility: hidden; -} - -.CodeMirror-cursor { position: absolute; } -.CodeMirror-measure pre { position: static; } - -div.CodeMirror-cursors { - visibility: hidden; - position: relative; - z-index: 3; -} -div.CodeMirror-dragcursors { - visibility: visible; -} - -.CodeMirror-focused div.CodeMirror-cursors { - visibility: visible; -} - -.CodeMirror-selected { background: #d9d9d9; } -.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; } -.CodeMirror-crosshair { cursor: crosshair; } -.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; } -.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; } - -.cm-searching { - background: #ffa; - background: rgba(255, 255, 0, .4); -} - -/* IE7 hack to prevent it from returning funny offsetTops on the spans */ -.CodeMirror span { *vertical-align: text-bottom; } - -/* Used to force a border model for a node */ -.cm-force-border { padding-right: .1px; } - -@media print { - /* Hide the cursor when printing */ - .CodeMirror div.CodeMirror-cursors { - visibility: hidden; - } -} - -/* See issue #2901 */ -.cm-tab-wrap-hack:after { content: ''; } - -/* Help users use markselection to safely style text background */ -span.CodeMirror-selectedtext { background: none; } diff --git a/dist/demo.js b/dist/demo.js deleted file mode 100644 index c7bbb33763..0000000000 --- a/dist/demo.js +++ /dev/null @@ -1,52400 +0,0 @@ -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; - -/******/ // The require function -/******/ function __webpack_require__(moduleId) { - -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) -/******/ return installedModules[moduleId].exports; - -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ exports: {}, -/******/ id: moduleId, -/******/ loaded: false -/******/ }; - -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); - -/******/ // Flag the module as loaded -/******/ module.loaded = true; - -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } - - -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; - -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; - -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = "http://localhost:3001/assets/bundle"; - -/******/ // Load entry module and return exports -/******/ return __webpack_require__(0); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ function(module, exports, __webpack_require__) { - - module.exports = __webpack_require__(1); - - -/***/ }, -/* 1 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - var _react = __webpack_require__(2); - - var _react2 = _interopRequireDefault(_react); - - var _reactDom = __webpack_require__(159); - - var _reactDom2 = _interopRequireDefault(_reactDom); - - var _reactRouter = __webpack_require__(160); - - var _reactRouter2 = _interopRequireDefault(_reactRouter); - - var _components = __webpack_require__(202); - - var _App = __webpack_require__(291); - - var _App2 = _interopRequireDefault(_App); - - var _pages = __webpack_require__(294); - - var _pages2 = _interopRequireDefault(_pages); - - var _Welcome = __webpack_require__(296); - - var _Welcome2 = _interopRequireDefault(_Welcome); - - var _GettingStarted = __webpack_require__(298); - - var _GettingStarted2 = _interopRequireDefault(_GettingStarted); - - var _FAQ = __webpack_require__(299); - - var _FAQ2 = _interopRequireDefault(_FAQ); - - var _ButtonSection = __webpack_require__(300); - - var _ButtonSection2 = _interopRequireDefault(_ButtonSection); - - var _ButtonStatefulSection = __webpack_require__(317); - - var _ButtonStatefulSection2 = _interopRequireDefault(_ButtonStatefulSection); - - var _ButtonGroupSection = __webpack_require__(318); - - var _ButtonGroupSection2 = _interopRequireDefault(_ButtonGroupSection); - - var _DateInputSection = __webpack_require__(319); - - var _DateInputSection2 = _interopRequireDefault(_DateInputSection); - - var _DatePickerSingleSelectSection = __webpack_require__(320); - - var _DatePickerSingleSelectSection2 = _interopRequireDefault(_DatePickerSingleSelectSection); - - var _DropdownSection = __webpack_require__(321); - - var _DropdownSection2 = _interopRequireDefault(_DropdownSection); - - var _IconSection = __webpack_require__(322); - - var _IconSection2 = _interopRequireDefault(_IconSection); - - var _LookupSection = __webpack_require__(323); - - var _LookupSection2 = _interopRequireDefault(_LookupSection); - - var _ModalSection = __webpack_require__(324); - - var _ModalSection2 = _interopRequireDefault(_ModalSection); - - var _NotificationSection = __webpack_require__(325); - - var _NotificationSection2 = _interopRequireDefault(_NotificationSection); - - var _PicklistSection = __webpack_require__(326); - - var _PicklistSection2 = _interopRequireDefault(_PicklistSection); - - var _TooltipSection = __webpack_require__(327); - - var _TooltipSection2 = _interopRequireDefault(_TooltipSection); - - function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - - _components.SLDSSettings.setAssetsPath('demo/assets/'); - _components.SLDSSettings.setAppElement('#root'); - - var routes = _react2.default.createElement( - _reactRouter.Route, - { handler: _App2.default, path: '/' }, - _react2.default.createElement( - _reactRouter.Route, - { name: 'home', path: '/', handler: _pages2.default }, - _react2.default.createElement(_reactRouter.DefaultRoute, { handler: _Welcome2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'welcome', path: 'welcome', handler: _Welcome2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'getting-started', path: 'getting-started', handler: _GettingStarted2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'button', path: 'button', handler: _ButtonSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'button-stateful', path: 'button-stateful', handler: _ButtonStatefulSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'button-group', path: 'button-group', handler: _ButtonGroupSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'dateinput', path: 'dateinput', handler: _DateInputSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'datepicker', path: 'datepicker', handler: _DatePickerSingleSelectSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'dropdown', path: 'dropdown', handler: _DropdownSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'icon', path: 'icon', handler: _IconSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'lookup', path: 'lookup', handler: _LookupSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'modal', path: 'modal', handler: _ModalSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'notification', path: 'notification', handler: _NotificationSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'picklist', path: 'picklist', handler: _PicklistSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'tooltip', path: 'tooltip', handler: _TooltipSection2.default }), - _react2.default.createElement(_reactRouter.Route, { name: 'faq', path: 'faq', handler: _FAQ2.default }) - ) - ); - - _reactRouter2.default.run(routes, function (Handler) { - _reactDom2.default.render(_react2.default.createElement(Handler, null), document.getElementById('root')); - }); - -/***/ }, -/* 2 */ -/***/ function(module, exports, __webpack_require__) { - - 'use strict'; - - module.exports = __webpack_require__(3); - - -/***/ }, -/* 3 */ -/***/ function(module, exports, __webpack_require__) { - - /** - * 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. - * - * @providesModule React - */ - - 'use strict'; - - var ReactDOM = __webpack_require__(4); - var ReactDOMServer = __webpack_require__(149); - var ReactIsomorphic = __webpack_require__(153); - - var assign = __webpack_require__(40); - var deprecated = __webpack_require__(158); - - // `version` will be added here by ReactIsomorphic. - var React = {}; - - assign(React, ReactIsomorphic); - - assign(React, { - // ReactDOM - findDOMNode: deprecated('findDOMNode', 'ReactDOM', 'react-dom', ReactDOM, ReactDOM.findDOMNode), - render: deprecated('render', 'ReactDOM', 'react-dom', ReactDOM, ReactDOM.render), - unmountComponentAtNode: deprecated('unmountComponentAtNode', 'ReactDOM', 'react-dom', ReactDOM, ReactDOM.unmountComponentAtNode), - - // ReactDOMServer - renderToString: deprecated('renderToString', 'ReactDOMServer', 'react-dom/server', ReactDOMServer, ReactDOMServer.renderToString), - renderToStaticMarkup: deprecated('renderToStaticMarkup', 'ReactDOMServer', 'react-dom/server', ReactDOMServer, ReactDOMServer.renderToStaticMarkup) - }); - - React.__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactDOM; - React.__SECRET_DOM_SERVER_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactDOMServer; - - module.exports = React; - -/***/ }, -/* 4 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule ReactDOM - */ - - /* globals __REACT_DEVTOOLS_GLOBAL_HOOK__*/ - - 'use strict'; - - var ReactCurrentOwner = __webpack_require__(6); - var ReactDOMTextComponent = __webpack_require__(7); - var ReactDefaultInjection = __webpack_require__(72); - var ReactInstanceHandles = __webpack_require__(46); - var ReactMount = __webpack_require__(29); - var ReactPerf = __webpack_require__(19); - var ReactReconciler = __webpack_require__(51); - var ReactUpdates = __webpack_require__(55); - var ReactVersion = __webpack_require__(147); - - var findDOMNode = __webpack_require__(92); - var renderSubtreeIntoContainer = __webpack_require__(148); - var warning = __webpack_require__(26); - - ReactDefaultInjection.inject(); - - var render = ReactPerf.measure('React', 'render', ReactMount.render); - - var React = { - findDOMNode: findDOMNode, - render: render, - unmountComponentAtNode: ReactMount.unmountComponentAtNode, - version: ReactVersion, - - /* eslint-disable camelcase */ - unstable_batchedUpdates: ReactUpdates.batchedUpdates, - unstable_renderSubtreeIntoContainer: renderSubtreeIntoContainer - }; - - // Inject the runtime into a devtools global hook regardless of browser. - // Allows for debugging when the hook is injected on the page. - /* eslint-enable camelcase */ - if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.inject === 'function') { - __REACT_DEVTOOLS_GLOBAL_HOOK__.inject({ - CurrentOwner: ReactCurrentOwner, - InstanceHandles: ReactInstanceHandles, - Mount: ReactMount, - Reconciler: ReactReconciler, - TextComponent: ReactDOMTextComponent - }); - } - - if (process.env.NODE_ENV !== 'production') { - var ExecutionEnvironment = __webpack_require__(10); - if (ExecutionEnvironment.canUseDOM && window.top === window.self) { - - // First check if devtools is not installed - if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined') { - // If we're in Chrome or Firefox, provide a download link if not installed. - if (navigator.userAgent.indexOf('Chrome') > -1 && navigator.userAgent.indexOf('Edge') === -1 || navigator.userAgent.indexOf('Firefox') > -1) { - console.debug('Download the React DevTools for a better development experience: ' + 'https://fb.me/react-devtools'); - } - } - - // If we're in IE8, check to see if we are in compatibility mode and provide - // information on preventing compatibility mode - var ieCompatibilityMode = document.documentMode && document.documentMode < 8; - - process.env.NODE_ENV !== 'production' ? warning(!ieCompatibilityMode, 'Internet Explorer is running in compatibility mode; please add the ' + 'following tag to your HTML to prevent this from happening: ' + '') : undefined; - - var expectedFeatures = [ - // shims - Array.isArray, Array.prototype.every, Array.prototype.forEach, Array.prototype.indexOf, Array.prototype.map, Date.now, Function.prototype.bind, Object.keys, String.prototype.split, String.prototype.trim, - - // shams - Object.create, Object.freeze]; - - for (var i = 0; i < expectedFeatures.length; i++) { - if (!expectedFeatures[i]) { - console.error('One or more ES5 shim/shams expected by React are not available: ' + 'https://fb.me/react-warning-polyfills'); - break; - } - } - } - } - - module.exports = React; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 5 */ -/***/ 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 drainQueue() { - if (draining) { - return; - } - var timeout = setTimeout(cleanUpNextTick); - draining = true; - - var len = queue.length; - while(len) { - currentQueue = queue; - queue = []; - while (++queueIndex < len) { - if (currentQueue) { - currentQueue[queueIndex].run(); - } - } - queueIndex = -1; - len = queue.length; - } - 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]; - } - } - 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; - - process.binding = function (name) { - throw new Error('process.binding is not supported'); - }; - - process.cwd = function () { return '/' }; - process.chdir = function (dir) { - throw new Error('process.chdir is not supported'); - }; - process.umask = function() { return 0; }; - - -/***/ }, -/* 6 */ -/***/ function(module, exports) { - - /** - * 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. - * - * @providesModule ReactCurrentOwner - */ - - 'use strict'; - - /** - * Keeps track of the current owner. - * - * The current owner is the component who should own any components that are - * currently being constructed. - */ - var ReactCurrentOwner = { - - /** - * @internal - * @type {ReactComponent} - */ - current: null - - }; - - module.exports = ReactCurrentOwner; - -/***/ }, -/* 7 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule ReactDOMTextComponent - * @typechecks static-only - */ - - 'use strict'; - - var DOMChildrenOperations = __webpack_require__(8); - var DOMPropertyOperations = __webpack_require__(23); - var ReactComponentBrowserEnvironment = __webpack_require__(27); - var ReactMount = __webpack_require__(29); - - var assign = __webpack_require__(40); - var escapeTextContentForBrowser = __webpack_require__(22); - var setTextContent = __webpack_require__(21); - var validateDOMNesting = __webpack_require__(71); - - /** - * Text nodes violate a couple assumptions that React makes about components: - * - * - When mounting text into the DOM, adjacent text nodes are merged. - * - Text nodes cannot be assigned a React root ID. - * - * This component is used to wrap strings in elements so that they can undergo - * the same reconciliation that is applied to elements. - * - * TODO: Investigate representing React components in the DOM with text nodes. - * - * @class ReactDOMTextComponent - * @extends ReactComponent - * @internal - */ - var ReactDOMTextComponent = function (props) { - // This constructor and its argument is currently used by mocks. - }; - - assign(ReactDOMTextComponent.prototype, { - - /** - * @param {ReactText} text - * @internal - */ - construct: function (text) { - // TODO: This is really a ReactText (ReactNode), not a ReactElement - this._currentElement = text; - this._stringText = '' + text; - - // Properties - this._rootNodeID = null; - this._mountIndex = 0; - }, - - /** - * Creates the markup for this text node. This node is not intended to have - * any features besides containing text content. - * - * @param {string} rootID DOM ID of the root node. - * @param {ReactReconcileTransaction|ReactServerRenderingTransaction} transaction - * @return {string} Markup for this text node. - * @internal - */ - mountComponent: function (rootID, transaction, context) { - if (process.env.NODE_ENV !== 'production') { - if (context[validateDOMNesting.ancestorInfoContextKey]) { - validateDOMNesting('span', null, context[validateDOMNesting.ancestorInfoContextKey]); - } - } - - this._rootNodeID = rootID; - if (transaction.useCreateElement) { - var ownerDocument = context[ReactMount.ownerDocumentContextKey]; - var el = ownerDocument.createElement('span'); - DOMPropertyOperations.setAttributeForID(el, rootID); - // Populate node cache - ReactMount.getID(el); - setTextContent(el, this._stringText); - return el; - } else { - var escapedText = escapeTextContentForBrowser(this._stringText); - - if (transaction.renderToStaticMarkup) { - // Normally we'd wrap this in a `span` for the reasons stated above, but - // since this is a situation where React won't take over (static pages), - // we can simply return the text as it is. - return escapedText; - } - - return '' + escapedText + ''; - } - }, - - /** - * Updates this component by updating the text content. - * - * @param {ReactText} nextText The next text content - * @param {ReactReconcileTransaction} transaction - * @internal - */ - receiveComponent: function (nextText, transaction) { - if (nextText !== this._currentElement) { - this._currentElement = nextText; - var nextStringText = '' + nextText; - if (nextStringText !== this._stringText) { - // TODO: Save this as pending props and use performUpdateIfNecessary - // and/or updateComponent to do the actual update for consistency with - // other component types? - this._stringText = nextStringText; - var node = ReactMount.getNode(this._rootNodeID); - DOMChildrenOperations.updateTextContent(node, nextStringText); - } - } - }, - - unmountComponent: function () { - ReactComponentBrowserEnvironment.unmountIDFromEnvironment(this._rootNodeID); - } - - }); - - module.exports = ReactDOMTextComponent; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 8 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule DOMChildrenOperations - * @typechecks static-only - */ - - 'use strict'; - - var Danger = __webpack_require__(9); - var ReactMultiChildUpdateTypes = __webpack_require__(17); - var ReactPerf = __webpack_require__(19); - - var setInnerHTML = __webpack_require__(20); - var setTextContent = __webpack_require__(21); - var invariant = __webpack_require__(14); - - /** - * Inserts `childNode` as a child of `parentNode` at the `index`. - * - * @param {DOMElement} parentNode Parent node in which to insert. - * @param {DOMElement} childNode Child node to insert. - * @param {number} index Index at which to insert the child. - * @internal - */ - function insertChildAt(parentNode, childNode, index) { - // By exploiting arrays returning `undefined` for an undefined index, we can - // rely exclusively on `insertBefore(node, null)` instead of also using - // `appendChild(node)`. However, using `undefined` is not allowed by all - // browsers so we must replace it with `null`. - - // fix render order error in safari - // IE8 will throw error when index out of list size. - var beforeChild = index >= parentNode.childNodes.length ? null : parentNode.childNodes.item(index); - - parentNode.insertBefore(childNode, beforeChild); - } - - /** - * Operations for updating with DOM children. - */ - var DOMChildrenOperations = { - - dangerouslyReplaceNodeWithMarkup: Danger.dangerouslyReplaceNodeWithMarkup, - - updateTextContent: setTextContent, - - /** - * Updates a component's children by processing a series of updates. The - * update configurations are each expected to have a `parentNode` property. - * - * @param {array} updates List of update configurations. - * @param {array} markupList List of markup strings. - * @internal - */ - processUpdates: function (updates, markupList) { - var update; - // Mapping from parent IDs to initial child orderings. - var initialChildren = null; - // List of children that will be moved or removed. - var updatedChildren = null; - - for (var i = 0; i < updates.length; i++) { - update = updates[i]; - if (update.type === ReactMultiChildUpdateTypes.MOVE_EXISTING || update.type === ReactMultiChildUpdateTypes.REMOVE_NODE) { - var updatedIndex = update.fromIndex; - var updatedChild = update.parentNode.childNodes[updatedIndex]; - var parentID = update.parentID; - - !updatedChild ? process.env.NODE_ENV !== 'production' ? invariant(false, 'processUpdates(): Unable to find child %s of element. This ' + 'probably means the DOM was unexpectedly mutated (e.g., by the ' + 'browser), usually due to forgetting a when using tables, ' + 'nesting tags like
,

, or , or using non-SVG elements ' + 'in an parent. Try inspecting the child nodes of the element ' + 'with React ID `%s`.', updatedIndex, parentID) : invariant(false) : undefined; - - initialChildren = initialChildren || {}; - initialChildren[parentID] = initialChildren[parentID] || []; - initialChildren[parentID][updatedIndex] = updatedChild; - - updatedChildren = updatedChildren || []; - updatedChildren.push(updatedChild); - } - } - - var renderedMarkup; - // markupList is either a list of markup or just a list of elements - if (markupList.length && typeof markupList[0] === 'string') { - renderedMarkup = Danger.dangerouslyRenderMarkup(markupList); - } else { - renderedMarkup = markupList; - } - - // Remove updated children first so that `toIndex` is consistent. - if (updatedChildren) { - for (var j = 0; j < updatedChildren.length; j++) { - updatedChildren[j].parentNode.removeChild(updatedChildren[j]); - } - } - - for (var k = 0; k < updates.length; k++) { - update = updates[k]; - switch (update.type) { - case ReactMultiChildUpdateTypes.INSERT_MARKUP: - insertChildAt(update.parentNode, renderedMarkup[update.markupIndex], update.toIndex); - break; - case ReactMultiChildUpdateTypes.MOVE_EXISTING: - insertChildAt(update.parentNode, initialChildren[update.parentID][update.fromIndex], update.toIndex); - break; - case ReactMultiChildUpdateTypes.SET_MARKUP: - setInnerHTML(update.parentNode, update.content); - break; - case ReactMultiChildUpdateTypes.TEXT_CONTENT: - setTextContent(update.parentNode, update.content); - break; - case ReactMultiChildUpdateTypes.REMOVE_NODE: - // Already removed by the for-loop above. - break; - } - } - } - - }; - - ReactPerf.measureMethods(DOMChildrenOperations, 'DOMChildrenOperations', { - updateTextContent: 'updateTextContent' - }); - - module.exports = DOMChildrenOperations; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 9 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule Danger - * @typechecks static-only - */ - - 'use strict'; - - var ExecutionEnvironment = __webpack_require__(10); - - var createNodesFromMarkup = __webpack_require__(11); - var emptyFunction = __webpack_require__(16); - var getMarkupWrap = __webpack_require__(15); - var invariant = __webpack_require__(14); - - var OPEN_TAG_NAME_EXP = /^(<[^ \/>]+)/; - var RESULT_INDEX_ATTR = 'data-danger-index'; - - /** - * Extracts the `nodeName` from a string of markup. - * - * NOTE: Extracting the `nodeName` does not require a regular expression match - * because we make assumptions about React-generated markup (i.e. there are no - * spaces surrounding the opening tag and there is at least one attribute). - * - * @param {string} markup String of markup. - * @return {string} Node name of the supplied markup. - * @see http://jsperf.com/extract-nodename - */ - function getNodeName(markup) { - return markup.substring(1, markup.indexOf(' ')); - } - - var Danger = { - - /** - * Renders markup into an array of nodes. The markup is expected to render - * into a list of root nodes. Also, the length of `resultList` and - * `markupList` should be the same. - * - * @param {array} markupList List of markup strings to render. - * @return {array} List of rendered nodes. - * @internal - */ - dangerouslyRenderMarkup: function (markupList) { - !ExecutionEnvironment.canUseDOM ? process.env.NODE_ENV !== 'production' ? invariant(false, 'dangerouslyRenderMarkup(...): Cannot render markup in a worker ' + 'thread. Make sure `window` and `document` are available globally ' + 'before requiring React when unit testing or use ' + 'ReactDOMServer.renderToString for server rendering.') : invariant(false) : undefined; - var nodeName; - var markupByNodeName = {}; - // Group markup by `nodeName` if a wrap is necessary, else by '*'. - for (var i = 0; i < markupList.length; i++) { - !markupList[i] ? process.env.NODE_ENV !== 'production' ? invariant(false, 'dangerouslyRenderMarkup(...): Missing markup.') : invariant(false) : undefined; - nodeName = getNodeName(markupList[i]); - nodeName = getMarkupWrap(nodeName) ? nodeName : '*'; - markupByNodeName[nodeName] = markupByNodeName[nodeName] || []; - markupByNodeName[nodeName][i] = markupList[i]; - } - var resultList = []; - var resultListAssignmentCount = 0; - for (nodeName in markupByNodeName) { - if (!markupByNodeName.hasOwnProperty(nodeName)) { - continue; - } - var markupListByNodeName = markupByNodeName[nodeName]; - - // This for-in loop skips the holes of the sparse array. The order of - // iteration should follow the order of assignment, which happens to match - // numerical index order, but we don't rely on that. - var resultIndex; - for (resultIndex in markupListByNodeName) { - if (markupListByNodeName.hasOwnProperty(resultIndex)) { - var markup = markupListByNodeName[resultIndex]; - - // Push the requested markup with an additional RESULT_INDEX_ATTR - // attribute. If the markup does not start with a < character, it - // will be discarded below (with an appropriate console.error). - markupListByNodeName[resultIndex] = markup.replace(OPEN_TAG_NAME_EXP, - // This index will be parsed back out below. - '$1 ' + RESULT_INDEX_ATTR + '="' + resultIndex + '" '); - } - } - - // Render each group of markup with similar wrapping `nodeName`. - var renderNodes = createNodesFromMarkup(markupListByNodeName.join(''), emptyFunction // Do nothing special with ', '
']; - var trWrap = [3, '', '
']; - - var svgWrap = [1, '', '']; - - var markupWrap = { - '*': [1, '?

', '
'], - - 'area': [1, '', ''], - 'col': [2, '', '
'], - 'legend': [1, '
', '
'], - 'param': [1, '', ''], - 'tr': [2, '', '
'], - - 'optgroup': selectWrap, - 'option': selectWrap, - - 'caption': tableWrap, - 'colgroup': tableWrap, - 'tbody': tableWrap, - 'tfoot': tableWrap, - 'thead': tableWrap, - - 'td': trWrap, - 'th': trWrap - }; - - // Initialize the SVG elements since we know they'll always need to be wrapped - // consistently. If they are created inside a
they will be initialized in - // the wrong namespace (and will not display). - var svgElements = ['circle', 'clipPath', 'defs', 'ellipse', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'text', 'tspan']; - svgElements.forEach(function (nodeName) { - markupWrap[nodeName] = svgWrap; - shouldWrap[nodeName] = true; - }); - - /** - * Gets the markup wrap configuration for the supplied `nodeName`. - * - * NOTE: This lazily detects which wraps are necessary for the current browser. - * - * @param {string} nodeName Lowercase `nodeName`. - * @return {?array} Markup wrap configuration, if applicable. - */ - function getMarkupWrap(nodeName) { - !!!dummyNode ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Markup wrapping node not initialized') : invariant(false) : undefined; - if (!markupWrap.hasOwnProperty(nodeName)) { - nodeName = '*'; - } - if (!shouldWrap.hasOwnProperty(nodeName)) { - if (nodeName === '*') { - dummyNode.innerHTML = ''; - } else { - dummyNode.innerHTML = '<' + nodeName + '>'; - } - shouldWrap[nodeName] = !dummyNode.firstChild; - } - return shouldWrap[nodeName] ? markupWrap[nodeName] : null; - } - - module.exports = getMarkupWrap; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 16 */ -/***/ function(module, exports) { - - /** - * 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. - * - * @providesModule emptyFunction - */ - - "use strict"; - - function makeEmptyFunction(arg) { - return function () { - return arg; - }; - } - - /** - * This function accepts and discards inputs; it has no side effects. This is - * primarily useful idiomatically for overridable function endpoints which - * always need to be callable, since JS lacks a null-call idiom ala Cocoa. - */ - function emptyFunction() {} - - emptyFunction.thatReturns = makeEmptyFunction; - emptyFunction.thatReturnsFalse = makeEmptyFunction(false); - emptyFunction.thatReturnsTrue = makeEmptyFunction(true); - emptyFunction.thatReturnsNull = makeEmptyFunction(null); - emptyFunction.thatReturnsThis = function () { - return this; - }; - emptyFunction.thatReturnsArgument = function (arg) { - return arg; - }; - - module.exports = emptyFunction; - -/***/ }, -/* 17 */ -/***/ function(module, exports, __webpack_require__) { - - /** - * 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. - * - * @providesModule ReactMultiChildUpdateTypes - */ - - 'use strict'; - - var keyMirror = __webpack_require__(18); - - /** - * When a component's children are updated, a series of update configuration - * objects are created in order to batch and serialize the required changes. - * - * Enumerates all the possible types of update configurations. - * - * @internal - */ - var ReactMultiChildUpdateTypes = keyMirror({ - INSERT_MARKUP: null, - MOVE_EXISTING: null, - REMOVE_NODE: null, - SET_MARKUP: null, - TEXT_CONTENT: null - }); - - module.exports = ReactMultiChildUpdateTypes; - -/***/ }, -/* 18 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule keyMirror - * @typechecks static-only - */ - - 'use strict'; - - var invariant = __webpack_require__(14); - - /** - * Constructs an enumeration with keys equal to their value. - * - * For example: - * - * var COLORS = keyMirror({blue: null, red: null}); - * var myColor = COLORS.blue; - * var isColorValid = !!COLORS[myColor]; - * - * The last line could not be performed if the values of the generated enum were - * not equal to their keys. - * - * Input: {key1: val1, key2: val2} - * Output: {key1: key1, key2: key2} - * - * @param {object} obj - * @return {object} - */ - var keyMirror = function (obj) { - var ret = {}; - var key; - !(obj instanceof Object && !Array.isArray(obj)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'keyMirror(...): Argument must be an object.') : invariant(false) : undefined; - for (key in obj) { - if (!obj.hasOwnProperty(key)) { - continue; - } - ret[key] = key; - } - return ret; - }; - - module.exports = keyMirror; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 19 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule ReactPerf - * @typechecks static-only - */ - - 'use strict'; - - /** - * ReactPerf is a general AOP system designed to measure performance. This - * module only has the hooks: see ReactDefaultPerf for the analysis tool. - */ - var ReactPerf = { - /** - * Boolean to enable/disable measurement. Set to false by default to prevent - * accidental logging and perf loss. - */ - enableMeasure: false, - - /** - * Holds onto the measure function in use. By default, don't measure - * anything, but we'll override this if we inject a measure function. - */ - storedMeasure: _noMeasure, - - /** - * @param {object} object - * @param {string} objectName - * @param {object} methodNames - */ - measureMethods: function (object, objectName, methodNames) { - if (process.env.NODE_ENV !== 'production') { - for (var key in methodNames) { - if (!methodNames.hasOwnProperty(key)) { - continue; - } - object[key] = ReactPerf.measure(objectName, methodNames[key], object[key]); - } - } - }, - - /** - * Use this to wrap methods you want to measure. Zero overhead in production. - * - * @param {string} objName - * @param {string} fnName - * @param {function} func - * @return {function} - */ - measure: function (objName, fnName, func) { - if (process.env.NODE_ENV !== 'production') { - var measuredFunc = null; - var wrapper = function () { - if (ReactPerf.enableMeasure) { - if (!measuredFunc) { - measuredFunc = ReactPerf.storedMeasure(objName, fnName, func); - } - return measuredFunc.apply(this, arguments); - } - return func.apply(this, arguments); - }; - wrapper.displayName = objName + '_' + fnName; - return wrapper; - } - return func; - }, - - injection: { - /** - * @param {function} measure - */ - injectMeasure: function (measure) { - ReactPerf.storedMeasure = measure; - } - } - }; - - /** - * Simply passes through the measured function, without measuring it. - * - * @param {string} objName - * @param {string} fnName - * @param {function} func - * @return {function} - */ - function _noMeasure(objName, fnName, func) { - return func; - } - - module.exports = ReactPerf; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 20 */ -/***/ function(module, exports, __webpack_require__) { - - /** - * 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. - * - * @providesModule setInnerHTML - */ - - /* globals MSApp */ - - 'use strict'; - - var ExecutionEnvironment = __webpack_require__(10); - - var WHITESPACE_TEST = /^[ \r\n\t\f]/; - var NONVISIBLE_TEST = /<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/; - - /** - * Set the innerHTML property of a node, ensuring that whitespace is preserved - * even in IE8. - * - * @param {DOMElement} node - * @param {string} html - * @internal - */ - var setInnerHTML = function (node, html) { - node.innerHTML = html; - }; - - // Win8 apps: Allow all html to be inserted - if (typeof MSApp !== 'undefined' && MSApp.execUnsafeLocalFunction) { - setInnerHTML = function (node, html) { - MSApp.execUnsafeLocalFunction(function () { - node.innerHTML = html; - }); - }; - } - - if (ExecutionEnvironment.canUseDOM) { - // IE8: When updating a just created node with innerHTML only leading - // whitespace is removed. When updating an existing node with innerHTML - // whitespace in root TextNodes is also collapsed. - // @see quirksmode.org/bugreports/archives/2004/11/innerhtml_and_t.html - - // Feature detection; only IE8 is known to behave improperly like this. - var testElement = document.createElement('div'); - testElement.innerHTML = ' '; - if (testElement.innerHTML === '') { - setInnerHTML = function (node, html) { - // Magic theory: IE8 supposedly differentiates between added and updated - // nodes when processing innerHTML, innerHTML on updated nodes suffers - // from worse whitespace behavior. Re-adding a node like this triggers - // the initial and more favorable whitespace behavior. - // TODO: What to do on a detached node? - if (node.parentNode) { - node.parentNode.replaceChild(node, node); - } - - // We also implement a workaround for non-visible tags disappearing into - // thin air on IE8, this only happens if there is no visible text - // in-front of the non-visible tags. Piggyback on the whitespace fix - // and simply check if any non-visible tags appear in the source. - if (WHITESPACE_TEST.test(html) || html[0] === '<' && NONVISIBLE_TEST.test(html)) { - // Recover leading whitespace by temporarily prepending any character. - // \uFEFF has the potential advantage of being zero-width/invisible. - // UglifyJS drops U+FEFF chars when parsing, so use String.fromCharCode - // in hopes that this is preserved even if "\uFEFF" is transformed to - // the actual Unicode character (by Babel, for example). - // https://github.com/mishoo/UglifyJS2/blob/v2.4.20/lib/parse.js#L216 - node.innerHTML = String.fromCharCode(0xFEFF) + html; - - // deleteData leaves an empty `TextNode` which offsets the index of all - // children. Definitely want to avoid this. - var textNode = node.firstChild; - if (textNode.data.length === 1) { - node.removeChild(textNode); - } else { - textNode.deleteData(0, 1); - } - } else { - node.innerHTML = html; - } - }; - } - } - - module.exports = setInnerHTML; - -/***/ }, -/* 21 */ -/***/ function(module, exports, __webpack_require__) { - - /** - * 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. - * - * @providesModule setTextContent - */ - - 'use strict'; - - var ExecutionEnvironment = __webpack_require__(10); - var escapeTextContentForBrowser = __webpack_require__(22); - var setInnerHTML = __webpack_require__(20); - - /** - * Set the textContent property of a node, ensuring that whitespace is preserved - * even in IE8. innerText is a poor substitute for textContent and, among many - * issues, inserts
instead of the literal newline chars. innerHTML behaves - * as it should. - * - * @param {DOMElement} node - * @param {string} text - * @internal - */ - var setTextContent = function (node, text) { - node.textContent = text; - }; - - if (ExecutionEnvironment.canUseDOM) { - if (!('textContent' in document.documentElement)) { - setTextContent = function (node, text) { - setInnerHTML(node, escapeTextContentForBrowser(text)); - }; - } - } - - module.exports = setTextContent; - -/***/ }, -/* 22 */ -/***/ function(module, exports) { - - /** - * 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. - * - * @providesModule escapeTextContentForBrowser - */ - - 'use strict'; - - var ESCAPE_LOOKUP = { - '&': '&', - '>': '>', - '<': '<', - '"': '"', - '\'': ''' - }; - - var ESCAPE_REGEX = /[&><"']/g; - - function escaper(match) { - return ESCAPE_LOOKUP[match]; - } - - /** - * Escapes text to prevent scripting attacks. - * - * @param {*} text Text value to escape. - * @return {string} An escaped string. - */ - function escapeTextContentForBrowser(text) { - return ('' + text).replace(ESCAPE_REGEX, escaper); - } - - module.exports = escapeTextContentForBrowser; - -/***/ }, -/* 23 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule DOMPropertyOperations - * @typechecks static-only - */ - - 'use strict'; - - var DOMProperty = __webpack_require__(24); - var ReactPerf = __webpack_require__(19); - - var quoteAttributeValueForBrowser = __webpack_require__(25); - var warning = __webpack_require__(26); - - // Simplified subset - var VALID_ATTRIBUTE_NAME_REGEX = /^[a-zA-Z_][\w\.\-]*$/; - var illegalAttributeNameCache = {}; - var validatedAttributeNameCache = {}; - - function isAttributeNameSafe(attributeName) { - if (validatedAttributeNameCache.hasOwnProperty(attributeName)) { - return true; - } - if (illegalAttributeNameCache.hasOwnProperty(attributeName)) { - return false; - } - if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName)) { - validatedAttributeNameCache[attributeName] = true; - return true; - } - illegalAttributeNameCache[attributeName] = true; - process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid attribute name: `%s`', attributeName) : undefined; - return false; - } - - function shouldIgnoreValue(propertyInfo, value) { - return value == null || propertyInfo.hasBooleanValue && !value || propertyInfo.hasNumericValue && isNaN(value) || propertyInfo.hasPositiveNumericValue && value < 1 || propertyInfo.hasOverloadedBooleanValue && value === false; - } - - if (process.env.NODE_ENV !== 'production') { - var reactProps = { - children: true, - dangerouslySetInnerHTML: true, - key: true, - ref: true - }; - var warnedProperties = {}; - - var warnUnknownProperty = function (name) { - if (reactProps.hasOwnProperty(name) && reactProps[name] || warnedProperties.hasOwnProperty(name) && warnedProperties[name]) { - return; - } - - warnedProperties[name] = true; - var lowerCasedName = name.toLowerCase(); - - // data-* attributes should be lowercase; suggest the lowercase version - var standardName = DOMProperty.isCustomAttribute(lowerCasedName) ? lowerCasedName : DOMProperty.getPossibleStandardName.hasOwnProperty(lowerCasedName) ? DOMProperty.getPossibleStandardName[lowerCasedName] : null; - - // For now, only warn when we have a suggested correction. This prevents - // logging too much when using transferPropsTo. - process.env.NODE_ENV !== 'production' ? warning(standardName == null, 'Unknown DOM property %s. Did you mean %s?', name, standardName) : undefined; - }; - } - - /** - * Operations for dealing with DOM properties. - */ - var DOMPropertyOperations = { - - /** - * Creates markup for the ID property. - * - * @param {string} id Unescaped ID. - * @return {string} Markup string. - */ - createMarkupForID: function (id) { - return DOMProperty.ID_ATTRIBUTE_NAME + '=' + quoteAttributeValueForBrowser(id); - }, - - setAttributeForID: function (node, id) { - node.setAttribute(DOMProperty.ID_ATTRIBUTE_NAME, id); - }, - - /** - * Creates markup for a property. - * - * @param {string} name - * @param {*} value - * @return {?string} Markup string, or null if the property was invalid. - */ - createMarkupForProperty: function (name, value) { - var propertyInfo = DOMProperty.properties.hasOwnProperty(name) ? DOMProperty.properties[name] : null; - if (propertyInfo) { - if (shouldIgnoreValue(propertyInfo, value)) { - return ''; - } - var attributeName = propertyInfo.attributeName; - if (propertyInfo.hasBooleanValue || propertyInfo.hasOverloadedBooleanValue && value === true) { - return attributeName + '=""'; - } - return attributeName + '=' + quoteAttributeValueForBrowser(value); - } else if (DOMProperty.isCustomAttribute(name)) { - if (value == null) { - return ''; - } - return name + '=' + quoteAttributeValueForBrowser(value); - } else if (process.env.NODE_ENV !== 'production') { - warnUnknownProperty(name); - } - return null; - }, - - /** - * Creates markup for a custom property. - * - * @param {string} name - * @param {*} value - * @return {string} Markup string, or empty string if the property was invalid. - */ - createMarkupForCustomAttribute: function (name, value) { - if (!isAttributeNameSafe(name) || value == null) { - return ''; - } - return name + '=' + quoteAttributeValueForBrowser(value); - }, - - /** - * Sets the value for a property on a node. - * - * @param {DOMElement} node - * @param {string} name - * @param {*} value - */ - setValueForProperty: function (node, name, value) { - var propertyInfo = DOMProperty.properties.hasOwnProperty(name) ? DOMProperty.properties[name] : null; - if (propertyInfo) { - var mutationMethod = propertyInfo.mutationMethod; - if (mutationMethod) { - mutationMethod(node, value); - } else if (shouldIgnoreValue(propertyInfo, value)) { - this.deleteValueForProperty(node, name); - } else if (propertyInfo.mustUseAttribute) { - var attributeName = propertyInfo.attributeName; - var namespace = propertyInfo.attributeNamespace; - // `setAttribute` with objects becomes only `[object]` in IE8/9, - // ('' + value) makes it output the correct toString()-value. - if (namespace) { - node.setAttributeNS(namespace, attributeName, '' + value); - } else if (propertyInfo.hasBooleanValue || propertyInfo.hasOverloadedBooleanValue && value === true) { - node.setAttribute(attributeName, ''); - } else { - node.setAttribute(attributeName, '' + value); - } - } else { - var propName = propertyInfo.propertyName; - // Must explicitly cast values for HAS_SIDE_EFFECTS-properties to the - // property type before comparing; only `value` does and is string. - if (!propertyInfo.hasSideEffects || '' + node[propName] !== '' + value) { - // Contrary to `setAttribute`, object properties are properly - // `toString`ed by IE8/9. - node[propName] = value; - } - } - } else if (DOMProperty.isCustomAttribute(name)) { - DOMPropertyOperations.setValueForAttribute(node, name, value); - } else if (process.env.NODE_ENV !== 'production') { - warnUnknownProperty(name); - } - }, - - setValueForAttribute: function (node, name, value) { - if (!isAttributeNameSafe(name)) { - return; - } - if (value == null) { - node.removeAttribute(name); - } else { - node.setAttribute(name, '' + value); - } - }, - - /** - * Deletes the value for a property on a node. - * - * @param {DOMElement} node - * @param {string} name - */ - deleteValueForProperty: function (node, name) { - var propertyInfo = DOMProperty.properties.hasOwnProperty(name) ? DOMProperty.properties[name] : null; - if (propertyInfo) { - var mutationMethod = propertyInfo.mutationMethod; - if (mutationMethod) { - mutationMethod(node, undefined); - } else if (propertyInfo.mustUseAttribute) { - node.removeAttribute(propertyInfo.attributeName); - } else { - var propName = propertyInfo.propertyName; - var defaultValue = DOMProperty.getDefaultValueForProperty(node.nodeName, propName); - if (!propertyInfo.hasSideEffects || '' + node[propName] !== defaultValue) { - node[propName] = defaultValue; - } - } - } else if (DOMProperty.isCustomAttribute(name)) { - node.removeAttribute(name); - } else if (process.env.NODE_ENV !== 'production') { - warnUnknownProperty(name); - } - } - - }; - - ReactPerf.measureMethods(DOMPropertyOperations, 'DOMPropertyOperations', { - setValueForProperty: 'setValueForProperty', - setValueForAttribute: 'setValueForAttribute', - deleteValueForProperty: 'deleteValueForProperty' - }); - - module.exports = DOMPropertyOperations; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 24 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule DOMProperty - * @typechecks static-only - */ - - 'use strict'; - - var invariant = __webpack_require__(14); - - function checkMask(value, bitmask) { - return (value & bitmask) === bitmask; - } - - var DOMPropertyInjection = { - /** - * Mapping from normalized, camelcased property names to a configuration that - * specifies how the associated DOM property should be accessed or rendered. - */ - MUST_USE_ATTRIBUTE: 0x1, - MUST_USE_PROPERTY: 0x2, - HAS_SIDE_EFFECTS: 0x4, - HAS_BOOLEAN_VALUE: 0x8, - HAS_NUMERIC_VALUE: 0x10, - HAS_POSITIVE_NUMERIC_VALUE: 0x20 | 0x10, - HAS_OVERLOADED_BOOLEAN_VALUE: 0x40, - - /** - * Inject some specialized knowledge about the DOM. This takes a config object - * with the following properties: - * - * isCustomAttribute: function that given an attribute name will return true - * if it can be inserted into the DOM verbatim. Useful for data-* or aria-* - * attributes where it's impossible to enumerate all of the possible - * attribute names, - * - * Properties: object mapping DOM property name to one of the - * DOMPropertyInjection constants or null. If your attribute isn't in here, - * it won't get written to the DOM. - * - * DOMAttributeNames: object mapping React attribute name to the DOM - * attribute name. Attribute names not specified use the **lowercase** - * normalized name. - * - * DOMAttributeNamespaces: object mapping React attribute name to the DOM - * attribute namespace URL. (Attribute names not specified use no namespace.) - * - * DOMPropertyNames: similar to DOMAttributeNames but for DOM properties. - * Property names not specified use the normalized name. - * - * DOMMutationMethods: Properties that require special mutation methods. If - * `value` is undefined, the mutation method should unset the property. - * - * @param {object} domPropertyConfig the config as described above. - */ - injectDOMPropertyConfig: function (domPropertyConfig) { - var Injection = DOMPropertyInjection; - var Properties = domPropertyConfig.Properties || {}; - var DOMAttributeNamespaces = domPropertyConfig.DOMAttributeNamespaces || {}; - var DOMAttributeNames = domPropertyConfig.DOMAttributeNames || {}; - var DOMPropertyNames = domPropertyConfig.DOMPropertyNames || {}; - var DOMMutationMethods = domPropertyConfig.DOMMutationMethods || {}; - - if (domPropertyConfig.isCustomAttribute) { - DOMProperty._isCustomAttributeFunctions.push(domPropertyConfig.isCustomAttribute); - } - - for (var propName in Properties) { - !!DOMProperty.properties.hasOwnProperty(propName) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'injectDOMPropertyConfig(...): You\'re trying to inject DOM property ' + '\'%s\' which has already been injected. You may be accidentally ' + 'injecting the same DOM property config twice, or you may be ' + 'injecting two configs that have conflicting property names.', propName) : invariant(false) : undefined; - - var lowerCased = propName.toLowerCase(); - var propConfig = Properties[propName]; - - var propertyInfo = { - attributeName: lowerCased, - attributeNamespace: null, - propertyName: propName, - mutationMethod: null, - - mustUseAttribute: checkMask(propConfig, Injection.MUST_USE_ATTRIBUTE), - mustUseProperty: checkMask(propConfig, Injection.MUST_USE_PROPERTY), - hasSideEffects: checkMask(propConfig, Injection.HAS_SIDE_EFFECTS), - hasBooleanValue: checkMask(propConfig, Injection.HAS_BOOLEAN_VALUE), - hasNumericValue: checkMask(propConfig, Injection.HAS_NUMERIC_VALUE), - hasPositiveNumericValue: checkMask(propConfig, Injection.HAS_POSITIVE_NUMERIC_VALUE), - hasOverloadedBooleanValue: checkMask(propConfig, Injection.HAS_OVERLOADED_BOOLEAN_VALUE) - }; - - !(!propertyInfo.mustUseAttribute || !propertyInfo.mustUseProperty) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'DOMProperty: Cannot require using both attribute and property: %s', propName) : invariant(false) : undefined; - !(propertyInfo.mustUseProperty || !propertyInfo.hasSideEffects) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'DOMProperty: Properties that have side effects must use property: %s', propName) : invariant(false) : undefined; - !(propertyInfo.hasBooleanValue + propertyInfo.hasNumericValue + propertyInfo.hasOverloadedBooleanValue <= 1) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'DOMProperty: Value can be one of boolean, overloaded boolean, or ' + 'numeric value, but not a combination: %s', propName) : invariant(false) : undefined; - - if (process.env.NODE_ENV !== 'production') { - DOMProperty.getPossibleStandardName[lowerCased] = propName; - } - - if (DOMAttributeNames.hasOwnProperty(propName)) { - var attributeName = DOMAttributeNames[propName]; - propertyInfo.attributeName = attributeName; - if (process.env.NODE_ENV !== 'production') { - DOMProperty.getPossibleStandardName[attributeName] = propName; - } - } - - if (DOMAttributeNamespaces.hasOwnProperty(propName)) { - propertyInfo.attributeNamespace = DOMAttributeNamespaces[propName]; - } - - if (DOMPropertyNames.hasOwnProperty(propName)) { - propertyInfo.propertyName = DOMPropertyNames[propName]; - } - - if (DOMMutationMethods.hasOwnProperty(propName)) { - propertyInfo.mutationMethod = DOMMutationMethods[propName]; - } - - DOMProperty.properties[propName] = propertyInfo; - } - } - }; - var defaultValueCache = {}; - - /** - * DOMProperty exports lookup objects that can be used like functions: - * - * > DOMProperty.isValid['id'] - * true - * > DOMProperty.isValid['foobar'] - * undefined - * - * Although this may be confusing, it performs better in general. - * - * @see http://jsperf.com/key-exists - * @see http://jsperf.com/key-missing - */ - var DOMProperty = { - - ID_ATTRIBUTE_NAME: 'data-reactid', - - /** - * Map from property "standard name" to an object with info about how to set - * the property in the DOM. Each object contains: - * - * attributeName: - * Used when rendering markup or with `*Attribute()`. - * attributeNamespace - * propertyName: - * Used on DOM node instances. (This includes properties that mutate due to - * external factors.) - * mutationMethod: - * If non-null, used instead of the property or `setAttribute()` after - * initial render. - * mustUseAttribute: - * Whether the property must be accessed and mutated using `*Attribute()`. - * (This includes anything that fails ` in `.) - * mustUseProperty: - * Whether the property must be accessed and mutated as an object property. - * hasSideEffects: - * Whether or not setting a value causes side effects such as triggering - * resources to be loaded or text selection changes. If true, we read from - * the DOM before updating to ensure that the value is only set if it has - * changed. - * hasBooleanValue: - * Whether the property should be removed when set to a falsey value. - * hasNumericValue: - * Whether the property must be numeric or parse as a numeric and should be - * removed when set to a falsey value. - * hasPositiveNumericValue: - * Whether the property must be positive numeric or parse as a positive - * numeric and should be removed when set to a falsey value. - * hasOverloadedBooleanValue: - * Whether the property can be used as a flag as well as with a value. - * Removed when strictly equal to false; present without a value when - * strictly equal to true; present with a value otherwise. - */ - properties: {}, - - /** - * Mapping from lowercase property names to the properly cased version, used - * to warn in the case of missing properties. Available only in __DEV__. - * @type {Object} - */ - getPossibleStandardName: process.env.NODE_ENV !== 'production' ? {} : null, - - /** - * All of the isCustomAttribute() functions that have been injected. - */ - _isCustomAttributeFunctions: [], - - /** - * Checks whether a property name is a custom attribute. - * @method - */ - isCustomAttribute: function (attributeName) { - for (var i = 0; i < DOMProperty._isCustomAttributeFunctions.length; i++) { - var isCustomAttributeFn = DOMProperty._isCustomAttributeFunctions[i]; - if (isCustomAttributeFn(attributeName)) { - return true; - } - } - return false; - }, - - /** - * Returns the default property value for a DOM property (i.e., not an - * attribute). Most default values are '' or false, but not all. Worse yet, - * some (in particular, `type`) vary depending on the type of element. - * - * TODO: Is it better to grab all the possible properties when creating an - * element to avoid having to create the same element twice? - */ - getDefaultValueForProperty: function (nodeName, prop) { - var nodeDefaults = defaultValueCache[nodeName]; - var testElement; - if (!nodeDefaults) { - defaultValueCache[nodeName] = nodeDefaults = {}; - } - if (!(prop in nodeDefaults)) { - testElement = document.createElement(nodeName); - nodeDefaults[prop] = testElement[prop]; - } - return nodeDefaults[prop]; - }, - - injection: DOMPropertyInjection - }; - - module.exports = DOMProperty; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 25 */ -/***/ function(module, exports, __webpack_require__) { - - /** - * 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. - * - * @providesModule quoteAttributeValueForBrowser - */ - - 'use strict'; - - var escapeTextContentForBrowser = __webpack_require__(22); - - /** - * Escapes attribute value to prevent scripting attacks. - * - * @param {*} value Value to escape. - * @return {string} An escaped string. - */ - function quoteAttributeValueForBrowser(value) { - return '"' + escapeTextContentForBrowser(value) + '"'; - } - - module.exports = quoteAttributeValueForBrowser; - -/***/ }, -/* 26 */ -/***/ function(module, exports, __webpack_require__) { - - /* WEBPACK VAR INJECTION */(function(process) {/** - * Copyright 2014-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. - * - * @providesModule warning - */ - - 'use strict'; - - var emptyFunction = __webpack_require__(16); - - /** - * Similar to invariant but only logs a warning if the condition is not met. - * This can be used to log issues in development environments in critical - * paths. Removing the logging code for production environments will keep the - * same logic and follow the same code paths. - */ - - var warning = emptyFunction; - - if (process.env.NODE_ENV !== 'production') { - warning = function (condition, format) { - for (var _len = arguments.length, args = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { - args[_key - 2] = arguments[_key]; - } - - if (format === undefined) { - throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument'); - } - - if (format.indexOf('Failed Composite propType: ') === 0) { - return; // Ignore CompositeComponent proptype check. - } - - if (!condition) { - var argIndex = 0; - var message = 'Warning: ' + format.replace(/%s/g, function () { - return args[argIndex++]; - }); - if (typeof console !== 'undefined') { - console.error(message); - } - try { - // --- Welcome to debugging React --- - // This error was thrown as a convenience so that you can use this stack - // to find the callsite that caused this warning to fire. - throw new Error(message); - } catch (x) {} - } - }; - } - - module.exports = warning; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 27 */ -/***/ function(module, exports, __webpack_require__) { - - /** - * 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. - * - * @providesModule ReactComponentBrowserEnvironment - */ - - 'use strict'; - - var ReactDOMIDOperations = __webpack_require__(28); - var ReactMount = __webpack_require__(29); - - /** - * Abstracts away all functionality of the reconciler that requires knowledge of - * the browser context. TODO: These callers should be refactored to avoid the - * need for this injection. - */ - var ReactComponentBrowserEnvironment = { - - processChildrenUpdates: ReactDOMIDOperations.dangerouslyProcessChildrenUpdates, - - replaceNodeWithMarkupByID: ReactDOMIDOperations.dangerouslyReplaceNodeWithMarkupByID, - - /** - * If a particular environment requires that some resources be cleaned up, - * specify this in the injected Mixin. In the DOM, we would likely want to - * purge any cached node ID lookups. - * - * @private - */ - unmountIDFromEnvironment: function (rootNodeID) { - ReactMount.purgeID(rootNodeID); - } - - }; - - module.exports = ReactComponentBrowserEnvironment; - -/***/ }, -/* 28 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule ReactDOMIDOperations - * @typechecks static-only - */ - - 'use strict'; - - var DOMChildrenOperations = __webpack_require__(8); - var DOMPropertyOperations = __webpack_require__(23); - var ReactMount = __webpack_require__(29); - var ReactPerf = __webpack_require__(19); - - var invariant = __webpack_require__(14); - - /** - * Errors for properties that should not be updated with `updatePropertyByID()`. - * - * @type {object} - * @private - */ - var INVALID_PROPERTY_ERRORS = { - dangerouslySetInnerHTML: '`dangerouslySetInnerHTML` must be set using `updateInnerHTMLByID()`.', - style: '`style` must be set using `updateStylesByID()`.' - }; - - /** - * Operations used to process updates to DOM nodes. - */ - var ReactDOMIDOperations = { - - /** - * Updates a DOM node with new property values. This should only be used to - * update DOM properties in `DOMProperty`. - * - * @param {string} id ID of the node to update. - * @param {string} name A valid property name, see `DOMProperty`. - * @param {*} value New value of the property. - * @internal - */ - updatePropertyByID: function (id, name, value) { - var node = ReactMount.getNode(id); - !!INVALID_PROPERTY_ERRORS.hasOwnProperty(name) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'updatePropertyByID(...): %s', INVALID_PROPERTY_ERRORS[name]) : invariant(false) : undefined; - - // If we're updating to null or undefined, we should remove the property - // from the DOM node instead of inadvertantly setting to a string. This - // brings us in line with the same behavior we have on initial render. - if (value != null) { - DOMPropertyOperations.setValueForProperty(node, name, value); - } else { - DOMPropertyOperations.deleteValueForProperty(node, name); - } - }, - - /** - * Replaces a DOM node that exists in the document with markup. - * - * @param {string} id ID of child to be replaced. - * @param {string} markup Dangerous markup to inject in place of child. - * @internal - * @see {Danger.dangerouslyReplaceNodeWithMarkup} - */ - dangerouslyReplaceNodeWithMarkupByID: function (id, markup) { - var node = ReactMount.getNode(id); - DOMChildrenOperations.dangerouslyReplaceNodeWithMarkup(node, markup); - }, - - /** - * Updates a component's children by processing a series of updates. - * - * @param {array} updates List of update configurations. - * @param {array} markup List of markup strings. - * @internal - */ - dangerouslyProcessChildrenUpdates: function (updates, markup) { - for (var i = 0; i < updates.length; i++) { - updates[i].parentNode = ReactMount.getNode(updates[i].parentID); - } - DOMChildrenOperations.processUpdates(updates, markup); - } - }; - - ReactPerf.measureMethods(ReactDOMIDOperations, 'ReactDOMIDOperations', { - dangerouslyReplaceNodeWithMarkupByID: 'dangerouslyReplaceNodeWithMarkupByID', - dangerouslyProcessChildrenUpdates: 'dangerouslyProcessChildrenUpdates' - }); - - module.exports = ReactDOMIDOperations; - /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) - -/***/ }, -/* 29 */ -/***/ function(module, exports, __webpack_require__) { - - /* 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. - * - * @providesModule ReactMount - */ - - 'use strict'; - - var DOMProperty = __webpack_require__(24); - var ReactBrowserEventEmitter = __webpack_require__(30); - var ReactCurrentOwner = __webpack_require__(6); - var ReactDOMFeatureFlags = __webpack_require__(42); - var ReactElement = __webpack_require__(43); - var ReactEmptyComponentRegistry = __webpack_require__(45); - var ReactInstanceHandles = __webpack_require__(46); - var ReactInstanceMap = __webpack_require__(48); - var ReactMarkupChecksum = __webpack_require__(49); - var ReactPerf = __webpack_require__(19); - var ReactReconciler = __webpack_require__(51); - var ReactUpdateQueue = __webpack_require__(54); - var ReactUpdates = __webpack_require__(55); - - var assign = __webpack_require__(40); - var emptyObject = __webpack_require__(59); - var containsNode = __webpack_require__(60); - var instantiateReactComponent = __webpack_require__(63); - var invariant = __webpack_require__(14); - var setInnerHTML = __webpack_require__(20); - var shouldUpdateReactComponent = __webpack_require__(68); - var validateDOMNesting = __webpack_require__(71); - var warning = __webpack_require__(26); - - var ATTR_NAME = DOMProperty.ID_ATTRIBUTE_NAME; - var nodeCache = {}; - - var ELEMENT_NODE_TYPE = 1; - var DOC_NODE_TYPE = 9; - var DOCUMENT_FRAGMENT_NODE_TYPE = 11; - - var ownerDocumentContextKey = '__ReactMount_ownerDocument$' + Math.random().toString(36).slice(2); - - /** Mapping from reactRootID to React component instance. */ - var instancesByReactRootID = {}; - - /** Mapping from reactRootID to `container` nodes. */ - var containersByReactRootID = {}; - - if (process.env.NODE_ENV !== 'production') { - /** __DEV__-only mapping from reactRootID to root elements. */ - var rootElementsByReactRootID = {}; - } - - // Used to store breadth-first search state in findComponentRoot. - var findComponentRootReusableArray = []; - - /** - * Finds the index of the first character - * that's not common between the two given strings. - * - * @return {number} the index of the character where the strings diverge - */ - function firstDifferenceIndex(string1, string2) { - var minLen = Math.min(string1.length, string2.length); - for (var i = 0; i < minLen; i++) { - if (string1.charAt(i) !== string2.charAt(i)) { - return i; - } - } - return string1.length === string2.length ? -1 : minLen; - } - - /** - * @param {DOMElement|DOMDocument} container DOM element that may contain - * a React component - * @return {?*} DOM element that may have the reactRoot ID, or null. - */ - function getReactRootElementInContainer(container) { - if (!container) { - return null; - } - - if (container.nodeType === DOC_NODE_TYPE) { - return container.documentElement; - } else { - return container.firstChild; - } - } - - /** - * @param {DOMElement} container DOM element that may contain a React component. - * @return {?string} A "reactRoot" ID, if a React component is rendered. - */ - function getReactRootID(container) { - var rootElement = getReactRootElementInContainer(container); - return rootElement && ReactMount.getID(rootElement); - } - - /** - * Accessing node[ATTR_NAME] or calling getAttribute(ATTR_NAME) on a form - * element can return its control whose name or ID equals ATTR_NAME. All - * DOM nodes support `getAttributeNode` but this can also get called on - * other objects so just return '' if we're given something other than a - * DOM node (such as window). - * - * @param {?DOMElement|DOMWindow|DOMDocument|DOMTextNode} node DOM node. - * @return {string} ID of the supplied `domNode`. - */ - function getID(node) { - var id = internalGetID(node); - if (id) { - if (nodeCache.hasOwnProperty(id)) { - var cached = nodeCache[id]; - if (cached !== node) { - !!isValid(cached, id) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactMount: Two valid but unequal nodes with the same `%s`: %s', ATTR_NAME, id) : invariant(false) : undefined; - - nodeCache[id] = node; - } - } else { - nodeCache[id] = node; - } - } - - return id; - } - - function internalGetID(node) { - // If node is something like a window, document, or text node, none of - // which support attributes or a .getAttribute method, gracefully return - // the empty string, as if the attribute were missing. - return node && node.getAttribute && node.getAttribute(ATTR_NAME) || ''; - } - - /** - * Sets the React-specific ID of the given node. - * - * @param {DOMElement} node The DOM node whose ID will be set. - * @param {string} id The value of the ID attribute. - */ - function setID(node, id) { - var oldID = internalGetID(node); - if (oldID !== id) { - delete nodeCache[oldID]; - } - node.setAttribute(ATTR_NAME, id); - nodeCache[id] = node; - } - - /** - * Finds the node with the supplied React-generated DOM ID. - * - * @param {string} id A React-generated DOM ID. - * @return {DOMElement} DOM node with the suppled `id`. - * @internal - */ - function getNode(id) { - if (!nodeCache.hasOwnProperty(id) || !isValid(nodeCache[id], id)) { - nodeCache[id] = ReactMount.findReactNodeByID(id); - } - return nodeCache[id]; - } - - /** - * Finds the node with the supplied public React instance. - * - * @param {*} instance A public React instance. - * @return {?DOMElement} DOM node with the suppled `id`. - * @internal - */ - function getNodeFromInstance(instance) { - var id = ReactInstanceMap.get(instance)._rootNodeID; - if (ReactEmptyComponentRegistry.isNullComponentID(id)) { - return null; - } - if (!nodeCache.hasOwnProperty(id) || !isValid(nodeCache[id], id)) { - nodeCache[id] = ReactMount.findReactNodeByID(id); - } - return nodeCache[id]; - } - - /** - * A node is "valid" if it is contained by a currently mounted container. - * - * This means that the node does not have to be contained by a document in - * order to be considered valid. - * - * @param {?DOMElement} node The candidate DOM node. - * @param {string} id The expected ID of the node. - * @return {boolean} Whether the node is contained by a mounted container. - */ - function isValid(node, id) { - if (node) { - !(internalGetID(node) === id) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactMount: Unexpected modification of `%s`', ATTR_NAME) : invariant(false) : undefined; - - var container = ReactMount.findReactContainerForID(id); - if (container && containsNode(container, node)) { - return true; - } - } - - return false; - } - - /** - * Causes the cache to forget about one React-specific ID. - * - * @param {string} id The ID to forget. - */ - function purgeID(id) { - delete nodeCache[id]; - } - - var deepestNodeSoFar = null; - function findDeepestCachedAncestorImpl(ancestorID) { - var ancestor = nodeCache[ancestorID]; - if (ancestor && isValid(ancestor, ancestorID)) { - deepestNodeSoFar = ancestor; - } else { - // This node isn't populated in the cache, so presumably none of its - // descendants are. Break out of the loop. - return false; - } - } - - /** - * Return the deepest cached node whose ID is a prefix of `targetID`. - */ - function findDeepestCachedAncestor(targetID) { - deepestNodeSoFar = null; - ReactInstanceHandles.traverseAncestors(targetID, findDeepestCachedAncestorImpl); - - var foundNode = deepestNodeSoFar; - deepestNodeSoFar = null; - return foundNode; - } - - /** - * Mounts this component and inserts it into the DOM. - * - * @param {ReactComponent} componentInstance The instance to mount. - * @param {string} rootID DOM ID of the root node. - * @param {DOMElement} container DOM element to mount into. - * @param {ReactReconcileTransaction} transaction - * @param {boolean} shouldReuseMarkup If true, do not insert markup - */ - function mountComponentIntoNode(componentInstance, rootID, container, transaction, shouldReuseMarkup, context) { - if (ReactDOMFeatureFlags.useCreateElement) { - context = assign({}, context); - if (container.nodeType === DOC_NODE_TYPE) { - context[ownerDocumentContextKey] = container; - } else { - context[ownerDocumentContextKey] = container.ownerDocument; - } - } - if (process.env.NODE_ENV !== 'production') { - if (context === emptyObject) { - context = {}; - } - var tag = container.nodeName.toLowerCase(); - context[validateDOMNesting.ancestorInfoContextKey] = validateDOMNesting.updatedAncestorInfo(null, tag, null); - } - var markup = ReactReconciler.mountComponent(componentInstance, rootID, transaction, context); - componentInstance._renderedComponent._topLevelWrapper = componentInstance; - ReactMount._mountImageIntoNode(markup, container, shouldReuseMarkup, transaction); - } - - /** - * Batched mount. - * - * @param {ReactComponent} componentInstance The instance to mount. - * @param {string} rootID DOM ID of the root node. - * @param {DOMElement} container DOM element to mount into. - * @param {boolean} shouldReuseMarkup If true, do not insert markup - */ - function batchedMountComponentIntoNode(componentInstance, rootID, container, shouldReuseMarkup, context) { - var transaction = ReactUpdates.ReactReconcileTransaction.getPooled( - /* forceHTML */shouldReuseMarkup); - transaction.perform(mountComponentIntoNode, null, componentInstance, rootID, container, transaction, shouldReuseMarkup, context); - ReactUpdates.ReactReconcileTransaction.release(transaction); - } - - /** - * Unmounts a component and removes it from the DOM. - * - * @param {ReactComponent} instance React component instance. - * @param {DOMElement} container DOM element to unmount from. - * @final - * @internal - * @see {ReactMount.unmountComponentAtNode} - */ - function unmountComponentFromNode(instance, container) { - ReactReconciler.unmountComponent(instance); - - if (container.nodeType === DOC_NODE_TYPE) { - container = container.documentElement; - } - - // http://jsperf.com/emptying-a-node - while (container.lastChild) { - container.removeChild(container.lastChild); - } - } - - /** - * True if the supplied DOM node has a direct React-rendered child that is - * not a React root element. Useful for warning in `render`, - * `unmountComponentAtNode`, etc. - * - * @param {?DOMElement} node The candidate DOM node. - * @return {boolean} True if the DOM element contains a direct child that was - * rendered by React but is not a root element. - * @internal - */ - function hasNonRootReactChild(node) { - var reactRootID = getReactRootID(node); - return reactRootID ? reactRootID !== ReactInstanceHandles.getReactRootIDFromNodeID(reactRootID) : false; - } - - /** - * Returns the first (deepest) ancestor of a node which is rendered by this copy - * of React. - */ - function findFirstReactDOMImpl(node) { - // This node might be from another React instance, so we make sure not to - // examine the node cache here - for (; node && node.parentNode !== node; node = node.parentNode) { - if (node.nodeType !== 1) { - // Not a DOMElement, therefore not a React component - continue; - } - var nodeID = internalGetID(node); - if (!nodeID) { - continue; - } - var reactRootID = ReactInstanceHandles.getReactRootIDFromNodeID(nodeID); - - // If containersByReactRootID contains the container we find by crawling up - // the tree, we know that this instance of React rendered the node. - // nb. isValid's strategy (with containsNode) does not work because render - // trees may be nested and we don't want a false positive in that case. - var current = node; - var lastID; - do { - lastID = internalGetID(current); - current = current.parentNode; - if (current == null) { - // The passed-in node has been detached from the container it was - // originally rendered into. - return null; - } - } while (lastID !== reactRootID); - - if (current === containersByReactRootID[reactRootID]) { - return node; - } - } - return null; - } - - /** - * Temporary (?) hack so that we can store all top-level pending updates on - * composites instead of having to worry about different types of components - * here. - */ - var TopLevelWrapper = function () {}; - TopLevelWrapper.prototype.isReactComponent = {}; - if (process.env.NODE_ENV !== 'production') { - TopLevelWrapper.displayName = 'TopLevelWrapper'; - } - TopLevelWrapper.prototype.render = function () { - // this.props is actually a ReactElement - return this.props; - }; - - /** - * Mounting is the process of initializing a React component by creating its - * representative DOM elements and inserting them into a supplied `container`. - * Any prior content inside `container` is destroyed in the process. - * - * ReactMount.render( - * component, - * document.getElementById('container') - * ); - * - *
<-- Supplied `container`. - *
<-- Rendered reactRoot of React - * // ... component. - *
- *
- * - * Inside of `container`, the first element rendered is the "reactRoot". - */ - var ReactMount = { - - TopLevelWrapper: TopLevelWrapper, - - /** Exposed for debugging purposes **/ - _instancesByReactRootID: instancesByReactRootID, - - /** - * This is a hook provided to support rendering React components while - * ensuring that the apparent scroll position of its `container` does not - * change. - * - * @param {DOMElement} container The `container` being rendered into. - * @param {function} renderCallback This must be called once to do the render. - */ - scrollMonitor: function (container, renderCallback) { - renderCallback(); - }, - - /** - * Take a component that's already mounted into the DOM and replace its props - * @param {ReactComponent} prevComponent component instance already in the DOM - * @param {ReactElement} nextElement component instance to render - * @param {DOMElement} container container to render into - * @param {?function} callback function triggered on completion - */ - _updateRootComponent: function (prevComponent, nextElement, container, callback) { - ReactMount.scrollMonitor(container, function () { - ReactUpdateQueue.enqueueElementInternal(prevComponent, nextElement); - if (callback) { - ReactUpdateQueue.enqueueCallbackInternal(prevComponent, callback); - } - }); - - if (process.env.NODE_ENV !== 'production') { - // Record the root element in case it later gets transplanted. - rootElementsByReactRootID[getReactRootID(container)] = getReactRootElementInContainer(container); - } - - return prevComponent; - }, - - /** - * Register a component into the instance map and starts scroll value - * monitoring - * @param {ReactComponent} nextComponent component instance to render - * @param {DOMElement} container container to render into - * @return {string} reactRoot ID prefix - */ - _registerComponent: function (nextComponent, container) { - !(container && (container.nodeType === ELEMENT_NODE_TYPE || container.nodeType === DOC_NODE_TYPE || container.nodeType === DOCUMENT_FRAGMENT_NODE_TYPE)) ? process.env.NODE_ENV !== 'production' ? invariant(false, '_registerComponent(...): Target container is not a DOM element.') : invariant(false) : undefined; - - ReactBrowserEventEmitter.ensureScrollValueMonitoring(); - - var reactRootID = ReactMount.registerContainer(container); - instancesByReactRootID[reactRootID] = nextComponent; - return reactRootID; - }, - - /** - * Render a new component into the DOM. - * @param {ReactElement} nextElement element to render - * @param {DOMElement} container container to render into - * @param {boolean} shouldReuseMarkup if we should skip the markup insertion - * @return {ReactComponent} nextComponent - */ - _renderNewRootComponent: function (nextElement, container, shouldReuseMarkup, context) { - // Various parts of our code (such as ReactCompositeComponent's - // _renderValidatedComponent) assume that calls to render aren't nested; - // verify that that's the case. - process.env.NODE_ENV !== 'production' ? warning(ReactCurrentOwner.current == null, '_renderNewRootComponent(): Render methods should be a pure function ' + 'of props and state; triggering nested component updates from ' + 'render is not allowed. If necessary, trigger nested updates in ' + 'componentDidUpdate. Check the render method of %s.', ReactCurrentOwner.current && ReactCurrentOwner.current.getName() || 'ReactCompositeComponent') : undefined; - - var componentInstance = instantiateReactComponent(nextElement, null); - var reactRootID = ReactMount._registerComponent(componentInstance, container); - - // The initial render is synchronous but any updates that happen during - // rendering, in componentWillMount or componentDidMount, will be batched - // according to the current batching strategy. - - ReactUpdates.batchedUpdates(batchedMountComponentIntoNode, componentInstance, reactRootID, container, shouldReuseMarkup, context); - - if (process.env.NODE_ENV !== 'production') { - // Record the root element in case it later gets transplanted. - rootElementsByReactRootID[reactRootID] = getReactRootElementInContainer(container); - } - - return componentInstance; - }, - - /** - * Renders a React component into the DOM in the supplied `container`. - * - * If the React component was previously rendered into `container`, this will - * perform an update on it and only mutate the DOM as necessary to reflect the - * latest React component. - * - * @param {ReactComponent} parentComponent The conceptual parent of this render tree. - * @param {ReactElement} nextElement Component element to render. - * @param {DOMElement} container DOM element to render into. - * @param {?function} callback function triggered on completion - * @return {ReactComponent} Component instance rendered in `container`. - */ - renderSubtreeIntoContainer: function (parentComponent, nextElement, container, callback) { - !(parentComponent != null && parentComponent._reactInternalInstance != null) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'parentComponent must be a valid React Component') : invariant(false) : undefined; - return ReactMount._renderSubtreeIntoContainer(parentComponent, nextElement, container, callback); - }, - - _renderSubtreeIntoContainer: function (parentComponent, nextElement, container, callback) { - !ReactElement.isValidElement(nextElement) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactDOM.render(): Invalid component element.%s', typeof nextElement === 'string' ? ' Instead of passing an element string, make sure to instantiate ' + 'it by passing it to React.createElement.' : typeof nextElement === 'function' ? ' Instead of passing a component class, make sure to instantiate ' + 'it by passing it to React.createElement.' : - // Check if it quacks like an element - nextElement != null && nextElement.props !== undefined ? ' This may be caused by unintentionally loading two independent ' + 'copies of React.' : '') : invariant(false) : undefined; - - process.env.NODE_ENV !== 'production' ? warning(!container || !container.tagName || container.tagName.toUpperCase() !== 'BODY', 'render(): Rendering components directly into document.body is ' + 'discouraged, since its children are often manipulated by third-party ' + 'scripts and browser extensions. This may lead to subtle ' + 'reconciliation issues. Try rendering into a container element created ' + 'for your app.') : undefined; - - var nextWrappedElement = new ReactElement(TopLevelWrapper, null, null, null, null, null, nextElement); - - var prevComponent = instancesByReactRootID[getReactRootID(container)]; - - if (prevComponent) { - var prevWrappedElement = prevComponent._currentElement; - var prevElement = prevWrappedElement.props; - if (shouldUpdateReactComponent(prevElement, nextElement)) { - var publicInst = prevComponent._renderedComponent.getPublicInstance(); - var updatedCallback = callback && function () { - callback.call(publicInst); - }; - ReactMount._updateRootComponent(prevComponent, nextWrappedElement, container, updatedCallback); - return publicInst; - } else { - ReactMount.unmountComponentAtNode(container); - } - } - - var reactRootElement = getReactRootElementInContainer(container); - var containerHasReactMarkup = reactRootElement && !!internalGetID(reactRootElement); - var containerHasNonRootReactChild = hasNonRootReactChild(container); - - if (process.env.NODE_ENV !== 'production') { - process.env.NODE_ENV !== 'production' ? warning(!containerHasNonRootReactChild, 'render(...): Replacing React-rendered children with a new root ' + 'component. If you intended to update the children of this node, ' + 'you should instead have the existing children update their state ' + 'and render the new components instead of calling ReactDOM.render.') : undefined; - - if (!containerHasReactMarkup || reactRootElement.nextSibling) { - var rootElementSibling = reactRootElement; - while (rootElementSibling) { - if (internalGetID(rootElementSibling)) { - process.env.NODE_ENV !== 'production' ? warning(false, 'render(): Target node has markup rendered by React, but there ' + 'are unrelated nodes as well. This is most commonly caused by ' + 'white-space inserted around server-rendered markup.') : undefined; - break; - } - rootElementSibling = rootElementSibling.nextSibling; - } - } - } - - var shouldReuseMarkup = containerHasReactMarkup && !prevComponent && !containerHasNonRootReactChild; - var component = ReactMount._renderNewRootComponent(nextWrappedElement, container, shouldReuseMarkup, parentComponent != null ? parentComponent._reactInternalInstance._processChildContext(parentComponent._reactInternalInstance._context) : emptyObject)._renderedComponent.getPublicInstance(); - if (callback) { - callback.call(component); - } - return component; - }, - - /** - * Renders a React component into the DOM in the supplied `container`. - * - * If the React component was previously rendered into `container`, this will - * perform an update on it and only mutate the DOM as necessary to reflect the - * latest React component. - * - * @param {ReactElement} nextElement Component element to render. - * @param {DOMElement} container DOM element to render into. - * @param {?function} callback function triggered on completion - * @return {ReactComponent} Component instance rendered in `container`. - */ - render: function (nextElement, container, callback) { - return ReactMount._renderSubtreeIntoContainer(null, nextElement, container, callback); - }, - - /** - * Registers a container node into which React components will be rendered. - * This also creates the "reactRoot" ID that will be assigned to the element - * rendered within. - * - * @param {DOMElement} container DOM element to register as a container. - * @return {string} The "reactRoot" ID of elements rendered within. - */ - registerContainer: function (container) { - var reactRootID = getReactRootID(container); - if (reactRootID) { - // If one exists, make sure it is a valid "reactRoot" ID. - reactRootID = ReactInstanceHandles.getReactRootIDFromNodeID(reactRootID); - } - if (!reactRootID) { - // No valid "reactRoot" ID found, create one. - reactRootID = ReactInstanceHandles.createReactRootID(); - } - containersByReactRootID[reactRootID] = container; - return reactRootID; - }, - - /** - * Unmounts and destroys the React component rendered in the `container`. - * - * @param {DOMElement} container DOM element containing a React component. - * @return {boolean} True if a component was found in and unmounted from - * `container` - */ - unmountComponentAtNode: function (container) { - // Various parts of our code (such as ReactCompositeComponent's - // _renderValidatedComponent) assume that calls to render aren't nested; - // verify that that's the case. (Strictly speaking, unmounting won't cause a - // render but we still don't expect to be in a render call here.) - process.env.NODE_ENV !== 'production' ? warning(ReactCurrentOwner.current == null, 'unmountComponentAtNode(): Render methods should be a pure function ' + 'of props and state; triggering nested component updates from render ' + 'is not allowed. If necessary, trigger nested updates in ' + 'componentDidUpdate. Check the render method of %s.', ReactCurrentOwner.current && ReactCurrentOwner.current.getName() || 'ReactCompositeComponent') : undefined; - - !(container && (container.nodeType === ELEMENT_NODE_TYPE || container.nodeType === DOC_NODE_TYPE || container.nodeType === DOCUMENT_FRAGMENT_NODE_TYPE)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'unmountComponentAtNode(...): Target container is not a DOM element.') : invariant(false) : undefined; - - var reactRootID = getReactRootID(container); - var component = instancesByReactRootID[reactRootID]; - if (!component) { - // Check if the node being unmounted was rendered by React, but isn't a - // root node. - var containerHasNonRootReactChild = hasNonRootReactChild(container); - - // Check if the container itself is a React root node. - var containerID = internalGetID(container); - var isContainerReactRoot = containerID && containerID === ReactInstanceHandles.getReactRootIDFromNodeID(containerID); - - if (process.env.NODE_ENV !== 'production') { - process.env.NODE_ENV !== 'production' ? warning(!containerHasNonRootReactChild, 'unmountComponentAtNode(): The node you\'re attempting to unmount ' + 'was rendered by React and is not a top-level container. %s', isContainerReactRoot ? 'You may have accidentally passed in a React root node instead ' + 'of its container.' : 'Instead, have the parent component update its state and ' + 'rerender in order to remove this component.') : undefined; - } - - return false; - } - ReactUpdates.batchedUpdates(unmountComponentFromNode, component, container); - delete instancesByReactRootID[reactRootID]; - delete containersByReactRootID[reactRootID]; - if (process.env.NODE_ENV !== 'production') { - delete rootElementsByReactRootID[reactRootID]; - } - return true; - }, - - /** - * Finds the container DOM element that contains React component to which the - * supplied DOM `id` belongs. - * - * @param {string} id The ID of an element rendered by a React component. - * @return {?DOMElement} DOM element that contains the `id`. - */ - findReactContainerForID: function (id) { - var reactRootID = ReactInstanceHandles.getReactRootIDFromNodeID(id); - var container = containersByReactRootID[reactRootID]; - - if (process.env.NODE_ENV !== 'production') { - var rootElement = rootElementsByReactRootID[reactRootID]; - if (rootElement && rootElement.parentNode !== container) { - process.env.NODE_ENV !== 'production' ? warning( - // Call internalGetID here because getID calls isValid which calls - // findReactContainerForID (this function). - internalGetID(rootElement) === reactRootID, 'ReactMount: Root element ID differed from reactRootID.') : undefined; - var containerChild = container.firstChild; - if (containerChild && reactRootID === internalGetID(containerChild)) { - // If the container has a new child with the same ID as the old - // root element, then rootElementsByReactRootID[reactRootID] is - // just stale and needs to be updated. The case that deserves a - // warning is when the container is empty. - rootElementsByReactRootID[reactRootID] = containerChild; - } else { - process.env.NODE_ENV !== 'production' ? warning(false, 'ReactMount: Root element has been removed from its original ' + 'container. New container: %s', rootElement.parentNode) : undefined; - } - } - } - - return container; - }, - - /** - * Finds an element rendered by React with the supplied ID. - * - * @param {string} id ID of a DOM node in the React component. - * @return {DOMElement} Root DOM node of the React component. - */ - findReactNodeByID: function (id) { - var reactRoot = ReactMount.findReactContainerForID(id); - return ReactMount.findComponentRoot(reactRoot, id); - }, - - /** - * Traverses up the ancestors of the supplied node to find a node that is a - * DOM representation of a React component rendered by this copy of React. - * - * @param {*} node - * @return {?DOMEventTarget} - * @internal - */ - getFirstReactDOM: function (node) { - return findFirstReactDOMImpl(node); - }, - - /** - * Finds a node with the supplied `targetID` inside of the supplied - * `ancestorNode`. Exploits the ID naming scheme to perform the search - * quickly. - * - * @param {DOMEventTarget} ancestorNode Search from this root. - * @pararm {string} targetID ID of the DOM representation of the component. - * @return {DOMEventTarget} DOM node with the supplied `targetID`. - * @internal - */ - findComponentRoot: function (ancestorNode, targetID) { - var firstChildren = findComponentRootReusableArray; - var childIndex = 0; - - var deepestAncestor = findDeepestCachedAncestor(targetID) || ancestorNode; - - if (process.env.NODE_ENV !== 'production') { - // This will throw on the next line; give an early warning - process.env.NODE_ENV !== 'production' ? warning(deepestAncestor != null, 'React can\'t find the root component node for data-reactid value ' + '`%s`. If you\'re seeing this message, it probably means that ' + 'you\'ve loaded two copies of React on the page. At this time, only ' + 'a single copy of React can be loaded at a time.', targetID) : undefined; - } - - firstChildren[0] = deepestAncestor.firstChild; - firstChildren.length = 1; - - while (childIndex < firstChildren.length) { - var child = firstChildren[childIndex++]; - var targetChild; - - while (child) { - var childID = ReactMount.getID(child); - if (childID) { - // Even if we find the node we're looking for, we finish looping - // through its siblings to ensure they're cached so that we don't have - // to revisit this node again. Otherwise, we make n^2 calls to getID - // when visiting the many children of a single node in order. - - if (targetID === childID) { - targetChild = child; - } else if (ReactInstanceHandles.isAncestorIDOf(childID, targetID)) { - // If we find a child whose ID is an ancestor of the given ID, - // then we can be sure that we only want to search the subtree - // rooted at this child, so we can throw out the rest of the - // search state. - firstChildren.length = childIndex = 0; - firstChildren.push(child.firstChild); - } - } else { - // If this child had no ID, then there's a chance that it was - // injected automatically by the browser, as when a `` - // element sprouts an extra `` child as a side effect of - // `.innerHTML` parsing. Optimistically continue down this - // branch, but not before examining the other siblings. - firstChildren.push(child.firstChild); - } - - child = child.nextSibling; - } - - if (targetChild) { - // Emptying firstChildren/findComponentRootReusableArray is - // not necessary for correctness, but it helps the GC reclaim - // any nodes that were left at the end of the search. - firstChildren.length = 0; - - return targetChild; - } - } - - firstChildren.length = 0; - - true ? process.env.NODE_ENV !== 'production' ? invariant(false, 'findComponentRoot(..., %s): Unable to find element. This probably ' + 'means the DOM was unexpectedly mutated (e.g., by the browser), ' + 'usually due to forgetting a when using tables, nesting tags ' + 'like ,

, or , or using non-SVG elements in an ' + 'parent. ' + 'Try inspecting the child nodes of the element with React ID `%s`.', targetID, ReactMount.getID(ancestorNode)) : invariant(false) : undefined; - }, - - _mountImageIntoNode: function (markup, container, shouldReuseMarkup, transaction) { - !(container && (container.nodeType === ELEMENT_NODE_TYPE || container.nodeType === DOC_NODE_TYPE || container.nodeType === DOCUMENT_FRAGMENT_NODE_TYPE)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'mountComponentIntoNode(...): Target container is not valid.') : invariant(false) : undefined; - - if (shouldReuseMarkup) { - var rootElement = getReactRootElementInContainer(container); - if (ReactMarkupChecksum.canReuseMarkup(markup, rootElement)) { - return; - } else { - var checksum = rootElement.getAttribute(ReactMarkupChecksum.CHECKSUM_ATTR_NAME); - rootElement.removeAttribute(ReactMarkupChecksum.CHECKSUM_ATTR_NAME); - - var rootMarkup = rootElement.outerHTML; - rootElement.setAttribute(ReactMarkupChecksum.CHECKSUM_ATTR_NAME, checksum); - - var normalizedMarkup = markup; - if (process.env.NODE_ENV !== 'production') { - // because rootMarkup is retrieved from the DOM, various normalizations - // will have occurred which will not be present in `markup`. Here, - // insert markup into a

or