1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087 |
- @charset "UTF-8";
- /**
- * @copyright Copyright (c) 2018, John Molakvoæ (skjnldsv@protonmail.com)
- *
- * @author John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
- /**
- * @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>
- * @copyright Copyright (c) 2016, Morris Jobke <hey@morrisjobke.de>
- * @copyright Copyright (c) 2016, Joas Schilling <coding@schilljs.com>
- * @copyright Copyright (c) 2016, Julius Haertl <jus@bitgrid.net>
- * @copyright Copyright (c) 2016, jowi <sjw@gmx.ch>
- * @copyright Copyright (c) 2015, Joas Schilling <nickvergessen@owncloud.com>
- * @copyright Copyright (c) 2015, Hendrik Leppelsack <hendrik@leppelsack.de>
- * @copyright Copyright (c) 2014-2017, Jan-Christoph Borchardt <hey@jancborchardt.net>
- *
- * @license GNU AGPL version 3 or any later version
- *
- */
- /**
- * @copyright Copyright (c) 2018, John Molakvoæ (skjnldsv@protonmail.com)
- *
- * @author John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
- /**
- * @see core/src/icons.js
- */
- /**
- * SVG COLOR API
- *
- * @param string $icon the icon filename
- * @param string $dir the icon folder within /core/img if $core or app name
- * @param string $color the desired color in hexadecimal
- * @param int $version the version of the file
- * @param bool [$core] search icon in core
- *
- * @returns A background image with the url to the set to the requested icon.
- */
- /* Specifically override browser styles */
- input, textarea, select, button, div[contenteditable=true], div[contenteditable=false] {
- font-family: var(--font-face);
- }
- .select2-container-multi .select2-choices .select2-search-field input, .select2-search input, .ui-widget {
- font-family: var(--font-face) !important;
- }
- .select2-container.select2-drop-above .select2-choice {
- background-image: unset !important;
- }
- /* Simple selector to allow easy overriding */
- select,
- button:not(.button-vue),
- input,
- textarea,
- div[contenteditable=true],
- div[contenteditable=false] {
- width: 130px;
- min-height: 36px;
- box-sizing: border-box;
- }
- /**
- * color-text-lighter normal state
- * color-text-lighter active state
- * color-text-maxcontrast disabled state
- */
- input:not([type=range]) {
- outline: none;
- }
- /* Default global values */
- div.select2-drop .select2-search input,
- input[type=submit],
- input[type=button],
- input[type=reset],
- button:not(.button-vue), .button,
- .pager li a {
- margin: 3px 3px 3px 0;
- padding: 7px 14px;
- font-size: 13px;
- background-color: var(--color-main-background);
- color: var(--color-main-text);
- border: 1px solid var(--color-border-dark);
- font-size: var(--default-font-size);
- outline: none;
- border-radius: var(--border-radius);
- cursor: text;
- /* Primary action button, use sparingly */
- }
- div.select2-drop .select2-search input:not(:disabled):not(.primary):hover, div.select2-drop .select2-search input:not(:disabled):not(.primary):focus, div.select2-drop .select2-search input:not(:disabled):not(.primary).active,
- input[type=submit]:not(:disabled):not(.primary):hover,
- input[type=submit]:not(:disabled):not(.primary):focus,
- input[type=submit]:not(:disabled):not(.primary).active,
- input[type=button]:not(:disabled):not(.primary):hover,
- input[type=button]:not(:disabled):not(.primary):focus,
- input[type=button]:not(:disabled):not(.primary).active,
- input[type=reset]:not(:disabled):not(.primary):hover,
- input[type=reset]:not(:disabled):not(.primary):focus,
- input[type=reset]:not(:disabled):not(.primary).active,
- button:not(.button-vue):not(:disabled):not(.primary):hover,
- button:not(.button-vue):not(:disabled):not(.primary):focus,
- button:not(.button-vue):not(:disabled):not(.primary).active, .button:not(:disabled):not(.primary):hover, .button:not(:disabled):not(.primary):focus, .button:not(:disabled):not(.primary).active,
- .pager li a:not(:disabled):not(.primary):hover,
- .pager li a:not(:disabled):not(.primary):focus,
- .pager li a:not(:disabled):not(.primary).active {
- /* active class used for multiselect */
- border-color: var(--color-primary-element);
- outline: none;
- }
- div.select2-drop .select2-search input:not(:disabled):not(.primary):active,
- input[type=submit]:not(:disabled):not(.primary):active,
- input[type=button]:not(:disabled):not(.primary):active,
- input[type=reset]:not(:disabled):not(.primary):active,
- button:not(.button-vue):not(:disabled):not(.primary):active, .button:not(:disabled):not(.primary):active,
- .pager li a:not(:disabled):not(.primary):active {
- outline: none;
- background-color: var(--color-main-background);
- color: var(--color-text-light);
- }
- div.select2-drop .select2-search input:not(:disabled):not(.primary):focus-visible,
- input[type=submit]:not(:disabled):not(.primary):focus-visible,
- input[type=button]:not(:disabled):not(.primary):focus-visible,
- input[type=reset]:not(:disabled):not(.primary):focus-visible,
- button:not(.button-vue):not(:disabled):not(.primary):focus-visible, .button:not(:disabled):not(.primary):focus-visible,
- .pager li a:not(:disabled):not(.primary):focus-visible {
- box-shadow: 0 0 0 2px var(--color-primary);
- }
- div.select2-drop .select2-search input:disabled,
- input[type=submit]:disabled,
- input[type=button]:disabled,
- input[type=reset]:disabled,
- button:not(.button-vue):disabled, .button:disabled,
- .pager li a:disabled {
- background-color: var(--color-background-dark);
- color: var(--color-main-text);
- cursor: default;
- opacity: 0.5;
- }
- div.select2-drop .select2-search input:required,
- input[type=submit]:required,
- input[type=button]:required,
- input[type=reset]:required,
- button:not(.button-vue):required, .button:required,
- .pager li a:required {
- box-shadow: none;
- }
- div.select2-drop .select2-search input:user-invalid,
- input[type=submit]:user-invalid,
- input[type=button]:user-invalid,
- input[type=reset]:user-invalid,
- button:not(.button-vue):user-invalid, .button:user-invalid,
- .pager li a:user-invalid {
- box-shadow: 0 0 0 2px var(--color-error) !important;
- }
- div.select2-drop .select2-search input.primary,
- input[type=submit].primary,
- input[type=button].primary,
- input[type=reset].primary,
- button:not(.button-vue).primary, .button.primary,
- .pager li a.primary {
- background-color: var(--color-primary-element);
- border-color: var(--color-primary-element);
- color: var(--color-primary-text);
- cursor: pointer;
- /* Apply border to primary button if on log in page (and not in a dark container) or if in header */
- }
- #body-login :not(.body-login-container) div.select2-drop .select2-search input.primary, #header div.select2-drop .select2-search input.primary,
- #body-login :not(.body-login-container) input[type=submit].primary,
- #header input[type=submit].primary,
- #body-login :not(.body-login-container) input[type=button].primary,
- #header input[type=button].primary,
- #body-login :not(.body-login-container) input[type=reset].primary,
- #header input[type=reset].primary,
- #body-login :not(.body-login-container) button:not(.button-vue).primary,
- #header button:not(.button-vue).primary, #body-login :not(.body-login-container) .button.primary, #header .button.primary,
- #body-login :not(.body-login-container) .pager li a.primary,
- #header .pager li a.primary {
- border-color: var(--color-primary-text);
- }
- div.select2-drop .select2-search input.primary:not(:disabled):hover, div.select2-drop .select2-search input.primary:not(:disabled):focus, div.select2-drop .select2-search input.primary:not(:disabled):active,
- input[type=submit].primary:not(:disabled):hover,
- input[type=submit].primary:not(:disabled):focus,
- input[type=submit].primary:not(:disabled):active,
- input[type=button].primary:not(:disabled):hover,
- input[type=button].primary:not(:disabled):focus,
- input[type=button].primary:not(:disabled):active,
- input[type=reset].primary:not(:disabled):hover,
- input[type=reset].primary:not(:disabled):focus,
- input[type=reset].primary:not(:disabled):active,
- button:not(.button-vue).primary:not(:disabled):hover,
- button:not(.button-vue).primary:not(:disabled):focus,
- button:not(.button-vue).primary:not(:disabled):active, .button.primary:not(:disabled):hover, .button.primary:not(:disabled):focus, .button.primary:not(:disabled):active,
- .pager li a.primary:not(:disabled):hover,
- .pager li a.primary:not(:disabled):focus,
- .pager li a.primary:not(:disabled):active {
- background-color: var(--color-primary-element-hover);
- border-color: var(--color-primary-element-hover);
- }
- div.select2-drop .select2-search input.primary:not(:disabled):focus, div.select2-drop .select2-search input.primary:not(:disabled):focus-visible,
- input[type=submit].primary:not(:disabled):focus,
- input[type=submit].primary:not(:disabled):focus-visible,
- input[type=button].primary:not(:disabled):focus,
- input[type=button].primary:not(:disabled):focus-visible,
- input[type=reset].primary:not(:disabled):focus,
- input[type=reset].primary:not(:disabled):focus-visible,
- button:not(.button-vue).primary:not(:disabled):focus,
- button:not(.button-vue).primary:not(:disabled):focus-visible, .button.primary:not(:disabled):focus, .button.primary:not(:disabled):focus-visible,
- .pager li a.primary:not(:disabled):focus,
- .pager li a.primary:not(:disabled):focus-visible {
- box-shadow: 0 0 0 2px var(--color-main-text);
- }
- div.select2-drop .select2-search input.primary:not(:disabled):active,
- input[type=submit].primary:not(:disabled):active,
- input[type=button].primary:not(:disabled):active,
- input[type=reset].primary:not(:disabled):active,
- button:not(.button-vue).primary:not(:disabled):active, .button.primary:not(:disabled):active,
- .pager li a.primary:not(:disabled):active {
- color: var(--color-primary-text-dark);
- }
- div.select2-drop .select2-search input.primary:disabled,
- input[type=submit].primary:disabled,
- input[type=button].primary:disabled,
- input[type=reset].primary:disabled,
- button:not(.button-vue).primary:disabled, .button.primary:disabled,
- .pager li a.primary:disabled {
- background-color: var(--color-primary-element);
- color: var(--color-primary-text-dark);
- cursor: default;
- }
- div[contenteditable=false] {
- margin: 3px 3px 3px 0;
- padding: 7px 6px;
- font-size: 13px;
- background-color: var(--color-main-background);
- color: var(--color-text-lighter);
- border: 1px solid var(--color-background-darker);
- outline: none;
- border-radius: var(--border-radius);
- background-color: var(--color-background-dark);
- color: var(--color-text-lighter);
- cursor: default;
- opacity: 0.5;
- }
- /* Specific override */
- input {
- /* Color input doesn't respect the initial height
- so we need to set a custom one */
- }
- input:not([type=radio]):not([type=checkbox]):not([type=range]):not([type=submit]):not([type=button]):not([type=reset]):not([type=color]):not([type=file]):not([type=image]) {
- -webkit-appearance: textfield;
- -moz-appearance: textfield;
- height: 36px;
- }
- input[type=radio], input[type=checkbox], input[type=file], input[type=image] {
- height: auto;
- width: auto;
- }
- input[type=color] {
- margin: 3px;
- padding: 0 2px;
- min-height: 30px;
- width: 40px;
- cursor: pointer;
- }
- input[type=hidden] {
- height: 0;
- width: 0;
- }
- input[type=time] {
- width: initial;
- }
- /* 'Click' inputs */
- select,
- button:not(.button-vue), .button,
- input[type=button],
- input[type=submit],
- input[type=reset] {
- padding: 8px 14px;
- font-size: var(--default-font-size);
- width: auto;
- min-height: 36px;
- cursor: pointer;
- box-sizing: border-box;
- background-color: var(--color-background-dark);
- }
- select:disabled,
- button:not(.button-vue):disabled, .button:disabled,
- input[type=button]:disabled,
- input[type=submit]:disabled,
- input[type=reset]:disabled {
- cursor: default;
- }
- input:not([type=range]):not(.input-field__input):not([type=submit]):not([type=button]):not([type=reset]):not(.multiselect__input):not(.select2-input):not(.action-input__input),
- select,
- div[contenteditable=true],
- textarea {
- margin: 3px 3px 3px 0;
- padding: 0 12px;
- font-size: var(--default-font-size);
- background-color: var(--color-main-background);
- color: var(--color-main-text);
- border: 2px solid var(--color-border-dark);
- height: 36px;
- outline: none;
- border-radius: var(--border-radius-large);
- text-overflow: ellipsis;
- cursor: pointer;
- }
- input:not([type=range]):not(.input-field__input):not([type=submit]):not([type=button]):not([type=reset]):not(.multiselect__input):not(.select2-input):not(.action-input__input):not(:disabled):hover, input:not([type=range]):not(.input-field__input):not([type=submit]):not([type=button]):not([type=reset]):not(.multiselect__input):not(.select2-input):not(.action-input__input):not(:disabled):focus, input:not([type=range]):not(.input-field__input):not([type=submit]):not([type=button]):not([type=reset]):not(.multiselect__input):not(.select2-input):not(.action-input__input):not(:disabled):active,
- select:not(:disabled):hover,
- select:not(:disabled):focus,
- select:not(:disabled):active,
- div[contenteditable=true]:not(:disabled):hover,
- div[contenteditable=true]:not(:disabled):focus,
- div[contenteditable=true]:not(:disabled):active,
- textarea:not(:disabled):hover,
- textarea:not(:disabled):focus,
- textarea:not(:disabled):active {
- border-color: var(--color-primary-element);
- }
- input:not([type=range]):not(.input-field__input):not([type=submit]):not([type=button]):not([type=reset]):not(.multiselect__input):not(.select2-input):not(.action-input__input):not(:disabled):focus,
- select:not(:disabled):focus,
- div[contenteditable=true]:not(:disabled):focus,
- textarea:not(:disabled):focus {
- cursor: text;
- }
- .multiselect__input, .select2-input {
- background-color: var(--color-main-background);
- color: var(--color-main-text);
- }
- textarea, div[contenteditable=true] {
- padding: 12px;
- height: auto;
- }
- /* Override the ugly select arrow */
- select {
- background: var(--icon-triangle-s-dark) no-repeat right 8px center;
- appearance: none;
- background-color: var(--color-main-background);
- padding-right: 28px !important;
- }
- select *,
- button:not(.button-vue) *, .button * {
- cursor: pointer;
- }
- select:disabled *,
- button:not(.button-vue):disabled *, .button:disabled * {
- cursor: default;
- }
- /* Buttons */
- button:not(.button-vue), .button,
- input[type=button],
- input[type=submit],
- input[type=reset] {
- font-weight: bold;
- border-radius: var(--border-radius-pill);
- /* Get rid of the inside dotted line in Firefox */
- }
- button:not(.button-vue)::-moz-focus-inner, .button::-moz-focus-inner,
- input[type=button]::-moz-focus-inner,
- input[type=submit]::-moz-focus-inner,
- input[type=reset]::-moz-focus-inner {
- border: 0;
- }
- button:not(.button-vue).error, .button.error,
- input[type=button].error,
- input[type=submit].error,
- input[type=reset].error {
- background-color: var(--color-error) !important;
- border-color: var(--color-error) !important;
- color: #fff !important;
- }
- button:not(.button-vue):not(.action-button) > span, .button > span {
- /* icon position inside buttons */
- }
- button:not(.button-vue):not(.action-button) > span[class^=icon-], button:not(.button-vue):not(.action-button) > span[class*=" icon-"], .button > span[class^=icon-], .button > span[class*=" icon-"] {
- display: inline-block;
- vertical-align: text-bottom;
- opacity: 0.5;
- }
- /* Confirm inputs */
- input[type=text], input[type=password], input[type=email] {
- /* only show confirm borders if input is not focused */
- }
- input[type=text] + .icon-confirm, input[type=password] + .icon-confirm, input[type=email] + .icon-confirm {
- margin-left: -13px !important;
- border-left-color: transparent !important;
- border-radius: 0 var(--border-radius-large) var(--border-radius-large) 0 !important;
- border-width: 2px;
- background-clip: padding-box;
- /* Avoid background under border */
- background-color: var(--color-main-background) !important;
- opacity: 1;
- height: 36px;
- width: 36px;
- padding: 7px 6px;
- cursor: pointer;
- margin-right: 0;
- }
- input[type=text] + .icon-confirm:disabled, input[type=password] + .icon-confirm:disabled, input[type=email] + .icon-confirm:disabled {
- cursor: default;
- /* $dir is the app name, so we add this to the icon var to avoid conflicts between apps */
- background-image: var(--icon-confirm-fade-dark);
- }
- input[type=text]:not(:active):not(:hover):not(:focus):invalid + .icon-confirm, input[type=password]:not(:active):not(:hover):not(:focus):invalid + .icon-confirm, input[type=email]:not(:active):not(:hover):not(:focus):invalid + .icon-confirm {
- border-color: var(--color-error);
- }
- input[type=text]:not(:active):not(:hover):not(:focus) + .icon-confirm:active, input[type=text]:not(:active):not(:hover):not(:focus) + .icon-confirm:hover, input[type=text]:not(:active):not(:hover):not(:focus) + .icon-confirm:focus, input[type=password]:not(:active):not(:hover):not(:focus) + .icon-confirm:active, input[type=password]:not(:active):not(:hover):not(:focus) + .icon-confirm:hover, input[type=password]:not(:active):not(:hover):not(:focus) + .icon-confirm:focus, input[type=email]:not(:active):not(:hover):not(:focus) + .icon-confirm:active, input[type=email]:not(:active):not(:hover):not(:focus) + .icon-confirm:hover, input[type=email]:not(:active):not(:hover):not(:focus) + .icon-confirm:focus {
- border-color: var(--color-primary-element) !important;
- border-radius: var(--border-radius) !important;
- }
- input[type=text]:not(:active):not(:hover):not(:focus) + .icon-confirm:active:disabled, input[type=text]:not(:active):not(:hover):not(:focus) + .icon-confirm:hover:disabled, input[type=text]:not(:active):not(:hover):not(:focus) + .icon-confirm:focus:disabled, input[type=password]:not(:active):not(:hover):not(:focus) + .icon-confirm:active:disabled, input[type=password]:not(:active):not(:hover):not(:focus) + .icon-confirm:hover:disabled, input[type=password]:not(:active):not(:hover):not(:focus) + .icon-confirm:focus:disabled, input[type=email]:not(:active):not(:hover):not(:focus) + .icon-confirm:active:disabled, input[type=email]:not(:active):not(:hover):not(:focus) + .icon-confirm:hover:disabled, input[type=email]:not(:active):not(:hover):not(:focus) + .icon-confirm:focus:disabled {
- border-color: var(--color-background-darker) !important;
- }
- input[type=text]:active + .icon-confirm, input[type=text]:hover + .icon-confirm, input[type=text]:focus + .icon-confirm, input[type=password]:active + .icon-confirm, input[type=password]:hover + .icon-confirm, input[type=password]:focus + .icon-confirm, input[type=email]:active + .icon-confirm, input[type=email]:hover + .icon-confirm, input[type=email]:focus + .icon-confirm {
- border-color: var(--color-primary-element) !important;
- border-left-color: transparent !important;
- /* above previous input */
- z-index: 2;
- }
- /* Various Fixes */
- button img,
- .button img {
- cursor: pointer;
- }
- select,
- .button.multiselect {
- font-weight: normal;
- }
- /* Radio & Checkboxes */
- input[type=checkbox], input[type=radio] {
- /* We do not use the variables as we keep the colours as white for this variant */
- }
- input[type=checkbox].radio, input[type=checkbox].checkbox, input[type=radio].radio, input[type=radio].checkbox {
- position: absolute;
- left: -10000px;
- top: auto;
- width: 1px;
- height: 1px;
- overflow: hidden;
- }
- input[type=checkbox].radio + label, input[type=checkbox].checkbox + label, input[type=radio].radio + label, input[type=radio].checkbox + label {
- user-select: none;
- }
- input[type=checkbox].radio:disabled + label, input[type=checkbox].radio:disabled + label:before, input[type=checkbox].checkbox:disabled + label, input[type=checkbox].checkbox:disabled + label:before, input[type=radio].radio:disabled + label, input[type=radio].radio:disabled + label:before, input[type=radio].checkbox:disabled + label, input[type=radio].checkbox:disabled + label:before {
- cursor: default;
- }
- input[type=checkbox].radio + label:before, input[type=checkbox].checkbox + label:before, input[type=radio].radio + label:before, input[type=radio].checkbox + label:before {
- content: "";
- display: inline-block;
- height: 14px;
- width: 14px;
- vertical-align: middle;
- border-radius: 50%;
- margin: 0 6px 3px 3px;
- border: 1px solid var(--color-text-lighter);
- }
- input[type=checkbox].radio:not(:disabled):not(:checked) + label:hover:before, input[type=checkbox].radio:focus + label:before, input[type=checkbox].checkbox:not(:disabled):not(:checked) + label:hover:before, input[type=checkbox].checkbox:focus + label:before, input[type=radio].radio:not(:disabled):not(:checked) + label:hover:before, input[type=radio].radio:focus + label:before, input[type=radio].checkbox:not(:disabled):not(:checked) + label:hover:before, input[type=radio].checkbox:focus + label:before {
- border-color: var(--color-primary-element);
- }
- input[type=checkbox].radio:focus-visible + label, input[type=checkbox].checkbox:focus-visible + label, input[type=radio].radio:focus-visible + label, input[type=radio].checkbox:focus-visible + label {
- outline-style: solid;
- outline-color: var(--color-main-text);
- outline-width: 1px;
- outline-offset: 2px;
- }
- input[type=checkbox].radio:checked + label:before, input[type=checkbox].radio.checkbox:indeterminate + label:before, input[type=checkbox].checkbox:checked + label:before, input[type=checkbox].checkbox.checkbox:indeterminate + label:before, input[type=radio].radio:checked + label:before, input[type=radio].radio.checkbox:indeterminate + label:before, input[type=radio].checkbox:checked + label:before, input[type=radio].checkbox.checkbox:indeterminate + label:before {
- /* ^ :indeterminate have a strange behavior on radio,
- so we respecified the checkbox class again to be safe */
- box-shadow: inset 0px 0px 0px 2px var(--color-main-background);
- background-color: var(--color-primary-element);
- border-color: var(--color-primary-element);
- }
- input[type=checkbox].radio:disabled + label:before, input[type=checkbox].checkbox:disabled + label:before, input[type=radio].radio:disabled + label:before, input[type=radio].checkbox:disabled + label:before {
- border: 1px solid var(--color-text-lighter);
- background-color: var(--color-text-maxcontrast) !important;
- /* override other status */
- }
- input[type=checkbox].radio:checked:disabled + label:before, input[type=checkbox].checkbox:checked:disabled + label:before, input[type=radio].radio:checked:disabled + label:before, input[type=radio].checkbox:checked:disabled + label:before {
- background-color: var(--color-text-maxcontrast);
- }
- input[type=checkbox].radio + label ~ em, input[type=checkbox].checkbox + label ~ em, input[type=radio].radio + label ~ em, input[type=radio].checkbox + label ~ em {
- display: inline-block;
- margin-left: 25px;
- }
- input[type=checkbox].radio + label ~ em:last-of-type, input[type=checkbox].checkbox + label ~ em:last-of-type, input[type=radio].radio + label ~ em:last-of-type, input[type=radio].checkbox + label ~ em:last-of-type {
- margin-bottom: 14px;
- }
- input[type=checkbox].checkbox + label:before, input[type=radio].checkbox + label:before {
- border-radius: 1px;
- height: 14px;
- width: 14px;
- box-shadow: none !important;
- background-position: center;
- }
- input[type=checkbox].checkbox:checked + label:before, input[type=radio].checkbox:checked + label:before {
- background-image: url("../img/actions/checkbox-mark.svg");
- }
- input[type=checkbox].checkbox:indeterminate + label:before, input[type=radio].checkbox:indeterminate + label:before {
- background-image: url("../img/actions/checkbox-mixed.svg");
- }
- input[type=checkbox].radio--white + label:before, input[type=checkbox].radio--white:focus + label:before, input[type=checkbox].checkbox--white + label:before, input[type=checkbox].checkbox--white:focus + label:before, input[type=radio].radio--white + label:before, input[type=radio].radio--white:focus + label:before, input[type=radio].checkbox--white + label:before, input[type=radio].checkbox--white:focus + label:before {
- border-color: #bababa;
- }
- input[type=checkbox].radio--white:not(:disabled):not(:checked) + label:hover:before, input[type=checkbox].checkbox--white:not(:disabled):not(:checked) + label:hover:before, input[type=radio].radio--white:not(:disabled):not(:checked) + label:hover:before, input[type=radio].checkbox--white:not(:disabled):not(:checked) + label:hover:before {
- border-color: #fff;
- }
- input[type=checkbox].radio--white:checked + label:before, input[type=checkbox].checkbox--white:checked + label:before, input[type=radio].radio--white:checked + label:before, input[type=radio].checkbox--white:checked + label:before {
- box-shadow: inset 0px 0px 0px 2px var(--color-main-background);
- background-color: #dbdbdb;
- border-color: #dbdbdb;
- }
- input[type=checkbox].radio--white:disabled + label:before, input[type=checkbox].checkbox--white:disabled + label:before, input[type=radio].radio--white:disabled + label:before, input[type=radio].checkbox--white:disabled + label:before {
- background-color: #bababa !important;
- /* override other status */
- border-color: rgba(255, 255, 255, 0.4) !important;
- /* override other status */
- }
- input[type=checkbox].radio--white:checked:disabled + label:before, input[type=checkbox].checkbox--white:checked:disabled + label:before, input[type=radio].radio--white:checked:disabled + label:before, input[type=radio].checkbox--white:checked:disabled + label:before {
- box-shadow: inset 0px 0px 0px 2px var(--color-main-background);
- border-color: rgba(255, 255, 255, 0.4) !important;
- /* override other status */
- background-color: #bababa;
- }
- input[type=checkbox].checkbox--white:checked + label:before, input[type=checkbox].checkbox--white:indeterminate + label:before, input[type=radio].checkbox--white:checked + label:before, input[type=radio].checkbox--white:indeterminate + label:before {
- background-color: transparent !important;
- /* Override default checked */
- border-color: #fff !important;
- /* Override default checked */
- background-image: url("../img/actions/checkbox-mark-white.svg");
- }
- input[type=checkbox].checkbox--white:indeterminate + label:before, input[type=radio].checkbox--white:indeterminate + label:before {
- background-image: url("../img/actions/checkbox-mixed-white.svg");
- }
- input[type=checkbox].checkbox--white:disabled + label:before, input[type=radio].checkbox--white:disabled + label:before {
- opacity: 0.7;
- /* No other choice for white background image */
- }
- /* Select2 overriding. Merged to core with vendor stylesheet */
- div.select2-drop {
- margin-top: -2px;
- background-color: var(--color-main-background);
- }
- div.select2-drop.select2-drop-active {
- border-color: var(--color-border-dark);
- }
- div.select2-drop .avatar {
- display: inline-block;
- margin-right: 8px;
- vertical-align: middle;
- }
- div.select2-drop .avatar img {
- cursor: pointer;
- }
- div.select2-drop .select2-search input {
- min-height: auto;
- background: var(--icon-search-dark) no-repeat right center !important;
- background-origin: content-box !important;
- }
- div.select2-drop .select2-results {
- max-height: 250px;
- margin: 0;
- padding: 0;
- }
- div.select2-drop .select2-results .select2-result-label {
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- }
- div.select2-drop .select2-results .select2-result-label span {
- cursor: pointer;
- }
- div.select2-drop .select2-results .select2-result-label span em {
- cursor: inherit;
- background: unset;
- }
- div.select2-drop .select2-results .select2-result,
- div.select2-drop .select2-results .select2-no-results,
- div.select2-drop .select2-results .select2-searching {
- position: relative;
- display: list-item;
- padding: 12px;
- background-color: transparent;
- cursor: pointer;
- color: var(--color-text-lighter);
- }
- div.select2-drop .select2-results .select2-result.select2-selected {
- background-color: var(--color-background-dark);
- }
- div.select2-drop .select2-results .select2-highlighted {
- background-color: var(--color-background-dark);
- color: var(--color-main-text);
- }
- .select2-chosen .avatar,
- .select2-chosen .avatar img,
- #select2-drop .avatar,
- #select2-drop .avatar img {
- cursor: pointer;
- }
- div.select2-container-multi .select2-choices, div.select2-container-multi.select2-container-active .select2-choices {
- box-shadow: none;
- white-space: nowrap;
- text-overflow: ellipsis;
- background: var(--color-main-background);
- color: var(--color-text-lighter) !important;
- box-sizing: content-box;
- border-radius: var(--border-radius-large);
- border: 2px solid var(--color-border-dark);
- margin: 0;
- padding: 6px;
- min-height: 44px;
- }
- div.select2-container-multi .select2-choices:focus-within, div.select2-container-multi.select2-container-active .select2-choices:focus-within {
- border-color: var(--color-primary);
- }
- div.select2-container-multi .select2-choices .select2-search-choice, div.select2-container-multi.select2-container-active .select2-choices .select2-search-choice {
- line-height: 20px;
- padding-left: 5px;
- }
- div.select2-container-multi .select2-choices .select2-search-choice.select2-search-choice-focus, div.select2-container-multi .select2-choices .select2-search-choice:hover, div.select2-container-multi .select2-choices .select2-search-choice:active, div.select2-container-multi .select2-choices .select2-search-choice, div.select2-container-multi.select2-container-active .select2-choices .select2-search-choice.select2-search-choice-focus, div.select2-container-multi.select2-container-active .select2-choices .select2-search-choice:hover, div.select2-container-multi.select2-container-active .select2-choices .select2-search-choice:active, div.select2-container-multi.select2-container-active .select2-choices .select2-search-choice {
- background-image: none;
- background-color: var(--color-main-background);
- color: var(--color-text-lighter);
- border: 1px solid var(--color-border-dark);
- }
- div.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close, div.select2-container-multi.select2-container-active .select2-choices .select2-search-choice .select2-search-choice-close {
- display: none;
- }
- div.select2-container-multi .select2-choices .select2-search-field input, div.select2-container-multi.select2-container-active .select2-choices .select2-search-field input {
- line-height: 20px;
- min-height: 28px;
- max-height: 28px;
- color: var(--color-main-text);
- }
- div.select2-container-multi .select2-choices .select2-search-field input.select2-active, div.select2-container-multi.select2-container-active .select2-choices .select2-search-field input.select2-active {
- background: none !important;
- }
- div.select2-container {
- margin: 3px 3px 3px 0;
- }
- div.select2-container.select2-container-multi .select2-choices {
- display: flex;
- flex-wrap: wrap;
- }
- div.select2-container.select2-container-multi .select2-choices li {
- float: none;
- }
- div.select2-container a.select2-choice {
- box-shadow: none;
- white-space: nowrap;
- text-overflow: ellipsis;
- background: var(--color-main-background);
- color: var(--color-text-lighter) !important;
- box-sizing: content-box;
- border-radius: var(--border-radius-large);
- border: 2px solid var(--color-border-dark);
- margin: 0;
- padding: 6px 12px;
- min-height: 44px;
- }
- div.select2-container a.select2-choice:focus-within {
- border-color: var(--color-primary);
- }
- div.select2-container a.select2-choice .select2-search-choice {
- line-height: 20px;
- padding-left: 5px;
- background-image: none;
- background-color: var(--color-background-dark);
- border-color: var(--color-background-dark);
- }
- div.select2-container a.select2-choice .select2-search-choice .select2-search-choice-close {
- display: none;
- }
- div.select2-container a.select2-choice .select2-search-choice.select2-search-choice-focus, div.select2-container a.select2-choice .select2-search-choice:hover {
- background-color: var(--color-border);
- border-color: var(--color-border);
- }
- div.select2-container a.select2-choice .select2-arrow {
- background: none;
- border-radius: 0;
- border: none;
- }
- div.select2-container a.select2-choice .select2-arrow b {
- background: var(--icon-triangle-s-dark) no-repeat center !important;
- opacity: 0.5;
- }
- div.select2-container a.select2-choice:hover .select2-arrow b, div.select2-container a.select2-choice:focus .select2-arrow b, div.select2-container a.select2-choice:active .select2-arrow b {
- opacity: 0.7;
- }
- div.select2-container a.select2-choice .select2-search-field input {
- line-height: 20px;
- }
- /* Vue v-select */
- .v-select {
- margin: 3px 3px 3px 0;
- display: inline-block;
- }
- .v-select .dropdown-toggle {
- display: flex !important;
- flex-wrap: wrap;
- }
- .v-select .dropdown-toggle .selected-tag {
- line-height: 20px;
- padding-left: 5px;
- background-image: none;
- background-color: var(--color-main-background);
- color: var(--color-text-lighter);
- border: 1px solid var(--color-border-dark);
- display: inline-flex;
- align-items: center;
- }
- .v-select .dropdown-toggle .selected-tag .close {
- margin-left: 3px;
- }
- .v-select .dropdown-menu {
- padding: 0;
- }
- .v-select .dropdown-menu li {
- padding: 5px;
- position: relative;
- display: list-item;
- background-color: transparent;
- cursor: pointer;
- color: var(--color-text-lighter);
- }
- .v-select .dropdown-menu li a {
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- height: 25px;
- padding: 3px 7px 4px 2px;
- margin: 0;
- cursor: pointer;
- min-height: 1em;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- display: inline-flex;
- align-items: center;
- background-color: transparent !important;
- color: inherit !important;
- }
- .v-select .dropdown-menu li a::before {
- content: " ";
- background-image: var(--icon-checkmark-dark);
- background-repeat: no-repeat;
- background-position: center;
- min-width: 16px;
- min-height: 16px;
- display: block;
- opacity: 0.5;
- margin-right: 5px;
- visibility: hidden;
- }
- .v-select .dropdown-menu li.highlight {
- color: var(--color-main-text);
- }
- .v-select .dropdown-menu li.active > a {
- background-color: var(--color-background-dark);
- color: var(--color-main-text);
- }
- .v-select .dropdown-menu li.active > a::before {
- visibility: visible;
- }
- /* Vue multiselect */
- .multiselect.multiselect-vue {
- margin: 1px 2px;
- padding: 0 !important;
- display: inline-block;
- width: 160px;
- position: relative;
- background-color: var(--color-main-background);
- /* results wrapper */
- }
- .multiselect.multiselect-vue.multiselect--active {
- /* Opened: force display the input */
- }
- .multiselect.multiselect-vue.multiselect--active input.multiselect__input {
- opacity: 1 !important;
- cursor: text !important;
- }
- .multiselect.multiselect-vue.multiselect--disabled, .multiselect.multiselect-vue.multiselect--disabled .multiselect__single {
- background-color: var(--color-background-dark) !important;
- }
- .multiselect.multiselect-vue .multiselect__tags {
- /* space between tags and limit tag */
- display: flex;
- flex-wrap: nowrap;
- overflow: hidden;
- border: 1px solid var(--color-border-dark);
- cursor: pointer;
- position: relative;
- border-radius: var(--border-radius);
- height: 36px;
- /* tag wrapper */
- /* Single select default value */
- /* displayed text if tag limit reached */
- /* default multiselect input for search and placeholder */
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap {
- align-items: center;
- display: inline-flex;
- overflow: hidden;
- max-width: 100%;
- position: relative;
- padding: 3px 5px;
- flex-grow: 1;
- /* no tags or simple select? Show input directly
- input is used to display single value */
- /* selected tag */
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap:empty ~ input.multiselect__input {
- opacity: 1 !important;
- /* hide default empty text, show input instead */
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap:empty ~ input.multiselect__input + span:not(.multiselect__single) {
- display: none;
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap .multiselect__tag {
- flex: 1 0 0;
- line-height: 20px;
- padding: 1px 5px;
- background-image: none;
- color: var(--color-text-lighter);
- border: 1px solid var(--color-border-dark);
- display: inline-flex;
- align-items: center;
- border-radius: var(--border-radius);
- /* require to override the default width
- and force the tag to shring properly */
- min-width: 0;
- max-width: 50%;
- max-width: fit-content;
- max-width: -moz-fit-content;
- /* css hack, detect if more than two tags
- if so, flex-basis is set to half */
- /* ellipsis the groups to be sure
- we display at least two of them */
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap .multiselect__tag:only-child {
- flex: 0 1 auto;
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap .multiselect__tag:not(:last-child) {
- margin-right: 5px;
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__tags-wrap .multiselect__tag > span {
- white-space: nowrap;
- text-overflow: ellipsis;
- overflow: hidden;
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__single {
- padding: 8px 10px;
- flex: 0 0 100%;
- z-index: 1;
- /* above input */
- background-color: var(--color-main-background);
- cursor: pointer;
- line-height: 17px;
- }
- .multiselect.multiselect-vue .multiselect__tags .multiselect__strong,
- .multiselect.multiselect-vue .multiselect__tags .multiselect__limit {
- flex: 0 0 auto;
- line-height: 20px;
- color: var(--color-text-lighter);
- display: inline-flex;
- align-items: center;
- opacity: 0.7;
- margin-right: 5px;
- /* above the input */
- z-index: 5;
- }
- .multiselect.multiselect-vue .multiselect__tags input.multiselect__input {
- width: 100% !important;
- position: absolute !important;
- margin: 0;
- opacity: 0;
- /* let's leave it on top of tags but hide it */
- height: 100%;
- border: none;
- /* override hide to force show the placeholder */
- display: block !important;
- /* only when not active */
- cursor: pointer;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper {
- position: absolute;
- width: 100%;
- margin-top: -1px;
- border: 1px solid var(--color-border-dark);
- background: var(--color-main-background);
- z-index: 50;
- max-height: 175px !important;
- overflow-y: auto;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper .multiselect__content {
- width: 100%;
- padding: 5px 0;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li {
- padding: 5px;
- position: relative;
- display: flex;
- align-items: center;
- background-color: transparent;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li,
- .multiselect.multiselect-vue .multiselect__content-wrapper li span {
- cursor: pointer;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span {
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
- height: 20px;
- margin: 0;
- min-height: 1em;
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- display: inline-flex;
- align-items: center;
- background-color: transparent !important;
- color: var(--color-text-lighter);
- width: 100%;
- /* selected checkmark icon */
- /* add the prop tag-placeholder="create" to add the +
- * icon on top of an unknown-and-ready-to-be-created entry
- */
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span::before {
- content: " ";
- background-image: var(--icon-checkmark-dark);
- background-repeat: no-repeat;
- background-position: center;
- min-width: 16px;
- min-height: 16px;
- display: block;
- opacity: 0.5;
- margin-right: 5px;
- visibility: hidden;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span.multiselect__option--disabled {
- background-color: var(--color-background-dark);
- opacity: 0.5;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span[data-select=create]::before {
- background-image: var(--icon-add-dark);
- visibility: visible;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span.multiselect__option--highlight {
- color: var(--color-main-text);
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span:not(.multiselect__option--disabled):hover::before {
- opacity: 0.3;
- }
- .multiselect.multiselect-vue .multiselect__content-wrapper li > span.multiselect__option--selected::before, .multiselect.multiselect-vue .multiselect__content-wrapper li > span:not(.multiselect__option--disabled):hover::before {
- visibility: visible;
- }
- /* Progressbar */
- progress:not(.vue) {
- display: block;
- width: 100%;
- padding: 0;
- border: 0 none;
- background-color: var(--color-background-dark);
- border-radius: var(--border-radius);
- flex-basis: 100%;
- height: 5px;
- overflow: hidden;
- }
- progress:not(.vue).warn::-moz-progress-bar {
- background: var(--color-error);
- }
- progress:not(.vue).warn::-webkit-progress-value {
- background: var(--color-error);
- }
- progress:not(.vue)::-webkit-progress-bar {
- background: transparent;
- }
- progress:not(.vue)::-moz-progress-bar {
- border-radius: var(--border-radius);
- background: var(--color-primary);
- transition: 250ms all ease-in-out;
- }
- progress:not(.vue)::-webkit-progress-value {
- border-radius: var(--border-radius);
- background: var(--color-primary);
- transition: 250ms all ease-in-out;
- }
- /* Animation */
- @keyframes shake {
- 10%, 90% {
- transform: translate(-1px);
- }
- 20%, 80% {
- transform: translate(2px);
- }
- 30%, 50%, 70% {
- transform: translate(-4px);
- }
- 40%, 60% {
- transform: translate(4px);
- }
- }
- .shake {
- animation-name: shake;
- animation-duration: 0.7s;
- animation-timing-function: ease-out;
- }
- label.infield {
- position: absolute;
- left: -10000px;
- top: -10000px;
- width: 1px;
- height: 1px;
- overflow: hidden;
- }
- ::placeholder,
- ::-ms-input-placeholder,
- ::-webkit-input-placeholder {
- color: var(--color-text-maxcontrast);
- font-size: var(--default-font-size);
- }
- /*# sourceMappingURL=inputs.css.map */
|