diff --git a/CHANGES.md b/CHANGES.md index 6ee0b8a6..93517df7 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -2,6 +2,7 @@ ## Version 1.22 +- Add "Options" page to manage local storage variables directly from the UX. Allow to reposition the popup button [feature 145](https://github.com/tprouvot/Salesforce-Inspector-reloaded/issues/145) (contribution by [Pietro Martino](https://github.com/pietromartino)) - Bugfix Delete button does not check for 'toolingApi' parameter [issue 254](https://github.com/tprouvot/Salesforce-Inspector-reloaded/issues/254) (contribution by [Oscar Gomez Balaguer](https://github.com/ogomezba)) - Add Apex classes documentation in shortcut [feature 247](https://github.com/tprouvot/Salesforce-Inspector-reloaded/issues/247) - Disable "Delete records" button when a query returns more than 20k records [feature 251](https://github.com/tprouvot/Salesforce-Inspector-reloaded/issues/251) diff --git a/addon/button.css b/addon/button.css index d55aecfd..e095309b 100644 --- a/addon/button.css +++ b/addon/button.css @@ -2,53 +2,106 @@ z-index: 1000; display: block; position: fixed; - top: 122px; - right: 0; vertical-align: middle; } + #insext .insext-popup { box-sizing: border-box; width: 280px; height: 450px; position:absolute; background-color: #ffffff; - right: 0; border-radius: 4px; - border-top-right-radius: 0; z-index: 1; - box-shadow: 0 -2px 2px 0 rgba(0,0,0,.16); border: 1px solid #d8dde6; display: none; } + +#insext .insext-popup-vertical { + right: 0%; + border-top-right-radius: 0; + box-shadow: 0 -2px 2px 0 rgba(0,0,0,.16); +} + +#insext .insext-popup-vertical-up { + bottom: 100%; +} + +#insext .insext-popup-horizontal { + bottom: 20px; + box-shadow: 2px 0 2px 0 rgba(0,0,0,.16); +} + +#insext .insext-popup-horizontal-left { + right: 0%; +} + +#insext .insext-popup-horizontal-centered { + right: -380%; +} + +#insext .insext-popup-horizontal-right { + left: 0%; +} + #insext.insext-active .insext-popup { display: block; } #insext .insext-btn { box-sizing: border-box; - width: 15px; - height: 33px; - padding: 3px 1px 2px 0; background-color: #226b86; border-width: 4px; border-style: solid; - border-right-style: none; border-color: #fff; + opacity: .4; +} +#insext .insext-btn-vertical { + width: 15px; + height: 33px; + padding: 3px 1px 2px 0; + border-right-style: none; border-top-left-radius: 5px; border-bottom-left-radius: 5px; box-shadow: -2px 0 2px #a0a6ab; - opacity: .4; } -#insext .insext-btn:hover, -#insext.insext-active .insext-btn { +#insext .insext-btn-horizontal { + height: 15px; + width: 33px; + padding: 0 2px 1px 3px; + border-bottom-style: none; + border-top-left-radius: 5px; + border-top-right-radius: 5px; + box-shadow: 0 -2px 2px #a0a6ab; +} + +#insext .insext-btn-vertical:hover, +#insext.insext-active .insext-btn-vertical { opacity: 1; width: 20px; } + +#insext .insext-btn-horizontal:hover, +#insext.insext-active .insext-btn-horizontal { + opacity: 1; + height: 20px; +} + #insext .insext-btn img { box-sizing: border-box; +} + +#insext .insext-btn-vertical img { width: 10px; height: 15px; margin: 2px; } + +#insext .insext-btn-horizontal img { + width: 15px; + height: 10px; + margin: 2px; +} + .checkboxScrollSandbox { position: fixed; top: 10px; diff --git a/addon/button.js b/addon/button.js index 2e3eddf7..25ed1a3a 100644 --- a/addon/button.js +++ b/addon/button.js @@ -18,41 +18,30 @@ function initButton(sfHost, inInspector) { let rootEl = document.createElement("div"); rootEl.id = "insext"; let btn = document.createElement("div"); + let iFrameLocalStorage = {}; btn.className = "insext-btn"; btn.tabIndex = 0; btn.accessKey = "i"; btn.title = "Show Salesforce details (Alt+I / Shift+Alt+I)"; rootEl.appendChild(btn); - let img = document.createElement("img"); - img.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAA40lEQVQoz2P4//8/AzpWzGj6L59U/V8urgxMg/g4FUn6J/+X9E38LxWc8V8htR67IpCkuGfMfxCQjSpENRFFkXvk/1+/foGxQloDSD0DVkVfvnyBY7hCdEVv3rxBwXCFIIdKh2WDFT1+/BgDo1qd2fL/1q1bWDFcoW5xz3/Xppn/oycu/X/x4kUMDFeoWdD136R8wn+f9rlgxSdOnEDBKFajK96/fz8coyjEpnj79u1gjKEQXXFE/+L/Gzdu/G9WMfG/am4HZlzDFAf3LPwfOWEJWBPIwwzYUg9MsXXNFDAN4gMAmASShdkS4AcAAAAASUVORK5CYII="; - btn.appendChild(img); + loadPopup(); document.body.appendChild(rootEl); - btn.addEventListener("click", function clickListener() { - btn.removeEventListener("click", clickListener); - loadPopup(); - }); addFlowScrollability(); - function addFlowScrollability() { + function addFlowScrollability(popupEl) { const currentUrl = window.location.href; // Check the current URL for the string "builder_platform_interaction" if (currentUrl.includes("builder_platform_interaction")) { - //add marging for the popup arrow to prevent overlap with standard close button in flow builder (Winter 24) - //temporary workaround, will be removed in next release when the popupArrow position will be updatable by users - const popupArrow = document.querySelector("#insext"); - if (popupArrow){ - popupArrow.style = "margin-top: 50px;"; - } // Create a new checkbox element const headerFlow = document.querySelector("builder_platform_interaction-container-common"); const overflowCheckbox = document.createElement("input"); overflowCheckbox.type = "checkbox"; overflowCheckbox.id = "overflow-checkbox"; - const checkboxState = localStorage.getItem("scrollOnFlowBuilder"); + const checkboxState = iFrameLocalStorage.scrollOnFlowBuilder; // Check local storage for the checkbox state - checkboxState ? overflowCheckbox.checked = JSON.parse(checkboxState) : overflowCheckbox.checked = true; + (checkboxState != null) ? (overflowCheckbox.checked = checkboxState) : (overflowCheckbox.checked = true); // Create a new label element for the checkbox const overflowLabel = document.createElement("label"); overflowLabel.textContent = "Enable flow scrollability"; @@ -81,13 +70,35 @@ function initButton(sfHost, inInspector) { overflowCheckbox.addEventListener("change", function() { // Check if the checkbox is currently checked // Save the checkbox state to local storage - localStorage.setItem("scrollOnFlowBuilder", JSON.stringify(this.checked)); + popupEl.contentWindow.postMessage({ + updateLocalStorage: true, + key: "scrollOnFlowBuilder", + value: JSON.stringify(this.checked) + }, "*"); // Set the overflow property to "auto" this.checked ? style.textContent = ".canvas {overflow : auto!important ; }" : style.textContent = ".canvas {overflow : hidden!important ; }"; }); } } + function setRootCSSProperties(rootElement, buttonElement) { + let popupArrowOrientation = iFrameLocalStorage.popupArrowOrientation ? iFrameLocalStorage.popupArrowOrientation : "vertical"; + let popupArrowPosition = iFrameLocalStorage.popupArrowPosition ? (iFrameLocalStorage.popupArrowPosition + "%") : "122px"; + let img = document.createElement("img"); + if (popupArrowOrientation == "vertical") { + rootElement.style.right = 0; + rootElement.style.top = popupArrowPosition; + img.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAPCAYAAADd/14OAAAA40lEQVQoz2P4//8/AzpWzGj6L59U/V8urgxMg/g4FUn6J/+X9E38LxWc8V8htR67IpCkuGfMfxCQjSpENRFFkXvk/1+/foGxQloDSD0DVkVfvnyBY7hCdEVv3rxBwXCFIIdKh2WDFT1+/BgDo1qd2fL/1q1bWDFcoW5xz3/Xppn/oycu/X/x4kUMDFeoWdD136R8wn+f9rlgxSdOnEDBKFajK96/fz8coyjEpnj79u1gjKEQXXFE/+L/Gzdu/G9WMfG/am4HZlzDFAf3LPwfOWEJWBPIwwzYUg9MsXXNFDAN4gMAmASShdkS4AcAAAAASUVORK5CYII="; + buttonElement.classList.add("insext-btn-vertical"); + } else { + rootElement.style.bottom = "0px"; + rootElement.style.right = popupArrowPosition; + img.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAKCAYAAABrGwT5AAAAAXNSR0IArs4c6QAAAFBlWElmTU0AKgAAAAgAAgESAAMAAAABAAEAAIdpAAQAAAABAAAAJgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAD6ADAAQAAAABAAAACgAAAADdC3pnAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgoZXuEHAAABKElEQVQoFWNgwAI0C7r+6xb3/AdJKaTW/1fMaAKz0ZUyoguANHKzszEIcnMy3Hn+muHX2+cMLDwCDExs7Az3Z9ShqGdC1gzTKCHAyyDGz8OwszCM4c/Hdwy/P75l+PfrJwO6C+CakTXyc3EwlDnogM09M6eL4e+Xj1gNAGtG15hrrozsIIarSydjNYARXWOKnhQDJycnBubg4GBQDk5lYObhZ2DlFwaHARMocORFBRl4ONgYYtSEUGxE5zzevJDh77cvwEB8AQ4DJnZWFgY2FmaGSCU+dLVY+S+2LWZg+PeP4f+f3wwsP3//Yfj8/SdD6/G3DK/evceqAVkQFHiMwGhjZGFlYPn68xfDwzfvGX78+sPwYFYDSjwia4KxQdHF/JePgZGZmQEASqV1t0W3n+oAAAAASUVORK5CYII="; + buttonElement.classList.add("insext-btn-horizontal"); + } + buttonElement.appendChild(img); + } + function loadPopup() { btn.addEventListener("click", () => { if (!rootEl.classList.contains("insext-active")) { @@ -100,12 +111,31 @@ function initButton(sfHost, inInspector) { let popupSrc = chrome.runtime.getURL("popup.html"); let popupEl = document.createElement("iframe"); popupEl.className = "insext-popup"; + popupEl.classList.add(localStorage.getItem("popupArrowOrientation") == "horizontal" ? "insext-popup-horizontal" : "insext-popup-vertical"); popupEl.src = popupSrc; addEventListener("message", e => { if (e.source != popupEl.contentWindow) { return; } if (e.data.insextInitRequest) { + // Set CSS classes for arrow button position + iFrameLocalStorage = e.data.iFrameLocalStorage; + popupEl.classList.add(iFrameLocalStorage.popupArrowOrientation == "horizontal" ? "insext-popup-horizontal" : "insext-popup-vertical"); + if (iFrameLocalStorage.popupArrowOrientation == "horizontal") { + if (iFrameLocalStorage.popupArrowPosition < 8) { + popupEl.classList.add("insext-popup-horizontal-left"); + } else if (iFrameLocalStorage.popupArrowPosition >= 90) { + popupEl.classList.add("insext-popup-horizontal-right"); + } else { + popupEl.classList.add("insext-popup-horizontal-centered"); + } + } else if (iFrameLocalStorage.popupArrowOrientation == "vertical") { + if (iFrameLocalStorage.popupArrowPosition >= 55) { + popupEl.classList.add("insext-popup-vertical-up"); + } + } + setRootCSSProperties(rootEl, btn); + addFlowScrollability(popupEl); popupEl.contentWindow.postMessage({ insextInitResponse: true, sfHost, @@ -114,9 +144,6 @@ function initButton(sfHost, inInspector) { inInspector, }, "*"); } - if (e.data.insextLoaded) { - openPopup(); - } if (e.data.insextClosePopup) { closePopup(); } diff --git a/addon/manifest-template.json b/addon/manifest-template.json index e831a37c..7f4f506b 100644 --- a/addon/manifest-template.json +++ b/addon/manifest-template.json @@ -65,7 +65,8 @@ "inspect.html", "metadata-retrieve.html", "explore-api.html", - "limits.html" + "limits.html", + "options.html" ], "matches": ["https://*/*"], "extension_ids": [] diff --git a/addon/manifest.json b/addon/manifest.json index f1a41fa6..67da4217 100644 --- a/addon/manifest.json +++ b/addon/manifest.json @@ -60,7 +60,8 @@ "inspect.html", "metadata-retrieve.html", "explore-api.html", - "limits.html" + "limits.html", + "options.html" ], "matches": ["https://*/*"], "extension_ids": [] diff --git a/addon/options.css b/addon/options.css new file mode 100644 index 00000000..d585cada --- /dev/null +++ b/addon/options.css @@ -0,0 +1,157 @@ +@font-face { + font-family:'Salesforce Sans'; + src:url(fonts/SalesforceSans-Light.woff2); + font-weight:300 +} +@font-face { + font-family:'Salesforce Sans'; + src:url(fonts/SalesforceSans-LightItalic.woff2); + font-style:italic; + font-weight:300 +} +@font-face { + font-family:'Salesforce Sans'; + src:url(fonts/SalesforceSans-Regular.woff2); + font-weight:400 +} +@font-face { + font-family:'Salesforce Sans'; + src:url(fonts/SalesforceSans-Italic.woff2); + font-style:italic; + font-weight:400 +} +@font-face { + font-family:'Salesforce Sans'; + src:url(fonts/SalesforceSans-Bold.woff2); + font-weight:700 +} +@font-face { + font-family:'Salesforce Sans'; + src:url(fonts/SalesforceSans-BoldItalic.woff2); + font-style:italic; + font-weight:700 +} +* { + box-sizing: border-box; + vertical-align: middle; +} +html { + height: 100%; +} +body { + font-family: "Salesforce Sans", Arial, sans-serif; + font-size: .8125rem; + overflow: hidden; + margin: 0; + height: 100%; + display: flex; + background-color: #B0C4DF !important; + background-image: url('chrome-extension://__MSG_@@extension_id__/images/lightning_blue_background.png') !important; + background-repeat: no-repeat !important; + background-size: contain !important; + background-position: 0px 48px !important; +} +#root { + display: flex; + flex-grow: 1; + width: 100%; +} +[data-reactroot] { + display: flex; + flex-grow: 1; + flex-direction: column; + width: 100%; +} +[hidden] { + display: none !important; +} + +#user-info { + background: #f7f9fb; + min-height: 48px; + display: flex; + align-items: center; + padding: 0 12px; + flex-wrap: wrap; +} + +#user-info h1 { + padding: 0 6px 0 10px; +} + +#user-info span { + font-size: 1em; +} + +.sf-link { + background-color: rgb(6, 28, 63); + border-radius: 3px; + line-height: 1.8em; + text-decoration: none; + display: inline-block; + padding: 2px; + color: white; + padding-right: 1em; +} + +.sf-link svg { + width: 1.8em; + height: 1.8em; + display: block; + margin-left: 1px; + margin-right: 1em; + float: left; + background-color: #ef7ead; + border-radius: 2px; + fill: white; +} + +.flex-right { + margin-left: auto; + display: flex; + align-items: center; +} + +.text-align-middle { + display: flex; + justify-content: center; + align-content: center; + flex-direction: column; +} + +.slider-container { + min-width: 220px; +} + +.combobox-container { + min-width: 80px; +} + +.options-tab { + min-width: 80px; +} + +.options-tab-container { + background-color: #f7f9fb; +} + +.main-container { + background-color: #F8F8F8; + padding: 8px 12px; + border-radius: 5px; + border: 1px solid #DDDBDA; + margin: 12px 12px 0 12px; + flex-grow: 1; +} + +.prod { + background-color: #e0a4b5 !important; + background-image: url('chrome-extension://__MSG_@@extension_id__/images/lightning_red_background.png') !important; + background-repeat: no-repeat !important; + background-size: contain !important; + background-position: 0px 48px !important; +} + +.center-label { + text-align: center; +} \ No newline at end of file diff --git a/addon/options.html b/addon/options.html new file mode 100644 index 00000000..76aec4c3 --- /dev/null +++ b/addon/options.html @@ -0,0 +1,17 @@ + + + + + Salesforce Inspector Options + + + + + +
+ + + + + + \ No newline at end of file diff --git a/addon/options.js b/addon/options.js new file mode 100644 index 00000000..a6998f9e --- /dev/null +++ b/addon/options.js @@ -0,0 +1,539 @@ +/* global React ReactDOM */ +import {sfConn, apiVersion} from "./inspector.js"; +/* global initButton */ +import {DescribeInfo} from "./data-load.js"; + +class Model { + + constructor(sfHost) { + this.sfHost = sfHost; + + this.sfLink = "https://" + this.sfHost; + this.userInfo = "..."; + if (localStorage.getItem(sfHost + "_isSandbox") != "true") { + //change background color for production + document.body.classList.add("prod"); + } + + this.describeInfo = new DescribeInfo(this.spinFor.bind(this), () => { }); + this.spinFor(sfConn.soap(sfConn.wsdl(apiVersion, "Partner"), "getUserInfo", {}).then(res => { + this.userInfo = res.userFullName + " / " + res.userName + " / " + res.organizationName; + })); + } + + /** + * Notify React that we changed something, so it will rerender the view. + * Should only be called once at the end of an event or asynchronous operation, since each call can take some time. + * All event listeners (functions starting with "on") should call this function if they update the model. + * Asynchronous operations should use the spinFor function, which will call this function after the asynchronous operation completes. + * Other functions should not call this function, since they are called by a function that does. + * @param cb A function to be called once React has processed the update. + */ + didUpdate(cb) { + if (this.reactCallback) { + this.reactCallback(cb); + } + if (this.testCallback) { + this.testCallback(); + } + } + + /** + * Show the spinner while waiting for a promise. + * didUpdate() must be called after calling spinFor. + * didUpdate() is called when the promise is resolved or rejected, so the caller doesn't have to call it, when it updates the model just before resolving the promise, for better performance. + * @param promise The promise to wait for. + */ + spinFor(promise) { + this.spinnerCount++; + promise + .catch(err => { + console.error("spinFor", err); + }) + .then(() => { + this.spinnerCount--; + this.didUpdate(); + }) + .catch(err => console.log("error handling failed", err)); + } + +} + +class OptionsTabSelector extends React.Component { + constructor(props) { + super(props); + this.state = { + selectedTabId: 1 + }; + this.tabs = [ + { + id: 1, + tabTitle: "Tab1", + title: "User Experience", + content: [ + {option: ArrowButtonOption, key: 1}, + {option: FlowScrollabilityOption, key: 2}, + {option: InspectTableBorderOption, key: 3}, + {option: OpenLinkNewTabOption, key: 4}, + {option: OpenPermSetSummaryOption, key: 5}, + {option: MdShortcutSearchOption, key: 6}, + {option: QueryInputAutoFocusOption, key: 7} + ] + }, + { + id: 2, + tabTitle: "Tab2", + title: "API", + content: [ + {option: APIVersionOption, key: 1}, + {option: APIKeyOption, key: 2} + ] + }, + { + id: 3, + tabTitle: "Tab3", + title: "Data Export", + content: [ + {option: CSVSeparatorOption, key: 1} + ] + }, + ]; + this.onTabSelect = this.onTabSelect.bind(this); + } + + onTabSelect(e) { + e.preventDefault(); + this.setState({selectedTabId: e.target.tabIndex}); + } + + render() { + return h("div", {className: "slds-tabs_default"}, + h("ul", {className: "options-tab-container slds-tabs_default__nav", role: "tablist"}, + this.tabs.map((tab) => h(OptionsTab, {key: tab.id, title: tab.title, id: tab.id, selectedTabId: this.state.selectedTabId, onTabSelect: this.onTabSelect})) + ), + this.tabs.map((tab) => h(OptionsContainer, {key: tab.id, id: tab.id, content: tab.content, selectedTabId: this.state.selectedTabId})) + ); + } +} + +class OptionsTab extends React.Component { + + getClass() { + return "options-tab slds-text-align_center slds-tabs_default__item" + (this.props.selectedTabId === this.props.id ? " slds-is-active" : ""); + } + + render() { + return h("li", {key: this.props.id, className: this.getClass(), title: this.props.title, tabIndex: this.props.id, role: "presentation", onClick: this.props.onTabSelect}, + h("a", {className: "slds-tabs_default__link", href: "#", role: "tab", tabIndex: this.props.id, id: "tab-default-" + this.props.id + "__item"}, + this.props.title) + ); + } +} + +class OptionsContainer extends React.Component { + + getClass() { + return (this.props.selectedTabId === this.props.id ? "slds-show" : " slds-hide"); + } + + render() { + return h("div", {id: this.props.id, className: this.getClass(), role: "tabpanel"}, this.props.content.map((c) => h(c.option, {key: c.key}))); + } + +} + +class ArrowButtonOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeArrowOrientation = this.onChangeArrowOrientation.bind(this); + this.onChangeArrowPosition = this.onChangeArrowPosition.bind(this); + this.state = { + arrowButtonOrientation: localStorage.getItem("popupArrowOrientation") ? localStorage.getItem("popupArrowOrientation") : "vertical", + arrowButtonPosition: localStorage.getItem("popupArrowPosition") ? localStorage.getItem("popupArrowPosition") : "20" + }; + this.timeout; + } + + onChangeArrowOrientation(e) { + let orientation = e.target.value; + this.setState({arrowButtonOrientation: orientation}); + console.log("[SFInspector] Setting Arrow Orientation: ", orientation); + localStorage.setItem("popupArrowOrientation", orientation); + window.location.reload(); + } + + onChangeArrowPosition(e) { + let position = e.target.value; + this.setState({arrowButtonPosition: position}); + console.log("[SFInspector] New Arrow Position Value: ", position); + if (this.timeout) { + clearTimeout(this.timeout); + } + this.timeout = setTimeout(() => { + console.log("[SFInspector] Setting Arrow Position: ", position); + localStorage.setItem("popupArrowPosition", position); + window.location.reload(); + }, 1000); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Popup arrow button orientation and position") + ), + h("div", {className: "slds-col slds-size_8-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}, + h("label", {className: "slds-col slds-size_2-of-12 slds-text-align_right"}, "Orientation:"), + h("select", {className: "slds-col slds-size_2-of-12 slds-combobox__form-element slds-input combobox-container", defaultValue: this.state.arrowButtonOrientation, name: "arrowPosition", id: "arrowPosition", onChange: this.onChangeArrowOrientation}, + h("option", {value: "horizontal"}, "Horizontal"), + h("option", {value: "vertical"}, "Vertical") + ), + h("label", {className: "slds-m-left_medium slds-col slds-size_2-of-12 slds-text-align_right", htmlFor: "arrowPositionSlider"}, "Position (%):"), + h("div", {className: "slds-form-element__control slider-container slds-col slds-size_4-of-12"}, + h("div", {className: "slds-slider"}, + h("input", {type: "range", id: "arrowPositionSlider", className: "slds-slider__range", value: this.state.arrowButtonPosition, min: "0", max: "100", step: "1", onChange: this.onChangeArrowPosition}), + h("span", {className: "slds-slider__value", "aria-hidden": true}, this.state.arrowButtonPosition) + ) + ) + ) + ); + } +} + +class APIVersionOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeApiVersion = this.onChangeApiVersion.bind(this); + this.state = {apiVersion: localStorage.getItem("apiVersion") ? localStorage.getItem("apiVersion") : apiVersion}; + } + + onChangeApiVersion(e) { + let apiVersion = e.target.value; + this.setState({apiVersion}); + localStorage.setItem("apiVersion", apiVersion + ".0"); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "API Version") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {className: "slds-col slds-size_1-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}, + h("div", {className: "slds-form-element__control slds-col slds-size_2-of-12"}, + h("input", {type: "number", required: true, id: "apiVersionInput", className: "slds-input", value: this.state.apiVersion.split(".0")[0], onChange: this.onChangeApiVersion}), + ) + ) + ); + } +} + +class FlowScrollabilityOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeFlowScrollability = this.onChangeFlowScrollability.bind(this); + this.state = {flowScrollabilityEnabled: (JSON.parse(localStorage.getItem("scrollOnFlowBuilder")))}; + } + + onChangeFlowScrollability(e) { + let flowScrollabilityEnabled = e.target.checked; + this.setState({flowScrollabilityEnabled}); + localStorage.setItem("scrollOnFlowBuilder", JSON.stringify(flowScrollabilityEnabled)); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Flow Scrollability") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {dir: "rtl", className: "slds-form-element__control slds-col slds-size_1-of-12 slds-p-right_medium"}, + h("label", {className: "slds-checkbox_toggle slds-grid"}, + h("input", {type: "checkbox", required: true, id: "checkbox-toggle-flowScroll", "aria-describedby": "checkbox-toggle-flowScroll", className: "slds-input", checked: this.state.flowScrollabilityEnabled, onChange: this.onChangeFlowScrollability}), + h("span", {id: "checkbox-toggle-flowScroll", className: "slds-checkbox_faux_container center-label"}, + h("span", {className: "slds-checkbox_faux"}), + h("span", {className: "slds-checkbox_on"}, "Enabled"), + h("span", {className: "slds-checkbox_off"}, "Disabled"), + ) + ) + ) + ); + } +} + +class OpenLinkNewTabOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeOpenLink = this.onChangeOpenLink.bind(this); + this.state = {openLinksInNewTab: (JSON.parse(localStorage.getItem("openLinksInNewTab")))}; + } + + onChangeOpenLink(e) { + let openLinksInNewTab = e.target.checked; + this.setState({openLinksInNewTab}); + localStorage.setItem("openLinksInNewTab", JSON.stringify(openLinksInNewTab)); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Always open links in a new tab") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {dir: "rtl", className: "slds-form-element__control slds-col slds-size_1-of-12 slds-p-right_medium"}, + h("label", {className: "slds-checkbox_toggle slds-grid"}, + h("input", {type: "checkbox", required: true, id: "checkbox-toggle-openLinkNewTab", "aria-describedby": "checkbox-toggle-openLinkNewTab", className: "slds-input", checked: this.state.openLinksInNewTab, onChange: this.onChangeOpenLink}), + h("span", {id: "checkbox-toggle-openLinkNewTab", className: "slds-checkbox_faux_container center-label"}, + h("span", {className: "slds-checkbox_faux"}), + h("span", {className: "slds-checkbox_on"}, "Enabled"), + h("span", {className: "slds-checkbox_off"}, "Disabled"), + ) + ) + ) + ); + } +} + +class OpenPermSetSummaryOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeOpenPermSetSummary = this.onChangeOpenPermSetSummary.bind(this); + this.state = {enablePermSetSummary: (JSON.parse(localStorage.getItem("enablePermSetSummary")))}; + } + + onChangeOpenPermSetSummary(e) { + let enablePermSetSummary = e.target.checked; + this.setState({enablePermSetSummary}); + localStorage.setItem("enablePermSetSummary", JSON.stringify(enablePermSetSummary)); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Open Permission Set / Permission Set Group summary from shortcuts") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {dir: "rtl", className: "slds-form-element__control slds-col slds-size_1-of-12 slds-p-right_medium"}, + h("label", {className: "slds-checkbox_toggle slds-grid"}, + h("input", {type: "checkbox", required: true, id: "checkbox-toggle-openLinkNewTab", "aria-describedby": "checkbox-toggle-openLinkNewTab", className: "slds-input", checked: this.state.enablePermSetSummary, onChange: this.onChangeOpenPermSetSummary}), + h("span", {id: "checkbox-toggle-openLinkNewTab", className: "slds-checkbox_faux_container center-label"}, + h("span", {className: "slds-checkbox_faux"}), + h("span", {className: "slds-checkbox_on"}, "Enabled"), + h("span", {className: "slds-checkbox_off"}, "Disabled"), + ) + ) + ) + ); + } +} + +class InspectTableBorderOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeShowTableBorders = this.onChangeShowTableBorders.bind(this); + this.state = {displayInspectTableBorders: (JSON.parse(localStorage.getItem("displayInspectTableBorders")))}; + } + + onChangeShowTableBorders(e) { + let displayInspectTableBorders = e.target.checked; + this.setState({displayInspectTableBorders}); + localStorage.setItem("displayInspectTableBorders", JSON.stringify(displayInspectTableBorders)); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Inspect page - Show table borders") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {dir: "rtl", className: "slds-form-element__control slds-col slds-size_1-of-12 slds-p-right_medium"}, + h("label", {className: "slds-checkbox_toggle slds-grid"}, + h("input", {type: "checkbox", required: true, id: "checkbox-toggle-tableBorders", "aria-describedby": "checkbox-toggle-tableBorders", className: "slds-input", checked: this.state.displayInspectTableBorders, onChange: this.onChangeShowTableBorders}), + h("span", {id: "checkbox-toggle-tableBorders", className: "slds-checkbox_faux_container center-label"}, + h("span", {className: "slds-checkbox_faux"}), + h("span", {className: "slds-checkbox_on"}, "Enabled"), + h("span", {className: "slds-checkbox_off"}, "Disabled"), + ) + ) + ) + ); + } +} + +class MdShortcutSearchOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeMdShortcutSearch = this.onChangeMdShortcutSearch.bind(this); + this.state = {metadataShortcutSearch: (JSON.parse(localStorage.getItem("metadataShortcutSearch")))}; + } + + onChangeMdShortcutSearch(e) { + let metadataShortcutSearch = e.target.checked; + this.setState({metadataShortcutSearch}); + localStorage.setItem("metadataShortcutSearch", JSON.stringify(metadataShortcutSearch)); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Search metadata from Shortcut tab") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {dir: "rtl", className: "slds-form-element__control slds-col slds-size_1-of-12 slds-p-right_medium"}, + h("label", {className: "slds-checkbox_toggle slds-grid"}, + h("input", {type: "checkbox", required: true, id: "checkbox-toggle-tableBorders", "aria-describedby": "checkbox-toggle-tableBorders", className: "slds-input", checked: this.state.metadataShortcutSearch, onChange: this.onChangeMdShortcutSearch}), + h("span", {id: "checkbox-toggle-tableBorders", className: "slds-checkbox_faux_container center-label"}, + h("span", {className: "slds-checkbox_faux"}), + h("span", {className: "slds-checkbox_on"}, "Enabled"), + h("span", {className: "slds-checkbox_off"}, "Disabled"), + ) + ) + ) + ); + } +} + +class QueryInputAutoFocusOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeQueryInputAutoFocus = this.onChangeQueryInputAutoFocus.bind(this); + this.state = {disableQueryInputAutoFocus: (JSON.parse(localStorage.getItem("disableQueryInputAutoFocus")))}; + } + + onChangeQueryInputAutoFocus(e) { + let disableQueryInputAutoFocus = e.target.checked; + this.setState({disableQueryInputAutoFocus}); + localStorage.setItem("disableQueryInputAutoFocus", JSON.stringify(disableQueryInputAutoFocus)); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "Disable query input autofocus") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {dir: "rtl", className: "slds-form-element__control slds-col slds-size_1-of-12 slds-p-right_medium"}, + h("label", {className: "slds-checkbox_toggle slds-grid"}, + h("input", {type: "checkbox", required: true, id: "checkbox-toggle-tableBorders", "aria-describedby": "checkbox-toggle-tableBorders", className: "slds-input", checked: this.state.disableQueryInputAutoFocus, onChange: this.onChangeQueryInputAutoFocus}), + h("span", {id: "checkbox-toggle-tableBorders", className: "slds-checkbox_faux_container center-label"}, + h("span", {className: "slds-checkbox_faux"}), + h("span", {className: "slds-checkbox_on"}, "Enabled"), + h("span", {className: "slds-checkbox_off"}, "Disabled"), + ) + ) + ) + ); + } +} + +class APIKeyOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeApiKey = this.onChangeApiKey.bind(this); + this.state = {apiKey: localStorage.getItem(this.sfHost + "_clientId") ? localStorage.getItem(this.sfHost + "_clientId") : ""}; + } + + onChangeApiKey(e) { + let apiKey = e.target.value; + this.setState({apiKey}); + localStorage.setItem(this.sfHost + "_clientId", apiKey); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "API Consumer Key") + ), + h("div", {className: "slds-col slds-size_2-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}, + h("div", {className: "slds-form-element__control slds-col slds-size_6-of-12"}, + h("input", {type: "text", id: "apiKeyInput", className: "slds-input", placeholder: "Consumer Key", value: this.state.apiKey, onChange: this.onChangeApiKey}), + ) + ) + ); + } +} + +class CSVSeparatorOption extends React.Component { + + constructor(props) { + super(props); + this.onChangeCSVSeparator = this.onChangeCSVSeparator.bind(this); + this.state = {csvSeparator: localStorage.getItem("csvSeparator") ? localStorage.getItem("csvSeparator") : ","}; + } + + onChangeCSVSeparator(e) { + let csvSeparator = e.target.value; + this.setState({csvSeparator}); + localStorage.setItem("csvSeparator", csvSeparator); + } + + render() { + return h("div", {className: "slds-grid slds-border_bottom slds-p-horizontal_small slds-p-vertical_xx-small"}, + h("div", {className: "slds-col slds-size_4-of-12 text-align-middle"}, + h("span", {}, "CSV Separator") + ), + h("div", {className: "slds-col slds-size_7-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}), + h("div", {className: "slds-col slds-size_1-of-12 slds-form-element slds-grid slds-grid_align-end slds-grid_vertical-align-center slds-gutters_small"}, + h("input", {type: "text", id: "csvSeparatorInput", className: "slds-input slds-text-align_right slds-m-right_small", placeholder: "CSV Separator", value: this.state.csvSeparator, onChange: this.onChangeCSVSeparator}) + ) + ); + } +} + +let h = React.createElement; + +class App extends React.Component { + + constructor(props) { + super(props); + this.foo = undefined; + } + + render() { + let {model} = this.props; + return h("div", {}, + h("div", {id: "user-info", className: "slds-border_bottom"}, + h("a", {href: model.sfLink, className: "sf-link"}, + h("svg", {viewBox: "0 0 24 24"}, + h("path", {d: "M18.9 12.3h-1.5v6.6c0 .2-.1.3-.3.3h-3c-.2 0-.3-.1-.3-.3v-5.1h-3.6v5.1c0 .2-.1.3-.3.3h-3c-.2 0-.3-.1-.3-.3v-6.6H5.1c-.1 0-.3-.1-.3-.2s0-.2.1-.3l6.9-7c.1-.1.3-.1.4 0l7 7v.3c0 .1-.2.2-.3.2z"}) + ), + " Salesforce Home" + ), + h("h1", {className: "slds-text-title_bold"}, "Salesforce Inspector Options"), + h("span", {}, " / " + model.userInfo), + h("div", {className: "flex-right"})), + h("div", {className: "main-container slds-card slds-m-around_small"}, + h(OptionsTabSelector, {})) + ); + } +} + +{ + + let args = new URLSearchParams(location.search.slice(1)); + let sfHost = args.get("host"); + initButton(sfHost, true); + sfConn.getSession(sfHost).then(() => { + + let root = document.getElementById("root"); + let model = new Model(sfHost); + model.reactCallback = cb => { + ReactDOM.render(h(App, {model}), root, cb); + }; + ReactDOM.render(h(App, {model}), root); + + if (parent && parent.isUnitTest) { // for unit tests + parent.insextTestLoaded({model}); + } + + }); + +} diff --git a/addon/popup.js b/addon/popup.js index 889a9f09..0e096fe9 100644 --- a/addon/popup.js +++ b/addon/popup.js @@ -6,12 +6,23 @@ import {setupLinks} from "./links.js"; let h = React.createElement; { - parent.postMessage({insextInitRequest: true}, "*"); + parent.postMessage({ + insextInitRequest: true, + iFrameLocalStorage: { + popupArrowOrientation: localStorage.getItem("popupArrowOrientation"), + popupArrowPosition: JSON.parse(localStorage.getItem("popupArrowPosition")), + scrollOnFlowBuilder: JSON.parse(localStorage.getItem("scrollOnFlowBuilder")) + } + }, "*"); addEventListener("message", function initResponseHandler(e) { - if (e.source == parent && e.data.insextInitResponse) { - removeEventListener("message", initResponseHandler); - init(e.data); - initLinks(e.data); + if (e.source == parent) { + if (e.data.insextInitResponse) { + //removeEventListener("message", initResponseHandler); + init(e.data); + initLinks(e.data); + } else if (e.data.updateLocalStorage) { + localStorage.setItem(e.data.key, e.data.value); + } } }); } @@ -204,7 +215,7 @@ class App extends React.PureComponent { let clientId = localStorage.getItem(sfHost + "_clientId"); let hostArg = new URLSearchParams(); hostArg.set("host", sfHost); - let linkInNewTab = localStorage.getItem("openLinksInNewTab"); + let linkInNewTab = JSON.parse(localStorage.getItem("openLinksInNewTab")); let linkTarget = inDevConsole || linkInNewTab ? "_blank" : "_top"; let browser = navigator.userAgent.includes("Chrome") ? "chrome" : "moz"; return ( @@ -239,7 +250,7 @@ class App extends React.PureComponent { h("a", {ref: "limitsBtn", href: limitsHref, target: linkTarget, className: "page-button slds-button slds-button_neutral"}, h("span", {}, "Org ", h("u", {}, "L"), "imits")) ), ), - h("div", {className: "slds-p-vertical_x-small slds-p-horizontal_x-small"}, + h("div", {className: "slds-p-vertical_x-small slds-p-horizontal_x-small slds-border_bottom"}, // Advanded features should be put below this line, and the layout adjusted so they are below the fold h("div", {className: "slds-m-bottom_xx-small"}, h("a", {ref: "metaRetrieveBtn", href: "metadata-retrieve.html?" + hostArg, target: linkTarget, className: "page-button slds-button slds-button_neutral"}, h("span", {}, h("u", {}, "D"), "ownload Metadata")) @@ -280,6 +291,11 @@ class App extends React.PureComponent { }, h("span", {}, "Setup ", h("u", {}, "H"), "ome")), ), + ), + h("div", {className: "slds-p-vertical_x-small slds-p-horizontal_x-small"}, + h("div", {className: "slds-m-bottom_xx-small"}, + h("a", {ref: "options", href: "options.html?" + hostArg, target: linkTarget, className: "page-button slds-button slds-button_neutral"}, h("span", {}, "Options")) + ), ) ), h("div", {className: "slds-grid slds-theme_shade slds-p-around_small slds-border_top"}, @@ -1874,7 +1890,7 @@ function sfLocaleKeyToCountryCode(localeKey) { } function getLinkTarget(e) { - if (localStorage.getItem("openLinksInNewTab") == "true" || (e.ctrlKey || e.metaKey)){ + if (JSON.parse(localStorage.getItem("openLinksInNewTab")) || (e.ctrlKey || e.metaKey)) { return "_blank"; } else { return "_top"; diff --git a/addon/styles/slds/slds.css b/addon/styles/slds/slds.css index ea7732cf..433cebc2 100644 --- a/addon/styles/slds/slds.css +++ b/addon/styles/slds/slds.css @@ -1,11 +1,416 @@ -/*! +/*! Salesforce Lightning Design System Only CSS classes currently used - feel free to add if new ones should be needed - - Current version used: 2.21.1 + + Current version used: 2.21.1 */ +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ +html{ + font-family:sans-serif; + -ms-text-size-adjust:100%; + -webkit-text-size-adjust:100%; +} + +body{ + margin:0; +} + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary{ + display:block; +} + +audio, +canvas, +progress, +video{ + display:inline-block; + vertical-align:baseline; +} + +audio:not([controls]){ + display:none; + height:0; +} + +template{ + display:none; +} + +a{ + background-color:transparent; +} + +a:active, +a:hover{ + outline:0; +} + +abbr[title]{ + border-bottom:1px dotted; +} + +b, +strong{ + font-weight:bold; +} + +dfn{ + font-style:italic; +} + +h1{ + font-size:2em; + margin:0.67em 0; +} + +mark{ + background:#ff0; + color:#000; +} + +small{ + font-size:80%; +} + +sub, +sup{ + font-size:75%; + line-height:0; + position:relative; + vertical-align:baseline; +} + +sup{ + top:-0.5em; +} + +sub{ + bottom:-0.25em; +} + +img{ + border:0; +} + +svg:not(:root){ + overflow:hidden; +} + +figure{ + margin:1em 40px; +} + +hr{ + -moz-box-sizing:content-box; + -webkit-box-sizing:content-box; + box-sizing:content-box; + height:0; +} + +pre{ + overflow:auto; +} + +code, +kbd, +pre, +samp{ + font-family:monospace, monospace; + font-size:1em; +} + +button, +input, +optgroup, +select, +textarea{ + color:inherit; + font:inherit; + margin:0; +} + +button{ + overflow:visible; +} + +button, +select{ + text-transform:none; +} + +button, +html input[type=button], +input[type=reset], +input[type=submit]{ + -webkit-appearance:button; + cursor:pointer; +} + +button[disabled], +html input[disabled]{ + cursor:default; +} + +button::-moz-focus-inner, +input::-moz-focus-inner{ + border:0; + padding:0; +} + +input{ + line-height:normal; +} + +input[type=checkbox], +input[type=radio]{ + -webkit-box-sizing:border-box; + box-sizing:border-box; + padding:0; +} + +input[type=number]::-webkit-inner-spin-button, +input[type=number]::-webkit-outer-spin-button{ + height:auto; +} + +input[type=search]{ + -webkit-appearance:textfield; + -moz-box-sizing:content-box; + -webkit-box-sizing:content-box; + box-sizing:content-box; +} + +input[type=search]::-webkit-search-cancel-button, +input[type=search]::-webkit-search-decoration{ + -webkit-appearance:none; +} + +fieldset{ + border:1px solid #c0c0c0; + margin:0 2px; + padding:0.35em 0.625em 0.75em; +} + +legend{ + border:0; + padding:0; +} + +textarea{ + overflow:auto; +} + +optgroup{ + font-weight:bold; +} + +table{ + border-collapse:collapse; + border-spacing:0; +} + +td, +th{ + padding:0; +} + +*, +*:before, +*:after{ + -webkit-box-sizing:border-box; + box-sizing:border-box; +} + +::-webkit-input-placeholder{ + color:var(--slds-g-color-neutral-base-50, #747474); + font-weight:400; + opacity:1; +} + +::-moz-placeholder{ + color:var(--slds-g-color-neutral-base-50, #747474); + font-weight:400; + opacity:1; +} + +:-ms-input-placeholder{ + color:var(--slds-g-color-neutral-base-50, #747474); + font-weight:400; + opacity:1; +} + +::-ms-input-placeholder{ + color:var(--slds-g-color-neutral-base-50, #747474); + font-weight:400; + opacity:1; +} + +::placeholder{ + color:var(--slds-g-color-neutral-base-50, #747474); + font-weight:400; + opacity:1; +} + +::-moz-selection{ + background:var(--slds-g-color-brand-base-95, #d8e6fe); + text-shadow:none; + color:var(--slds-g-color-neutral-base-10, #181818); +} + +::selection{ + background:var(--slds-g-color-brand-base-95, #d8e6fe); + text-shadow:none; + color:var(--slds-g-color-neutral-base-10, #181818); +} + +html{ + font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-size:100%; + line-height:1.5; + background:#eef4ff; + color:var(--slds-g-color-neutral-base-10, #181818); + -webkit-tap-highlight-color:transparent; +} + +body{ + font-size:0.8125rem; + background:transparent; +} + +h1, +h2, +h3, +h4, +h5, +h6, +p, +ol, +ul, +dl, +fieldset{ + margin:0; + padding:0; +} + +dd, +figure{ + margin:0; +} + +abbr[title]{ + text-decoration:none; +} + +abbr[title], +fieldset, +hr{ + border:0; +} + +hr{ + padding:0; +} + +h1, +h2, +h3, +h4, +h5, +h6{ + font-weight:inherit; + font-size:1em; +} + +ol, +ul{ + list-style:none; +} + +a{ + color:#0176d3; + text-decoration:none; + -webkit-transition:color 0.1s linear; + transition:color 0.1s linear; +} + +a:active{ + color:#014486; +} +a:focus-visible{ + outline-color:var(--slds-g-color-palette-blue-50, #0176d3); +} + +a, +button{ + cursor:pointer; +} + +b, +strong, +dfn{ + font-weight:700; +} + +mark{ + background-color:var(--slds-g-color-palette-yellow-90, #fff03f); + color:var(--slds-g-color-neutral-base-10, #181818); +} + +abbr[title]{ + cursor:help; +} + +input[type=search]{ + -webkit-box-sizing:border-box; + box-sizing:border-box; +} + +table{ + width:100%; +} + +caption, +th, +td{ + text-align:left; +} + +hr{ + display:block; + margin:2rem 0; + border-top:1px solid var(--slds-g-color-border-base-1, #e5e5e5); + height:1px; + clear:both; +} + +audio, +canvas, +iframe, +img, +svg, +video{ + vertical-align:middle; +} + +img{ + max-width:100%; + height:auto; +} + /* Border */ .slds-border_bottom, @@ -956,77 +1361,1599 @@ a.slds-button--inverse:focus{ fill:var(--slds-g-color-neutral-100-opacity-50, rgba(255, 255, 255, 0.5)); } -/* Grid */ +/* Card */ -.slds-grid{ +.slds-card_empty .slds-card__body, +.slds-card--empty .slds-card__body{ + text-align:center; +} +.slds-card{ + position:relative; + padding-top:var(--slds-c-card-spacing-block-start, var(--sds-c-card-spacing-block-start, var(--sds-c-card-spacing-block, 0))); + padding-right:var(--slds-c-card-spacing-inline-end, var(--sds-c-card-spacing-inline-end, var(--sds-c-card-spacing-inline, 0))); + padding-bottom:var(--slds-c-card-spacing-block-end, var(--sds-c-card-spacing-block-end, var(--sds-c-card-spacing-block, 0))); + padding-left:var(--slds-c-card-spacing-inline-start, var(--sds-c-card-spacing-inline-start, var(--sds-c-card-spacing-inline, 0))); + background:var(--slds-c-card-color-background, var(--sds-c-card-color-background, var(--slds-g-color-neutral-base-100, white))); + border-width:var(--slds-c-card-sizing-border, var(--sds-c-card-sizing-border, 1px)); + border-style:solid; + border-color:var(--slds-c-card-color-border, var(--sds-c-card-color-border, var(--slds-g-color-border-base-1, #c9c9c9))); + border-radius:var(--slds-c-card-radius-border, var(--sds-c-card-radius-border, 0.25rem)); + background-clip:padding-box; + -webkit-box-shadow:var(--slds-c-card-shadow, var(--sds-c-card-shadow, 0 2px 2px 0 rgba(0, 0, 0, 0.1))); + box-shadow:var(--slds-c-card-shadow, var(--sds-c-card-shadow, 0 2px 2px 0 rgba(0, 0, 0, 0.1))); + color:var(--slds-c-card-text-color, var(--sds-c-card-text-color)); +} +.slds-card + .slds-card{ + margin-top:1rem; +} +.slds-card__header{ + padding-top:var(--slds-c-card-header-spacing-block-start, var(--sds-c-card-header-spacing-block-start, var(--slds-c-card-header-spacing-block, var(--sds-c-card-header-spacing-block, 0.75rem)))); + padding-right:var(--slds-c-card-header-spacing-inline-end, var(--sds-c-card-header-spacing-inline-end, var(--slds-c-card-header-spacing-inline, var(--sds-c-card-header-spacing-inline, 1rem)))); + padding-bottom:var(--slds-c-card-header-spacing-block-end, var(--sds-c-card-header-spacing-block-end, var(--slds-c-card-header-spacing-block, var(--sds-c-card-header-spacing-block, 0)))); + padding-left:var(--slds-c-card-header-spacing-inline-start, var(--sds-c-card-header-spacing-inline-start, var(--slds-c-card-header-spacing-inline, var(--sds-c-card-header-spacing-inline, 1rem)))); + margin:0 0 var(--slds-c-card-header-spacing-block-end, var(--sds-c-card-header-spacing-block-end, 0.75rem)); +} +.slds-card__header-title{ display:-webkit-box; display:-ms-flexbox; display:flex; + font-size:var(--slds-c-card-heading-font-size, var(--sds-c-card-heading-font-size, 1rem)); + font-weight:var(--slds-c-card-heading-font-weight, var(--sds-c-card-heading-font-weight, 700)); + line-height:1.25; } -.slds-grid_frame, -.slds-grid--frame{ - min-width:100vw; - min-height:100vh; - overflow:hidden; -} -.slds-grid_vertical, -.slds-grid--vertical{ - -webkit-box-orient:vertical; - -webkit-box-direction:normal; - -ms-flex-direction:column; - flex-direction:column; +.slds-card__header-link{ + color:inherit; + font-weight:var(--slds-c-card-heading-font-weight, var(--sds-c-card-heading-font-weight, 700)); } -.slds-grid_vertical-reverse, -.slds-grid--vertical-reverse{ - -webkit-box-orient:vertical; - -webkit-box-direction:reverse; - -ms-flex-direction:column-reverse; - flex-direction:column-reverse; +.slds-card__body{ + margin-top:var(--slds-c-card-body-spacing-block-start, var(--sds-c-card-body-spacing-block-start, var(--slds-c-card-body-spacing-block, var(--sds-c-card-body-spacing-block, 0.75rem)))); + margin-bottom:var(--slds-c-card-body-spacing-block-end, var(--sds-c-card-body-spacing-block-end, var(--slds-c-card-body-spacing-block, var(--sds-c-card-body-spacing-block, 0.75rem)))); + padding-right:var(--slds-c-card-body-spacing-inline-end, var(--sds-c-card-body-spacing-inline-end, var(--slds-c-card-body-spacing-inline, var(--sds-c-card-body-spacing-inline)))); + padding-left:var(--slds-c-card-body-spacing-inline-start, var(--sds-c-card-body-spacing-inline-start, var(--slds-c-card-body-spacing-inline, var(--sds-c-card-body-spacing-inline)))); } -.slds-grid_reverse, -.slds-grid--reverse{ - -webkit-box-orient:horizontal; - -webkit-box-direction:reverse; - -ms-flex-direction:row-reverse; - flex-direction:row-reverse; +.slds-card__body_inner, +.slds-card__body--inner{ + /*! @css-var-fallback padding-right */ + --slds-c-card-body-spacing-inline-end:var(--sds-c-card-body-spacing-inline-end, var(--sds-c-card-body-spacing-inline, 1rem)); + /*! @css-var-fallback padding-left */ + --slds-c-card-body-spacing-inline-start:var(--sds-c-card-body-spacing-inline-start, var(--sds-c-card-body-spacing-inline, 1rem)); + padding-top:0; + padding-bottom:0; } -/* Gutters */ - -.slds-gutters{ - margin-right:-0.75rem; - margin-left:-0.75rem; +.slds-card__body:empty, +.slds-card__footer:empty{ + display:none; } -.slds-gutters .slds-col{ - padding-right:0.75rem; - padding-left:0.75rem; +.slds-card__footer{ + padding-top:var(--slds-c-card-footer-spacing-block-start, var(--sds-c-card-footer-spacing-block-start, var(--slds-c-card-footer-spacing-block, var(--sds-c-card-footer-spacing-block, 0.75rem)))); + padding-right:var(--slds-c-card-footer-spacing-inline-end, var(--sds-c-card-footer-spacing-inline-end, var(--slds-c-card-footer-spacing-inline, var(--sds-c-card-footer-spacing-inline, 1rem)))); + padding-bottom:var(--slds-c-card-footer-spacing-block-end, var(--sds-c-card-footer-spacing-block-end, var(--slds-c-card-footer-spacing-block, var(--sds-c-card-footer-spacing-block, 0.75rem)))); + padding-left:var(--slds-c-card-footer-spacing-inline-start, var(--sds-c-card-footer-spacing-inline-start, var(--slds-c-card-footer-spacing-inline, var(--sds-c-card-footer-spacing-inline, 1rem)))); + margin-top:var(--slds-c-card-footer-spacing-block-start, var(--sds-c-card-footer-spacing-block-start, 0.75rem)); + text-align:var(--slds-c-card-footer-text-align, var(--sds-c-card-footer-text-align, center)); + font-size:var(--slds-c-card-footer-font-size, var(--sds-c-card-footer-font-size, 0.8125rem)); + border-top-width:var(--slds-c-card-footer-sizing-border, var(--sds-c-card-footer-sizing-border, 1px)); + border-top-style:solid; + border-top-color:var(--slds-c-card-footer-color-border, var(--sds-c-card-footer-color-border, var(--slds-g-color-border-base-1, #c9c9c9))); +} +.slds-card__footer-action{ + display:block; } -.slds-gutters_xxx-small{ - margin-right:-0.125rem; - margin-left:-0.125rem; +.slds-card__tile{ + margin-top:0.75rem; } -.slds-gutters_xxx-small .slds-col{ - padding-right:0.125rem; - padding-left:0.125rem; + +.slds-region__pinned-left .slds-card, +.slds-region__pinned-left .slds-card-wrapper, +.slds-region__pinned-left .slds-card_boundary, +.slds-region__pinned-left .slds-tabs_card, +.slds-region__pinned-right .slds-card, +.slds-region__pinned-right .slds-card-wrapper, +.slds-region__pinned-right .slds-card_boundary, +.slds-region__pinned-right .slds-tabs_card{ + border-radius:0; + border:0; + border-bottom:1px solid var(--slds-g-color-border-base-1, #e5e5e5); + -webkit-box-shadow:none; + box-shadow:none; +} +.slds-region__pinned-left .slds-card:last-child, +.slds-region__pinned-left .slds-card-wrapper:last-child, +.slds-region__pinned-left .slds-card_boundary:last-child, +.slds-region__pinned-left .slds-tabs_card:last-child, +.slds-region__pinned-right .slds-card:last-child, +.slds-region__pinned-right .slds-card-wrapper:last-child, +.slds-region__pinned-right .slds-card_boundary:last-child, +.slds-region__pinned-right .slds-tabs_card:last-child{ + border-bottom:0; +} +.slds-card-wrapper{ + padding:1rem; + background:var(--slds-c-card-color-background, var(--sds-c-card-color-background, var(--slds-g-color-neutral-base-100, white))); + border-width:var(--slds-c-card-sizing-border, var(--sds-c-card-sizing-border, 1px)); + border-style:solid; + border-color:var(--slds-c-card-color-border, var(--sds-c-card-color-border, var(--slds-g-color-border-base-1, #c9c9c9))); + border-radius:var(--slds-c-card-radius-border, var(--sds-c-card-radius-border, 0.25rem)); + background-clip:padding-box; + -webkit-box-shadow:var(--slds-c-card-shadow, var(--sds-c-card-shadow, 0 2px 2px 0 rgba(0, 0, 0, 0.1))); + box-shadow:var(--slds-c-card-shadow, var(--sds-c-card-shadow, 0 2px 2px 0 rgba(0, 0, 0, 0.1))); +} +.slds-card-wrapper .slds-card__header, +.slds-card-wrapper .slds-card__body, +.slds-card-wrapper .slds-card__footer{ + padding-left:0; + padding-right:0; +} + +.slds-card .slds-card, +.slds-card .slds-card-wrapper, +.slds-card-wrapper .slds-card, +.slds-card-wrapper .slds-card-wrapper, +.slds-modal .slds-card, +.slds-modal .slds-card-wrapper, +.slds-tabs_default .slds-card, +.slds-tabs_default .slds-card-wrapper, +.slds-tabs--default .slds-card, +.slds-tabs--default .slds-card-wrapper, +.slds-tabs_card .slds-card, +.slds-tabs_card .slds-card-wrapper, +.slds-tabs_card.slds-tabs_card .slds-card, +.slds-tabs_card.slds-tabs_card .slds-card-wrapper{ + border:0; + -webkit-box-shadow:none; + box-shadow:none; } -.slds-gutters_xx-small{ - margin-right:-0.25rem; - margin-left:-0.25rem; + +.slds-card, +.slds-modal, +.slds-tabs_default, +.slds-tabs--default{ } -.slds-gutters_xx-small .slds-col{ - padding-right:0.25rem; - padding-left:0.25rem; +.slds-card .slds-card_boundary, +.slds-modal .slds-card_boundary, +.slds-tabs_default .slds-card_boundary, +.slds-tabs--default .slds-card_boundary{ + border-width:var(--slds-c-card-sizing-border, var(--sds-c-card-sizing-border, 1px)); + border-style:solid; + border-color:var(--slds-c-card-color-border, var(--sds-c-card-color-border, var(--slds-g-color-border-base-1, #c9c9c9))); + border-radius:var(--slds-c-card-radius-border, var(--sds-c-card-radius-border, 0.25rem)); +} +.slds-tabs_card, +.slds-tabs_card.slds-tabs_card{ + padding:0.75rem 1rem; + background:var(--slds-c-card-color-background, var(--sds-c-card-color-background, var(--slds-g-color-neutral-base-100, white))); + border-width:var(--slds-c-card-sizing-border, var(--sds-c-card-sizing-border, 1px)); + border-style:solid; + border-color:var(--slds-c-card-color-border, var(--sds-c-card-color-border, var(--slds-g-color-border-base-1, #c9c9c9))); + border-radius:var(--slds-c-card-radius-border, var(--sds-c-card-radius-border, 0.25rem)); + -webkit-box-shadow:var(--slds-c-card-shadow, var(--sds-c-card-shadow, 0 2px 2px 0 rgba(0, 0, 0, 0.1))); + box-shadow:var(--slds-c-card-shadow, var(--sds-c-card-shadow, 0 2px 2px 0 rgba(0, 0, 0, 0.1))); +} +.slds-tabs_card .slds-card, +.slds-tabs_card .slds-card-wrapper, +.slds-tabs_card.slds-tabs_card .slds-card, +.slds-tabs_card.slds-tabs_card .slds-card-wrapper{ + padding-left:0; + padding-right:0; +} +.slds-tabs_card .slds-card__header, +.slds-tabs_card .slds-card__body, +.slds-tabs_card .slds-card__footer, +.slds-tabs_card.slds-tabs_card .slds-card__header, +.slds-tabs_card.slds-tabs_card .slds-card__body, +.slds-tabs_card.slds-tabs_card .slds-card__footer{ + padding-left:0; + padding-right:0; + margin-left:0; + margin-right:0; +} +.slds-tabs_card .slds-card__header, +.slds-tabs_card.slds-tabs_card .slds-card__header{ + padding-top:0; +} + +.slds-tabs_card .slds-card_boundary, +.slds-tabs_card.slds-tabs_card .slds-card_boundary, +.slds-card-wrapper .slds-card_boundary{ + border-width:var(--slds-c-card-sizing-border, var(--sds-c-card-sizing-border, 1px)); + border-style:solid; + border-color:var(--slds-c-card-color-border, var(--sds-c-card-color-border, var(--slds-g-color-border-base-1, #c9c9c9))); + border-radius:var(--slds-c-card-radius-border, var(--sds-c-card-radius-border, 0.25rem)); +} +.slds-tabs_card .slds-card_boundary .slds-card__header, +.slds-tabs_card.slds-tabs_card .slds-card_boundary .slds-card__header, +.slds-card-wrapper .slds-card_boundary .slds-card__header{ + padding-top:var(--slds-c-card-header-spacing-block-start, var(--sds-c-card-header-spacing-block-start, var(--slds-c-card-header-spacing-block, var(--sds-c-card-header-spacing-block, 0.75rem)))); + padding-right:var(--slds-c-card-header-spacing-inline-end, var(--sds-c-card-header-spacing-inline-end, var(--slds-c-card-header-spacing-inline, var(--sds-c-card-header-spacing-inline, 1rem)))); + padding-bottom:var(--slds-c-card-header-spacing-block-end, var(--sds-c-card-header-spacing-block-end, var(--slds-c-card-header-spacing-block, var(--sds-c-card-header-spacing-block, 0)))); + padding-left:var(--slds-c-card-header-spacing-inline-start, var(--sds-c-card-header-spacing-inline-start, var(--slds-c-card-header-spacing-inline, var(--sds-c-card-header-spacing-inline, 1rem)))); +} +.slds-tabs_card .slds-card_boundary .slds-card__body_inner, +.slds-tabs_card .slds-card_boundary .slds-card__body--inner, +.slds-tabs_card.slds-tabs_card .slds-card_boundary .slds-card__body_inner, +.slds-tabs_card.slds-tabs_card .slds-card_boundary .slds-card__body--inner, +.slds-card-wrapper .slds-card_boundary .slds-card__body_inner, +.slds-card-wrapper .slds-card_boundary .slds-card__body--inner{ + padding:0; + padding-right:var(--slds-c-card-body-spacing-inline-end, var(--sds-c-card-body-spacing-inline-end, var(--slds-c-card-body-spacing-inline, var(--sds-c-card-body-spacing-inline, 1rem)))); + padding-left:var(--slds-c-card-body-spacing-inline-start, var(--sds-c-card-body-spacing-inline-start, var(--slds-c-card-body-spacing-inline, var(--sds-c-card-body-spacing-inline, 1rem)))); } -.slds-gutters_x-small{ - margin-right:-0.5rem; - margin-left:-0.5rem; +.slds-tabs_card .slds-card_boundary .slds-card__footer, +.slds-tabs_card.slds-tabs_card .slds-card_boundary .slds-card__footer, +.slds-card-wrapper .slds-card_boundary .slds-card__footer{ + padding-top:var(--slds-c-card-footer-spacing-block-start, var(--sds-c-card-footer-spacing-block-start, var(--slds-c-card-footer-spacing-block, var(--sds-c-card-footer-spacing-block, 0.75rem)))); + padding-right:var(--slds-c-card-footer-spacing-inline-end, var(--sds-c-card-footer-spacing-inline-end, var(--slds-c-card-footer-spacing-inline, var(--sds-c-card-footer-spacing-inline, 1rem)))); + padding-bottom:var(--slds-c-card-footer-spacing-block-end, var(--sds-c-card-footer-spacing-block-end, var(--slds-c-card-footer-spacing-block, var(--sds-c-card-footer-spacing-block, 0.75rem)))); + padding-left:var(--slds-c-card-footer-spacing-inline-start, var(--sds-c-card-footer-spacing-inline-start, var(--slds-c-card-footer-spacing-inline, var(--sds-c-card-footer-spacing-inline, 1rem)))); } -.slds-gutters_x-small .slds-col{ + +.slds-tabs_card .slds-page-header, +.slds-card .slds-page-header{ + border:0; + -webkit-box-shadow:none; + box-shadow:none; + border-radius:0.25rem; +} + +/* Checkbox */ + +.slds-checkbox.slds-checkbox_stacked .slds-checkbox__label{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + -webkit-box-orient:vertical; + -webkit-box-direction:normal; + -ms-flex-direction:column; + flex-direction:column; + -webkit-box-align:start; + -ms-flex-align:start; + align-items:flex-start; + } + .slds-checkbox.slds-checkbox_stacked .slds-form-element__label{ + font-size:0.75rem; + } + .slds-checkbox.slds-checkbox_stacked .slds-checkbox_faux{ + -webkit-box-ordinal-group:2; + -ms-flex-order:1; + order:1; + margin-bottom:1px; + } + .slds-checkbox.slds-checkbox_stacked .slds-required{ + float:left; + } + .slds-checkbox{ + display:inline-block; + position:relative; + } + .slds-checkbox .slds-checkbox_faux, + .slds-checkbox .slds-checkbox--faux{ + width:1rem; + height:1rem; + display:inline-block; + position:relative; + vertical-align:middle; + border-radius:var(--sds-c-checkbox-radius-border, 0.125rem); + border-width:1px; + border-style:solid; + border-color:var(--sds-c-checkbox-color-border, #dddbda); + background-color:var(--sds-c-checkbox-color-background, white); + -webkit-box-shadow:var(--sds-c-checkbox-shadow); + box-shadow:var(--sds-c-checkbox-shadow); + -webkit-transition:border 0.1s linear, background-color 0.1s linear; + transition:border 0.1s linear, background-color 0.1s linear; + } + .slds-checkbox .slds-checkbox__label .slds-form-element__label{ + display:inline; + vertical-align:middle; + font-size:0.8125rem; + } + .slds-checkbox [type=checkbox]{ + width:1px; + height:1px; + border:0; + clip:rect(0 0 0 0); + margin:-1px; + overflow:hidden; + padding:0; + position:absolute; + pointer-events:auto; + } + .slds-checkbox [type=checkbox]:checked + .slds-checkbox_faux, .slds-checkbox [type=checkbox]:checked + .slds-checkbox--faux, .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox_faux, .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox--faux, .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox_faux, .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox--faux{ + border-color:var(--sds-c-checkbox-color-border-checked, var(--sds-c-checkbox-color-border, #dddbda)); + background-color:var(--sds-c-checkbox-color-background-checked, var(--sds-c-checkbox-color-background, white)); + } + .slds-checkbox [type=checkbox]:checked + .slds-checkbox_faux:after, .slds-checkbox [type=checkbox]:checked + .slds-checkbox--faux:after, .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox_faux:after, .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox--faux:after, .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox_faux:after, .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox--faux:after{ + display:block; + content:""; + height:0.25rem; + width:0.5rem; + position:absolute; + top:50%; + /*! @noflip */ + left:50%; + -webkit-transform:translate3d(-50%, -50%, 0) rotate(-45deg); + transform:translate3d(-50%, -50%, 0) rotate(-45deg); + border-bottom:2px solid var(--sds-c-checkbox-mark-color-foreground, #0176d3); + /*! @noflip */ + border-left:2px solid var(--sds-c-checkbox-mark-color-foreground, #0176d3); + } + .slds-checkbox [type=checkbox]:focus + .slds-checkbox_faux, + .slds-checkbox [type=checkbox]:focus + .slds-checkbox--faux, + .slds-checkbox [type=checkbox]:focus ~ .slds-checkbox_faux, + .slds-checkbox [type=checkbox]:focus ~ .slds-checkbox--faux, + .slds-checkbox [type=checkbox]:focus + .slds-checkbox__label .slds-checkbox_faux, + .slds-checkbox [type=checkbox]:focus + .slds-checkbox__label .slds-checkbox--faux{ + border-color:var(--sds-c-checkbox-color-border-focus, #1b96ff); + -webkit-box-shadow:var(--sds-c-checkbox-shadow-focus, 0 0 3px #0176d3); + box-shadow:var(--sds-c-checkbox-shadow-focus, 0 0 3px #0176d3); + } + .slds-checkbox [type=checkbox]:focus:checked > .slds-checkbox_faux, .slds-checkbox [type=checkbox]:focus:checked > .slds-checkbox--faux, .slds-checkbox [type=checkbox]:focus:checked ~ .slds-checkbox_faux, .slds-checkbox [type=checkbox]:focus:checked ~ .slds-checkbox--faux, .slds-checkbox [type=checkbox]:focus:checked + .slds-checkbox__label .slds-checkbox_faux, .slds-checkbox [type=checkbox]:focus:checked + .slds-checkbox__label .slds-checkbox--faux{ + border-color:var(--sds-c-checkbox-color-border-focus, #1b96ff); + } + .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox_faux, .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox--faux, .slds-checkbox [type=checkbox]:indeterminate ~ .slds-checkbox_faux, .slds-checkbox [type=checkbox]:indeterminate ~ .slds-checkbox--faux, .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox__label .slds-checkbox_faux, .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox__label .slds-checkbox--faux{ + border-color:var(--sds-c-checkbox-color-border-checked, var(--sds-c-checkbox-color-border, #dddbda)); + background-color:var(--sds-c-checkbox-color-background-checked, var(--sds-c-checkbox-color-background, white)); + } + .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox_faux:after, .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox--faux:after, .slds-checkbox [type=checkbox]:indeterminate ~ .slds-checkbox_faux:after, .slds-checkbox [type=checkbox]:indeterminate ~ .slds-checkbox--faux:after, .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox__label .slds-checkbox_faux:after, .slds-checkbox [type=checkbox]:indeterminate + .slds-checkbox__label .slds-checkbox--faux:after{ + content:""; + display:block; + position:absolute; + top:50%; + /*! @noflip */ + left:50%; + width:0.5rem; + height:2px; + border:0; + -webkit-transform:translate3d(-50%, -50%, 0); + transform:translate3d(-50%, -50%, 0); + background:var(--sds-c-checkbox-mark-color-foreground, #0176d3); + } + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox_faux, + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox--faux, + .slds-checkbox [type=checkbox][disabled] ~ .slds-checkbox_faux, + .slds-checkbox [type=checkbox][disabled] ~ .slds-checkbox--faux, + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox__label .slds-checkbox_faux, + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox__label .slds-checkbox--faux{ + border-color:#c9c7c5; + background-color:#ecebea; + } + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox_faux:after, + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox--faux:after, + .slds-checkbox [type=checkbox][disabled] ~ .slds-checkbox_faux:after, + .slds-checkbox [type=checkbox][disabled] ~ .slds-checkbox--faux:after, + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox__label .slds-checkbox_faux:after, + .slds-checkbox [type=checkbox][disabled] + .slds-checkbox__label .slds-checkbox--faux:after{ + border-color:#969492; + } + + .slds-has-error .slds-checkbox [type=checkbox] + .slds-checkbox_faux, + .slds-has-error .slds-checkbox [type=checkbox] + .slds-checkbox--faux, + .slds-has-error .slds-checkbox [type=checkbox] ~ .slds-checkbox_faux, + .slds-has-error .slds-checkbox [type=checkbox] ~ .slds-checkbox--faux, + .slds-has-error .slds-checkbox [type=checkbox] + .slds-checkbox__label .slds-checkbox_faux, + .slds-has-error .slds-checkbox [type=checkbox] + .slds-checkbox__label .slds-checkbox--faux{ + border-color:#ea001e; + border-width:2px; + } + .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox_faux, .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox--faux, .slds-has-error .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox_faux, .slds-has-error .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox--faux, .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox_faux, .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox--faux{ + border-color:#ea001e; + } + .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox_faux:after, .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox--faux:after, .slds-has-error .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox_faux:after, .slds-has-error .slds-checkbox [type=checkbox]:checked ~ .slds-checkbox--faux:after, .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox_faux:after, .slds-has-error .slds-checkbox [type=checkbox]:checked + .slds-checkbox__label .slds-checkbox--faux:after{ + border-color:#fe5c4c; + } + + .slds-form-element .slds-checkbox [type=checkbox] + .slds-checkbox_faux, + .slds-form-element .slds-checkbox [type=checkbox] + .slds-checkbox--faux, + .slds-form-element .slds-checkbox [type=checkbox] ~ .slds-checkbox_faux, + .slds-form-element .slds-checkbox [type=checkbox] ~ .slds-checkbox--faux, + .slds-form-element .slds-checkbox [type=checkbox] + .slds-checkbox__label .slds-checkbox_faux, + .slds-form-element .slds-checkbox [type=checkbox] + .slds-checkbox__label .slds-checkbox--faux{ + margin-right:0.5rem; + } + .slds-checkbox_standalone{ + pointer-events:none; + } + .slds-checkbox_standalone [type=checkbox]{ + width:1rem; + height:1rem; + margin:0; + clip:auto; + opacity:0; + } + .slds-checkbox_standalone .slds-checkbox_faux{ + display:block; + } + .slds-checkbox_toggle, + .slds-checkbox--toggle{ + width:100%; + } + .slds-checkbox_toggle .slds-checkbox_faux, + .slds-checkbox_toggle .slds-checkbox--faux, + .slds-checkbox--toggle .slds-checkbox_faux, + .slds-checkbox--toggle .slds-checkbox--faux{ + display:block; + position:relative; + width:3rem; + height:1.5rem; + border-width:1px; + border-style:solid; + border-color:var(--sds-c-checkbox-toggle-color-border, #b0adab); + padding:0.125rem; + background-color:var(--sds-c-checkbox-toggle-color-background, #b0adab); + border-radius:var(--sds-c-checkbox-toggle-radius-border, 15rem); + -webkit-box-shadow:var(--sds-c-checkbox-toggle-shadow); + box-shadow:var(--sds-c-checkbox-toggle-shadow); + -webkit-transition:background-color 0.2s cubic-bezier(0.75, 0, 0.08, 1); + transition:background-color 0.2s cubic-bezier(0.75, 0, 0.08, 1); + } + .slds-checkbox_toggle .slds-checkbox_faux:hover, .slds-checkbox_toggle .slds-checkbox_faux:focus, + .slds-checkbox_toggle .slds-checkbox--faux:hover, + .slds-checkbox_toggle .slds-checkbox--faux:focus, + .slds-checkbox--toggle .slds-checkbox_faux:hover, + .slds-checkbox--toggle .slds-checkbox_faux:focus, + .slds-checkbox--toggle .slds-checkbox--faux:hover, + .slds-checkbox--toggle .slds-checkbox--faux:focus{ + cursor:pointer; + background-color:var(--sds-c-checkbox-toggle-color-background-hover, #969492); + } + .slds-checkbox_toggle .slds-checkbox_faux:after, + .slds-checkbox_toggle .slds-checkbox--faux:after, + .slds-checkbox--toggle .slds-checkbox_faux:after, + .slds-checkbox--toggle .slds-checkbox--faux:after{ + content:""; + position:absolute; + top:1px; + left:1px; + width:1.25rem; + height:1.25rem; + background-color:var(--sds-c-checkbox-toggle-switch-color-background, white); + border-radius:var(--sds-c-checkbox-toggle-radius-border, 15rem); + } + .slds-checkbox_toggle [type=checkbox], + .slds-checkbox--toggle [type=checkbox]{ + width:1px; + height:1px; + border:0; + clip:rect(0 0 0 0); + margin:-1px; + overflow:hidden; + padding:0; + position:absolute; + } + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox_faux_container, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox--faux_container, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox_faux_container, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox--faux_container{ + font-size:0.625rem; + color:#3e3e3c; + } + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox_off, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox--off, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox_off, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox--off, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox_off, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox--off, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox_off, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox--off{ + display:block; + } + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox_on, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox--on, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox_on, + .slds-checkbox_toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox--on, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox_on, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox_faux_container .slds-checkbox--on, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox_on, + .slds-checkbox--toggle [type=checkbox] + .slds-checkbox--faux_container .slds-checkbox--on{ + display:none; + } + .slds-checkbox_toggle [type=checkbox]:focus + .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:focus + .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox]:focus ~ .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:focus ~ .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox]:focus + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:focus + .slds-checkbox--faux_container .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:focus + .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:focus + .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:focus ~ .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:focus ~ .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:focus + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:focus + .slds-checkbox--faux_container .slds-checkbox--faux{ + background-color:var(--sds-c-checkbox-toggle-color-background-focus, #969492); + border-color:var(--sds-c-checkbox-toggle-color-border-focus, #1b96ff); + -webkit-box-shadow:var(--sds-c-checkbox-toggle-shadow-focus, 0 0 3px #0176d3); + box-shadow:var(--sds-c-checkbox-toggle-shadow-focus, 0 0 3px #0176d3); + } + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_off, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--off, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_off, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--off{ + display:none; + } + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_on, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--on, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_on, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--on{ + display:block; + } + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux{ + border-color:var(--sds-c-checkbox-toggle-color-border-checked, #0176d3); + background-color:var(--sds-c-checkbox-toggle-color-background-checked, #0176d3); + } + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux:hover, .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux:focus, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux:hover, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux:focus, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox_faux:hover, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox_faux:focus, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox--faux:hover, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox--faux:focus, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:hover, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:focus, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:hover, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:focus, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux:hover, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux:focus, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux:hover, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux:focus, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox_faux:hover, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox_faux:focus, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox--faux:hover, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox--faux:focus, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:hover, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:focus, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:hover, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:focus{ + background-color:var(--sds-c-checkbox-toggle-color-background-checked-hover, #014486); + } + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux:before, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux:before, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox_faux:before, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox--faux:before, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:before, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:before, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux:before, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux:before, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox_faux:before, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox--faux:before, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:before, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:before{ + content:""; + position:absolute; + top:1px; + right:1px; + width:1.25rem; + height:1.25rem; + background-color:var(--sds-c-checkbox-toggle-switch-color-background-checked, var(--sds-c-checkbox-toggle-switch-color-background, white)); + border-radius:var(--sds-c-checkbox-toggle-radius-border, 15rem); + -webkit-transition:-webkit-transform 0.2s cubic-bezier(0.75, 0, 0.08, 1); + transition:-webkit-transform 0.2s cubic-bezier(0.75, 0, 0.08, 1); + transition:transform 0.2s cubic-bezier(0.75, 0, 0.08, 1); + transition:transform 0.2s cubic-bezier(0.75, 0, 0.08, 1), -webkit-transform 0.2s cubic-bezier(0.75, 0, 0.08, 1); + } + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux:after, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox]:checked ~ .slds-checkbox--faux:after, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox]:checked ~ .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:after{ + content:" "; + position:absolute; + top:0.25rem; + left:0.6rem; + height:0.7rem; + width:0.45rem; + border-bottom-width:2px; + border-bottom-style:solid; + border-bottom-color:var(--sds-c-checkbox-toggle-mark-color-foreground, white); + /*! @noflip */ + border-right-width:2px; + border-right-style:solid; + border-right-color:var(--sds-c-checkbox-toggle-mark-color-foreground, white); + border-radius:0; + background-color:transparent; + -webkit-transform:rotate(45deg); + transform:rotate(45deg); + } + .slds-checkbox_toggle [type=checkbox]:checked:focus + .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:checked:focus + .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox]:checked:focus ~ .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:checked:focus ~ .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox]:checked:focus + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox]:checked:focus + .slds-checkbox--faux_container .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:checked:focus + .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:checked:focus + .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:checked:focus ~ .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:checked:focus ~ .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox]:checked:focus + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox]:checked:focus + .slds-checkbox--faux_container .slds-checkbox--faux{ + background-color:var(--sds-c-checkbox-toggle-color-background-checked-focus, #014486); + } + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox--faux, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox--faux, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux{ + background-color:#b0adab; + border-color:#b0adab; + pointer-events:none; + } + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux:after, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox--faux:after, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux:after{ + background-color:#dddbda; + } + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux:hover, .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux:focus, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux:hover, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux:focus, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox_faux:hover, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox_faux:focus, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox--faux:hover, + .slds-checkbox_toggle [type=checkbox][disabled] ~ .slds-checkbox--faux:focus, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux:hover, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux:focus, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux:hover, + .slds-checkbox_toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux:focus, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux:hover, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux:focus, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux:hover, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux:focus, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox_faux:hover, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox_faux:focus, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox--faux:hover, + .slds-checkbox--toggle [type=checkbox][disabled] ~ .slds-checkbox--faux:focus, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux:hover, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox_faux_container .slds-checkbox_faux:focus, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux:hover, + .slds-checkbox--toggle [type=checkbox][disabled] + .slds-checkbox--faux_container .slds-checkbox--faux:focus{ + background-color:#b0adab; + cursor:default; + } + .slds-checkbox_toggle [type=checkbox][disabled]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:before, + .slds-checkbox_toggle [type=checkbox][disabled]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:before, + .slds-checkbox--toggle [type=checkbox][disabled]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:before, + .slds-checkbox--toggle [type=checkbox][disabled]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:before{ + background-color:#dddbda; + } + .slds-checkbox_toggle [type=checkbox][disabled]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:after, + .slds-checkbox_toggle [type=checkbox][disabled]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:after, + .slds-checkbox--toggle [type=checkbox][disabled]:checked + .slds-checkbox_faux_container .slds-checkbox_faux:after, + .slds-checkbox--toggle [type=checkbox][disabled]:checked + .slds-checkbox--faux_container .slds-checkbox--faux:after{ + background-color:transparent; + } + .slds-checkbox_add-button, + .slds-checkbox--add-button{ + } + .slds-checkbox_add-button .slds-checkbox_faux, + .slds-checkbox_add-button .slds-checkbox--faux, + .slds-checkbox--add-button .slds-checkbox_faux, + .slds-checkbox--add-button .slds-checkbox--faux{ + width:2rem; + height:2rem; + position:relative; + display:inline-block; + border:1px solid #dddbda; + border-radius:0.25rem; + background-color:white; + cursor:pointer; + } + .slds-checkbox_add-button .slds-checkbox_faux:before, .slds-checkbox_add-button .slds-checkbox_faux:after, + .slds-checkbox_add-button .slds-checkbox--faux:before, + .slds-checkbox_add-button .slds-checkbox--faux:after, + .slds-checkbox--add-button .slds-checkbox_faux:before, + .slds-checkbox--add-button .slds-checkbox_faux:after, + .slds-checkbox--add-button .slds-checkbox--faux:before, + .slds-checkbox--add-button .slds-checkbox--faux:after{ + content:""; + position:absolute; + top:0; + left:0; + right:0; + bottom:0; + height:0.875rem; + width:0.125rem; + margin:auto; + background:#0176d3; + } + .slds-checkbox_add-button .slds-checkbox_faux:after, + .slds-checkbox_add-button .slds-checkbox--faux:after, + .slds-checkbox--add-button .slds-checkbox_faux:after, + .slds-checkbox--add-button .slds-checkbox--faux:after{ + width:0.875rem; + height:0.125rem; + } + .slds-checkbox_add-button .slds-checkbox_faux:hover:not([disabled]), .slds-checkbox_add-button .slds-checkbox_faux:focus:not([disabled]), + .slds-checkbox_add-button .slds-checkbox--faux:hover:not([disabled]), + .slds-checkbox_add-button .slds-checkbox--faux:focus:not([disabled]), + .slds-checkbox--add-button .slds-checkbox_faux:hover:not([disabled]), + .slds-checkbox--add-button .slds-checkbox_faux:focus:not([disabled]), + .slds-checkbox--add-button .slds-checkbox--faux:hover:not([disabled]), + .slds-checkbox--add-button .slds-checkbox--faux:focus:not([disabled]){ + border:1px solid #dddbda; + background-color:#fafaf9; + } + .slds-checkbox_add-button .slds-checkbox_faux:active, + .slds-checkbox_add-button .slds-checkbox--faux:active, + .slds-checkbox--add-button .slds-checkbox_faux:active, + .slds-checkbox--add-button .slds-checkbox--faux:active{ + background-color:#f3f2f2; + } + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox--faux, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox--faux, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox--faux, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox--faux{ + border-color:transparent; + background:#014486; + } + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox_faux:before, .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox_faux:after, + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox--faux:before, + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox--faux:after, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox_faux:before, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox_faux:after, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox--faux:before, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox--faux:after, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox_faux:before, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox_faux:after, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox--faux:before, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox--faux:after, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox_faux:before, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox_faux:after, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox--faux:before, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox--faux:after{ + background:white; + } + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox_faux:before, + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox--faux:before, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox_faux:before, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox--faux:before, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox_faux:before, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox--faux:before, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox_faux:before, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox--faux:before{ + left:0.3125rem; + width:0.125rem; + height:1rem; + -webkit-transform:rotate(40deg); + transform:rotate(40deg); + } + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox_faux:after, + .slds-checkbox_add-button [type=checkbox]:checked ~ .slds-checkbox--faux:after, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox_faux:after, + .slds-checkbox_add-button [type=checkbox]:checked + .slds-checkbox--faux:after, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox_faux:after, + .slds-checkbox--add-button [type=checkbox]:checked ~ .slds-checkbox--faux:after, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox_faux:after, + .slds-checkbox--add-button [type=checkbox]:checked + .slds-checkbox--faux:after{ + top:0.3125rem; + left:-0.625rem; + width:0.5625rem; + height:0.125rem; + -webkit-transform:rotate(40deg); + transform:rotate(40deg); + } + .slds-checkbox_add-button [type=checkbox]:focus ~ .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox]:focus ~ .slds-checkbox--faux, + .slds-checkbox_add-button [type=checkbox]:focus + .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox]:focus + .slds-checkbox--faux, + .slds-checkbox--add-button [type=checkbox]:focus ~ .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox]:focus ~ .slds-checkbox--faux, + .slds-checkbox--add-button [type=checkbox]:focus + .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox]:focus + .slds-checkbox--faux{ + outline:0; + -webkit-box-shadow:0 0 3px #0176d3; + box-shadow:0 0 3px #0176d3; + border-color:#1b96ff; + } + .slds-checkbox_add-button [type=checkbox][disabled] ~ .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox][disabled] ~ .slds-checkbox--faux, + .slds-checkbox_add-button [type=checkbox][disabled] + .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox][disabled] + .slds-checkbox--faux, + .slds-checkbox--add-button [type=checkbox][disabled] ~ .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox][disabled] ~ .slds-checkbox--faux, + .slds-checkbox--add-button [type=checkbox][disabled] + .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox][disabled] + .slds-checkbox--faux{ + background-color:#f3f2f2; + border-color:rgba(0, 0, 0, 0); + color:white; + cursor:default; + } + .slds-checkbox_add-button [type=checkbox][disabled] ~ .slds-checkbox_faux:before, .slds-checkbox_add-button [type=checkbox][disabled] ~ .slds-checkbox_faux:after, + .slds-checkbox_add-button [type=checkbox][disabled] ~ .slds-checkbox--faux:before, + .slds-checkbox_add-button [type=checkbox][disabled] ~ .slds-checkbox--faux:after, + .slds-checkbox_add-button [type=checkbox][disabled] + .slds-checkbox_faux:before, + .slds-checkbox_add-button [type=checkbox][disabled] + .slds-checkbox_faux:after, + .slds-checkbox_add-button [type=checkbox][disabled] + .slds-checkbox--faux:before, + .slds-checkbox_add-button [type=checkbox][disabled] + .slds-checkbox--faux:after, + .slds-checkbox--add-button [type=checkbox][disabled] ~ .slds-checkbox_faux:before, + .slds-checkbox--add-button [type=checkbox][disabled] ~ .slds-checkbox_faux:after, + .slds-checkbox--add-button [type=checkbox][disabled] ~ .slds-checkbox--faux:before, + .slds-checkbox--add-button [type=checkbox][disabled] ~ .slds-checkbox--faux:after, + .slds-checkbox--add-button [type=checkbox][disabled] + .slds-checkbox_faux:before, + .slds-checkbox--add-button [type=checkbox][disabled] + .slds-checkbox_faux:after, + .slds-checkbox--add-button [type=checkbox][disabled] + .slds-checkbox--faux:before, + .slds-checkbox--add-button [type=checkbox][disabled] + .slds-checkbox--faux:after{ + background:#969492; + } + .slds-checkbox_add-button [type=checkbox][disabled]:checked ~ .slds-checkbox_faux, + .slds-checkbox_add-button [type=checkbox][disabled]:checked + .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox][disabled]:checked ~ .slds-checkbox_faux, + .slds-checkbox--add-button [type=checkbox][disabled]:checked + .slds-checkbox_faux{ + background-color:white; + } + .slds-checkbox-button{ + width:2rem; + height:2rem; + display:-webkit-inline-box; + display:-ms-inline-flexbox; + display:inline-flex; + -webkit-box-align:center; + -ms-flex-align:center; + align-items:center; + -webkit-box-pack:center; + -ms-flex-pack:center; + justify-content:center; + border:1px solid #dddbda; + border-radius:0.25rem; + color:#014486; + cursor:pointer; + } + .slds-checkbox-button_is-checked{ + background-color:#014486; + border-color:transparent; + color:white; + } + .slds-checkbox-button_is-disabled{ + background-color:white; + border-color:#dddbda; + color:#dddbda; + cursor:default; + } + .slds-checkbox-button_is-disabled.slds-checkbox-button_is-checked{ + background-color:#f3f2f2; + border-color:rgba(0, 0, 0, 0); + color:white; + } + .slds-checkbox-button_is-focused{ + outline:0; + -webkit-box-shadow:0 0 3px #0176d3; + box-shadow:0 0 3px #0176d3; + border-color:#1b96ff; + } + .slds-checkbox_button-group, + .slds-checkbox--button-group{ + display:-webkit-inline-box; + display:-ms-inline-flexbox; + display:inline-flex; + background-color:white; + border:1px solid #dddbda; + border-radius:0.25rem; + } + .slds-checkbox_button, + .slds-checkbox--button{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + border:0; + border-radius:0; + background-clip:padding-box; + } + .slds-checkbox_button .slds-checkbox_faux, + .slds-checkbox_button .slds-checkbox--faux, + .slds-checkbox--button .slds-checkbox_faux, + .slds-checkbox--button .slds-checkbox--faux{ + padding-left:1rem; + padding-right:1rem; + text-align:center; + vertical-align:middle; + position:relative; + background-color:white; + -webkit-transition:border 0.1s linear, background-color 0.1s linear; + transition:border 0.1s linear, background-color 0.1s linear; + } + .slds-checkbox_button .slds-checkbox_faux:hover, .slds-checkbox_button .slds-checkbox_faux:focus, + .slds-checkbox_button .slds-checkbox--faux:hover, + .slds-checkbox_button .slds-checkbox--faux:focus, + .slds-checkbox--button .slds-checkbox_faux:hover, + .slds-checkbox--button .slds-checkbox_faux:focus, + .slds-checkbox--button .slds-checkbox--faux:hover, + .slds-checkbox--button .slds-checkbox--faux:focus{ + cursor:pointer; + background-color:#fafaf9; + } + .slds-checkbox_button .slds-checkbox_button__label .slds-checkbox_faux, + .slds-checkbox_button .slds-checkbox--button__label .slds-checkbox--faux, + .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--button__label .slds-checkbox--faux, + .slds-checkbox--button .slds-checkbox_button__label .slds-checkbox_faux, + .slds-checkbox--button .slds-checkbox--button__label .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--button__label .slds-checkbox--faux{ + background-color:transparent; + } + .slds-checkbox_button + .slds-checkbox_button, + .slds-checkbox_button + .slds-checkbox--button, + .slds-checkbox--button + .slds-checkbox_button, + .slds-checkbox--button + .slds-checkbox--button{ + border-left:1px solid #dddbda; + border-radius:0; + margin:0; + } + .slds-checkbox_button:first-child > .slds-checkbox_faux, .slds-checkbox_button:first-child > .slds-checkbox--faux, .slds-checkbox_button:first-child > .slds-checkbox_button__label, .slds-checkbox_button:first-child > .slds-checkbox--button__label, + .slds-checkbox--button:first-child > .slds-checkbox_faux, + .slds-checkbox--button:first-child > .slds-checkbox--faux, + .slds-checkbox--button:first-child > .slds-checkbox_button__label, + .slds-checkbox--button:first-child > .slds-checkbox--button__label{ + border-radius:0.25rem 0 0 0.25rem; + } + .slds-checkbox_button:last-child > .slds-checkbox_faux, .slds-checkbox_button:last-child > .slds-checkbox--faux, + .slds-checkbox_button .slds-button_last > .slds-checkbox_faux, + .slds-checkbox_button .slds-button--last > .slds-checkbox--faux, .slds-checkbox_button:last-child > .slds-checkbox_button__label, .slds-checkbox_button:last-child > .slds-checkbox--button__label, + .slds-checkbox--button:last-child > .slds-checkbox_faux, + .slds-checkbox--button:last-child > .slds-checkbox--faux, + .slds-checkbox--button .slds-button_last > .slds-checkbox_faux, + .slds-checkbox--button .slds-button--last > .slds-checkbox--faux, + .slds-checkbox--button:last-child > .slds-checkbox_button__label, + .slds-checkbox--button:last-child > .slds-checkbox--button__label{ + border-radius:0 0.25rem 0.25rem 0; + } + .slds-checkbox_button [type=checkbox], + .slds-checkbox--button [type=checkbox]{ + width:1px; + height:1px; + border:0; + clip:rect(0 0 0 0); + margin:-1px; + overflow:hidden; + padding:0; + position:absolute; + } + .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox_faux, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--faux, .slds-checkbox_button [type=checkbox]:checked ~ .slds-checkbox_faux, .slds-checkbox_button [type=checkbox]:checked ~ .slds-checkbox--faux, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox_button__label, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--button__label, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox]:checked ~ .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox]:checked ~ .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox_button__label, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--button__label{ + background-color:#0176d3; + color:white; + } + .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox_faux:hover, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox_faux:focus, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--faux:hover, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--faux:focus, .slds-checkbox_button [type=checkbox]:checked ~ .slds-checkbox_faux:hover, .slds-checkbox_button [type=checkbox]:checked ~ .slds-checkbox_faux:focus, .slds-checkbox_button [type=checkbox]:checked ~ .slds-checkbox--faux:hover, .slds-checkbox_button [type=checkbox]:checked ~ .slds-checkbox--faux:focus, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox_button__label:hover, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox_button__label:focus, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--button__label:hover, .slds-checkbox_button [type=checkbox]:checked + .slds-checkbox--button__label:focus, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox_faux:hover, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox_faux:focus, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--faux:hover, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--faux:focus, + .slds-checkbox--button [type=checkbox]:checked ~ .slds-checkbox_faux:hover, + .slds-checkbox--button [type=checkbox]:checked ~ .slds-checkbox_faux:focus, + .slds-checkbox--button [type=checkbox]:checked ~ .slds-checkbox--faux:hover, + .slds-checkbox--button [type=checkbox]:checked ~ .slds-checkbox--faux:focus, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox_button__label:hover, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox_button__label:focus, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--button__label:hover, + .slds-checkbox--button [type=checkbox]:checked + .slds-checkbox--button__label:focus{ + background-color:#014486; + } + .slds-checkbox_button [type=checkbox]:focus + .slds-checkbox_faux, .slds-checkbox_button [type=checkbox]:focus + .slds-checkbox--faux, .slds-checkbox_button [type=checkbox]:focus ~ .slds-checkbox_faux, .slds-checkbox_button [type=checkbox]:focus ~ .slds-checkbox--faux, .slds-checkbox_button [type=checkbox]:focus + .slds-checkbox_button__label, .slds-checkbox_button [type=checkbox]:focus + .slds-checkbox--button__label, + .slds-checkbox--button [type=checkbox]:focus + .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox]:focus + .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox]:focus ~ .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox]:focus ~ .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox]:focus + .slds-checkbox_button__label, + .slds-checkbox--button [type=checkbox]:focus + .slds-checkbox--button__label{ + outline:0; + -webkit-box-shadow:0 0 3px #0176d3; + box-shadow:0 0 3px #0176d3; + z-index:1; + } + .slds-checkbox_button [type=checkbox][disabled] + .slds-checkbox_faux, .slds-checkbox_button [type=checkbox][disabled] + .slds-checkbox--faux, .slds-checkbox_button [type=checkbox][disabled] ~ .slds-checkbox_faux, .slds-checkbox_button [type=checkbox][disabled] ~ .slds-checkbox--faux, .slds-checkbox_button [type=checkbox][disabled] + .slds-checkbox_button__label, .slds-checkbox_button [type=checkbox][disabled] + .slds-checkbox--button__label, + .slds-checkbox--button [type=checkbox][disabled] + .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox][disabled] + .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox][disabled] ~ .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox][disabled] ~ .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox][disabled] + .slds-checkbox_button__label, + .slds-checkbox--button [type=checkbox][disabled] + .slds-checkbox--button__label{ + background-color:white; + color:#dddbda; + cursor:default; + } + .slds-checkbox_button [type=checkbox][disabled]:checked + .slds-checkbox_faux, .slds-checkbox_button [type=checkbox][disabled]:checked + .slds-checkbox--faux, .slds-checkbox_button [type=checkbox][disabled]:checked ~ .slds-checkbox_faux, .slds-checkbox_button [type=checkbox][disabled]:checked ~ .slds-checkbox--faux, .slds-checkbox_button [type=checkbox][disabled]:checked + .slds-checkbox_button__label, .slds-checkbox_button [type=checkbox][disabled]:checked + .slds-checkbox--button__label, + .slds-checkbox--button [type=checkbox][disabled]:checked + .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox][disabled]:checked + .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox][disabled]:checked ~ .slds-checkbox_faux, + .slds-checkbox--button [type=checkbox][disabled]:checked ~ .slds-checkbox--faux, + .slds-checkbox--button [type=checkbox][disabled]:checked + .slds-checkbox_button__label, + .slds-checkbox--button [type=checkbox][disabled]:checked + .slds-checkbox--button__label{ + background-color:#c9c7c5; + color:white; + cursor:default; + } + +/* ComboBox */ + +.slds-combobox__form-element{ + -webkit-box-flex:1; + -ms-flex:1 1 auto; + flex:1 1 auto; +} + +/* Form Element */ + +.slds-color-picker__custom-inputs .slds-form-element{ + -webkit-box-flex:flex-grow; + -ms-flex:flex-grow; + flex:flex-grow; +} +.slds-color-picker__custom-inputs .slds-form-element:not(:first-child){ + margin-left:0.25rem; +} + +.slds-form-element{ + position:relative; + min-width:0; +} +.slds-form-element__label{ + overflow-wrap:break-word; + word-wrap:break-word; + -webkit-hyphens:auto; + -ms-hyphens:auto; + hyphens:auto; + display:inline-block; + color:var(--slds-g-color-neutral-base-30, #444444); + font-size:0.75rem; padding-right:0.5rem; + padding-top:0.25rem; + margin-bottom:0.125rem; +} +[dir=rtl] .slds-form-element__label{ + /*! @noflip */ + padding-right:0; + /*! @noflip */ padding-left:0.5rem; } -.slds-gutters_small{ - margin-right:-0.75rem; +.slds-form-element__label:empty{ + margin:0; +} +.slds-form-element__control{ + clear:left; + position:relative; +} +[dir=rtl] .slds-form-element__control{ + /*! @noflip */ + clear:right; +} +.slds-form-element__control .slds-radio, +.slds-form-element__control .slds-checkbox{ + display:block; +} +.slds-form-element__icon{ + display:inline-block; + position:relative; + padding-top:0.25rem; + vertical-align:top; + line-height:1; + z-index:1; +} +.slds-form-element__icon .slds-button_icon{ + position:relative; +} +.slds-form-element__help, +.slds-form-element__helper{ + font-size:0.75rem; + margin-top:0.125rem; + display:block; +} +.slds-form-element_edit .slds-form-element__static, +.slds-form-element--edit .slds-form-element__static{ + width:calc(100% - 1.5rem); +} +.slds-form-element_readonly{ + -ms-flex-preferred-size:0%; + flex-basis:0%; + border-bottom:1px solid var(--slds-g-color-border-base-1, #e5e5e5); + margin-bottom:0; +} +.slds-form-element_readonly .slds-form-element__control{ + padding-top:0.125rem; + padding-bottom:0.125rem; +} +.slds-form-element_readonly .slds-form-element__label{ + margin-bottom:0; +} +.slds-form-element__legend{ + font-weight:700; + float:left; +} +[dir=rtl] .slds-form-element__legend{ + /*! @noflip */ + float:right; + /*! @noflip */ + padding-right:0; +} +.slds-form-element__addon{ + display:inline-block; + margin:0 0.5rem; + -ms-flex-item-align:center; + align-self:center; +} +.slds-form-element__static{ + overflow-wrap:break-word; + word-wrap:break-word; + word-break:break-word; + display:inline-block; + font-size:0.875rem; + font-weight:400; + color:var(--slds-g-color-neutral-base-10, #181818); + width:100%; +} +.slds-form-element__static.slds-text-longform *:last-child{ + margin-bottom:0; +} +.slds-form-element__static:empty{ + min-height:calc(1.25rem + 1px); + vertical-align:bottom; +} +.slds-form-element__static--edit{ + width:calc(100% - 1.5rem); +} +.slds-has-error .slds-form-element__help{ + color:var(--slds-g-color-error-base-40, #ea001e); +} +.slds-radio .slds-form-element__label{ + display:inline; + vertical-align:middle; + font-size:0.8125rem; +} +.slds-form-element .slds-radio [type=radio] + .slds-radio_faux, +.slds-form-element .slds-radio [type=radio] + .slds-radio--faux, +.slds-form-element .slds-radio [type=radio] ~ .slds-radio_faux, +.slds-form-element .slds-radio [type=radio] ~ .slds-radio--faux, +.slds-radio [type=radio] + .slds-radio__label .slds-radio_faux, +.slds-radio [type=radio] + .slds-radio__label .slds-radio--faux{ + margin-right:0.5rem; +} +[dir=rtl] .slds-form-element .slds-radio [type=radio] + .slds-radio_faux, +[dir=rtl] .slds-form-element .slds-radio [type=radio] + .slds-radio--faux, +[dir=rtl] .slds-form-element .slds-radio [type=radio] ~ .slds-radio_faux, +[dir=rtl] .slds-form-element .slds-radio [type=radio] ~ .slds-radio--faux, +[dir=rtl] .slds-radio [type=radio] + .slds-radio__label .slds-radio_faux, +[dir=rtl] .slds-radio [type=radio] + .slds-radio__label .slds-radio--faux{ + /*! @noflip */ + margin-right:0; + margin-left:0.5rem; +} +.slds-form_inline .slds-form-element, +.slds-form_inline .slds-form-element__label, +.slds-form_inline .slds-form-element__control, +.slds-form--inline .slds-form-element, +.slds-form--inline .slds-form-element__label, +.slds-form--inline .slds-form-element__control{ + display:block; +} +.slds-form_inline .slds-form-element + .slds-form-element, +.slds-form--inline .slds-form-element + .slds-form-element{ + margin-top:0.75rem; +} +@media (min-width: 30em){ + .slds-form_inline .slds-form-element, +.slds-form--inline .slds-form-element{ + margin-right:0.5rem; + } + .slds-form_inline .slds-form-element + .slds-form-element, +.slds-form--inline .slds-form-element + .slds-form-element{ + margin-top:0; + } + .slds-form_inline .slds-form-element, +.slds-form_inline .slds-form-element__label, +.slds-form_inline .slds-form-element__control, +.slds-form--inline .slds-form-element, +.slds-form--inline .slds-form-element__label, +.slds-form--inline .slds-form-element__control{ + display:inline-block; + vertical-align:middle; + margin-bottom:0; + } +} +.slds-form-element__legend_has-tooltip{ + float:left; +} + +.slds-form_compound .slds-form-element__control, +.slds-form--compound .slds-form-element__control{ + position:relative; +} +.slds-form_compound .slds-form-element__control + .slds-form-element__control, +.slds-form--compound .slds-form-element__control + .slds-form-element__control{ + padding-left:0.5rem; +} +.slds-form_compound, +.slds-form--compound{ + width:100%; +} +.slds-form_compound > .slds-form-element, +.slds-form--compound > .slds-form-element{ + margin-top:var(--slds-c-form-compound-spacing-block-start, var(--slds-c-form-compound-spacing-block, 0)); + margin-bottom:var(--slds-c-form-compound-spacing-block-end, var(--slds-c-form-compound-spacing-block, 0)); + margin-left:var(--slds-c-form-compound-spacing-inline-start, var(--slds-c-form-compound-spacing-inline, 0)); + margin-right:var(--slds-c-form-compound-spacing-inline-end, var(--slds-c-form-compound-spacing-inline, 0)); +} +.slds-form_compound .slds-form-element__row, +.slds-form--compound .slds-form-element__row{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + margin-top:var(--slds-c-form-row-spacing-block-start, var(--slds-c-form-row-spacing-block, 0)); + margin-bottom:var(--slds-c-form-row-spacing-block-end, var(--slds-c-form-row-spacing-block, 0.25rem)); + margin-left:var(--slds-c-form-row-spacing-inline-start, var(--slds-c-form-row-spacing-inline, 0)); + margin-right:var(--slds-c-form-row-spacing-inline-end, var(--slds-c-form-row-spacing-inline, 0)); +} +.slds-form_compound .slds-form-element__row + .slds-form-element__row, +.slds-form--compound .slds-form-element__row + .slds-form-element__row{ + clear:both; +} +.slds-form_compound .slds-form-element__row .slds-form-element, +.slds-form--compound .slds-form-element__row .slds-form-element{ + margin-bottom:0; +} +.slds-form_compound .slds-form-element__row .slds-form-element + .slds-form-element, +.slds-form--compound .slds-form-element__row .slds-form-element + .slds-form-element{ + padding-left:0.5rem; + margin-top:0; +} +.slds-form_compound .slds-form-element__row .slds-form-element__label, +.slds-form--compound .slds-form-element__row .slds-form-element__label{ + padding-top:0; +} +.slds-form-element_address .slds-form-element__row{ + -webkit-box-align:end; + -ms-flex-align:end; + align-items:flex-end; +} +.slds-form-element_stacked, +.slds-form_stacked .slds-form-element, +.slds-form_horizontal .slds-form-element_stacked{ + display:block; +} +.slds-form-element_stacked:not(.slds-form-element_readonly), +.slds-form_stacked .slds-form-element:not(.slds-form-element_readonly), +.slds-form_horizontal .slds-form-element_stacked:not(.slds-form-element_readonly){ + margin-bottom:0.5rem; +} +.slds-form-element_stacked:not(.slds-is-editing), +.slds-form_stacked .slds-form-element:not(.slds-is-editing), +.slds-form_horizontal .slds-form-element_stacked:not(.slds-is-editing){ + padding:0 0.25rem; +} +.slds-form-element_stacked .slds-form-element, +.slds-form_stacked .slds-form-element .slds-form-element, +.slds-form_horizontal .slds-form-element_stacked .slds-form-element{ + padding:0; + margin-bottom:0; +} +.slds-form-element_stacked:not([class*=slds-size]), +.slds-form_stacked .slds-form-element:not([class*=slds-size]), +.slds-form_horizontal .slds-form-element_stacked:not([class*=slds-size]){ + width:100%; + -ms-flex-preferred-size:100%; + flex-basis:100%; +} +.slds-form-element_stacked .slds-checkbox, +.slds-form-element_stacked .slds-radio, +.slds-form_stacked .slds-form-element .slds-checkbox, +.slds-form_stacked .slds-form-element .slds-radio, +.slds-form_horizontal .slds-form-element_stacked .slds-checkbox, +.slds-form_horizontal .slds-form-element_stacked .slds-radio{ + display:block; +} +.slds-form-element_stacked .slds-form-element__label, +.slds-form-element_stacked .slds-form-element__control, +.slds-form_stacked .slds-form-element .slds-form-element__label, +.slds-form_stacked .slds-form-element .slds-form-element__control, +.slds-form_horizontal .slds-form-element_stacked .slds-form-element__label, +.slds-form_horizontal .slds-form-element_stacked .slds-form-element__control{ + border-bottom:0; + padding-left:0; +} +.slds-form-element_stacked .slds-form-element__control, +.slds-form_stacked .slds-form-element .slds-form-element__control, +.slds-form_horizontal .slds-form-element_stacked .slds-form-element__control{ + width:100%; + -ms-flex-preferred-size:100%; + flex-basis:100%; + clear:left; +} +[dir=rtl] .slds-form-element_stacked .slds-form-element__control, +[dir=rtl] .slds-form_stacked .slds-form-element .slds-form-element__control, +[dir=rtl] .slds-form_horizontal .slds-form-element_stacked .slds-form-element__control{ + /*! @noflip */ + clear:right; +} +.slds-form-element_stacked .slds-form-element__icon, +.slds-form_stacked .slds-form-element .slds-form-element__icon, +.slds-form_horizontal .slds-form-element_stacked .slds-form-element__icon{ + float:none; + padding-top:0.25rem; +} +.slds-form-element_horizontal, +.slds-form_horizontal .slds-form-element, +.slds-form_stacked .slds-form-element_horizontal{ + display:block; +} +.slds-form-element_horizontal:not(.slds-form-element_readonly), +.slds-form_horizontal .slds-form-element:not(.slds-form-element_readonly), +.slds-form_stacked .slds-form-element_horizontal:not(.slds-form-element_readonly){ + margin-bottom:0.5rem; +} +.slds-form-element_horizontal:not([class*=slds-size]), +.slds-form_horizontal .slds-form-element:not([class*=slds-size]), +.slds-form_stacked .slds-form-element_horizontal:not([class*=slds-size]){ + width:100%; + -ms-flex-preferred-size:100%; + flex-basis:100%; +} +.slds-form-element_horizontal:not(.slds-is-editing), +.slds-form_horizontal .slds-form-element:not(.slds-is-editing), +.slds-form_stacked .slds-form-element_horizontal:not(.slds-is-editing){ + padding:0.25rem 0.25rem; +} +.slds-form-element_horizontal .slds-form-element, +.slds-form_horizontal .slds-form-element .slds-form-element, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element{ + padding:0; + margin-bottom:0; +} +.slds-form-element_horizontal.slds-is-edited, +.slds-form_horizontal .slds-form-element.slds-is-edited, +.slds-form_stacked .slds-form-element_horizontal.slds-is-edited{ + padding-top:1.25rem; +} +@media (min-width: 48em){ + .slds-form-element_horizontal.slds-form-element_1-col .slds-form-element__label, +.slds-form_horizontal .slds-form-element.slds-form-element_1-col .slds-form-element__label, +.slds-form_stacked .slds-form-element_horizontal.slds-form-element_1-col .slds-form-element__label{ + max-width:calc((50% - 33.333%) - 1.25rem); + } + .slds-form-element_horizontal.slds-form-element_1-col .slds-form-element__control, +.slds-form_horizontal .slds-form-element.slds-form-element_1-col .slds-form-element__control, +.slds-form_stacked .slds-form-element_horizontal.slds-form-element_1-col .slds-form-element__control{ + padding-left:calc((50% - 33.333%) - (0.25rem * 2)); + } +} +@media (min-width: 48em){ + .slds-form-element_horizontal .slds-form-element__label, +.slds-form_horizontal .slds-form-element .slds-form-element__label, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__label{ + float:left; + max-width:calc(33% - 1.25rem); + -ms-flex-preferred-size:calc(33% - 1.25rem); + flex-basis:calc(33% - 1.25rem); + margin-bottom:0; + position:relative; + z-index:1; + } + .slds-form-element_horizontal .slds-form-element__control, +.slds-form_horizontal .slds-form-element .slds-form-element__control, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__control{ + padding-left:33%; + clear:none; + } + .slds-form-element_horizontal .slds-form-element__control .slds-form-element__control, +.slds-form_horizontal .slds-form-element .slds-form-element__control .slds-form-element__control, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__control .slds-form-element__control{ + padding-left:0; + } + .slds-form-element_horizontal .slds-form-element__icon, +.slds-form_horizontal .slds-form-element .slds-form-element__icon, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__icon{ + float:left; + padding-top:0.25rem; + } + .slds-form-element_horizontal .slds-checkbox_standalone, +.slds-form_horizontal .slds-form-element .slds-checkbox_standalone, +.slds-form_stacked .slds-form-element_horizontal .slds-checkbox_standalone{ + padding:0.25rem 0; + } + .slds-form-element_horizontal .slds-checkbox:not(.slds-checkbox_stacked) .slds-form-element__label, +.slds-form-element_horizontal .slds-radio .slds-form-element__label, +.slds-form_horizontal .slds-form-element .slds-checkbox:not(.slds-checkbox_stacked) .slds-form-element__label, +.slds-form_horizontal .slds-form-element .slds-radio .slds-form-element__label, +.slds-form_stacked .slds-form-element_horizontal .slds-checkbox:not(.slds-checkbox_stacked) .slds-form-element__label, +.slds-form_stacked .slds-form-element_horizontal .slds-radio .slds-form-element__label{ + position:relative; + float:none; + max-width:100%; + width:auto; + } + .slds-form-element_horizontal .slds-form-element__row .slds-form-element__label, +.slds-form-element_horizontal .slds-form-element__row .slds-form-element__control, +.slds-form-element_horizontal .slds-dueling-list__column .slds-form-element__label, +.slds-form_horizontal .slds-form-element .slds-form-element__row .slds-form-element__label, +.slds-form_horizontal .slds-form-element .slds-form-element__row .slds-form-element__control, +.slds-form_horizontal .slds-form-element .slds-dueling-list__column .slds-form-element__label, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__row .slds-form-element__label, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__row .slds-form-element__control, +.slds-form_stacked .slds-form-element_horizontal .slds-dueling-list__column .slds-form-element__label{ + width:auto; + max-width:100%; + -ms-flex-preferred-size:auto; + flex-basis:auto; + float:none; + position:relative; + padding-left:0; + margin-bottom:0; + } + .slds-form-element_horizontal .slds-dueling-list, +.slds-form_horizontal .slds-form-element .slds-dueling-list, +.slds-form_stacked .slds-form-element_horizontal .slds-dueling-list{ + clear:none; + } + .slds-form-element_horizontal .slds-input-has-icon_left .slds-input__icon, +.slds-form_horizontal .slds-form-element .slds-input-has-icon_left .slds-input__icon, +.slds-form_stacked .slds-form-element_horizontal .slds-input-has-icon_left .slds-input__icon{ + left:calc(33% + 0.75rem); + } + .slds-form-element_horizontal .slds-input-has-icon_left-right .slds-input__icon_left, +.slds-form_horizontal .slds-form-element .slds-input-has-icon_left-right .slds-input__icon_left, +.slds-form_stacked .slds-form-element_horizontal .slds-input-has-icon_left-right .slds-input__icon_left{ + left:calc(33% + 0.75rem); + } +} +.slds-form-element_horizontal .slds-form-element__help, +.slds-form_horizontal .slds-form-element .slds-form-element__help, +.slds-form_stacked .slds-form-element_horizontal .slds-form-element__help{ + margin-left:33%; +} +.slds-form-element_compound .slds-form-element__row{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + margin-bottom:0.25rem; + margin-left:-0.25rem; + margin-right:-0.25rem; +} +.slds-form-element_compound .slds-form-element__row .slds-form-element__label{ + padding-top:0; +} +.slds-form-element_compound .slds-form-element{ + padding-left:0.25rem; + padding-right:0.25rem; +} +.slds-form-element_address .slds-form-element__row{ + -webkit-box-align:end; + -ms-flex-align:end; + align-items:flex-end; +} + + +/* Grid */ + +.slds-grid{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; +} +.slds-grid_frame, +.slds-grid--frame{ + min-width:100vw; + min-height:100vh; + overflow:hidden; +} +.slds-grid_vertical, +.slds-grid--vertical{ + -webkit-box-orient:vertical; + -webkit-box-direction:normal; + -ms-flex-direction:column; + flex-direction:column; +} +.slds-grid_vertical-reverse, +.slds-grid--vertical-reverse{ + -webkit-box-orient:vertical; + -webkit-box-direction:reverse; + -ms-flex-direction:column-reverse; + flex-direction:column-reverse; +} +.slds-grid_reverse, +.slds-grid--reverse{ + -webkit-box-orient:horizontal; + -webkit-box-direction:reverse; + -ms-flex-direction:row-reverse; + flex-direction:row-reverse; +} +.slds-grid_vertical-align-start, +.slds-grid--vertical-align-start{ + -webkit-box-align:start; + -ms-flex-align:start; + align-items:flex-start; + -ms-flex-line-pack:start; + align-content:flex-start; +} +.slds-grid_vertical-align-center, +.slds-grid--vertical-align-center{ + -webkit-box-align:center; + -ms-flex-align:center; + align-items:center; + -ms-flex-line-pack:center; + align-content:center; +} +.slds-grid_vertical-align-end, +.slds-grid--vertical-align-end{ + -webkit-box-align:end; + -ms-flex-align:end; + align-items:flex-end; + -ms-flex-line-pack:end; + align-content:flex-end; +} + + +/* Gutters */ + +.slds-gutters{ + margin-right:-0.75rem; + margin-left:-0.75rem; +} +.slds-gutters .slds-col{ + padding-right:0.75rem; + padding-left:0.75rem; +} +.slds-gutters_xxx-small{ + margin-right:-0.125rem; + margin-left:-0.125rem; +} +.slds-gutters_xxx-small .slds-col{ + padding-right:0.125rem; + padding-left:0.125rem; +} +.slds-gutters_xx-small{ + margin-right:-0.25rem; + margin-left:-0.25rem; +} +.slds-gutters_xx-small .slds-col{ + padding-right:0.25rem; + padding-left:0.25rem; +} +.slds-gutters_x-small{ + margin-right:-0.5rem; + margin-left:-0.5rem; +} +.slds-gutters_x-small .slds-col{ + padding-right:0.5rem; + padding-left:0.5rem; +} +.slds-gutters_small{ + margin-right:-0.75rem; margin-left:-0.75rem; } .slds-gutters_small .slds-col{ @@ -1197,6 +3124,82 @@ a.slds-button--inverse:focus{ flex:1 1 auto; } +/* Hide / Show */ + +.slds-hide{ + display:none !important; +} +.slds-show{ + display:block; +} +.slds-show_inline-block, +.slds-show--inline-block{ + display:inline-block; +} +.slds-show_inline, +.slds-show--inline{ + display:inline; +}@media (min-width: 320px){ + .slds-hide_x-small, +.slds-hide--x-small{ + display:none !important; + } +} +@media (max-width: 319px){ + .slds-show_x-small, +.slds-show--x-small{ + display:none !important; + } +} +@media (min-width: 480px){ + .slds-hide_small, +.slds-hide--small{ + display:none !important; + } +} +@media (max-width: 479px){ + .slds-show_small, +.slds-show--small{ + display:none !important; + } +} +@media (min-width: 768px){ + .slds-hide_medium, +.slds-hide--medium{ + display:none !important; + } +} +@media (max-width: 767px){ + .slds-show_medium, +.slds-show--medium{ + display:none !important; + } +} +@media (min-width: 1024px){ + .slds-hide_large, +.slds-hide--large{ + display:none !important; + } +} +@media (max-width: 1023px){ + .slds-show_large, +.slds-show--large{ + display:none !important; + } +} +@media (min-width: 1280px){ + .slds-hide_x-large, +.slds-hide--x-large{ + display:none !important; + } +} +@media (max-width: 1279px){ + .slds-show_x-large, +.slds-show--x-large{ + display:none !important; + } +} + /* Icon */ .slds-icon{ @@ -1213,6 +3216,250 @@ a.slds-button--inverse:focus{ background-color:var(--slds-c-icon-color-background, var(--sds-c-icon-color-background, transparent)); } +/* Input */ + +.slds-input-has-icon .slds-input__icon{ + fill:var(--slds-g-color-neutral-base-50, #aeaeae); +} +.slds-input{ + padding-top:0; + padding-right:var(--slds-c-input-spacing-horizontal-end, var(--sds-c-input-spacing-horizontal-end, 1rem)); + padding-bottom:0; + padding-left:var(--slds-c-input-spacing-horizontal-start, var(--sds-c-input-spacing-horizontal-start, 0.75rem)); + width:100%; + min-height:calc(1.875rem + (1px * 2)); + line-height:1.875rem; + border:1px solid var(--slds-c-input-color-border, var(--sds-c-input-color-border, var(--slds-g-color-border-base-4, #c9c9c9))); + border-radius:var(--slds-c-input-radius-border, var(--sds-c-input-radius-border, 0.25rem)); + background-color:var(--slds-c-input-color-background, var(--sds-c-input-color-background, var(--slds-g-color-neutral-base-100, white))); + color:var(--slds-c-input-text-color, var(--sds-c-input-text-color)); + -webkit-box-shadow:var(--slds-c-input-shadow, var(--sds-c-input-shadow)); + box-shadow:var(--slds-c-input-shadow, var(--sds-c-input-shadow)); + -webkit-transition:border 0.1s linear, background-color 0.1s linear; + transition:border 0.1s linear, background-color 0.1s linear; + display:inline-block; +} +.slds-input:focus, .slds-input:active{ + /*! @css-var-fallback border-color */ + --slds-c-input-color-border:var(--slds-c-input-color-border-focus, var(--sds-c-input-color-border-focus, var(--slds-g-color-brand-base-60, #1b96ff))); + /*! @css-var-fallback background-color */ + --slds-c-input-background-color:var(--slds-c-input-color-background-focus, var(--sds-c-input-color-background-focus, var(--slds-g-color-neutral-base-100, white))); + /*! @css-var-fallback color */ + --slds-c-input-text-color:var(--slds-c-input-text-color-focus, var(--sds-c-input-text-color-focus)); + /*! @css-var-fallback box-shadow */ + --slds-c-input-shadow:var(--slds-c-input-shadow-focus, var(--sds-c-input-shadow-focus, 0 0 3px #0176d3)); + outline:0; +} +.slds-input[disabled], .slds-input.slds-is-disabled{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + border-color:var(--slds-g-color-border-base-1, #c9c9c9); + color:var(--slds-g-color-neutral-base-50, #444444); + cursor:not-allowed; + -webkit-user-select:none; + -moz-user-select:none; + -ms-user-select:none; + user-select:none; +} +.slds-input[disabled]:focus, .slds-input[disabled]:active, .slds-input.slds-is-disabled:focus, .slds-input.slds-is-disabled:active{ + -webkit-box-shadow:none; + box-shadow:none; +} +.slds-input[readonly]{ + /*! @css-var-fallback padding-left */ + --slds-c-input-spacing-horizontal-start:0; + /*! @css-var-fallback border-color */ + --slds-c-input-color-border:transparent; + /*! @css-var-fallback background-color */ + --slds-c-input-color-background:transparent; + font-size:0.875rem; + font-weight:400; +} +.slds-input[type=search]::-ms-clear{ + display:none; + width:0; + height:0; +} +.slds-input[type=search]::-webkit-search-decoration, .slds-input[type=search]::-webkit-search-cancel-button, .slds-input[type=search]::-webkit-search-results-button, .slds-input[type=search]::-webkit-search-results-decoration{ + display:none; +} +.slds-input[type=url], .slds-input[type=tel], .slds-input[type=email]{ + direction:ltr; + text-align:left; +} +.slds-input_bare, +.slds-input--bare{ + /*! @css-var-fallback background-color */ + --slds-c-input-color-background:transparent; + /*! @css-var-fallback padding-right */ + --slds-c-input-spacing-horizontal-end:0; + /*! @css-var-fallback padding-left */ + --slds-c-input-spacing-horizontal-start:0.75rem; + /*! @css-var-fallback color */ + --slds-c-input-text-color:var(--slds-g-color-neutral-base-10, #181818); + border:0; +} +.slds-input_bare:focus, .slds-input_bare:active, +.slds-input--bare:focus, +.slds-input--bare:active{ + /*! @css-var-fallback box-shadow */ + --slds-c-input-shadow-focus:none; +} +.slds-input_height, +.slds-input--height{ + min-height:calc(1.875rem + (1px * 2)); +} +.slds-input_faux{ + padding-top:0; + padding-right:var(--slds-c-input-spacing-horizontal-end, var(--sds-c-input-spacing-horizontal-end, 1rem)); + padding-bottom:0; + padding-left:var(--slds-c-input-spacing-horizontal-start, var(--sds-c-input-spacing-horizontal-start, 0.75rem)); + width:100%; + min-height:calc(1.875rem + (1px * 2)); + line-height:1.875rem; + border:1px solid var(--slds-c-input-color-border, var(--sds-c-input-color-border, var(--slds-g-color-border-base-4, #c9c9c9))); + border-radius:var(--slds-c-input-radius-border, var(--sds-c-input-radius-border, 0.25rem)); + background-color:var(--slds-c-input-color-background, var(--sds-c-input-color-background, var(--slds-g-color-neutral-base-100, white))); + color:var(--slds-c-input-text-color, var(--sds-c-input-text-color)); + -webkit-box-shadow:var(--slds-c-input-shadow, var(--sds-c-input-shadow)); + box-shadow:var(--slds-c-input-shadow, var(--sds-c-input-shadow)); + -webkit-transition:border 0.1s linear, background-color 0.1s linear; + transition:border 0.1s linear, background-color 0.1s linear; + display:-webkit-inline-box; + display:-ms-inline-flexbox; + display:inline-flex; + -webkit-box-flex:1; + -ms-flex:1 1 auto; + flex:1 1 auto; + text-align:left; +} +.slds-input_faux.slds-is-disabled{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + border-color:var(--slds-g-color-border-base-1, #c9c9c9); + color:var(--slds-g-color-neutral-base-50, #444444); + cursor:not-allowed; + -webkit-user-select:none; + -moz-user-select:none; + -ms-user-select:none; + user-select:none; +} +.slds-input_faux.slds-is-disabled:focus, .slds-input_faux.slds-is-disabled:active{ + -webkit-box-shadow:none; + box-shadow:none; +} +.slds-input_faux > span:before{ + content:""; + display:inline-block; +} +.slds-input_borders[readonly]{ + /*! @css-var-fallback padding-right */ + --slds-c-input-spacing-horizontal-start:0.75rem; + /*! @css-var-fallback border-color */ + --slds-c-input-color-border:var(--slds-g-color-border-base-4, #c9c9c9); +} +.slds-input-has-icon{ + position:relative; +} +.slds-input-has-icon .slds-input__icon{ + width:0.875rem; + height:0.875rem; + position:absolute; + top:50%; + margin-top:-0.4375rem; + line-height:1; + border:0; + z-index:2; +} +.slds-input-has-icon .slds-input__icon:not(button){ + pointer-events:none; +} +.slds-input-has-icon_left .slds-input__icon, +.slds-input-has-icon--left .slds-input__icon{ + left:0.75rem; +} +.slds-input-has-icon_left .slds-input, +.slds-input-has-icon_left .slds-input_faux, +.slds-input-has-icon_left .slds-input_bare, +.slds-input-has-icon_left .slds-input--bare, +.slds-input-has-icon--left .slds-input, +.slds-input-has-icon--left .slds-input_faux, +.slds-input-has-icon--left .slds-input_bare, +.slds-input-has-icon--left .slds-input--bare{ + /*! @css-var-fallback padding-left */ + --slds-c-input-spacing-horizontal-start:2rem; +} +.slds-input-has-icon_right .slds-input__icon, +.slds-input-has-icon--right .slds-input__icon{ + right:0.75rem; +} +.slds-input-has-icon_right .slds-input, +.slds-input-has-icon_right .slds-input_faux, +.slds-input-has-icon_right .slds-input_bare, +.slds-input-has-icon_right .slds-input--bare, +.slds-input-has-icon--right .slds-input, +.slds-input-has-icon--right .slds-input_faux, +.slds-input-has-icon--right .slds-input_bare, +.slds-input-has-icon--right .slds-input--bare{ + /*! @css-var-fallback padding-right */ + --slds-c-input-spacing-horizontal-end:2rem; +} +.slds-input-has-icon_left-right, +.slds-input-has-icon--left-right{ +} +.slds-input-has-icon_left-right .slds-input__icon_left, +.slds-input-has-icon_left-right .slds-input__icon--left, +.slds-input-has-icon--left-right .slds-input__icon_left, +.slds-input-has-icon--left-right .slds-input__icon--left{ + left:0.75rem; +} +.slds-input-has-icon_left-right .slds-input__icon_right, +.slds-input-has-icon_left-right .slds-input__icon--right, +.slds-input-has-icon--left-right .slds-input__icon_right, +.slds-input-has-icon--left-right .slds-input__icon--right{ + right:0.75rem; +} +.slds-input-has-icon_left-right .slds-input, +.slds-input-has-icon_left-right .slds-input_faux, +.slds-input-has-icon_left-right .slds-input_bare, +.slds-input-has-icon_left-right .slds-input--bare, +.slds-input-has-icon--left-right .slds-input, +.slds-input-has-icon--left-right .slds-input_faux, +.slds-input-has-icon--left-right .slds-input_bare, +.slds-input-has-icon--left-right .slds-input--bare{ + /*! @css-var-fallback padding-left */ + --slds-c-input-spacing-horizontal-start:2rem; + /*! @css-var-fallback padding-right */ + --slds-c-input-spacing-horizontal-end:2rem; +} +.slds-input-has-icon_group-right .slds-input, +.slds-input-has-icon_group-right .slds-input_faux, +.slds-input-has-icon_group-right .slds-input_bare, +.slds-input-has-icon_group-right .slds-input--bare{ + /*! @css-var-fallback padding-right */ + --slds-c-input-spacing-horizontal-end:calc(3rem + 0.5rem); +} +.slds-input__icon-group{ + position:absolute; + height:1rem; + margin-top:-0.5rem; +} +.slds-input__icon-group_right{ + right:0; + top:50%; +} +.slds-input__icon-group_right .slds-input__icon_right, +.slds-input__icon-group_right .slds-input__icon--right{ + right:0.5rem; +} +.slds-input__icon-group_right .slds-input__spinner{ + right:1.5rem; + left:auto; +} +.slds-input-has-fixed-addon{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; +} + /* Margin */ .slds-m-top_none, @@ -1551,7 +3798,7 @@ a.slds-button--inverse:focus{ } -/* Padding */ +/* Padding */ .slds-p-top_none, .slds-p-top--none{ @@ -1886,6 +4133,172 @@ a.slds-button--inverse:focus{ padding:3rem; } +/* Slider */ + +.slds-slider{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + position:relative; +} +.slds-slider__range{ + -moz-appearance:none; + -webkit-appearance:none; + appearance:none; + width:100%; + background:none; + background-color:transparent; + border-radius:0.125rem; +} +.slds-slider__range:focus{ + outline:0; +} +.slds-slider__range::-webkit-slider-thumb{ + -moz-appearance:none; + -webkit-appearance:none; + appearance:none; + width:1rem; + height:1rem; + border-radius:var(--slds-c-slider-thumb-radius-border, var(--sds-c-slider-thumb-radius-border, 50%)); + background:none; + background-color:var(--slds-c-slider-thumb-color-foreground, var(--sds-c-slider-thumb-color-foreground, #0176d3)); + border:0; + -webkit-box-shadow:var(--slds-c-slider-thumb-shadow, var(--sds-c-slider-thumb-shadow, var(--slds-g-color-neutral-base-10, rgba(0, 0, 0, 0.16) 0 2px 3px))); + box-shadow:var(--slds-c-slider-thumb-shadow, var(--sds-c-slider-thumb-shadow, var(--slds-g-color-neutral-base-10, rgba(0, 0, 0, 0.16) 0 2px 3px))); + cursor:pointer; + -webkit-transition:background 0.15s ease-in-out; + transition:background 0.15s ease-in-out; + margin-top:calc(((1rem / 2) - (4px / 2)) * -1); +} +.slds-slider__range::-webkit-slider-thumb:hover{ + background-color:var(--slds-c-slider-thumb-color-foreground-hover, var(--sds-c-slider-thumb-color-foreground-hover, #014486)); +} +.slds-slider__range::-webkit-slider-runnable-track{ + width:100%; + height:4px; + cursor:pointer; + background:none; + background-color:var(--slds-c-slider-track-color-background, var(--sds-c-slider-track-color-background, var(--slds-g-color-neutral-base-95, #f3f3f3))); + border-radius:var(--slds-c-slider-track-radius-border, var(--sds-c-slider-track-radius-border, 0.125rem)); +} +.slds-slider__range::-moz-range-thumb{ + -moz-appearance:none; + -webkit-appearance:none; + appearance:none; + width:1rem; + height:1rem; + border-radius:var(--slds-c-slider-thumb-radius-border, var(--sds-c-slider-thumb-radius-border, 50%)); + background:none; + background-color:var(--slds-c-slider-thumb-color-foreground, var(--sds-c-slider-thumb-color-foreground, #0176d3)); + border:0; + box-shadow:var(--slds-c-slider-thumb-shadow, var(--sds-c-slider-thumb-shadow, var(--slds-g-color-neutral-base-10, rgba(0, 0, 0, 0.16) 0 2px 3px))); + cursor:pointer; + -moz-transition:background 0.15s ease-in-out; + transition:background 0.15s ease-in-out; +} +.slds-slider__range::-moz-range-thumb:hover{ + background-color:var(--slds-c-slider-thumb-color-foreground-hover, var(--sds-c-slider-thumb-color-foreground-hover, #014486)); +} +.slds-slider__range::-moz-range-track{ + width:100%; + height:4px; + cursor:pointer; + background:none; + background-color:var(--slds-c-slider-track-color-background, var(--sds-c-slider-track-color-background, var(--slds-g-color-neutral-base-95, #f3f3f3))); + border-radius:var(--slds-c-slider-track-radius-border, var(--sds-c-slider-track-radius-border, 0.125rem)); +} +.slds-slider__range::-ms-track{ + width:100%; + height:4px; + cursor:pointer; + background:none; + background-color:var(--slds-c-slider-track-color-background, var(--sds-c-slider-track-color-background, var(--slds-g-color-neutral-base-95, #f3f3f3))); + border-radius:var(--slds-c-slider-track-radius-border, var(--sds-c-slider-track-radius-border, 0.125rem)); + border-color:transparent; + color:transparent; + cursor:pointer; +} +.slds-slider__range::-ms-thumb{ + -moz-appearance:none; + -webkit-appearance:none; + appearance:none; + width:1rem; + height:1rem; + border-radius:var(--slds-c-slider-thumb-radius-border, var(--sds-c-slider-thumb-radius-border, 50%)); + background:none; + background-color:var(--slds-c-slider-thumb-color-foreground, var(--sds-c-slider-thumb-color-foreground, #0176d3)); + border:0; + box-shadow:var(--slds-c-slider-thumb-shadow, var(--sds-c-slider-thumb-shadow, var(--slds-g-color-neutral-base-10, rgba(0, 0, 0, 0.16) 0 2px 3px))); + cursor:pointer; + -ms-transition:background 0.15s ease-in-out; + transition:background 0.15s ease-in-out; + margin-top:calc(4px / 4); +} +.slds-slider__range::-ms-thumb:hover{ + background-color:var(--slds-c-slider-thumb-color-foreground-hover, var(--sds-c-slider-thumb-color-foreground-hover, #014486)); +} +.slds-slider__range:focus::-webkit-slider-thumb{ + background-color:var(--slds-c-slider-thumb-color-foreground-focus, var(--sds-c-slider-thumb-color-foreground-focus, #014486)); + -webkit-box-shadow:var(--slds-c-slider-thumb-shadow-focus, var(--sds-c-slider-thumb-shadow-focus, 0 0 3px #0176d3)); + box-shadow:var(--slds-c-slider-thumb-shadow-focus, var(--sds-c-slider-thumb-shadow-focus, 0 0 3px #0176d3)); +} +.slds-slider__range:active::-webkit-slider-thumb{ + background-color:var(--slds-c-slider-thumb-color-foreground-active, var(--sds-c-slider-thumb-color-foreground-active, #014486)); +} +.slds-slider__range:focus::-moz-range-thumb{ + background-color:var(--slds-c-slider-thumb-color-foreground-focus, var(--sds-c-slider-thumb-color-foreground-focus, #014486)); + box-shadow:var(--slds-c-slider-thumb-shadow-focus, var(--sds-c-slider-thumb-shadow-focus, 0 0 3px #0176d3)); +} +.slds-slider__range:active::-moz-range-thumb{ + background-color:var(--slds-c-slider-thumb-color-foreground-active, var(--sds-c-slider-thumb-color-foreground-active, #014486)); +} +.slds-slider__range[disabled]::-webkit-slider-thumb{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + cursor:default; +} +.slds-slider__range[disabled]::-webkit-slider-runnable-track{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + cursor:default; +} +.slds-slider__range[disabled]::-moz-range-thumb{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + cursor:default; +} +.slds-slider__range[disabled]::-moz-range-track{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); +} +.slds-slider__range[disabled]::-ms-thumb{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + cursor:default; +} +.slds-slider__range[disabled]::-ms-track{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); + cursor:default; +} +.slds-slider__value{ + padding:0 0.5rem; +} +.slds-slider-label__label{ + display:block; +} +.slds-slider_vertical{ + height:13.875rem; +} +.slds-slider_vertical .slds-slider__range{ + width:12rem; + height:1rem; + -webkit-transform:rotate(-90deg); + transform:rotate(-90deg); + -webkit-transform-origin:6rem 6rem; + transform-origin:6rem 6rem; +} +.slds-slider_vertical .slds-slider__value{ + position:absolute; + left:0; + bottom:0; + padding:0; +} + /* Size */ .slds-size_1-of-12, @@ -1948,8 +4361,371 @@ a.slds-button--inverse:focus{ width:100%; } -/* Text */ +/* Tabs */ + +@media (min-width: 48em){ + .slds-tabs_default .slds-tabs__item + .slds-tabs__item, +.slds-tabs--default .slds-tabs__item + .slds-tabs__item{ + margin-left:1.5rem; + } +} +.slds-tabs_default .slds-tabs__item > a, +.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:2.5rem; + line-height:2.5rem; + border-bottom:2px solid transparent; + padding:0 0.5rem; + color:var(--slds-g-color-neutral-base-30, #444444); +} +.slds-tabs_default .slds-tabs__item > a:focus, +.slds-tabs--default .slds-tabs__item > a:focus{ + outline:0; +} +@media (min-width: 48em){ + .slds-tabs_default .slds-tabs__item > a, +.slds-tabs--default .slds-tabs__item > a{ + padding:0 1rem; + } +} +.slds-tabs_default .slds-tabs__item > a:hover, .slds-tabs_default .slds-tabs__item > a:focus, +.slds-tabs--default .slds-tabs__item > a:hover, +.slds-tabs--default .slds-tabs__item > a:focus{ + text-decoration:none; + border-color:var(--slds-g-color-brand-base-50, #0176d3); + color:var(--slds-g-color-neutral-base-10, #181818); +} +.slds-tabs_default .slds-tabs__item.slds-active a, +.slds-tabs--default .slds-tabs__item.slds-active a{ + border-color:#1b96ff; + color:var(--slds-g-color-neutral-base-10, #181818); +} +.slds-tabs_default .slds-tabs__item.slds-active a:focus, +.slds-tabs--default .slds-tabs__item.slds-active a:focus{ + color:var(--slds-g-color-brand-base-50, #0176d3); +} +.slds-tabs_default > .slds-tabs__content, +.slds-tabs--default > .slds-tabs__content{ + position:relative; + padding:1rem 0; +} +.slds-tabs_default, +.slds-tabs--default{ + display:block; + width:100%; +} +.slds-tabs_default .slds-tabs__item_overflow, +.slds-tabs_default .slds-tabs__item--overflow, +.slds-tabs--default .slds-tabs__item_overflow, +.slds-tabs--default .slds-tabs__item--overflow{ + overflow:visible; +} +.slds-tabs_default__nav, +.slds-tabs--default__nav{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + -webkit-box-align:start; + -ms-flex-align:start; + align-items:flex-start; + border-bottom-width:var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px)); + border-bottom-style:solid; + border-bottom-color:var(--slds-c-tabs-list-color-border, var(--sds-c-tabs-list-color-border, var(--slds-g-color-border-base-4, #e5e5e5))); +} +.slds-tabs_default__item, +.slds-tabs--default__item{ + color:var(--slds-c-tabs-item-text-color, var(--sds-c-tabs-item-text-color, var(--slds-g-color-neutral-base-30, #444444))); + position:relative; + padding-top:var(--slds-c-tabs-item-spacing-block-start, var(--sds-c-tabs-item-spacing-block-start, var(--sds-c-tabs-item-spacing-block, 0))); + padding-right:var(--slds-c-tabs-item-spacing-inline-end, var(--sds-c-tabs-item-spacing-inline-end, var(--sds-c-tabs-item-spacing-inline, 0.75rem))); + padding-bottom:var(--slds-c-tabs-item-spacing-block-end, var(--sds-c-tabs-item-spacing-block-end, var(--sds-c-tabs-item-spacing-block, 0))); + padding-left:var(--slds-c-tabs-item-spacing-inline-start, var(--sds-c-tabs-item-spacing-inline-start, var(--sds-c-tabs-item-spacing-inline, 0.75rem))); + margin-bottom:calc(var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px)) * -1); +} +.slds-tabs_default__item:after, +.slds-tabs--default__item:after{ + display:block; + content:""; + bottom:0; + left:0; + right:0; + height:0; + position:absolute; +} +.slds-tabs_default__item.slds-active, .slds-tabs_default__item.slds-is-active, +.slds-tabs--default__item.slds-active, +.slds-tabs--default__item.slds-is-active{ + /*! @css-var-fallback color */ + --slds-c-tabs-item-text-color:var(--slds-c-tabs-item-text-color-active, + var(--sds-c-tabs-item-text-color-active, var(--slds-g-color-neutral-base-10, #181818))); +} +.slds-tabs_default__item.slds-active:after, .slds-tabs_default__item.slds-is-active:after, +.slds-tabs--default__item.slds-active:after, +.slds-tabs--default__item.slds-is-active:after{ + background-color:var(--slds-c-tabs-item-color-border-active, var(--sds-c-tabs-item-color-border-active, #1b96ff)); + height:calc(var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px)) + 2px); +} +.slds-tabs_default__item.slds-active .slds-tabs_default__link, +.slds-tabs_default__item.slds-active .slds-tabs--default__link, .slds-tabs_default__item.slds-is-active .slds-tabs_default__link, +.slds-tabs_default__item.slds-is-active .slds-tabs--default__link, +.slds-tabs--default__item.slds-active .slds-tabs_default__link, +.slds-tabs--default__item.slds-active .slds-tabs--default__link, +.slds-tabs--default__item.slds-is-active .slds-tabs_default__link, +.slds-tabs--default__item.slds-is-active .slds-tabs--default__link{ + font-weight:700; +} +.slds-tabs_default__item.slds-active .slds-tabs_default__link:hover, +.slds-tabs_default__item.slds-active .slds-tabs--default__link:hover, .slds-tabs_default__item.slds-is-active .slds-tabs_default__link:hover, +.slds-tabs_default__item.slds-is-active .slds-tabs--default__link:hover, +.slds-tabs--default__item.slds-active .slds-tabs_default__link:hover, +.slds-tabs--default__item.slds-active .slds-tabs--default__link:hover, +.slds-tabs--default__item.slds-is-active .slds-tabs_default__link:hover, +.slds-tabs--default__item.slds-is-active .slds-tabs--default__link:hover{ + color:currentColor; +} +.slds-tabs_default__item:hover:after, +.slds-tabs--default__item:hover:after{ + height:calc(var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px)) + 1px); + background-color:var(--slds-c-tabs-item-color-border-hover, var(--sds-c-tabs-item-color-border-hover, #0176d3)); +} +.slds-tabs_default__item:focus, .slds-tabs_default__item.slds-has-focus, +.slds-tabs--default__item:focus, +.slds-tabs--default__item.slds-has-focus{ + outline:0; +} +.slds-tabs_default__item:focus:after, .slds-tabs_default__item.slds-has-focus:after, +.slds-tabs--default__item:focus:after, +.slds-tabs--default__item.slds-has-focus:after{ + height:calc(var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 2px)) + 1px); + background-color:var(--slds-c-tabs-item-color-border-active, var(--sds-c-tabs-item-color-border-active, #1b96ff)); +} +.slds-tabs_default__item .slds-tabs_default__link:focus, +.slds-tabs_default__item .slds-tabs--default__link:focus, +.slds-tabs--default__item .slds-tabs_default__link:focus, +.slds-tabs--default__item .slds-tabs--default__link:focus{ + -webkit-box-shadow:none; + box-shadow:none; +} +.slds-tabs_default__item.slds-has-notification, +.slds-tabs--default__item.slds-has-notification{ + background:var(--slds-g-color-neutral-base-95, #f3f3f3); +} +.slds-tabs_default__item.slds-has-notification:after, +.slds-tabs--default__item.slds-has-notification:after{ + background-color:var(--slds-g-color-border-base-4, #e5e5e5); +} +.slds-tabs_default__item.slds-has-notification:hover:after, +.slds-tabs--default__item.slds-has-notification:hover:after{ + background-color:var(--slds-g-color-brand-base-30, #0176d3); +} +.slds-tabs_default__item.slds-has-notification .slds-indicator_unread, +.slds-tabs--default__item.slds-has-notification .slds-indicator_unread{ + display:inline-block; + height:0.375rem; + width:0.375rem; + position:relative; + top:auto; + left:auto; +} +.slds-tabs_default__item.slds-is-unsaved .slds-indicator_unread, +.slds-tabs--default__item.slds-is-unsaved .slds-indicator_unread{ + margin-left:-0.35rem; +} +.slds-tabs_default__item.slds-is-unsaved .slds-indicator_unsaved, +.slds-tabs--default__item.slds-is-unsaved .slds-indicator_unsaved{ + color:#014486; +} +.slds-tabs_default__item.slds-has-notification .slds-indicator_unsaved, +.slds-tabs--default__item.slds-has-notification .slds-indicator_unsaved{ + top:-0.25rem; +} +.slds-tabs_default__link, +.slds-tabs--default__link{ + max-width:100%; + overflow:hidden; + text-overflow:ellipsis; + white-space:nowrap; + display:block; + text-decoration:none; + cursor:pointer; + height:var(--slds-c-tabs-item-sizing-height, var(--sds-c-tabs-item-sizing-height, 2.5rem)); + line-height:var(--slds-c-tabs-item-line-height, var(--sds-c-tabs-item-line-height, 2.5rem)); + color:currentColor; + border:0; + text-transform:inherit; + z-index:1; +} +.slds-tabs_default__link:focus, +.slds-tabs--default__link:focus{ + outline:0; +} +.slds-tabs_default__link:hover, .slds-tabs_default__link:focus, +.slds-tabs--default__link:hover, +.slds-tabs--default__link:focus{ + text-decoration:none; + -webkit-box-shadow:none; + box-shadow:none; + color:currentColor; +} +.slds-tabs_default__link[tabindex="0"]:focus, +.slds-tabs--default__link[tabindex="0"]:focus{ + text-decoration:underline; +} +.slds-tabs_default__overflow-button{ + display:-webkit-inline-box; + display:-ms-inline-flexbox; + display:inline-flex; + height:var(--slds-c-tabs-item-sizing-height, var(--sds-c-tabs-item-sizing-height, 2.5rem)); + line-height:var(--slds-c-tabs-item-line-height, var(--sds-c-tabs-item-line-height, 2.5rem)); +} +.slds-tabs_default__overflow-button .slds-button{ + line-height:inherit; + color:var(--slds-c-tabs-item-text-color, var(--sds-c-tabs-item-text-color, var(--slds-g-color-neutral-base-30, #444444))); + -webkit-box-shadow:none; + box-shadow:none; + --slds-c-button-color-border-active:transparent; +} +.slds-tabs_default__overflow-button .slds-button:focus{ + text-decoration:underline; +} +.slds-tabs_default__overflow-button.slds-has-error .slds-button, .slds-tabs_default__overflow-button.slds-has-success .slds-button{ + color:var(--slds-g-color-neutral-base-100, white); +} +.slds-tabs_default__content, +.slds-tabs--default__content{ + position:relative; + padding-top:var(--slds-c-tabs-panel-spacing-block-start, var(--sds-c-tabs-panel-spacing-block-start, var(--slds-c-tabs-panel-spacing-block, var(--sds-c-tabs-panel-spacing-block, 0.75rem)))); + padding-right:var(--slds-c-tabs-panel-spacing-inline-end, var(--sds-c-tabs-panel-spacing-inline-end, var(--slds-c-tabs-panel-spacing-inline, var(--sds-c-tabs-panel-spacing-inline, 0)))); + padding-bottom:var(--slds-c-tabs-panel-spacing-block-end, var(--sds-c-tabs-panel-spacing-block-end, var(--slds-c-tabs-panel-spacing-block, var(--sds-c-tabs-panel-spacing-block, 0.75rem)))); + padding-left:var(--slds-c-tabs-panel-spacing-inline-start, var(--sds-c-tabs-panel-spacing-inline-start, var(--slds-c-tabs-panel-spacing-inline, var(--sds-c-tabs-panel-spacing-inline, 0)))); +} +.slds-tabs_medium .slds-tabs_default__item{ + font-size:1rem; +} +.slds-tabs_large .slds-tabs_default__item{ + font-size:1.25rem; +} +.slds-tabs__left-icon{ + margin-right:0.5rem; +} +.slds-tabs__left-icon:empty{ + margin-right:0; +} +.slds-tabs__right-icon{ + margin-left:0.5rem; +} +.slds-tabs_mobile__title{ + width:100%; + height:100%; + color:var(--slds-g-color-neutral-base-10, #181818); + font-size:1rem; + padding:0 1rem; +} +.slds-tabs_mobile__title .slds-button:focus{ + -webkit-box-shadow:none; + box-shadow:none; +} +.slds-tabs_mobile__title-action{ + width:100%; + height:100%; + display:-webkit-inline-box; + display:-ms-inline-flexbox; + display:inline-flex; + -webkit-box-flex:1; + -ms-flex-positive:1; + flex-grow:1; + -webkit-box-align:center; + -ms-flex-align:center; + align-items:center; + -webkit-box-pack:justify; + -ms-flex-pack:justify; + justify-content:space-between; +} +.slds-tabs_mobile__title-action .slds-button__icon{ + -ms-flex-negative:0; + flex-shrink:0; +} +.slds-tabs_mobile{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + -webkit-box-orient:vertical; + -webkit-box-direction:normal; + -ms-flex-direction:column; + flex-direction:column; +} +.slds-tabs_mobile__item{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + border-top:1px solid var(--slds-g-color-border-base-1, #e5e5e5); + height:2.75rem; + -webkit-box-align:center; + -ms-flex-align:center; + align-items:center; +} +.slds-tabs_mobile__item:active{ + background-color:var(--slds-g-color-neutral-base-95, #f3f3f3); +} +.slds-tabs_mobile__item:last-child{ + border-bottom:1px solid var(--slds-g-color-border-base-1, #e5e5e5); +} + +.slds-tabs_mobile + .slds-tabs_mobile .slds-tabs_mobile__item:first-child{ + border-top:0; +} +.slds-tabs-mobile__container{ + position:relative; + overflow:hidden; +} +.slds-has-overflow .slds-tabs_scoped__nav, +.slds-has-overflow .slds-tabs--scoped__nav, +.slds-has-overflow .slds-tabs_default__nav, +.slds-has-overflow .slds-tabs--default__nav{ + border:0; +} +.slds-has-overflow .slds-tab__scroll-controls{ + display:-webkit-box; + display:-ms-flexbox; + display:flex; + position:absolute; + right:0; + top:0; + bottom:0; + background-color:var(--slds-g-color-neutral-base-100, white); + -webkit-box-align:center; + -ms-flex-align:center; + align-items:center; +} +.slds-tabs_default .slds-has-overflow .slds-tabs__nav-scroller_inner, +.slds-tabs_default .slds-has-overflow .slds-tabs__nav-scroller--inner, +.slds-tabs--default .slds-has-overflow .slds-tabs__nav-scroller_inner, +.slds-tabs--default .slds-has-overflow .slds-tabs__nav-scroller--inner{ + border-bottom-width:var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px)); + border-bottom-style:solid; + border-bottom-color:var(--slds-c-tabs-list-color-border, var(--sds-c-tabs-list-color-border, var(--slds-g-color-border-base-1, #e5e5e5))); +} +.slds-tabs_default .slds-tab__scroll-controls, +.slds-tabs--default .slds-tab__scroll-controls{ + padding:calc(0.25rem - var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px))) 1px calc(0.25rem - var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px))) 0.5rem; + border-bottom-width:var(--slds-c-tabs-list-sizing-border, var(--sds-c-tabs-list-sizing-border, 1px)); + border-bottom-style:solid; + border-bottom-color:var(--slds-c-tabs-list-color-border, var(--sds-c-tabs-list-color-border, var(--slds-g-color-border-base-1, #e5e5e5))); +} + +/* Text */ + +.slds-text-title_bold{ + font-size:0.875rem; + font-weight:700; +} .slds-text-align_left, .slds-text-align--left{ text-align:left; @@ -1963,7 +4739,7 @@ a.slds-button--inverse:focus{ text-align:right; } -/* Theme */ +/* Theme */ .slds-theme_shade, .slds-theme--shade{