UNPKG

@fe6/water-pro

Version:

An enterprise-class UI design language and Vue-based implementation

363 lines (362 loc) 10.1 kB
/*! Pickr 1.8.1 MIT | https://github.com/Simonwep/pickr */ .pickr { position: relative; overflow: visible; transform: translateY(0); } .pickr * { box-sizing: border-box; border: none; outline: none; -webkit-appearance: none; } .pickr .pcr-button { position: relative; width: 2em; height: 2em; padding: 0.5em; font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif; background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" stroke="%2342445A" stroke-width="5px" stroke-linecap="round"><path d="M45,45L5,5"></path><path d="M45,5L5,45"></path></svg>') no-repeat 50%; background-size: 0; border-radius: 0.15em; cursor: pointer; transition: all 0.3s; } .pickr .pcr-button::before { z-index: -1; z-index: auto; background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>'); background-size: 0.5em; } .pickr .pcr-button::after, .pickr .pcr-button::before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 0.15em; content: ''; } .pickr .pcr-button::after { background: var(--pcr-color); transition: background 0.3s; } .pickr .pcr-button.clear { background-size: 70%; } .pickr .pcr-button.clear::before { opacity: 0; } .pickr .pcr-button.clear:focus { box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.85), 0 0 0 3px var(--pcr-color); } .pickr .pcr-button.disabled { cursor: not-allowed; } .pcr-app *, .pickr * { box-sizing: border-box; border: none; outline: none; -webkit-appearance: none; } .pcr-app button.pcr-active, .pcr-app button:focus, .pcr-app input.pcr-active, .pcr-app input:focus, .pickr button.pcr-active, .pickr button:focus, .pickr input.pcr-active, .pickr input:focus { box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.85), 0 0 0 3px var(--pcr-color); } .pcr-app .pcr-palette, .pcr-app .pcr-slider, .pickr .pcr-palette, .pickr .pcr-slider { transition: box-shadow 0.3s; } .pcr-app .pcr-palette:focus, .pcr-app .pcr-slider:focus, .pickr .pcr-palette:focus, .pickr .pcr-slider:focus { box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.85), 0 0 0 3px rgba(0, 0, 0, 0.25); } .pcr-app { position: fixed; top: 0; left: 0; z-index: 10000; display: flex; flex-direction: column; font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif; background: #fff; border-radius: 0.1em; box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.1), 0 0 1em 0 rgba(0, 0, 0, 0.03); visibility: hidden; opacity: 0; transition: opacity 0.3s, visibility 0s 0.3s; } .pcr-app.visible { visibility: visible; opacity: 1; transition: opacity 0.3s; } .pcr-app .pcr-swatches { display: flex; flex-wrap: wrap; margin-top: 0.75em; } .pcr-app .pcr-swatches.pcr-last { margin: 0; } @supports (display: grid) { .pcr-app .pcr-swatches { display: grid; grid-template-columns: repeat(auto-fit, 1.75em); align-items: center; } } .pcr-app .pcr-swatches > button { position: relative; z-index: 1; flex-shrink: 0; justify-self: center; width: calc(1.75em - 5px); height: calc(1.75em - 5px); margin: 2.5px; overflow: hidden; font-size: 1em; background: transparent; border-radius: 0.15em; cursor: pointer; transition: all 0.15s; } .pcr-app .pcr-swatches > button::before { position: absolute; top: 0; left: 0; z-index: -1; width: 100%; height: 100%; background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>'); background-size: 6px; border-radius: 0.15em; content: ''; } .pcr-app .pcr-swatches > button::after { position: absolute; top: 0; left: 0; box-sizing: border-box; width: 100%; height: 100%; background: var(--pcr-color); border: 1px solid rgba(0, 0, 0, 0.05); border-radius: 0.15em; content: ''; } .pcr-app .pcr-swatches > button:hover { filter: brightness(1.05); } .pcr-app .pcr-swatches > button:not(.pcr-active) { box-shadow: none; } .pcr-app .pcr-interaction { display: flex; flex-wrap: wrap; align-items: center; margin: 0 -0.2em; } .pcr-app .pcr-interaction > * { margin: 0 0.2em; } .pcr-app .pcr-interaction input { margin-top: 0.75em; padding: 0.45em 0.5em; color: #75797e; font-size: 0.75em; letter-spacing: 0.07em; text-align: center; background: #f1f3f4; border-radius: 0.15em; cursor: pointer; transition: all 0.15s; } .pcr-app .pcr-interaction input:hover { filter: brightness(0.975); } .pcr-app .pcr-interaction input:focus { box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.85), 0 0 0 3px rgba(66, 133, 244, 0.75); } .pcr-app .pcr-interaction .pcr-result { flex: 1 1 8em; min-width: 8em; color: #75797e; text-align: left; background: #f1f3f4; border-radius: 0.15em; cursor: text; transition: all 0.2s; } .pcr-app .pcr-interaction .pcr-result::-moz-selection { color: #fff; background: #4285f4; } .pcr-app .pcr-interaction .pcr-result::selection { color: #fff; background: #4285f4; } .pcr-app .pcr-interaction .pcr-type.active { color: #fff; background: #4285f4; } .pcr-app .pcr-interaction .pcr-cancel, .pcr-app .pcr-interaction .pcr-clear, .pcr-app .pcr-interaction .pcr-save { width: auto; color: #fff; } .pcr-app .pcr-interaction .pcr-cancel:hover, .pcr-app .pcr-interaction .pcr-clear:hover, .pcr-app .pcr-interaction .pcr-save:hover { filter: brightness(0.925); } .pcr-app .pcr-interaction .pcr-save { background: #4285f4; } .pcr-app .pcr-interaction .pcr-cancel, .pcr-app .pcr-interaction .pcr-clear { background: #f44250; } .pcr-app .pcr-interaction .pcr-cancel:focus, .pcr-app .pcr-interaction .pcr-clear:focus { box-shadow: 0 0 0 1px hsla(0, 0%, 100%, 0.85), 0 0 0 3px rgba(244, 66, 80, 0.75); } .pcr-app .pcr-selection .pcr-picker { position: absolute; width: 18px; height: 18px; border: 2px solid #fff; border-radius: 100%; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .pcr-app .pcr-selection .pcr-color-chooser, .pcr-app .pcr-selection .pcr-color-opacity, .pcr-app .pcr-selection .pcr-color-palette { position: relative; display: flex; flex-direction: column; cursor: grab; cursor: -webkit-grab; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .pcr-app .pcr-selection .pcr-color-chooser:active, .pcr-app .pcr-selection .pcr-color-opacity:active, .pcr-app .pcr-selection .pcr-color-palette:active { cursor: grabbing; cursor: -webkit-grabbing; } .pcr-app[data-theme='monolith'] { width: 14.25em; max-width: 95vw; padding: 0.8em; } .pcr-app[data-theme='monolith'] .pcr-selection { display: flex; flex-direction: column; flex-grow: 1; justify-content: space-between; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview { position: relative; z-index: 1; display: flex; flex-direction: row; justify-content: space-between; width: 100%; height: 1em; margin-bottom: 0.5em; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview::before { position: absolute; top: 0; left: 0; z-index: -1; width: 100%; height: 100%; background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>'); background-size: 0.5em; border-radius: 0.15em; content: ''; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview .pcr-last-color { z-index: 2; border-radius: 0.15em 0 0 0.15em; cursor: pointer; transition: background-color 0.3s, box-shadow 0.3s; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview .pcr-current-color { border-radius: 0 0.15em 0.15em 0; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview .pcr-current-color, .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-preview .pcr-last-color { width: 50%; height: 100%; background: var(--pcr-color); } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-palette { z-index: 1; width: 100%; height: 8em; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-palette .pcr-palette { width: 100%; height: 100%; border-radius: 0.15em; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-palette .pcr-palette::before { position: absolute; top: 0; left: 0; z-index: -1; width: 100%; height: 100%; background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>'); background-size: 0.5em; border-radius: 0.15em; content: ''; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-chooser, .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-opacity { height: 0.5em; margin-top: 0.75em; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-chooser .pcr-picker, .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-opacity .pcr-picker { top: 50%; transform: translateY(-50%); } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-chooser .pcr-slider, .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-opacity .pcr-slider { flex-grow: 1; border-radius: 50em; } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-chooser .pcr-slider { background: linear-gradient(90deg, #f00, #ff0, #0f0, #0ff, #00f, #f0f, #f00); } .pcr-app[data-theme='monolith'] .pcr-selection .pcr-color-opacity .pcr-slider { background: linear-gradient(90deg, transparent, #000), url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>'); background-size: 100%, 0.25em; }