/* Global loading */
.ply-global-loading {
    top: 50%;
    left: 50%;
    padding: 30px;
    width: 60px;
    height: 60px;
    margin: -100px 0 0 -60px;
    z-index: 100000;
    position: fixed;
    border-radius: 10%;
    background-color: rgba(255,255,255,.5);
    box-shadow: 0 1px 2px rgba(0,0,0,.2);
}

.ply-loading-spinner {
    width: 100%;
    height: 100%;
    opacity: .9;
    background: #fff;
    border-radius: 100%;
    overflow: hidden;
    position: relative;
    box-shadow: 0 1px 3px rgba(0,0,0,.6);
}

.ply-loading-spinner::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #333;
    max-height: 0;
    -webkit-animation: loading 3s normal infinite;
    animation: loading 3s normal infinite;
}

@keyframes loading {
  0%   { max-height: 0; }
  50%  { max-height: 100%; top: 0; }
  100% { max-height: 0; top: 120%; }
}

@-webkit-keyframes loading {
  0%   { max-height: 0; }
  50%  { max-height: 100%; top: 0; }
  100% { max-height: 0; top: 120%; }
}


/* Layer */
.ply-layer {
    color: #333;
    min-width: 280px;
    box-shadow: 0 0 3px rgba(0,0,0,.3);
    background-color: #fff;
    border-radius: 2px;
    font-size: 16px;
    font-family: "Arial", Helvetica;
}
.ply-layer.alert .ply-content,
.ply-layer.confirm .ply-content {
    padding: 20px 0 15px;
    text-align: center;
}

.ply-layer.base .ply-footer,
.ply-layer.alert .ply-footer,
.ply-layer.confirm .ply-footer,
.ply-layer.prompt .ply-footer {
    margin-top: 20px;
    text-align: center;
}

.ply-inside {
    padding: 20px;
}

.ply-header {
    margin: -20px -20px 20px;
    padding: 10px 20px;
    font-size: 18px;
    background-color: #f1f3f1;
    border-radius: 2px 2px 0 0;
    color: #ee3d50;
}

.ply-content {
    
}

.ply-footer {
    
}
.ply-footer .ply-ctrl {
    margin-left: 20px;
}
.ply-footer .ply-ctrl:first-child {
    margin-left: 0;
}


/* Controls */
.ply-x {
    top: 12px;
    right: 5px;
    cursor: pointer;
    padding: 5px;
    z-index: 1000;
    position: absolute;
    font-size: 20px;
    line-height: 0;
}

.ply-ok,
.ply-cancel {
    color: #fff;
    cursor: pointer;
    border: 0;
    outline: 0;
    padding: 5px 20px;
    box-shadow: 0 1px 1px rgba(0,0,0,.2);
    background-color: #39C082;
    border-radius: 30px;
    font-size: 18px;
}

.ply-ok {
    width: 100px;
}

.ply-cancel {
    background-color: #ee3d50;
}
.ply-ok:focus,
.ply-cancel:focus {
    box-shadow: 0 0 1px 2px rgba(255, 180, 0, .6);
    border: 2px solid rgb(255, 210, 102)\9;
}

.ply-ok::-moz-focus-inner,
.ply-cancel::-moz-focus-inner {
    border: 0;
}



/* Forms */
.ply-input {
    width: 100%;
    border: 1px solid #e9ecef;
    border-radius: 2px;
    color: #3b3f5c;
    outline: 0;
    padding: 5px 10px;
    margin-top: 15px;
    font-size: 16px;
    font-family: "Arial", Helvetica;
    box-sizing: border-box;
}
.ply-input:first-child {
    margin-top: 0;
}

.ply-input:focus {
    border-color: #e95f2b;
}



/* Global modifiers */
.ply-invalid .ply-input {
    border-color: #c00;
}

.ply-loading:before {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    content: '';
    position: absolute;
}

.ply-loading .ply-ok {
    color: rgba(255,255,255,.7);
    -webkit-animation: ply-ok-loading 1s linear infinite;
       -moz-animation: ply-ok-loading 1s linear infinite;
            animation: ply-ok-loading 1s linear infinite;
    -webkit-background-size: 30px 30px;
   -moz-background-size: 30px 30px;
            background-size: 30px 30px;
    background-image: -webkit-gradient(linear, left top, right bottom,
                                            color-stop(.25, rgba(255, 255, 255, .15)), color-stop(.25, transparent),
                                            color-stop(.5, transparent), color-stop(.5, rgba(255, 255, 255, .15)),
                                            color-stop(.75, rgba(255, 255, 255, .15)), color-stop(.75, transparent),
                                            to(transparent));
    background-image: -webkit-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
                                            transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
                                            transparent 75%, transparent);
    background-image: -moz-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
                                            transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
                                            transparent 75%, transparent);
    background-image: -ms-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
                                            transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
                                            transparent 75%, transparent);
    background-image: -o-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
                                            transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
                                            transparent 75%, transparent);
    background-image: linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
						transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
						transparent 75%, transparent);
}

@-webkit-keyframes ply-ok-loading {
    to { background-position: 60px; }
}

@-moz-keyframes ply-ok-loading {
    to { background-position: 60px; }
}

@keyframes ply-ok-loading {
    to { background-position: 60px; }
}
