:root {
    --progress-bg-color: #fffe;
    --progress-text-color: #808080;
    --progress-border-color: #9991;
    --progress-overlay-bg-color: #fff9;
    --progress-color-pulse-from: #f9f9f9;
    --progress-color-pulse-to: #eee;
}

.scriptolia-progress-default-template {
    display: none;
}

.scriptolia-progress-wrapper {
    z-index: 10001;
    position: fixed;
    left: -10000px;
    top: -10000px;
    display: table;
    width: 100%;
    height: 100%;
}

.scriptolia-progress-wrapper.absolute {
    position: absolute;
}

.scriptolia-progress {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.scriptolia-progress-contents-wrapper {
    max-width: 350px;
    width: auto;
    height: auto;
    font-size: 1rem;
    color: var(--progress-text-color);
    background-color: var(--progress-bg-color);
    text-shadow: 0px 1px 1px #0002;
    box-shadow: 0px 10px 15px #0001;
    -moz-box-shadow: 0px 10px 15px #0001;
    -webkit-box-shadow: 0px 10px 15px #0001;
    border: 1px solid var(--progress-border-color);
    border-radius: 5px;
    margin: 0 auto;
    /*margin-top: -100px;*/
}

.scriptolia-progress.flat .scriptolia-progress-contents-wrapper {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    max-width: none;
}

.scriptolia-progress-header.has-title {
    padding: 5px;
    text-align: center;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

.scriptolia-progress-contents {
    padding: 20px 30px;
}

.scriptolia-progress div.inner,
.scriptolia-progress div.outer {
     padding: 0px;
     margin: 0px;
     text-align: center;
     overflow: hidden;
     text-overflow: ellipsis;
}

.scriptolia-progress-wrapper.floating {
    width: 100%;
}

.scriptolia-progress-wrapper.bar {
    height: 7px;
    line-height: 7px;
}

.scriptolia-progress-wrapper.compact-progress .scriptolia-progress-contents,
.scriptolia-progress-wrapper.bar .scriptolia-progress-contents {
    padding: 0px;
}

.scriptolia-progress-wrapper.bar .scriptolia-progress-contents-wrapper,
.scriptolia-progress-wrapper.compact-progress .scriptolia-progress-contents-wrapper {
    margin-top: 0px;
}

.scriptolia-progress-wrapper.compact-progress.static .scriptolia-progress-contents-wrapper {
    max-width: none;
}

.scriptolia-progress-wrapper.static .progress-bar-outer {
    position: relative;
    height: 30px;
}

.scriptolia-progress-wrapper.static .scriptolia-progress-contents {
    margin: 0px;
    box-shadow: none;
}

.scriptolia-progress-wrapper .progress-bar-inner,
.scriptolia-progress-wrapper .progress-bar-outer {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.scriptolia-progress-wrapper.multiple .progress-bar-inner,
.scriptolia-progress-wrapper.compact-progress .progress-bar-inner,
.scriptolia-progress-wrapper.static .progress-bar-inner {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    padding: 0px;
}

.scriptolia-progress-wrapper.progress .progress-bar-outer,
.scriptolia-progress-wrapper.bar .progress-bar-outer,
.scriptolia-progress-wrapper.compact-progress .progress-bar-outer {
    position: relative;
    z-index: auto;
    padding: 0px;
    margin: 0px;
    background-color: #f9f9f9;
    border: 1px solid #eee;
    height: 30px;
    border-radius: 3px;
}

.scriptolia-progress-wrapper.multiple .progress-bar-outer div.outer,
.scriptolia-progress-wrapper.compact-progress .progress-bar-outer {
    padding: 0px;
}

.scriptolia-progress-wrapper.compact .progress-bar-inner,
.scriptolia-progress-wrapper.compact-progress .progress-bar-inner,
.scriptolia-progress-wrapper.progress .progress-bar-inner,
.scriptolia-progress-wrapper.bar .progress-bar-inner {
    padding: 0px;
    /*background-color: #555;*/
    box-sizing: border-box;
    text-shadow: 0px 1px 1px #0003;
    height: 100%;
    border-radius: 3px;
}

.scriptolia-progress-wrapper.compact-progress .progress-bar-outer,
.scriptolia-progress-wrapper.compact-progress .progress-bar-inner {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

.scriptolia-progress-wrapper.progress .progress-bar-outer.tiny,
.scriptolia-progress-wrapper.bar .progress-bar-outer.tiny {
    margin-bottom: 1px;
    height: 5px;
}

.scriptolia-progress-wrapper.bar .progress-bar-outer.tiny .progress-bar-inner {
    height: 5px;
}


.scriptolia-progress-wrapper.progress .progress-group .progress-bar-outer,
.scriptolia-progress-wrapper.progress .progress-group .progress-bar-inner {
    height: 5px;
    padding: 0px;
}

.scriptolia-progress-wrapper.progress .progress-total {
    margin-bottom: 5px;
}

.scriptolia-progress-wrapper.bar .progress-total .progress-bar-outer,
.scriptolia-progress-wrapper.bar .progress-total .progress-bar-inner,
.scriptolia-progress-wrapper.progress .progress-total .progress-bar-outer,
.scriptolia-progress-wrapper.progress .progress-total .progress-bar-inner {
    height: 30px;
}

.scriptolia-progress-wrapper.progress .progress-group {
    max-height: 120px;
    overflow-y: auto;
    overflow-x: hidden;
}

.scriptolia-progress-overlay {
    z-index: 10000;
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: var(--progress-overlay-bg-color);
    opacity: 0.3;
    -moz-opacity: 0.3;
    -webkit-opacitiy: 0.3;
    filter:alpha(opacity=30);
}


.scriptolia-progress-wrapper.static {
    position: relative;
    z-index: auto;
    left: 0px;
    top: 0px;
    padding: 0px;
    margin: 0px;
    z-index: auto;
}

.scriptolia-progress-wrapper.compact-progress div.outer,
.scriptolia-progress-wrapper.compact-progress div.inner {
    margin: 0px;
    padding: 0px;
    left: 0px;
    top: 0px;
    width: 100%;
}

.scriptolia-progress-wrapper.multiple div.inner,
.scriptolia-progress-wrapper.compact-progress div.inner,
.scriptolia-progress-wrapper.static div.inner {
    height: 30px;
    line-height: 30px;
    color: inherit;
}

.scriptolia-progress-wrapper.multiple div.outer,
.scriptolia-progress-wrapper.compact-progress div.outer,
.scriptolia-progress-wrapper.static div.outer {
    color: #333333;
    line-height: 30px;
}

.progress-spinner {
    margin: 0 auto;
    display: none;
}

.progress-spinner .spinner-wrapper {
    display: table-cell;
    vertical-align: middle;
}

.progress-spinner .message-wrapper {
    display: table-cell;
    vertical-align: middle;
    padding-left: 10px;
}

.progress-loading {
    display: inline-block;
    text-align: center;
    width: 100%;
}

.progress-spinner.visible {
    display: table;
}

.scriptolia-spinner,
.spinner {
    display: inline-block;
    width: 30px;
    height: 30px;
    padding: 7px;
    aspect-ratio: 1;
    -webkit-aspect-ratio: 1;
    border-radius: 50%;
    background: #aaa;
    --_m: 
      conic-gradient(#0000 5%,#000),
      linear-gradient(#000 0 0) content-box;
    -webkit-mask: var(--_m);
            mask: var(--_m);
    -webkit-mask-composite: source-out;
            mask-composite: subtract;
    animation: spinneranimation 2s infinite linear;
}

@keyframes spinneranimation {
    to{
        transform: rotate(1turn)
    }
}

.scriptolia-color-pulse {
    animation: color-pulse-animation 2s ease-in-out infinite;
}

@keyframes color-pulse-animation {
    0%, 100% {
        background-color: var(--progress-color-pulse-from);
    }
    50% {
        background-color: var(--progress-color-pulse-to);
    }
}
