/* @license Copyright (c) 2015 The Polymer Project Authors. All rights reserved. This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt Code distributed by Google as part of the polymer project is also subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt */ :host { display: inline-block; } :host([disabled]) { pointer-events: none; } :host(:focus) { outline:none; } :host .toggle-bar { background-color: var(--paper-toggle-button-unchecked-bar-color, #000000); @apply(--paper-toggle-button-unchecked-bar); } :host .toggle-button { background-color: var(--paper-toggle-button-unchecked-button-color, --paper-grey-50); @apply(--paper-toggle-button-unchecked-button); } :host([checked]) .toggle-bar { background-color: var(--paper-toggle-button-checked-bar-color, --google-green-500); @apply(--paper-toggle-button-checked-bar); } :host([checked]) .toggle-button { background-color: var(--paper-toggle-button-checked-button-color, --google-green-500); @apply(--paper-toggle-button-checked-button); } :host .toggle-ink { color: var(--paper-toggle-button-unchecked-ink-color, --primary-text-color); } :host([checked]) .toggle-ink { color: var(--paper-toggle-button-checked-ink-color, --google-green-500); } /* ID selectors should not be overriden by users. */ #toggleContainer { position: relative; width: 36px; height: 14px; } #toggleBar { position: absolute; height: 100%; width: 100%; border-radius: 8px; pointer-events: none; opacity: 0.4; transition: background-color linear .08s; } :host([checked]) #toggleBar { opacity: 0.5; } :host([disabled]) #toggleBar { background-color: #000; opacity: 0.12; } #toggleButton { position: absolute; top: -3px; height: 20px; width: 20px; border-radius: 50%; box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.6); transition: -webkit-transform linear .08s, background-color linear .08s; transition: transform linear .08s, background-color linear .08s; will-change: transform; } #toggleButton.dragging { -webkit-transition: none; transition: none; } :host([checked]) #toggleButton { -webkit-transform: translate(16px, 0); transform: translate(16px, 0); } :host([disabled]) #toggleButton { background-color: #bdbdbd; opacity: 1; } #ink { position: absolute; top: -14px; left: -14px; width: 48px; height: 48px; opacity: 0.5; pointer-events: none; }