﻿.tagify{
    display:flex;
    width: 100%;
    flex-wrap:wrap;
    border:1px solid #ddd;
    padding:0;
    cursor:text;
    position:relative;
    -webkit-transition:.1s;
    -o-transition:.1s;
    transition: .1s;
    background: #fff;
}
.tagify > *:last-child {
    flex: 1;
}
    @-webkit-keyframes tags--bump {
        30%{
        -webkit-transform:scale(1.2);
        transform:scale(1.2)
    }
}
@keyframes tags--bump{
    30%{
        -webkit-transform:scale(1.2);
        transform:scale(1.2)
    }
}
.tagify:hover{
    border-color:#ccc
}
.tagify.tagify--focus{
    border-color:#85c8ea
}
.tagify[readonly]{
    cursor:default
}
.tagify[readonly]>.tagify__input{
    visibility:hidden;
    width:0;
    margin:5px 0
}
.tagify[readonly] x{
    display:none
}
.tagify[readonly] tag>div{
    padding:.3em .5em
}
.tagify[readonly] tag>div::before{
    background:-webkit-linear-gradient(45deg,#d6d6d6 25%,transparent 25%,transparent 50%,#d6d6d6 50%,#d6d6d6 75%,transparent 75%,transparent) 0/5px 5px;
    background:-o-linear-gradient(45deg,#d6d6d6 25%,transparent 25%,transparent 50%,#d6d6d6 50%,#d6d6d6 75%,transparent 75%,transparent) 0/5px 5px;
    background:linear-gradient(45deg,#d6d6d6 25%,transparent 25%,transparent 50%,#d6d6d6 50%,#d6d6d6 75%,transparent 75%,transparent) 0/5px 5px;
    -webkit-box-shadow:none;
    box-shadow:none
}
.tagify+input,.tagify+textarea{
    border:0;
    display:none
}
.tagify tag{
    display:inline-block;
    margin:5px 0 5px 5px;
    position:relative;
    z-index:1;
    cursor:default;
    -webkit-transition:.13s ease-out;
    -o-transition:.13s ease-out;
    transition:.13s ease-out
}
.tagify tag.tagify--editable>div::before{
    -webkit-box-shadow:0 0 0 2px #d3e2e2 inset!important;
    box-shadow:0 0 0 2px #d3e2e2 inset!important
}
.tagify tag.tagify--editable.tagify--invalid>div::before{
    -webkit-box-shadow:0 0 0 2px #d39494 inset!important;
    box-shadow:0 0 0 2px #d39494 inset!important
}
.tagify tag>div{
    vertical-align:top;
    position:relative;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    max-width:100%;
    padding:.3em .5em;
    color:#000;
    border-radius:3px;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    -webkit-transition:.13s ease-out;
    -o-transition:.13s ease-out;
    transition:.13s ease-out;
    padding-right: 1.5em;
    background: #dc0d8a;
    color: #fff;
    font-weight: 500;
}
.tagify tag>div>*{
    white-space:nowrap;
    overflow:hidden;
    -o-text-overflow:ellipsis;
    text-overflow:ellipsis;
    display:inline-block;
    vertical-align:top
}
.tagify tag>div>[contenteditable]{
    outline:0
}
.tagify tag>div::before{
    content:'';
    position:absolute;
    border-radius:inherit;
    left:0;
    top:0;
    right:0;
    bottom:0;
    -webkit-box-shadow:0 0 0 16px #e5e5e5 inset;
    box-shadow:0 0 0 16px #e5e5e5 inset;
    z-index:-1;
    pointer-events:none;
    -webkit-transition:120ms ease;
    -o-transition:120ms ease;
    transition:120ms ease;
    -webkit-animation:.3s tags--bump 1 ease-out;
    animation:.3s tags--bump 1 ease-out
}
.tagify tag:hover:not([readonly]) div::before{
    top:-2px;
    right:-2px;
    bottom:-2px;
    left:-2px;
    -webkit-box-shadow:0 0 0 16px #d3e2e2 inset;
    box-shadow:0 0 0 16px #d3e2e2 inset
}
.tagify tag.tagify--noAnim{
    -webkit-animation:none;
    animation:none
}
.tagify tag.tagify--hide{
    width:0!important;
    padding-left:0;
    padding-right:0;
    margin-left:0;
    margin-right:0;
    opacity:0;
    -webkit-transform:scale(0);
    -ms-transform:scale(0);
    transform:scale(0);
    -webkit-transition:.3s;
    -o-transition:.3s;
    transition:.3s;
    pointer-events:none
}
.tagify tag.tagify--mark div::before{
    -webkit-animation:none;
    animation:none
}
.tagify tag.tagify--notAllowed div>span{
    opacity:.5
}
.tagify tag.tagify--notAllowed div::before{
    -webkit-box-shadow:0 0 0 20px rgba(211,148,148,.44) inset!important;
    box-shadow:0 0 0 20px rgba(211,148,148,.44) inset!important;
    -webkit-transition:.2s;
    -o-transition:.2s;
    transition:.2s
}
.tagify tag[readonly] x{
    display:none
}
.tagify tag[readonly]>div{
    padding:.3em .5em
}
.tagify tag[readonly]>div::before{
    background:-webkit-linear-gradient(45deg,#d6d6d6 25%,transparent 25%,transparent 50%,#d6d6d6 50%,#d6d6d6 75%,transparent 75%,transparent) 0/5px 5px;
    background:-o-linear-gradient(45deg,#d6d6d6 25%,transparent 25%,transparent 50%,#d6d6d6 50%,#d6d6d6 75%,transparent 75%,transparent) 0/5px 5px;
    background:linear-gradient(45deg,#d6d6d6 25%,transparent 25%,transparent 50%,#d6d6d6 50%,#d6d6d6 75%,transparent 75%,transparent) 0/5px 5px;
    -webkit-box-shadow:none;
    box-shadow:none
}
.tagify tag x{
    font:14px/16px Serif;
    width:14px;
    height:14px;
    text-align:center;
    border-radius:50px;
    position:absolute;
    z-index:1;
    right:calc(.5em - 2px);
    top:50%;
    cursor:pointer;
    -webkit-transform:translateY(-50%);
    -ms-transform:translateY(-50%);
    transform:translateY(-50%);
    -webkit-transition:.2s ease-out;
    -o-transition:.2s ease-out;
    transition: .2s ease-out;
    color: #fff;
    font-weight: 500;
    background: rgba(255, 255, 255, 0.4);
}
.tagify tag x::after{
    content:"\00D7"
}
.tagify tag x:hover{
    color:red;
    background: #fff;
}
.tagify tag x:hover+div>span{
    opacity:.8
}
.tagify tag x:hover+div::before{
    -webkit-box-shadow:0 0 0 20px rgba(211,148,148,.3) inset!important;
    box-shadow:0 0 0 20px rgba(211,148,148,.3) inset!important;
    -webkit-transition:.2s;
    -o-transition:.2s;
    transition:.2s
}
.tagify__input{
    min-width:110px;
    margin:5px;
    padding:.3em .5em;
    position:relative
}
.tagify__input:empty::before{
    -webkit-transition:.2s ease-out;
    -o-transition:.2s ease-out;
    transition:.2s ease-out;
    opacity:.5;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none
}
.tagify__input:focus{
    outline:0
}
.tagify__input:focus::before{
    -webkit-transition:.2s ease-out;
    -o-transition:.2s ease-out;
    transition:.2s ease-out;
    opacity:0;
    -webkit-transform:translatex(6px);
    -ms-transform:translatex(6px);
    transform:translatex(6px)
}
@supports (-moz-appearance:none){
    .tagify__input:focus::before{
        display:none
    }
}
.tagify__input:focus:empty::before{
    -webkit-transition:.2s ease-out;
    -o-transition:.2s ease-out;
    transition:.2s ease-out;
    opacity:.3;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none
}
@supports (-moz-appearance:none){
    .tagify__input:focus:empty::before{
        display:inline-block
    }
}
.tagify__input::before{
    content:attr(data-placeholder);
    line-height:1.8;
    position:absolute;
    top:5px;
    z-index:1;
    color:#000;
    white-space:nowrap;
    pointer-events:none;
    opacity:0
}
@supports (-moz-appearance:none){
    .tagify__input::before{
        line-height:inherit;
        position:relative
    }
}
.tagify__input::after{
    content:attr(data-suggest);
    color:#000;
    opacity:.3;
    pointer-events:none
}
.tagify__input tag{
    margin:0 2.5px
}
.tagify__input tag>div{
    padding-top:0;
    padding-bottom:0
}
.tagify__input tag>div::before{
    top:-3px;
    bottom:-3px
}
.tagify__input tag:hover:not([readonly])>div::before{
    top:-3px;
    bottom:-3px;
    left:0;
    right:0
}
.tagify--mix .tagify__input{
    padding:5px;
    margin:0;
    width:100%;
    height:100%
}
.tagify__dropdown {
    position: absolute;
    z-index: 999;
    background: #efefef;
    max-height: 300px;
    overflow: auto;
    border: 1px solid #c0c0c0;
    border-top: 0;
    -webkit-box-shadow: 0 2px 4px -2px rgba(0,0,0,.2);
    box-shadow: 0 2px 4px -2px rgba(0,0,0,.2);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    box-shadow: rgba(0, 0, 0, 0.25) 0 54px 55px, rgba(0, 0, 0, 0.12) 0 -12px 30px, rgba(0, 0, 0, 0.12) 0 4px 6px, rgba(0, 0, 0, 0.17) 0 12px 13px, rgba(0, 0, 0, 0.09) 0 -3px 5px;
}
.tagify__dropdown__item {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
    padding: .35em .6em;
    margin: 2px;
    cursor: pointer;
    border-radius: 3px;
    position: relative
}
.tagify__dropdown__item--active{
    background: #e5e5e5;
}
.tagify__dropdown__item:active{
    background:#f2f2f2
}
 

 /* Tag viewer */
ul.tagViewer {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0;
}
ul.tagViewer li {
    display: inline-block;
    margin: 0;
    padding: 0;
    margin-right: 3px;
    margin-bottom: 3px;
}
ul.tagViewer li:last-child {
    margin-right: 0;
}
    ul.tagViewer li a,
    .suggestedTagWrapper ul li  a {
        color: #fff;
        font-weight: 500;
        background: #dc0d8a;
        display: block;
        border-radius: 3px;
        font-size: 1rem;
        padding: 2px 12px;
        transition: all 300ms ease-out;
    }
ul.tagViewer li a.contextTag {
    background: #b7046e;
}
.tagify__dropdown__item {
    display: inline-block;
    border-radius: 3px;
    padding: 2px 16px;
    border: 0;
    background: #dc0d8a;
    margin: .2em;
    font-size: .85em;
    color: #fff;
    font-weight: 500;
    transition: 0s;
}

.tagify__dropdown__item--active {
    opacity: 0.8;
    text-decoration: underline;
}

.tagify__dropdown__item:hover {
}
.suggestedTagWrapper {
    background: #efefef;
    padding: 16px;
    display: none;
    border: 1px solid #ddd;
    border-top: 0;
    margin-right: 16px;
}
.suggestedTagWrapper ul {
    list-style: none;
    margin: -2px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.suggestedTagWrapper ul li {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    margin: 2px;
}
.suggestedTagWrapper h3 {
    margin: 0;
    padding: 0;
    font-family: 'Roboto', Arial, sans-serif;
    font-size: 0.85rem;
    line-height: 100%;
    padding-bottom: 6px;
    font-weight: 500;
}
.suggestedTagWrapper ul li a {
    font-size: 1rem;
    line-height: 100%;
    padding: 4px 8px;
}