@charset "UTF-8";

@font-face {
    font-family: 'ServconnectIcons';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url("/assets/fonts/Servconnect3-Icons.woff2") format("woff2");
}

@font-face {
    font-family: 'Inter';
    font-weight: 100 900;
    font-display: swap;
    font-style: normal;
    font-named-instance: 'Regular';
    src: url("/assets/fonts/Inter.woff2") format("woff2");
}

@font-face {
    font-family: 'Inter';
    font-weight: 100 900;
    font-display: swap;
    font-style: italic;
    font-named-instance: 'Italic';
    src: url("/assets/fonts/Inter.woff2") format("woff2");
}




icon {
    font-family: 'servconnectIcons';
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    color: #222222;
    text-align: center;
}

body.theme-white icon {
    color: #000000;
}

*,
h1,
h2,
h3,
h4,
h5,
h6,
a {
    margin: 0;
    padding: 0;
    text-decoration: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

*,
::after,
::before {
    box-sizing: border-box
}

:root {
    --accent-color: #4454ed;
    --accent-color-dark: #2e3aa2;
    --accent-color-light: #6876ff;
    --color-red: #de2d2d;
    --color-green: #3dc226;
    --color-orange: #e7842d;
    --generic-element-margin: 32px;
}

@media(min-width: 900px) {
    :root {
        --app-height: 100vh;
        --app-border-radius: 0;
    }
}

@media(max-width: 700px) {
    :root {
        --generic-element-margin: 16px;
    }
}

::-moz-selection {
    color: #ffffff;
    background: var(--accent-color);
}

::selection {
    color: #ffffff;
    background: var(--accent-color);
}



body {
    margin: 0;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, "Helvetica Neue", Arial, "Inter", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25;
    text-align: left;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    background-color: #ffffff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}

body.theme-white {
    background-color: #ffffff;
}

opac {
    opacity: .6;
}



input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
    appearance: textfield;
}

input,
textarea {
    position: relative;
    display: block;
    width: 100%;
    padding: 2px 8px;
    border-radius: 0px;
    font-size: 15px;
    line-height: 1.25;
    font-family: "Inter", sans-serif;
    color: #000000;
    border: none;
    background: transparent;
    box-shadow: none;
    outline-width: 0px;
    outline-style: none;
    outline-color: transparent;
    -webkit-appearance: none;
    appearance: none;
    cursor: text;
}

@media(max-width: 360px) {

    input,
    textarea {
        font-size: 14px;
    }
}

input.f-code {
    font-family: "Source Code Pro", monospace;
}

input:focus,
textarea:focus {
    background: transparent;
    border: none;
}

input::placeholder {
    color: #888888;
}

norm {
    text-transform: none;
}

textarea {
    resize: none;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, "Helvetica Neue", Arial, "Inter", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
}

a,
lnk {
    display: inline-block;
    margin: 0;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, "Helvetica Neue", Arial, "Inter", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25;
    color: var(--accent-color);
    text-decoration: none;
    cursor: pointer;
    margin: 8px 0;
}

a:active,
lnk:active {
    opacity: .6;
    text-decoration: none;
}

select,
selectview {
    position: relative;
    display: block;
    width: 100%;
    padding: 2px 8px;
    outline: unset;
    border-radius: 0px;
    font-size: 15px;
    line-height: 1.25;
    font-family: "Inter", sans-serif;
    color: #000000;
    border: unset;
    background: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: rgb(100,100,100)" viewBox="0 0 56 56"><path d="M 28 7.2578 C 27.4844 7.2578 26.9688 7.4687 26.4063 7.9375 L 10.6094 20.7578 C 10.2110 21.1094 9.9766 21.6016 9.9766 22.3047 C 9.9766 23.5234 10.8906 24.4375 12.1328 24.4375 C 12.6250 24.4375 13.1406 24.2500 13.6797 23.8281 L 28 12.1562 L 42.3203 23.8281 C 42.8594 24.2500 43.3750 24.4375 43.8906 24.4375 C 45.1094 24.4375 46.0234 23.5234 46.0234 22.3047 C 46.0234 21.6016 45.7890 21.1094 45.3906 20.7578 L 29.5937 7.9140 C 29.0312 7.4687 28.5390 7.2578 28 7.2578 Z M 28 48.7422 C 28.5390 48.7422 29.0312 48.5312 29.5937 48.0859 L 45.3906 35.2422 C 45.7890 34.8906 46.0234 34.3984 46.0234 33.6953 C 46.0234 32.4765 45.1094 31.5391 43.8906 31.5391 C 43.3750 31.5391 42.8594 31.7500 42.3203 32.1718 L 28 43.8437 L 13.6797 32.1718 C 13.1406 31.7500 12.6250 31.5391 12.1328 31.5391 C 10.8906 31.5391 9.9766 32.4765 9.9766 33.6953 C 9.9766 34.3984 10.2110 34.8906 10.6094 35.2422 L 26.4063 48.0625 C 26.9688 48.5312 27.4844 48.7422 28 48.7422 Z"/></svg>');
    background-repeat: no-repeat;
    background-position-x: calc(100% - -2px);
    background-position-y: 3px;
}

@media(max-width: 360px) {

    select,
    selectview {
        font-size: 14px;
    }
}

body.theme-white select,
body.theme-white selectview {
    color: #000000;
}



body selectview {
    display: flex;
    align-items: center;
}

body selectview > p {
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.25;
    color: #f0f0f0;
    font-family: "Inter", sans-serif;
}

body.theme-white selectview > p {
    color: #000000;
}

body selectview > p:not(:first-child) {
    margin: 0 0 0 8px;
}



h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
eh1,
eh2,
eh3,
eh4,
eh5,
eh6 {
    font-family: "Inter", sans-serif;
    margin: 0;
    letter-spacing: 0.25px;
    line-height: 1.25;
    cursor: default;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 2px 0;
}

h6 {
    font-size: 15px;
    font-weight: 550;
}

h5 {
    font-size: 18px;
    font-weight: 500;
}

h4 {
    font-size: 20px;
    font-weight: 500;
}


h3 {
    font-size: 24px;
    font-weight: 400;
}

h2 {
    font-size: 28px;
    font-weight: 400;
}

h1 {
    font-size: 32px;
    font-weight: 400;
}


p,
slink,
span {
    position: relative;
    margin-top: 0;
    font-size: 14px;
    cursor: default;
    font-weight: 400;
}

@media(max-width: 1200px) {
    h6 {
        font-size: 15px;
    }

    h5 {
        font-size: 16px;
    }

    h4 {
        font-size: 22px;
    }

    h3 {
        font-size: 24px;
    }

    h2 {
        font-size: 28px;
    }

    h1 {
        font-size: 32px;
    }

    p,
    slink {
        font-size: 13px;
    }
}

@media(max-width: 330px) {
    h6 {
        font-size: 14px;
    }

    h4 {
        font-size: 18px;
    }

    h3 {
        font-size: 20px;
    }
}



h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    color: #191919;
}


body.sc-dark h1,
body.sc-dark h2,
body.sc-dark h3,
body.sc-dark h4,
body.sc-dark h5,
body.sc-dark h6,
body.sc-dark .h1,
body.sc-dark .h2,
body.sc-dark .h3,
body.sc-dark .h4,
body.sc-dark .h5,
body.sc-dark .h6 {
    color: #f0f0f0;
}

body p,
body span {
    color: #505050;
}



body.theme-white h1,
body.theme-white h2,
body.theme-white h3,
body.theme-white h4,
body.theme-white h5,
body.theme-white h6,
body.theme-white .h1,
body.theme-white .h2,
body.theme-white .h3,
body.theme-white .h4,
body.theme-white .h5,
body.theme-white .h6 {
    color: #000000;
}

body.theme-white p {
    color: #333333;
}



slink {
    color: #808080;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    pointer-events: none;
}

slink.a {
    pointer-events: all;
    color: var(--accent-color);
}

slink > p {
    position: relative;
    color: #808080;
    display: inline-block;
    white-space: nowrap;
    cursor: pointer;
    margin: 0;
    padding: 0;
    font-size: 15px;
}

slink.a:not(.d) > p {
    color: var(--accent-color);
}

slink.a:not(.d):hover > p {
    text-decoration: underline;
}

slink.a:not(.d):active {
    opacity: .5;
}

slink > icon {
    position: relative;
    display: block;
    width: 17px;
    height: 19px;
    font-size: 17px;
    margin: 0 4px 0 0;
    color: #808080;
}

slink.a:not(.d) > icon {
    color: var(--accent-color);
}

slink.more::after {
    position: relative;
    color: var(--accent-color);
    content: 'arrow_forward_ios';
    font-family: "Material Symbols Rounded";
    font-size: 14px;
    display: inline-block;
    vertical-align: bottom;
    padding: 0 0 0 2px;
}

code {
    position: relative;
    font-family: 'Source Code Pro', monospace;
    white-space: pre-wrap;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    word-wrap: break-word;
    color: #0a0a0a;
    font-size: 14px;
    max-width: 100%;
    -moz-user-select: unset;
    -webkit-user-select: unset;
    user-select: unset;
    -webkit-tap-highlight-color: unset;
}

code::-moz-selection {
    color: var(--accent-color);
    background: rgba(0, 0, 0, .1);
}

code::selection {
    color: var(--accent-color);
    background: rgba(0, 0, 0, .1);
}

@media(prefers-color-scheme:dark) {
    code {
        position: relative;
        font-family: 'Source Code Pro', monospace;
        white-space: normal;
        color: #f0f0f0;
    }

    code::-moz-selection {
        background: rgba(255, 255, 255, .1);
    }

    code::selection {
        background: rgba(255, 255, 255, .1);
    }
}


button {
    position: relative;
    display: inline-block;
    outline: unset;
    box-shadow: unset;
    border: unset;
    font-family: "Inter", sans-serif;
    font-size: 17px;
    font-weight: 400;
    background: transparent;
    text-transform: lowercase;
    border-radius: 0;
    padding: 2px 16px 4px;
    color: #ffffff;
    cursor: pointer;
    border: 3px solid #ffffff;
}


button:active {
    background: #ffffff;
    color: #000000;
}

@media(max-width: 900px) {
    button:active {
        background: var(--accent-color);
        color: #ffffff;
    }
}

@media(min-width: 901px) {
    button.desktop-highlight:not(:active) {
        background: var(--accent-color);
    }
}

button.grey {
    background: #222222;
    border: 1px solid #333333;
    color: var(--accent-color);
}

button.grey:hover {
    background: #252525;
    border: 1px solid #333333;
}

button.grey:active {
    background: #202020;
    border: 1px solid #333333;
}

body.sc-dark button.grey {
    background: #333333;
    border: 1px solid #555555;
    color: var(--accent-color);
}

body.sc-dark button.grey:hover {
    background: #353535;
    border: 1px solid #555555;
}

body.sc-dark button.grey:active {
    background: #252525;
    border: 1px solid #353535;
}

button.grey.delete,
slink.delete,
finput.b.delete p,
finput.b.delete icon,
actions entry.delete icon,
actions entry.delete p,
imagegrid multisel entry.delete icon,
imagegrid multisel entry.delete p,
sbutton.delete > content > p {
    color: #cc3434;
}


actions entry.d {
    pointer-events: none;
    opacity: .5;
}

actions entry.d h6,
actions entry.d p,
actions entry.d icon {
    color: #666666;
}



button.delete:not(.grey) {
    background: var(--color-red);
    border: 1px solid var(--color-red);
    color: #111111;
}

button.delete:not(.grey):hover {
    background: var(--color-red);
    border: 1px solid var(--color-red);
}

button.delete:not(.grey):active {
    background: var(--color-red);
    border: 1px solid var(--color-red);
}

p.delete {
    color: var(--color-red);
}

p.warning {
    color: #e38043;
}

a.delete,
a.red {
    color: var(--color-red);
}

a.disabled {
    color: #8e8e8e;
    pointer-events: none;
}


actions > content > entry.disabled,
imagegrid > multisel > content > entry.disabled {
    pointer-events: none;
    background: unset !important;
}

actions > content > entry.disabled > p,
actions > content > entry.disabled > icon,
actions > content > entry.disabled:hover > p,
actions > content > entry.disabled:hover > icon,
imagegrid > multisel > content > entry.disabled > p,
imagegrid > multisel > content > entry.disabled > icon,
imagegrid > multisel > content > entry.disabled:hover > p,
imagegrid > multisel > content > entry.disabled:hover > icon {
    color: #353535;
}



entry.actions-search {
    display: flex;
    align-items: center;
    transition: flex .2s cubic-bezier(0.215, 0.610, 0.355, 1), width .2s cubic-bezier(0.215, 0.610, 0.355, 1), padding .2s cubic-bezier(0.215, 0.610, 0.355, 1), background .2s linear;
    border: 1px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    justify-content: flex-start;
}

entry.actions-search.ex {
    background: #111111;
    border: 1px solid #292929;
    cursor: text;
    padding: 8px 10px;
    height: 40px;
}

entry.actions-search.ex:focus-within {
    border: 1px solid rgba(var(--accent-color), 1);
}

entry.actions-search.ex:hover,
entry.actions-search.ex:active {
    opacity: 1;
}

entry.actions-search > icon {
    transition: color .2s linear, transform .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

entry.actions-search > icon:first-of-type {
    flex: 0 0 24px;
}

entry.actions-search.ex > icon {
    color: #cccccc;
    transform: scale(.8);
    cursor: text;
}

entry.actions-search > icon:last-of-type {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 26px;
    height: 26px;
    color: #ffffff;
    border-radius: 50%;
    background: rgba(155, 155, 155, .25);
    cursor: pointer;
    font-size: 18px;
}

entry.actions-search:not(.ex) > icon:last-of-type {
    display: none;
}

entry.actions-search > input {
    position: relative;
    display: inline-block;
    width: unset;
    background: transparent;
    border: 0;
    outline: 0;
    padding: 0 0 0 8px;
    height: 100%;
    flex: 1 1;
    transition: opacity .05s linear;
    opacity: 0;
    pointer-events: none;
}

entry.actions-search.ex > input {
    transition: opacity .2s linear .1s;
    opacity: 1;
    pointer-events: all;
}

entry.actions-search > input:focus {
    outline: 0;
    border: 0;
}






/* ---- Section ---- */

section {
    position: relative;
    width: 100%;
    display: block;
    -webkit-overflow-scrolling: touch;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

section:not(:first-child) {
    padding-top: 10px;
}

@media(min-width: 901px) {
    section.bg-1 {
        background: rgba(155, 155, 155, .05);
    }

    section.bg-2 {
        background: rgba(155, 155, 155, .1);
    }

    section.bg-3 {
        background: rgba(155, 155, 155, .15);
    }

    section.bg-4 {
        background: rgba(155, 155, 155, .2);
    }

    section.bg-5 {
        background: rgba(155, 155, 155, .25);
    }

    section.bg-6 {
        background: rgba(155, 155, 155, .3);
    }

    section.bg-6 {
        background: rgba(155, 155, 155, .35);
    }

    section {
        transition: background .1s linear;
    }
}


view > nocontent {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    z-index: 6;
    transform: translate3d(0, 0, 0);
}



view > nocontent > content {
    position: relative;
    display: block;
    text-align: center;
    padding: 42px;
}

view > nocontent > content > h2,
view > nocontent > content > p {
    position: relative;
    display: block;
    text-align: center;
}




section > content {
    position: relative;
    width: 100%;
    flex: 1 1 100%;
    display: block;
    transform: translate3d(0, 0, 0);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

view section > content > * {
    margin: 32px 0;
}

view section > content > *:last-child {
    margin-bottom: 0;
}

view section > content > *:first-child {
    margin-top: 0;
}

view section > content > scform:first-child {
    margin-top: 0;
}





section > contentwrap > titlewrap {
    position: sticky;
    left: 0;
    top: 0;
    width: 100%;
    height: 300px;
    flex: 0 0 300px;
    display: inline-block;
    padding: 42px 0 0 0;
    z-index: 2;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    display: none;
}



@media(min-width: 1000px) {
    section > contentwrap {
        overflow: visible;
    }


    section > contentwrap > titlewrap {
        flex: 0 0 350px;
        width: 350px;
    }
}

@media(min-width: 1200px) {
    section > contentwrap > titlewrap {
        flex: 0 0 400px;
        width: 400px;
    }
}

@media(min-width: 1500px) {
    section > contentwrap > titlewrap {
        flex: 0 0 500px;
        width: 500px;
    }
}


section > contentwrap > titlewrap > h6 {
    position: relative;
    display: block;
    font-weight: 200;
    font-size: 42px;
    text-transform: lowercase;
    padding: 0 24px 0 0;
    z-index: 2;
    font-size: 38px;
    width: 100%;
    min-height: 54px;
    display: block;
    text-transform: lowercase;
    font-weight: 300;
}





/* --- Mobile actions --- */
body > content > actionsbg {

    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    z-index: 9;
}

body > mobilebar {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    display: none;
    height: 68px;
    flex: 0 0 68px;
    padding: 0;
    overflow: visible;
    z-index: 20;
    opacity: 1;
    border-bottom: unset;
    padding: 0 8px 8px;
    transform: translate3d(0, 100%, 0);
}

@media(max-width: 360px) {
    body > mobilebar {
        height: 52px;
        flex: 0 0 52px;
        padding: 0;
    }
}

body > mobilebar::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, #ffffff 0%, transparent 100%);
    content: '';
}


body > mobilebar > contentwrap {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 1000px;
    background: #ffffff;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, .1);
    border: 1px solid #dddddd;
}

@media(max-width: 360px) {
    body > mobilebar > contentwrap {
        width: calc(100% + 2px);
        margin-left: -1px;
        border-radius: 8px;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
    }
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    body > mobilebar > contentwrap {
        background: linear-gradient(to bottom, #ffffffdd 0%, #ffffff 100%);
        -webkit-backdrop-filter: blur(12px) saturate(150%);
        backdrop-filter: blur(12px) saturate(150%);
    }
}

body > mobilebar > contentwrap > content {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

body > mobilebar > contentwrap > content > actions,
body > mobilebar > contentwrap > content > editbar {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex: 1 1 100%;
    align-items: center;
    padding: 8px 0;
}

body > mobilebar > contentwrap > content > editbar {
    overflow: hidden;
    justify-content: space-between;
}

body > mobilebar > contentwrap > content > editbar > sbutton {
    height: 100%;
    flex: 0 0 20%;
    min-width: 80px;
    margin: 0 8px;
    text-align: center;
    border-radius: 5000px;
    background: transparent;
}

body > mobilebar > contentwrap > content > editbar > sbutton:first-of-type::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: '';
    background: var(--accent-color);
    opacity: .12;
}

body > mobilebar > contentwrap > content > editbar > sbutton.a:active:first-of-type::before {
    background: var(--accent-color-dark);
    opacity: .18;
}

body > mobilebar > contentwrap > content > editbar > sbutton:first-of-type > content > p {
    color: var(--accent-color);
}

body > mobilebar > contentwrap > content > editbar > textwrap {
    position: relative;
    display: block;
    flex: 1 1 100%;
}


body > mobilebar > contentwrap > content > editbar > textwrap > p:first-of-type {
    text-transform: uppercase;
    font-weight: 650;
    font-size: 11px;
    color: var(--accent-color);
}

body > mobilebar > contentwrap > content > editbar > textwrap > p:last-of-type {
    font-size: 13px;
    margin: 0;
    padding: 0;
}

body > mobilebar > contentwrap > content > actions {
    padding: 0 0 0 8px;
    overflow: auto;
}

body > mobilebar > contentwrap > content > actions > content {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: auto;
    display: flex;
    flex: 1 1 100%;
    align-items: center;
}

body > mobilebar > contentwrap > content > actions > content::-webkit-scrollbar {
    height: 0;
    width: 0;
    display: none;
}


body > mobilebar > contentwrap > content > actions entry {
    position: relative;
    height: 100%;
    width: auto;
    flex: 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 0;
    cursor: pointer;
}

body > mobilebar > contentwrap > content > actions entry > content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 5000px;
    padding: 8px 12px;
    overflow: hidden;
    pointer-events: none;
}

body > mobilebar > contentwrap > content > actions > entry {
    margin: 0 8px;
}

body > mobilebar > contentwrap > content > actions > entry > content {
    padding: 8px 12px 10px 8px;
}

body > mobilebar > contentwrap > content > actions entry.back {
    margin: 0;
    flex: 0 0 64px;
    overflow: hidden;
}

@media(max-width: 360px) {
    body > mobilebar > contentwrap > content > actions entry.back {
        flex: 0 0 42px;
    }
}

body > mobilebar > contentwrap > content > actions entry.back > content {
    padding: 8px;
}

body > mobilebar > contentwrap > content > actions entry:active > content::before,
body > mobilebar > contentwrap > content > actions entry.back > content::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: '';
    background: rgba(0, 0, 0, .25);
}

body > mobilebar > contentwrap > content > actions entry.back > content::before {
    opacity: .12;
    background: var(--accent-color);
}



body > mobilebar > contentwrap > content > actions entry > content > p {
    position: relative;
    width: 100%;
    text-align: center;
    color: #333333;
    font-weight: 500;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    padding: 0 0 1px;
    opacity: 1;
    font-size: 14px;
    cursor: pointer;
    color: var(--accent-color);
}

body > mobilebar > contentwrap > content > actions entry > content > icon {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    font-size: 20px;
    font-size: 20px;
    margin: 0 4px 0 0;
    color: var(--accent-color);
    text-align: center;
}

body > mobilebar > contentwrap > content > actions entry:active > content::before {
    opacity: .2;
}


@media(max-width: 700px) {}





/* ---- View ---- */



view {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    opacity: 1;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background: #ffffff;
    z-index: 2;
    will-change: transform;
}

view > transitionoverlay {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: block;
    background: linear-gradient(to top, #000000 75%, transparent 100%);
    z-index: 1;
}

@media(min-width: 701px) {
    view.sidebar {
        max-width: 450px;
    }
}

@media(max-width: 700px) {
    view {
        background: linear-gradient(to top, #f5f5f8 0%, #f5f5f8 92%, #ffffff 100%);
    }
}





view > contentwrap {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    flex: 1 1 100%;
    overflow: auto;
    z-index: 0;
}



view actions {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 78px;
    flex: 0 0 78px;
    width: 100%;
    border-bottom: 1px solid transparent;
    background: rgba(255, 255, 255, 1);
    z-index: 2;
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    view actions {
        background: rgba(255, 255, 255, .88);
        backdrop-filter: blur(12px) saturate(150%);
        -webkit-backdrop-filter: blur(12px) saturate(150%);
    }
}

@media(max-width: 700px) {
    view actions {
        display: none;
    }
}

sheet > view actions {
    height: 67px;
}

view actions > editbg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, var(--accent-color) 0%, transparent 100%);
    z-index: 0;
}

view actions > content,
view actions > editbar {
    position: relative;
    display: flex;
    align-items: center;
    padding: 16px;
    height: 100%;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    z-index: 1;
}

sheet view actions > content,
sheet view actions > editbar {
    padding: 2px 16px;
}

sheet > view actions > content,
sheet > view actions > editbar {
    padding: 6px;
    max-width: unset;
}

view actions > editbar {
    padding: 0 16px;
}

view actions > editbar > textwrap {
    position: relative;
    display: block;
    flex: 1 1 100%;
    padding: 0 32px;
}

view actions > editbar > textwrap > p {
    position: relative;
}

view actions > editbar > textwrap > p:first-of-type {
    font-weight: 600;
    font-size: 12px;
    color: var(--accent-color);
    opacity: 1;
    text-transform: uppercase;
}

view actions > editbar > textwrap > p:last-of-type {
    margin: 0;
    color: #151515;
}

view actions > editbar > sbutton {
    position: relative;
    width: 80px;
    flex-shrink: 0;
    flex-grow: 0;
    flex-basis: 100px;
    box-shadow: 0px 0px 52px #ffffff;
    border: 1px solid #fff;
    padding-right: 0;
    padding-left: 0;
}

view actions > content > searchbar:not(:last-child) {
    margin-right: 8px;
}

view actions > content > entry {
    position: relative;
    display: inline-block;
    height: 100%;
    border-radius: 10px;
    cursor: pointer;
}

view actions > content > entry > content {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    text-align: left;
    pointer-events: none;
    padding: 0 16px;
    border-radius: 8px;
}

view.sheet actions > content > entry > content {
    border-radius: 5000px;
}

@media(min-width: 1000px) {
    view actions > content > entry:hover > content {
        background: rgba(155, 155, 155, .1);
    }
}

view actions > content > entry:active > content,
view actions > content > entry.down > content {
    color: var(--accent-color);
    opacity: 1;
    background: rgba(155, 155, 155, .2);
}

view actions > content > entry > content > icon {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    text-align: center;
    font-size: 20px;
    margin: 0 4px 0 0;
    color: #202020;
    opacity: .8;
    border-radius: 8px;
}

view actions > content > entry:active > content > icon,
view actions > content > entry.down > content > icon {
    color: var(--accent-color);
}

view actions > content > entry > content > p {
    position: relative;
    display: block;
    width: 100%;
    white-space: nowrap;
    margin: 0;
    opacity: .7;
    color: #202020;
}

view actions > content > entry:hover > content > icon,
view actions > content > entry:hover > content > p,
view actions > content > entry:active > content > icon,
view actions > content > entry:active > content > p,
view actions > content > entry.down > content > icon,
view actions > content > entry.down > content > p {
    opacity: 1;
}


view > contentwrap > content {
    position: relative;
    width: 100%;
    display: block;
    z-index: 0;
    flex: 1 1 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 32px 32px 16px;
}

view.sidebar > contentwrap > content {
    padding: 16px;
}

@media(max-width: 700px) {
    view > contentwrap > content {
        padding: 20px 16px 86px;
    }

    view.sidebar > contentwrap > content {
        padding-bottom: 86px;
    }
}

@media(min-width: 701px) {
    view.has-actions:not(.sheet) > contentwrap > content {
        padding-top: 86px;
    }

    view.has-actions.sheet > contentwrap > content {
        padding-top: 66px;
    }
}

@media(max-width: 375px) {
    view > contentwrap > content {
        padding-left: 8px;
        padding-right: 8px;
    }

    view.sidebar > contentwrap > content {
        padding-left: 8px;
        padding-right: 8px;
    }
}

view.animate-view {
    transition: transform .3s cubic-bezier(0.215, 0.610, 0.355, 1);
}

view.sidebar > contentwrap > content > section > content > listentry {
    margin: 0;
}





/* ---- Sheet ---- */

sheet {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    padding: 64px 60px 64px 0;
    background: transparent;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media(max-width: 1200px) {
    sheet {
        padding-left: 60px;
    }
}

@media(max-width: 1000px) {
    sheet {
        padding-right: 0;
        padding-left: 0;
    }
}

sheet > bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgb(155, 155, 155);
    opacity: 0;
    z-index: 0;
    transition: opacity .2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

sheet > view {
    position: relative;
    width: unset;
    height: unset;
    flex-grow: 0;
    display: block;
    z-index: 2;
    border-radius: 30px;
    min-width: 550px;
    max-width: 650px;
    max-height: 100%;
    background: #ffffff;
    box-shadow: 0px 8px 32px rgba(0, 0, 0, .1);
}

@media(max-width: 1000px) {
    sheet > view {
        height: 100% !important;
    }
}

sheet > view::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    border-radius: 30px;
    outline: 4px solid rgba(175, 175, 175, .75);
    outline-offset: -1px;
    z-index: 1;
    content: '';
    pointer-events: none;
}

sheet > view > contentwrap {
    width: 100%;
    height: 100%;
    overflow: auto;
}



sheet > view > contentwrap > closebtn,
body > filepicker > card > closebtn {
    position: absolute;
    right: 0;
    top: 0;
    padding: 16px;
    cursor: pointer;
    z-index: 3;
}


@media(max-width: 375px) {

    sheet > view > contentwrap > closebtn,
    body > filepicker > card > closebtn {
        padding: 8px;
    }
}

sheet > view > contentwrap > closebtn > icon,
body > filepicker > card > closebtn > icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    text-align: center;
    font-size: 22px;
    color: #000000;
    background: rgba(230, 230, 230, 1);
    border-radius: 50%;
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {

    sheet > view > contentwrap > closebtn > icon,
    body > filepicker > card > closebtn > icon {
        backdrop-filter: blur(20px) saturate(150%);
        -webkit-backdrop-filter: blur(20px) saturate(150%);
        background: rgba(230, 230, 230, .75);
    }
}

@media(max-width: 375px) {

    sheet > view > contentwrap > closebtn > icon,
    body > filepicker > card > closebtn > icon {
        width: 30px;
        height: 30px;
    }
}

sheet > view > contentwrap > buttonbar {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: center;
    padding: 32px;
    border-top: 2px solid rgba(0, 0, 0, .05);
    background: rgba(255, 255, 255, 1);
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    sheet > view > contentwrap > buttonbar {
        backdrop-filter: blur(12px) saturate(150%);
        -webkit-backdrop-filter: blur(12px) saturate(150%);
        background: rgba(255, 255, 255, .75);
    }
}

sheet > view > contentwrap > buttonbar > h6 {
    position: relative;
    display: block;
    flex: 1 1 100%;
    padding: 0 16px 0 0;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

sheet > view > contentwrap > buttonbar > sbutton {
    position: relative;
    display: flex;
    padding: 10px 16px;
    flex-shrink: 0;
    margin: 0;
}

sheet > view > contentwrap > buttonbar > sbutton:not(:last-child) {
    margin: 0 8px 0 0;
}

sheet > view > contentwrap > buttonbar > sbutton > content {
    display: block;
}

sheet > view > contentwrap > content {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 32px;
}

sheet > view > contentwrap > content section {
    flex: 1 1 100%;
}

sheet > view > contentwrap > content section > content > * {
    margin: 0 0 16px;
}

sheet > view > contentwrap > content section > content > *:last-child {
    margin-bottom: 0;
}

sheet > view > contentwrap > content section > content > stitle {
    margin-bottom: 8px;
}

sheet > view > contentwrap > content > hero {
    min-height: 74px;
    justify-content: flex-end;
}

sheet > view.type-steps > contentwrap > content > hero {
    height: unset;
}

@media(min-width: 1000px) {
    sheet > view > contentwrap > content > hero {
        height: unset;
    }
}




@media(max-width: 1000px) {
    sheet {
        padding: 32px 0 0 0;
    }

    sheet > view {
        right: unset;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        min-width: unset;
        max-width: 800px;
        max-height: unset;
        overflow: hidden;
        padding: 0;
        display: flex;
        justify-content: center;
        flex-direction: row;
        border-radius: unset;
        border-top-left-radius: 14px;
        border-top-right-radius: 14px;
    }

    sheet > view::before {
        display: none;
    }

    sheet > view > contentwrap > content {
        overflow: auto;
    }

    sheet > view > contentwrap > buttonbar {
        padding: 8px;
    }

    sheet > view > contentwrap > buttonbar > sbutton {
        position: relative;
        display: flex;
        padding: 12px 24px;
        flex-shrink: 0;
    }

    sheet > bg {
        background: linear-gradient(to top, #e5e5e5 0%, #e5e5e5 92%, #ffffff 100%);
    }

}


@media(max-width: 700px) {
    sheet {
        padding-top: 16px;
    }
}

@media(max-width: 375px) {
    sheet > view {
        border-top-left-radius: 12px;
        border-top-right-radius: 12px;
    }
}


/* ---- FileViewer ---- */

sheet > view.fileviewer {
    width: 100%;
    height: 100%;
    max-width: 1220px;
}

sheet > view.fileviewer.portrait {
    max-width: 632px;
}

@media(max-width: 1000px) {
    sheet > view.fileviewer {
        aspect-ratio: unset;
        max-width: unset;
    }
}

sheet > view.fileviewer > contentwrap {
    display: block;
    overflow: auto;
    background: #000000;
}



sheet > view.fileviewer > contentwrap > content > section {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

sheet > view.fileviewer > contentwrap > content > section > content {
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}


sheet > view.fileviewer > contentwrap > content > section > content > img {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    transition: opacity .12s linear;
    flex: 0 0;
    object-position: center center;
    object-fit: contain;
    pointer-events: none;
    z-index: 1;
}

sheet > view.fileviewer > contentwrap > content > section > content > gradbg {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    flex: 0 0;
    pointer-events: none;
    z-index: 0;
    background: #ffffff;
}

sheet > view.fileviewer > contentwrap > content > section > content > gradbg::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 150%;
    background: radial-gradient(closest-side, rgba(0, 0, 0, .75) 25%, rgba(0, 0, 0, 1) 150%);
    content: '';
}

sheet > view.fileviewer > contentwrap > content > section > content > fileicon {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    padding: 25%;
    pointer-events: none;
    z-index: 0;
}


sheet > view.fileviewer > contentwrap > content > section > content > fileicon > img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
}

sheet > view.fileviewer > contentwrap > content > section > content > fileicon > previewloader {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 16px;
    background: rgba(0, 0, 0, .75);
    border: 1px solid #252525;
    border-radius: 14px;
    margin: 8px 0 0 0;
}

sheet > view.fileviewer > contentwrap > content > section > content > fileicon > previewloader > p {
    position: relative;
    display: inline-block;
    white-space: nowrap;
    margin: 0 0 2px 8px;
    color: #f0f0f0;
    font-size: 14px;
}

sheet > view.fileviewer > contentwrap > content > section > content > fileicon > previewloader > scspinner petal {
    background-color: #ffffff;
}


sheet > view.fileviewer > contentwrap > content {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    left: 0;
    bottom: 0;
    width: 100%;
    flex-direction: row;
    max-width: unset;
    padding: 0 32px 32px;
}

@media screen and (orientation: landscape) and (max-height: 625px) {
    sheet > view.fileviewer > contentwrap > content > info {
        display: none;
    }
}

@media(max-width: 550px) {
    sheet > view.fileviewer > contentwrap > content {
        padding: 0 16px 16px;
    }
}

@media(max-width: 375px) {
    sheet > view.fileviewer > contentwrap > content {
        padding: 0;
    }
}

sheet > view.fileviewer > contentwrap > content > info {
    position: relative;
    display: block;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    height: 104px;
    overflow: hidden;
    border-radius: 14px;
    background: #000000;
    border: 1px solid #252525;
    box-shadow: 0px 0px 32px rgba(0, 0, 0, .12);
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    sheet > view.fileviewer > contentwrap > content > info {
        background: rgba(0, 0, 0, .75);
        -webkit-backdrop-filter: blur(12px) saturate(150%);
        backdrop-filter: blur(12px) saturate(150%);
    }
}

@media(max-width: 375px) {
    sheet > view.fileviewer > contentwrap > content > info {
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
    }
}

sheet > view.fileviewer > contentwrap > content > info > handle {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: auto;
    padding: 8px;
    display: block;
}

sheet > view.fileviewer > contentwrap > content > info > handle::before {
    position: relative;
    display: block;
    width: 100%;
    max-width: 100px;
    height: 6px;
    border-radius: 50000px;
    background: rgba(155, 155, 155, .5);
    margin: 0 auto;
    content: '';
}

sheet > view.fileviewer > contentwrap > content > info > titlewrap {
    position: relative;
    display: block;
    width: 100%;
    padding: 32px;
}

sheet > view.fileviewer > contentwrap > content > info > titlewrap > inner {
    position: relative;
    display: block;
    width: 100%;
}

sheet > view.fileviewer > contentwrap > content > info > titlewrap > inner > h5 {
    margin: 0;
    font-weight: 700;
    color: #ffffff;
}

sheet > view.fileviewer > contentwrap > content > info > titlewrap > inner > p,
sheet > view.fileviewer > contentwrap > content > info > titlewrap > inner > slink {
    position: absolute;
    left: 0;
    bottom: -24px;
}

sheet > view.fileviewer > contentwrap > content > info > titlewrap > inner > slink.a > p {
    color: var(--accent-color-light);
}

sheet > view.fileviewer > contentwrap > content > info p {
    color: #aaaaaa;
}


sheet > view.fileviewer > contentwrap > content > info > contentwrap {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 16px 16px;
}

sheet > view.fileviewer > contentwrap > content > info > contentwrap > content {
    position: relative;
    display: block;
    width: 100%;
}

sheet > view.fileviewer > contentwrap > content > info > contentwrap > content > *:not(:last-child) {
    margin-bottom: 16px;
}

sheet > view.fileviewer device {
    position: relative;
    display: block;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(155, 155, 155, .1);
}

sheet > view.fileviewer device > titlewrap {
    position: relative;
    display: block;
    width: 100%;
    padding: 16px;
    background: rgba(155, 155, 155, .15);
}



sheet > view.fileviewer device > titlewrap > h6 {
    position: relative;
    display: block;
    color: #ffffff;
    font-weight: 700;
}

sheet > view.fileviewer device > detail {
    position: relative;
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 1fr 1fr;
}

sheet > view.fileviewer device > detail > entry {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px 0;
}

sheet > view.fileviewer device > detail > entry:not(:last-of-type) {
    border-right: 1px solid rgba(155, 155, 155, .25);
}

sheet > view.fileviewer device > detail > entry > h6 {
    position: relative;
    display: block;
    text-align: center;
    color: #dddddd;
    margin: 0 0 2px;
    padding: 0;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
}


sheet > view.fileviewer device > detail > entry > p {
    position: relative;
    width: 100%;
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
    letter-spacing: 1.5px;
    font-size: 12px;
    text-transform: uppercase;
    color: #666666;
    font-weight: 650;
}

@media(max-width: 700px) {
    sheet > view.fileviewer device > detail > entry > h6 {
        font-size: 13px;
    }

    sheet > view.fileviewer device > detail > entry > p {
        font-size: 10px;
    }
}



sheet > view.fileviewer albums,
sheet > view.fileviewer user,
sheet > view.fileviewer senna,
sheet > view.fileviewer download {
    position: relative;
    display: block;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(155, 155, 155, .1);
}

sheet > view.fileviewer albums > titlewrap,
sheet > view.fileviewer user > titlewrap,
sheet > view.fileviewer senna > titlewrap,
sheet > view.fileviewer download > titlewrap {
    position: relative;
    display: block;
    width: 100%;
    padding: 16px;
    background: rgba(155, 155, 155, .15);
}

sheet > view.fileviewer albums > titlewrap > h6,
sheet > view.fileviewer user > titlewrap > h6,
sheet > view.fileviewer senna > titlewrap > h6,
sheet > view.fileviewer download > titlewrap > h6 {
    position: relative;
    display: block;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
    padding: 0;
    line-height: .75;
}

sheet > view.fileviewer download > p {
    padding: 16px;
    margin: 0;
}

sheet > view.fileviewer albums entry {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0 0 16px;
}

sheet > view.fileviewer albums entry > textwrap {
    position: relative;
    display: flex;
    width: 100%;
    height: 40px;
    align-items: center;
}

sheet > view.fileviewer > contentwrap > content > info albums entry > textwrap > p {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1 1 100%;
    height: 100%;
    margin: 0 0 0 8px;
    padding: 1px 0 0 0;
    color: #ffffff;
    opacity: 1;
    font-size: 14px;
}

sheet > view.fileviewer albums entry > textwrap > icon {
    font-size: 16px;
    color: #ffffff;
}


sheet > view.fileviewer sizes {
    position: relative;
    display: block;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(155, 155, 155, .1);
}

sheet > view.fileviewer sizes > titlewrap {
    position: relative;
    display: block;
    width: 100%;
    padding: 16px;
    background: rgba(155, 155, 155, .15);
}

sheet > view.fileviewer sizes > titlewrap > h6 {
    position: relative;
    display: block;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
    padding: 0;
    line-height: .75;
}

sheet > view.fileviewer sizes > detail {
    position: relative;
    display: flex;
    width: 100%;
}

sheet > view.fileviewer sizes > detail > entry {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex: 1 1 100%;
    height: 64px;
    padding: 4px 0 0 0;
}


sheet > view.fileviewer sizes > detail > entry:not(:last-of-type) {
    border-right: 1px solid rgba(155, 155, 155, .25);
}

sheet > view.fileviewer sizes > detail > entry > icon {
    position: relative;
    display: block;
    text-align: center;
    color: #666666;
    cursor: default;
    margin: 0 0 4px;
    padding: 0;
    font-size: 24px;
}


sheet > view.fileviewer sizes > detail > entry > h6 {
    position: relative;
    width: 100%;
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
    letter-spacing: 1.5px;
    font-size: 12px;
    text-transform: uppercase;
    color: #dddddd;
    cursor: default;
}

@media(max-width: 700px) {
    sheet > view.fileviewer sizes > detail > entry > h6 {
        font-size: 13px;
    }

    sheet > view.fileviewer sizes > detail > entry > p {
        font-size: 10px;
    }
}

sheet > view.fileviewer sizes > slink,
sheet > view.fileviewer user > slink,
sheet > view.fileviewer download > slink {
    position: relative;
    display: block;
    width: 100%;
    padding: 16px;
    margin: 0;
    border: 0;
    border-top: 1px solid rgba(155, 155, 155, .25);
}

sheet > view.fileviewer > contentwrap > content > info > contentwrap > content sizes > slink.a > p,
sheet > view.fileviewer > contentwrap > content > info > contentwrap > content user > slink.a > p,
sheet > view.fileviewer > contentwrap > content > info > contentwrap > content download > slink.a > p {
    color: var(--accent-color-light);
}

sheet > view.fileviewer > contentwrap > content > info > contentwrap > content download > slink.d {
    opacity: 1;
}

sheet > view.fileviewer > contentwrap > content > info > contentwrap > content download > slink.d > p {
    color: #888888;
    opacity: 1;
}

sheet > view.fileviewer sizes > slink:hover,
sheet > view.fileviewer sizes > slink:active,
sheet > view.fileviewer user > slink:hover,
sheet > view.fileviewer user > slink:active,
sheet > view.fileviewer download > slink:not(.d):hover,
sheet > view.fileviewer download > slink:not(.d):active {
    opacity: 1;
}

sheet > view.fileviewer sizes > slink:active,
sheet > view.fileviewer user > slink:active,
sheet > view.fileviewer download > slink:not(.d):active {
    color: var(--accent-color);
}

sheet > view.fileviewer sizes > slink:active::before,
sheet > view.fileviewer user > slink:active::before,
sheet > view.fileviewer download > slink:not(.d):active::before {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: rgba(155, 155, 155, .05);
    content: '';
}


sheet > view.fileviewer user > detail {
    position: relative;
    display: flex;
    align-items: center;
    padding: 16px;
}

sheet > view.fileviewer user > detail > userimg {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    color: #ffffff;
    flex: 0 0 40px;
    pointer-events: none;
    z-index: 3;
}

sheet > view.fileviewer user > detail > userimg > h5 {
    position: relative;
    display: block;
    text-align: center;
    margin: 0;
    padding: 0;
    line-height: 1;
    color: #00000090;
    font-weight: 700;
    z-index: 2;
    font-size: 16px;
}

sheet > view.fileviewer user > detail > userimg::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--accent-color);
    content: '';
    z-index: 0;
}

sheet > view.fileviewer user > detail > userimg::after {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(255, 255, 255, .5), rgba(255, 255, 255, .75) 100%);
    content: '';
    z-index: 1;
}


sheet > view.fileviewer user > detail > textwrap {
    position: relative;
    display: block;
    margin: 2px 0 0 8px;
}

sheet > view.fileviewer user > detail > textwrap > h6 {
    position: relative;
    display: block;
    width: 100%;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    padding: 0;
}

sheet > view.fileviewer user > detail > textwrap > p {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #aaaaaa;
}

sheet > view.fileviewer senna > empty {
    position: relative;
    display: flex;
    align-items: center;
    padding: 16px 16px 16px 10px;
}

sheet > view.fileviewer senna > empty > video {
    position: relative;
    display: block;
    width: 70px;
    height: 70px;
    margin: 0 4px 0 0;
    flex: 0 0 70px;
    pointer-events: none;
    transform: translate3d(0, 0, 0);
}

@media(max-width: 700px) {
    sheet > view.fileviewer senna > empty > video {
        width: 32px;
        height: 32px;
        flex: 0 0 32px;
        margin: 0 8px 0 0;
    }
}

sheet > view.fileviewer senna > empty > textwrap {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
}

sheet > view.fileviewer senna > empty > textwrap > h6 {
    position: relative;
    display: block;
    width: 100%;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    padding: 0;
}

sheet > view.fileviewer senna > empty > textwrap > p {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #aaaaaa;
}

sheet > view.fileviewer senna > empty > textwrap > slink {
    position: relative;
    display: block;
    width: 100%;
    margin: 8px 0 0 0;
    padding: 0;
    color: var(--accent-color-light);
}

sheet > view.fileviewer senna > entry {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 16px;
}

@media(max-width:1000px) {
    sheet > view.fileviewer senna > entry {
        padding: 0 0 0 16px;
        display: block;
    }
}

sheet > view.fileviewer senna > entry > h6 {
    position: relative;
    display: block;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0;
    padding: 0;
    line-height: .75;
    flex: 0 0 128px;
}


@media(max-width:1000px) {
    sheet > view.fileviewer senna > entry > h6 {
        padding: 16px 0;
        width: 100%;
    }
}

sheet > view.fileviewer senna > entry > content {
    position: relative;
    display: block;
    margin: 0;
    padding: 16px;
    flex: 1 1 100%;
}

@media(max-width:1000px) {
    sheet > view.fileviewer senna > entry > content {
        padding: 16px 0;
        border-left: unset;
    }
}

sheet > view.fileviewer senna > entry > content > h6 {
    position: relative;
    display: block;
    color: #ffffff;
    margin: 0;
    padding: 0;
}

@media(max-width:1000px) {
    sheet > view.fileviewer senna > entry > content > h6 {
        font-size: 14px;
    }
}

sheet > view.fileviewer senna > entry > content > licenseplate {
    position: relative;
    display: inline-flex;
    align-items: center;
    border-radius: 10px;
    border: 1px solid rgba(155, 155, 155, .25);
    overflow: hidden;
    margin: 8px 0 0 0;
}


sheet > view.fileviewer senna > entry > content > licenseplate::before {
    position: relative;
    display: block;
    width: 32px;
    flex: 0 0 32px;
    height: 48px;
    content: '';
    background: rgba(155, 155, 155, .15);
    border-right: 1px solid rgba(155, 155, 155, .25);
}

@media(max-width:1000px) {
    sheet > view.fileviewer senna > entry > content > licenseplate::before {
        height: 40px;
    }
}

sheet > view.fileviewer senna > entry > content > licenseplate > h3 {
    position: relative;
    display: block;
    font-weight: 650;
    color: #ffffff;
    margin: 0;
    letter-spacing: 2px;
    padding: 8px 32px;
    text-align: center;
    white-space: nowrap;
}

@media(max-width:1000px) {
    sheet > view.fileviewer senna > entry > content > licenseplate > h3 {
        padding: 4px 16px;
        font-size: 18px;
    }
}


/* ---- Hero ---- */


hero {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 74px;
    margin: 0 0 8px 0;
}


hero.center {
    justify-content: center;
    align-items: center;
    text-align: center;
}

sheet > view hero.center {
    justify-content: center;
    align-items: center;
    padding: 0;
}

hero > img {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    object-fit: cover;
    object-position: center center;
    overflow: hidden;
    z-index: 0;
}

hero > content {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

hero.center > content {
    justify-content: center;
}

hero > content > assetwrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 74px;
    height: 74px;
    background: rgba(160, 160, 160, .08);
    margin: 0 16px 0 0;
    border-radius: 10px;
}

@media(max-width: 700px) {
    hero > content {
        margin: 0 0 8px 0;
        flex-direction: row-reverse;
    }

    hero > content > assetwrap {
        background: rgba(155, 155, 155, .2);
        margin: 0 0 0 16px;
    }
}

hero > content > assetwrap > icon {
    position: relative;
    display: block;
    text-align: center;
    font-size: 32px;
    opacity: .75;
    pointer-events: none;
}

hero > content > assetwrap > img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    object-fit: cover;
    object-position: center center;
}

hero > content > textwrap {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    z-index: 1;
}

hero.center > content > textwrap {
    text-align: center;
}

hero > content > textwrap > img {
    position: relative;
    display: block;
    width: 100%;
    max-width: 200px;
    height: 40px;
    object-fit: contain;
    object-position: left bottom;
}

hero.center > content > textwrap > img {
    object-position: center center;
    margin: 0 auto;
}

sheet > view hero.center > content > textwrap > img {
    height: 100px;
}

hero > content > textwrap > h1,
hero > content > textwrap > h2,
hero > content > textwrap > h3,
hero > content > textwrap > h4,
hero > content > textwrap > h5,
hero > content > textwrap > h6 {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 700;
}


hero > content > textwrap > h1:last-child,
hero > content > textwrap > h2:last-child,
hero > content > textwrap > h3:last-child,
hero > content > textwrap > h4:last-child,
hero > content > textwrap > h5:last-child,
hero > content > textwrap > h6:last-child {
    margin: 0;
}

@media(max-width: 1000px) {
    sheet > view.type-default > contentwrap > content > hero {
        padding-top: 74px;
    }
}

@media(max-width: 375px) {
    sheet > view > contentwrap > content > hero > content > assetwrap {
        border-radius: 20px;
    }
}





tilegrid {
    position: relative;
    display: grid;
    width: 100%;
    padding: 10px 0;
    gap: 10px;
    grid-template-columns: 1fr 1fr;
}

tilegrid.col-3 {
    grid-template-columns: 1fr 1fr 1fr;
}

tilegrid.col-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

@media(min-width: 1000px) {
    tilegrid {
        grid-template-columns: 1fr 1fr 1fr;
    }

    tilegrid.col-3 {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }

    tilegrid.col-4 {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    }
}

view tilegrid:first-child {
    padding-top: 0;
}








tile {
    position: relative;
    display: block;
    width: 128px;
    height: 128px;
    flex: 0 0 128px;
    margin: 0 12px 0 0;
    background: var(--accent-color);
    overflow: hidden;
    -webkit-transform-style: flat;
    transform-style: flat;
    opacity: 1;
    transition: oapcity .1s linear;
}

tilegrid > tile {
    margin: 0;
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
}

section > content > tile {
    margin: 10px 0;
}

section > content > tile:first-child {
    margin-top: 0;
}

tile.grey {
    background: #202020;
}

view.subform tile.grey {
    background: #353535;
}

@media(min-width: 901px) {

    tile.grey,
    view.subform tile.grey {
        background: var(--accent-color-light);
    }

    tile {
        width: 158px;
        height: 158px;
        flex: 0 0 158px;
    }
}

tile.photo-select {
    cursor: pointer;
}

tile > tilecontent {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    transform: translateY(0);
    transition: transform 1s cubic-bezier(.56, 0, 0, 1);
    -webkit-transform-style: flat;
    transform-style: flat;
}

tile > tilecontent > entry {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    flex: 0 0 100%;
    padding: 0;
    margin: 0;
    -webkit-transform-style: flat;
    transform-style: flat;
}

tile > tilecontent > entry > content {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    -webkit-transform-style: flat;
    transform-style: flat;
}

tile > tilecontent > textwrap,
tile > tilecontent > entry.title > content {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 100%;
    flex: 0 0 100%;
    padding: 5px 4px;
    -webkit-transform-style: flat;
    transform-style: flat;
}

tile > tilecontent > textwrap > h4,
tile > tilecontent > entry.title > content > h4 {
    position: relative;
    flex: 0 0 100%;
    display: block;
    font-size: 28px;
    font-weight: 300;
    cursor: pointer;
    line-height: 1.10;
    cursor: pointer;
    text-transform: lowercase;
    -webkit-transform-style: flat;
    transform-style: flat;
}

@media(min-width: 901px) {
    tile.photo-select:active > tilecontent > textwrap > h4 {
        opacity: .75;
    }
}

@media(max-width: 900px) {

    tile > tilecontent > textwrap > h4,
    tile > tilecontent > entry.title > content > h4 {
        font-size: 28px;
        font-weight: 300;
        cursor: pointer;
    }
}

tile > tilecontent > img {
    position: relative;
    display: block;
    width: 100%;
    height: calc(100% + 1px);
    flex: 0 0 calc(100% + 1px);
    margin: 0;
    padding: 0;
    object-fit: cover;
    object-position: center center;
    -webkit-transform-style: flat;
    transform-style: flat;
    pointer-events: none;
    background: rgba(255, 255, 255, .25);
}

tile > tilecontent > entry.image > content > picture {
    position: relative;
    display: block;
    width: 100%;
    height: calc(100% + 1px);
    margin: 0;
    padding: 0;
    -webkit-transform-style: flat;
    transform-style: flat;
    pointer-events: none;
}

tile > tilecontent > entry.image > content > picture > img {
    position: relative;
    display: block;
    width: 100%;
    height: calc(100% + 1px);
    object-fit: cover;
    object-position: center center;
    margin: 0;
    padding: 0;
    -webkit-transform-style: flat;
    transform-style: flat;
    pointer-events: none;
}

sbutton {
    position: relative;
    display: inline-flex;
    align-items: center;
    border-radius: 8px;
    padding: 10px 16px;
    margin: 16px 0;
    background: rgba(235, 235, 235, 1);
    opacity: .5;
    overflow: hidden;
    pointer-events: none;
}

sbutton.a {
    opacity: 1;
    cursor: pointer;
    pointer-events: all;
}

sbutton.d {
    pointer-events: none;
    opacity: .75;
}

sbutton.highlight {
    background: var(--accent-color);
    color: #ffffff;
}



sbutton.highlight.delete {
    background: var(--color-red);
    color: #ffffff;
}

sbutton.highlight > content > p {
    color: #ffffff;
    font-weight: 500;
}



sbutton.a:active::before,
sbutton.a.down::before,
scform.compact finput.b:active::before {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .1);
    content: '';
}



sbutton > content {
    position: relative;
    display: block;
    flex: 1 1 100%;
    overflow: hidden;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    z-index: 1;
}

sbutton > content > p {
    position: relative;
    display: block;
    padding: 0;
    margin: 0;
    cursor: pointer;
    opacity: 1;
    font-size: 15px;
}



sbutton.highlight > content > p {
    color: #ffffff;
}

sbutton.a.highlight > content > p {
    opacity: 1;
}


sbutton > content > p:not(:last-child):first-child {
    font-weight: 600;
    font-size: 16px;
    margin: 0 0 2px 0;
    opacity: 1;
    color: #202020;
}



sbutton > img {
    position: relative;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    padding: 0;
    margin: 0 8px 0 0;
    overflow: hidden;
    object-fit: cover;
    object-position: center center;
    opacity: 0;
    transition: opacity .05 linear;
}

sbutton.large > img {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    margin: 0 16px 0 0;
}

sbutton > img.sh {
    opacity: 1;
}


sbutton > icon {
    position: relative;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    padding: 0;
    margin: 0 8px 0 0;
    font-size: 20px;
    color: #666666;
    overflow: hidden;
    object-fit: cover;
    object-position: center center;
    transition: opacity .05 linear;
}

sbutton > icon:last-child {
    margin-right: 0;
}

sbutton.highlight > icon {
    color: #ffffff;
}

sbutton.a.accent {
    background: transparent;
}

sbutton.a.accent > icon,
sbutton.a.accent > content > p {
    color: var(--accent-color);
}

sbutton.a.accent::after {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: var(--accent-color);
    opacity: .1;
    z-index: 0;
    content: '';
}

sbutton.large > icon {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    font-size: 28px;
    color: var(--accent-color);
    margin: 0 16px 0 0;
}






view.f {
    background: #f7f7f7;
    transition: transform .6s cubic-bezier(0.075, 0.82, 0.165, 1);
    transform-style: preserve-3d;
    padding: 10%;
    display: flex;
    align-items: center;
}

body.sc-dark view.f {
    background: #151515;
    transition: transform .6s cubic-bezier(0.075, 0.82, 0.165, 1);
    transform-style: preserve-3d;
    padding: 10%;
}

view.f > content {
    position: relative;
    display: block;
    background: #fff;
    box-shadow: 0px 8px 20px rgba(0, 0, 0, .12);
    border-radius: 20px;
    overflow: hidden;
    width: 100%;
    border: 1px solid #292929;
    height: unset;
    padding: 0;
}


body.sc-dark view.f > content {
    background: #000000;
    border: 1px solid #333333;
}

view.f > content > question {
    position: relative;
    display: block;
    padding: 42px;
    width: 100%;
}

view.f > content > question > iconwrap {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 12px 0;
}

view.f > content > question > iconwrap > icon {
    position: relative;
    width: 100%;
    font-size: 70px;
    color: var(--accent-color);
    text-align: center;
}

view.f > content > question > textwrap {
    position: relative;
    display: block;
}

view.f > content > question h1,
view.f > content > question h2,
view.f > content > question h3,
view.f > content > question h4,
view.f > content > question h5,
view.f > content > question h6 {
    position: relative;
    width: 100%;
    text-align: center;
    margin: 0 0 8px 0;
}

view.f > content > question p {
    position: relative;
    width: 100%;
    margin: 0;
    text-align: center;
}

view.f > content > question buttonwrap {
    position: relative;
    width: 100%;
    display: block;
    margin: 32px 0 0 0;
    border-radius: 10px;
    overflow: hidden;
    background: #f7f7f7;
}

body.sc-dark view.f > content > question buttonwrap {
    background: #111111;
}

view.f > content > question buttonwrap > slink {
    position: relative;
    display: block;
    width: 100%;
    padding: 14px 22px;
}

view.f > content > question buttonwrap > slink:hover {
    background: rgba(155, 155, 155, .1);
    text-decoration: unset;
}

view.f > content > question buttonwrap > slink:active {
    background: rgba(155, 155, 155, .2);
    text-decoration: unset;
    opacity: 1;
}

view.f > content > question buttonwrap > slink:not(:last-child) {
    border-bottom: 1px solid #292929;
}

body.sc-dark view.f > content > question buttonwrap > slink:not(:last-child) {
    border-bottom: 1px solid #252525;
}


view.f > content > question > page {
    position: relative;
    width: 100%;
    display: block;
    opacity: 1;
    transition: opacity .16s linear;
}




view.center {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

view.center > content {
    height: auto;
}




/* -- Separator -- */

separator {
    position: relative;
    display: block;
    width: 100%;
    height: 1px;
    margin: var(--generic-element-margin) 0;
    background: rgba(0, 0, 0, .1);
}



/* ---- List ---- */

list {
    position: relative;
    width: 100%;
    display: block;
    height: auto;
    z-index: 1;
    overflow: visible;
    margin: var(--generic-element-margin) 0;
    transition: background .12s linear;
}




list > listheader {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0;
    margin: 0 0 8px 0;
}

view.sidebar:not(.has-actions) list:first-child,
view.sidebar:not(.has-actions) stitle:first-child {
    margin-top: 16px;
}

view.sidebar.has-actions list:first-child {
    margin-top: 0;
}

list > listheader > h5 {
    position: relative;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0;
    margin: 0;
    font-weight: 700;
    flex: 1 1 100%;
}

@media(max-width: 701px) {
    view.sidebar list > listheader > h5 {
        font-size: 30px;
        padding: 32px 16px 0 0;
    }
}

@media(max-width: 375px) {
    view.sidebar list > listheader > h5 {
        font-size: 26px;
        padding: 32px 8px 0 0;
    }
}

list > listheader > h6 {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin: 0;
    text-transform: uppercase;
    font-size: 12px;
    width: 100%;
}

list > listheader > h6::after {
    position: relative;
    flex: 1 1 100%;
    content: '';
    height: 2px;
    background: rgba(0, 0, 0, .05);
    margin: 0 0 0 16px;
}

list > listheader > entry {
    position: relative;
    display: inline-block;
    padding: 0 4px;
    flex-shrink: 0;
    flex-grow: 0;
    cursor: pointer;
}

list > listheader > entry:last-of-type {
    padding-right: 0;
}

list > listheader > entry > content {
    position: relative;
    display: flex;
    align-items: center;
    pointer-events: none;
    padding: 4px 8px;
    border-radius: 5000px;
    background: rgba(155, 155, 155, .1);
}

list > listheader > entry:hover > content {
    background: rgba(155, 155, 155, .15);
}

list > listheader > entry:active > content {
    background: rgba(155, 155, 155, .25);
}

list > listheader > entry > content > icon {
    position: relative;
    display: block;
    margin: 0 4px 0 0;
    font-size: 14px;
}

list > listheader > entry > content > p {
    position: relative;
    display: inline-block;
    white-space: nowrap;
    opacity: 1;
}

list > listheader > entry:hover > content > icon,
list > listheader > entry:hover > content > p {
    color: #000000;
}

sbox > contentwrap > content > list,
sbox > contentwrap > content > list > listheader {
    padding-top: 0;
}

sbox > contentwrap > content > *:first-child {
    margin-top: 0;
}

sbox > contentwrap > content > *:last-child {
    margin-bottom: 0;
}

list > content {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    padding: 0;
    overflow: hidden;
    z-index: 1;
}

list.fileslist > content > p {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 6px 0 0 0;
    pointer-events: none;
    opacity: 1;
    transform: translate3d(0, 0, 0);
}


@media(max-width: 700px) {
    list > content {
        border-radius: 10px;
    }

    sbox > contentwrap > content > list > content {
        border-radius: 0;
    }

    sbox > contentwrap > content > list {
        width: calc(100% + 32px);
        margin-left: -16px;
    }
}

@media(min-width: 701px) {

    list.grey > content,
    list.compact > content {
        border-radius: 10px;
    }
}



listentry {
    position: relative;
    width: 100%;
    height: 70px;
    margin: 0;
    padding: 0 0 0 4px;
    z-index: 1;
    border-radius: 10px;
    display: flex;
    align-items: center;
    cursor: pointer;
    background: #ffffff;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0);
    overflow: hidden;
    opacity: 1;
}

list.fileslist listentry {
    padding-left: 8px;
}

@media(max-width: 700px) {
    listentry {
        border-radius: unset;
    }
}

@media(min-width: 701px) {

    list.compact:not(.transparent) listentry,
    list.grey listentry {
        border-radius: unset;
        background: rgba(160, 160, 160, .08);
    }
}

list > content > listentry {
    position: absolute;
    left: 0;
    top: 0;
}


@media(min-width: 1000px) {
    listentry.hover:not(.a) {
        background: rgba(160, 160, 160, .05);
    }

    list.compact:not(.transparent) listentry.hover:not(.a),
    list.grey:not(.transparent) listentry.hover:not(.a) {
        background: rgba(160, 160, 160, .15);
    }
}


listentry.active:not(.a) {
    background: rgba(160, 160, 160, .15);
}

list.compact:not(.transparent) listentry.active:not(.a),
list.grey:not(.transparent) listentry.active:not(.a) {
    background: rgba(160, 160, 160, .25);
}

@media(max-width: 700px) {
    view.sidebar listentry.active:not(.a) {
        background: var(--accent-color);
    }
}


listentry > content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
}

listentry > content > imagewrap {
    position: relative;
    display: block;
    flex: 0 0 80px;
    height: 100%;
    margin: 0 8px 0 0;
    padding: 8px 4px;
    overflow: hidden;
    outline: none;
    border: none;
}

listentry > content:not(:first-child) > imagewrap {
    padding-left: 0;
}

listentry.image-icon > content > imagewrap {
    flex: unset;
    width: unset;
    aspect-ratio: 1/1;
    padding: 4px 2px;
}

listentry.file > content > imagewrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 50px;
    height: 100%;
}

@media(max-width: 700px) {
    listentry > content > imagewrap {
        flex: 0 0 74px;
    }
}

listentry:not(.image-icon) > content > imagewrap::before {
    position: absolute;
    left: 4px;
    top: 8px;
    right: 4px;
    bottom: 8px;
    background: rgba(125, 125, 125, .15);
    content: '';
    border-radius: 4px;
}

listentry.file > content > imagewrap::before {
    background: unset;
}

listentry > content > imagewrap > img {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    outline: none;
    border: none;
    object-fit: cover;
    object-position: center center;
    opacity: 0;
    transform: translate3d(0, 0, 0);
    border-radius: 4px;
    transition: opacity .1s linear;
    pointer-events: none;
}

listentry.file > content > imagewrap > img {
    border-radius: 0;
    width: 100%;
    height: auto;
    object-fit: unset;
    object-position: unset;
}

listentry.file > content > imagewrap > img.file-image-thumb {
    border: 2px solid #ffffff;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .4);
}

listentry.file > content > imagewrap > img.portrait {
    height: 100%;
    width: auto;
}

listentry.file > content > imagewrap > img.thumb {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 8px 4px;
    display: block;
    opacity: 0;
}


listentry > content > textwrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0 10px 0 0;
    overflow: hidden;
    border-bottom: 1px solid rgba(125, 125, 125, .15);
}

listentry > content > textwrap:first-child {
    padding-left: 8px;
}


@media(max-width: 700px) {
    listentry > content > textwrap {
        padding-right: 8px;
    }

    sbox > contentwrap > content > list > content > listentry {
        padding-left: 8px;
        padding-right: 8px;
    }
}

listentry > content > textwrap > content {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}

listentry > content > textwrap > content > titlewrap {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
}

listentry > content > textwrap > content > titlewrap > h6 {
    position: relative;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: pointer;
    margin: 0 0 4px 0;
    font-weight: 600;
}

list.compact listentry > content > textwrap > content > titlewrap > h6 {
    margin-bottom: 0;
}


listentry > content > textwrap > content > titlewrap:last-child > h6 {
    margin: 0;
    font-weight: 500;
}

listentry > content > textwrap > content > p {
    cursor: pointer;
    color: #000000;
    opacity: .75;
    font-weight: 450;
    font-size: 13px;
}

listentry > content > icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0 8px;
}

listentry > content > icon > icon {
    font-size: 24px;
}

@media(max-width: 700px) {
    listentry > content > icon > icon {
        font-size: 22px;
    }
}



listentry > content > textwrap > right {
    position: relative;
    display: inline-flex;
    align-items: center;
}

listentry > content > textwrap > right > p {
    position: relative;
    display: inline-block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

listentry > content > textwrap > right > icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-size: 18px;
    margin: 0 0 0 4px;
    opacity: .5;
}

listentry.a > content > textwrap > right > icon {
    color: #ffffff;
    opacity: 1;
}

listentry > content > textwrap > right > icons {
    position: relative;
    display: inline-flex;
    align-items: center;
}

listentry > content > textwrap > right > icons > icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-size: 20px;
    margin: 0 0 0 4px;
    color: #444444;
}

listentry > content > textwrap > right > icons > icon:first-of-type {
    margin-left: 8px;
}

listentry > content > newicon {
    position: relative;
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    background: var(--accent-color);
    margin: 0;
}

listentry > content > icon.arrow {
    position: relative;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    opacity: .5;
    font-size: 16px;
    margin: 0 8px;
}

@media(min-width: 701px) {
    stack.sidebar > view.sidebar:first-child listentry > content > icon.arrow {
        display: none;
    }
}


listentry.a,
list.compact listentry.a {
    background: var(--accent-color);
}

listentry.a > content > icon > icon,
listentry.a > content > icon {
    color: #ffffff;
}

listentry.a > content > textwrap > content > titlewrap > h6,
listentry.a > content > textwrap > content > p {
    color: #ffffff;
}

listentry.a > content > textwrap > content > p {
    opacity: .9;
}


@media(max-width: 700px) {
    view.sidebar list:not(.compact) listentry > content:active > icon {
        color: #ffffff;
    }

    view.sidebar list:not(.compact) listentry > content:active > textwrap > content > titlewrap > h6,
    view.sidebar list:not(.compact) listentry > content:active > textwrap > content > p {
        color: #ffffff;
    }

    view.sidebar listentry:active > content > textwrap > content > p {
        opacity: .9;
    }
}



listentry.file > content > textwrap > progresswrap {
    position: relative;
    display: block;
    margin: 0 8px;
    flex: 0 0 20%;
    max-width: 120px;
    min-width: 70px;
}

listentry.file > content > textwrap > progresswrap {
    margin-left: 16px;
}


/* ---- List Compact ---- */

list.compact listentry {
    height: 48px;
}





/* ---- Searchbar ---- */

searchbar {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    border-radius: 10px;
    border: 1px solid rgba(125, 125, 125, .15);
    padding: 2px 14px 2px 16px;
    overflow: hidden;
    opacity: 1;
    cursor: text;
    background: #ffffff;
    flex: 1 1;
}


searchbar:focus-within {
    border: 1px solid var(--accent-color);
    box-shadow: 0px 0px 8px var(--accent-color-light);
}

searchbar > icon {
    position: relative;
    font-size: 22px;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    color: #444444;
    opacity: .55;
}

searchbar:focus-within > icon {
    opacity: 1;
    color: var(--accent-color);
}

searchbar > inputwrap {
    position: relative;
    flex: 1 1 1px;
    border: unset;
    display: inline-block;
    background: unset;
    padding-right: 0;
    transform: translate3d(0, 8px, 0);
    transition: transform .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

searchbar > inputwrap > input {
    position: relative;
    width: 100%;
    border: unset;
    display: block;
    background: unset;
    padding-right: 0;
    padding: 0 0 0 8px;
}

searchbar > inputwrap > input::-webkit-contacts-auto-fill-button {
    visibility: hidden;
    display: none !important;
    pointer-events: none;
    position: absolute;
    right: 0;
}

searchbar > inputwrap > p {
    position: relative;
    width: 100%;
    padding: 0 8px;
    font-size: 12px;
    height: 16px;
    opacity: 0;
    color: #666666;
    pointer-events: none;
    transition: opacity .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

searchbar > inputwrap > input:focus {
    border: unset;
}




/* - Search Suggestions - */

body > searchresults {
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    z-index: 40;
}

body > searchresults > content {
    position: relative;
    display: block;
    border-radius: 10px;
    border: 1px solid rgba(125, 125, 125, .25);
    overflow: auto;
    max-height: 400px;
    background: #ffffff;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, .12);
    padding: 4px;
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    body > searchresults > content {
        background: rgba(255, 255, 255, .8);
        backdrop-filter: blur(12px) saturate(150%);
        -webkit-backdrop-filter: blur(12px) saturate(150%);
    }
}

body > searchresults > content > listentry {
    border-radius: 8px;
    height: 60px;
}

body > searchresults > content > listentry:not(:hover):not(.a):not(:active) {
    background: transparent;
}


body > searchresults > content > listentry > content > icon {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    font-size: 22px;
    margin: 0 8px;
    opacity: 0;
}

body > searchresults > content > listentry.a > content > icon {
    opacity: 1;
}

body > searchresults > content > listentry.d::before,
body > searchresults > content > listentry:active::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: '';
    background: rgba(0, 0, 0, .2);
}

body > searchresults > content > listentry:not(.a):active::before {
    content: unset;
}

/* ------ Tabbar ------ */

tabbar {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    overflow: hidden;
    margin: 0 0 16px;
    flex-shrink: 0;
}

tabbar::before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: rgba(0, 0, 0, .05);
    content: '';
}

tabbar > content {
    position: relative;
    display: flex;
    padding: 0;
    z-index: 0;
    overflow: hidden;
}

tabbar > content > entry {
    position: relative;
    display: flex;
    align-items: center;
    cursor: pointer;
    padding: 20px 0;
    flex: 0 0;
    border-bottom: 2px solid transparent;
}

tabbar > content > entry > stepwrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 18px;
    width: 18px;
    flex: 0 0 18px;
    border-radius: 50%;
    margin: 0 6px 0 0;
    pointer-events: none;
}

tabbar > content > entry:not(.a) > stepwrap {
    opacity: .7;
}

tabbar > content > entry > stepwrap::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border: 2px solid #000000;
    border-radius: 50%;
    content: '';
}

tabbar > content > entry > stepwrap > p {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 0 0 .5px .3px;
    font-weight: 700;
    font-size: 11px;
    opacity: 1;
    color: #000000;
    line-height: .25;
    text-rendering: optimizeSpeed;
}

tabbar > content > entry > stepwrap > icon {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 12px;
}

tabbar > content > entry > content {
    position: relative;
    display: inline-block;
    pointer-events: none;
}



tabbar > content > entry > content > h6 {
    position: relative;
    margin: 0;
    cursor: pointer;
    white-space: nowrap;
    opacity: .7;
    font-weight: 400;
}

tabbar > content > entry > content > h6:first-of-type {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    opacity: 1;
}

tabbar > content > entry > content > h6:last-of-type {
    text-align: center;
    opacity: 0;
    font-weight: 700;
}




@media(max-width: 700px) {
    tabbar {
        margin-left: -16px;
        margin-right: 0;
        width: calc(100% + 32px);
        padding: 0 16px;
    }

    view:not(.sheet) tabbar {
        justify-content: center;
    }

    sheet > view tabbar {
        padding: 0;
    }

    view:not(.sheet) tabbar::before {
        bottom: 50%;
    }

    tabbar > content {
        overflow: auto;
    }

    view:not(.sheet) tabbar > content {
        padding: 4px;
        border-radius: 10px;
        background: #ffffff;
        border: 1px solid rgba(0, 0, 0, .1);
    }

    tabbar > content > entry {
        padding: 10px 10px 8px 10px;
        border-radius: 6px;
    }

    sheet > view tabbar > content > entry {
        border-radius: 0;
        padding: 16px 20px;
    }

    view:not(.sheet) tabbar > content > entry.a {
        background: var(--accent-color);
    }

    sheet > view tabbar > content > entry.a {
        border-bottom: 2px solid #000000;
    }

    sheet > view tabbar > content > entry.a > content > h6:last-of-type {
        opacity: 1;
    }

    sheet > view tabbar > content > entry.a > content > h6:first-of-type {
        opacity: 0;
    }

    view:not(.sheet) tabbar > content > entry.a > content > h6 {
        color: #ffffff;
    }
}

@media(min-width: 701px) {
    tabbar > content > entry.a {
        border-bottom: 2px solid #000000;
    }

    tabbar > content > entry:not(:last-child) {
        margin-right: 32px;
    }

    tabbar > content > entry.a > content > h6:last-of-type {
        opacity: 1;
    }

    tabbar > content > entry.a > content > h6:first-of-type {
        opacity: 0;
    }

    tabbar > content > entry:not(.a):active > content > h6:first-of-type {
        opacity: .9;
    }
}

@media(max-width: 375px) {
    tabbar {
        margin-left: -8px;
        width: calc(100% + 16px);
        padding: 0 8px;
    }


    tabbar > content > entry > content > h6 {
        font-size: 13px;
        font-weight: 450;
    }
}






/* --- Image --- */

scimage {
    position: relative;
    width: 100%;
    display: block;
    max-width: 500px;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background: #f3f3f3;
}

scimage:not(:last-child) {
    margin: 0 0 22px;
}

scimage > sel {
    display: none;
}

scimage > content {
    position: relative;
    width: 100%;
    display: block;
    margin: 0;
}

scimage:active > content {
    opacity: .8;
}

scimage > content > img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
}

scimage > prog {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
    background: rgba(200, 200, 200, .8);
    backdrop-filter: blur(8px) saturate(150%);
    -webkit-backdrop-filter: blur(8px) saturate(150%);
}

scimage > prog > content {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 12px;
}


scimage > prog > content > progressbar {
    position: relative;
    opacity: 0;
    margin: 0;
    transition: opacity .12s linear;
}

scimage > prog > content > progressbar > content {
    background: rgba(255, 255, 255, .75);
}


scimage > prog > content > icon {
    position: relative;
    color: var(--color-red);
    font-size: 42px;
    text-align: center;
    pointer-events: none;
}


/* --- Images Grid ---- */

imagegrid {
    position: relative;
    display: block;
    width: 100%;
}

imagegrid > h6 {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    font-size: 12px;
}

imagegrid > h6::after {
    position: relative;
    flex: 1 1 100%;
    content: '';
    height: 2px;
    background: rgba(0, 0, 0, .05);
    margin: 0 0 0 16px;
}

imagegrid > content {
    position: relative;
    display: block;
    width: 100%;
}


imagegrid > multisel {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 58px;
    border: 1px solid var(--accent-color);
    border-radius: 5000px;
    background: #ffffff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 24px 8px 8px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

imagegrid > multisel::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: '';
    background: var(--accent-color);
    opacity: .1;
    content: '';
}

imagegrid > multisel > p {
    position: relative;
    display: block;
    flex: 1 1;
    width: 100%;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin: 0;
    text-align: right;
}

imagegrid > multisel > buttons {
    position: relative;
    display: inline-flex;
    height: 100%;
    align-items: center;
    flex: 1 1;
}

imagegrid > multisel > buttons > entry {
    position: relative;
    display: inline-block;
    height: 100%;
    cursor: pointer;
}


imagegrid > multisel > buttons > entry > content {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    text-align: left;
    pointer-events: none;
    padding: 0 16px;
    border-radius: 5000px;
}

@media(min-width: 1000px) {
    imagegrid > multisel > buttons > entry:hover > content {
        background: rgba(0, 0, 0, .05);
    }
}

imagegrid > multisel > buttons > entry:active > content > content,
imagegrid > multisel > buttons > entry.down > content {
    color: var(--accent-color);
    opacity: 1;
    background: rgba(0, 0, 0, .1);
}

imagegrid > multisel > buttons > entry > content > icon {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    text-align: center;
    font-size: 20px;
    margin: 0 4px 0 0;
    color: #191919;
    opacity: .85;
    border-radius: 8px;
}

imagegrid > multisel > buttons > entry:active > content > icon,
imagegrid > multisel > buttons > entry.down > content > icon {
    color: var(--accent-color);
}

imagegrid > multisel > buttons > entry > content > p {
    position: relative;
    display: block;
    width: 100%;
    white-space: nowrap;
    margin: 0;
    opacity: .85;
    color: #191919;
}

imagegrid > multisel > buttons > entry:hover > content > icon,
imagegrid > multisel > buttons > entry.down > content > icon,
imagegrid > multisel > buttons > entry:hover > content > p,
imagegrid > multisel > buttons > entry.down > content > p {
    opacity: 1;
}



imagegrid > content > images {
    position: relative;
    width: 100%;
    display: grid;
    gap: 4px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}

view:not(.sheet) imagegrid > content > images {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

imagegrid > content > animation {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    pointer-events: none;
}

@media(max-width: 1200px) {
    view:not(.sheet) imagegrid > content > images {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }
}

@media(max-width: 1000px) {
    view:not(.sheet) imagegrid > content > images {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}

@media(max-width: 800px) {

    imagegrid > content > images,
    view:not(.sheet) imagegrid > content > images {
        grid-template-columns: 1fr 1fr 1fr;
    }
}


imagegrid > content > images > scimage,
imagegrid > content > images > scimage:not(:last-child),
body > imagedrag {
    position: relative;
    overflow: hidden;
    z-index: 2;
    opacity: 1;
    margin: 0;
    aspect-ratio: 1/1;
}

imagegrid > content > images > scimage::before,
imagegrid > content > images > addentry::before,
body > imagedrag::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: '';
    border: 1px solid rgba(160, 160, 160, .08);
    z-index: 1;
    pointer-events: none;
}

imagegrid > content > images > addentry {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
    cursor: pointer;
    opacity: 1;
    aspect-ratio: 1/1;
}

@media(max-width: 700px) {
    imagegrid > content > images > addentry {
        background: #ffffff;
    }
}

imagegrid > content > images > addentry:active {
    background: #dfdfdf;
}

imagegrid > content > images > addentry > content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

imagegrid > content > images > addentry > content > icon {
    position: relative;
    display: block;
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 0;
    font-size: 42px;
    color: var(--accent-color);
    cursor: pointer;
}


body > imagedrag,
body > listentrydrag {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    z-index: 15;
    transform-origin: top left;
    background: transparent;
    box-shadow: 0px 12px 32px 8px rgba(0, 0, 0, 1);
    border: 1px solid rgba(var(--accent-color), 1);
    background: #111111;
    transition: opacity .1s linear;
    animation: dragShadowIn .12s linear;
}


body > listentrydrag {
    border-radius: 10px;
    overflow: hidden;
}



scimage > checkboxwrap {
    position: absolute;
    top: 0;
    left: 0;
    padding: 8px;
    display: inline-block;
    cursor: pointer;
    opacity: 1;
    transition: opacity .12s linear;
}

imagegrid.oe:not(.e) > content > images > scimage > checkboxwrap {
    opacity: 0;
    pointer-events: none;
}

scimage > checkboxwrap > checkbox:not(.a) {
    background: rgba(255, 255, 255, 1);
    box-shadow: 0px 0px 32px rgba(0, 0, 0, .25);
}

scimage > checkboxwrap:active > checkbox:not(.a) {
    background: rgba(175, 175, 175, 1);
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    scimage > checkboxwrap > checkbox:not(.a) {
        background: rgba(255, 255, 255, .7);
        -webkit-backdrop-filter: blur(20px) saturate(150%);
        backdrop-filter: blur(20px) saturate(150%);
    }

    scimage > checkboxwrap:active > checkbox:not(.a) {
        background: rgba(175, 175, 175, .88);
    }
}

imagegrid > content > images > scimage > uplprog {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, .7);
    padding: 32px;
    z-index: 1;
}

imagegrid > content > images > scimage > uplprog > content {
    position: relative;
    display: block;
    width: 100%;
    height: 6px;
    background: rgba(230, 230, 230, .8);
    border-radius: 10000px;
    overflow: hidden;
    box-shadow: 0px 1px 2px rgba(0, 0, 0, .2);
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    imagegrid > content > images > scimage > uplprog > content {
        background: rgba(230, 230, 230, .6);
        backdrop-filter: blur(12px) saturate(150%);
        -webkit-backdrop-filter: blur(12px) saturate(150%);
    }
}

imagegrid > content > images > scimage > uplprog > content > inner {
    position: relative;
    display: block;
    width: 25%;
    height: 100%;
    transform: translate3d(0, 0, 0);
    background: var(--accent-color);
    transition: transform .2s cubic-bezier(0.215, 0.610, 0.355, 1), width .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

imagegrid > content > images > scimage > uplprog.prepare > content > inner {
    transition: transform 1.5s cubic-bezier(0.215, 0.610, 0.355, 1), width 1.5s cubic-bezier(0.215, 0.610, 0.355, 1);
}

imagegrid > content > images > scimage > content,
body > imagedrag > content {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0;
}

imagegrid:not(.oe) > content > entry > content:active,
imagegrid.oe.e > content > entry > content:active {
    opacity: .75;
}

imagegrid > content > images > scimage > content > img,
body > imagedrag > content > img {
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
    object-fit: cover;
    object-position: center center;
    border: none !important;
    outline: none !important;
    pointer-events: none;
}




/* ----- Spinner ------ */



scspinner {
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
}

section > content > scspinner {
    margin: 32px 0;
}

scspinner > p {
    position: relative;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding: 0 0 0 16px;
    margin: 0;
    font-size: 15px;
    opacity: 1;
    color: #252525;
}

scspinner.small > p {
    padding: 0 0 0 8px;
}

scspinner > content {
    position: relative;
    display: block;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
}

scspinner.small > content {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
}

scspinner petal {
    border-radius: 5000px;
    width: 10px;
    height: 4px;
    display: block;
    position: absolute;
    left: 1px;
    top: 17px;
    transform-origin: 170% center;
    background-color: #757575;
}

scspinner.small petal {
    width: 6px;
    height: 3px;
    display: block;
    position: absolute;
    left: 1px;
    top: 8px;
    transform-origin: 160% center;
}

scspinner.a petal {
    animation: petal .8s 0s ease-out forwards infinite
}

scspinner petal:nth-child(1) {
    animation-delay: -.2s
}

scspinner petal:nth-child(2) {
    transform: rotate(45deg);
    animation-delay: -.1s
}

scspinner petal:nth-child(3) {
    transform: rotate(90deg)
}

scspinner petal:nth-child(4) {
    transform: rotate(135deg);
    animation-delay: -.7s
}

scspinner petal:nth-child(5) {
    transform: rotate(-180deg);
    animation-delay: -.6s
}

scspinner petal:nth-child(6) {
    transform: rotate(-135deg);
    animation-delay: -.5s
}

scspinner petal:nth-child(7) {
    transform: rotate(-90deg);
    animation-delay: -.4s
}

scspinner petal:nth-child(8) {
    transform: rotate(-45deg);
    animation-delay: -.3s
}

scspinner petal:nth-child(n+9) {
    display: none;
}


@keyframes petal {
    0% {
        opacity: .2;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"
    }

    20% {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }

    100% {
        opacity: .2;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"
    }
}




view > header > content > scspinner,
view > header > content > scspinner > spinner {
    position: relative;
    display: block;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    margin: 0 20px 0 0;
}

view > header.accent > content > scspinner > spinner::after {
    background: radial-gradient(circle at top, #ffffff, transparent);
}

view > contentwrap > scspinner {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    background: #ffffff;
}

view > contentwrap > scspinner > spinner {
    position: relative;
    display: block;
    width: 96px;
    height: 96px;
    flex: 0 0 96px;
}

view > contentwrap > scspinner > spinner {
    position: relative;
    display: block;
    -webkit-mask-image: url('/assets/images/spinner_large.svg');
    mask-image: url('/assets/images/spinner_large.svg');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}


/* ----- SCEditor ---- */

sceditor {
    position: relative;
    display: block;
    width: 100%;
    margin: 32px 0;
    overflow: hidden;
}

sceditor > h6 {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    font-size: 12px;
}

sceditor > h6::after {
    position: relative;
    flex: 1 1 100%;
    content: '';
    height: 2px;
    background: rgba(0, 0, 0, .05);
    margin: 0 0 0 16px;
}

sceditor > content {
    position: relative;
    display: block;
    width: 100%;
    transform: translate3d(0, 0, 0);
    border: 1px solid #dddddd;
    padding: 8px;
    border-radius: 10px;
}

sceditor > content > p {
    position: absolute;
    left: 0;
    top: 0;
    margin: 0;
    width: 100%;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    pointer-events: none;
}

sceditor > content > textarea {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    font-size: 15px;
    transform: translate3d(0, 0, 0);
}

sceditor.oe:not(.e) > content > textarea {
    transform: translate3d(-12px, -12px, 0);
    border-color: transparent;
    background: transparent;
    color: #505050;
}


sceditor > content > entry {
    position: relative;
    display: block;
    width: 100%;
    margin: 8px 0;
}

sceditor > content > entry:first-of-type {
    margin-top: 0;
}

sceditor > content > entry > content {
    position: relative;
    display: block;
    width: 100%;
    min-height: 14px;
    border: unset;
    outline: 1px solid transparent;
}



/* ----- Checkbox ------ */


checkbox {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    cursor: pointer;
    background: rgba(155, 155, 155, .02);
    border: 1px solid rgba(0, 0, 0, .2);
    padding: 1px 0 0 0;
    border-radius: 8px;
    overflow: hidden;
}

@media(max-width: 750px) {
    checkbox {
        flex: 0 0 20px;
        width: 20px;
        height: 20px;
    }
}

checkbox.a {
    background: var(--accent-color);
}

checkbox > icon {
    position: relative;
    display: block;
    text-align: center;
    color: #ffffff;
    visibility: hidden;
    font-size: 21px;
}

@media(max-width: 750px) {
    checkbox > icon {
        font-size: 15px;
    }
}

checkbox:active::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .2);
    content: '';
    display: block;
}


listentry checkbox {
    border-radius: 50%;
    background: transparent;
    margin-right: 8px;
    margin-left: 8px;
}

listentry checkbox:active::before {
    background: transparent;
}

listentry checkbox.a {
    background-color: var(--accent-color);
}

listentry checkbox icon {
    visibility: visible;
    color: transparent;
}


listentry checkbox.a icon {
    color: #ffffff;
}





/* ----- Form ---- */

scform {
    position: relative;
    display: block;
    width: 100%;
    opacity: 1;
    margin: var(--generic-element-margin) 0;
    transition: opacity .1s linear;
}

scform > h6 {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    font-size: 12px;
}

scform > h6::after {
    position: relative;
    flex: 1 1 100%;
    content: '';
    height: 2px;
    background: rgba(0, 0, 0, .05);
    margin: 0 0 0 16px;
}

sbox scform:first-child {
    margin-top: 0;
}

sbox scform:last-child {
    margin-bottom: 0;
}



scform > content {
    position: relative;
    width: 100%;
    display: block;
    background: transparent;
    overflow: visible;
}

scform > content > p {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 6px 0 0 0;
    pointer-events: none;
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

finput {
    position: relative;
    width: 100%;
    padding: 0;
    display: block;
    background: transparent;
}

scform > content > finput {
    position: absolute;
    left: 0;
    top: 0;
}

scform > content > finput > deloverlay {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--color-red);
    opacity: 0;
    transition: opacity .2s linear;
}


finput > errorwrap {
    position: relative;
    display: block;
    width: 100%;
    overflow: visible;
    transition: height .12s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

finput > errorwrap > p {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    padding: 4px 0 0 0;
    opacity: 0;
    transition: opacity .05s linear;
}

finput.error > errorwrap > p {
    opacity: 1;
}


finput > content {
    position: relative;
    width: 100%;
    display: block;
}

scform > content > bg {
    display: none;
}


sbox scform:first-child > content > finput:first-child {
    padding-top: 0;
}



sbox scform > content > finput:last-child {
    padding-bottom: 0;
}

finput > content > textwrap {
    position: relative;
    display: block;
    padding: 0;
    transform: translate3d(0, 0, 0);
    transition: opacity .2s cubic-bezier(0.215, 0.610, 0.355, 1), transform .2s cubic-bezier(0.215, 0.610, 0.355, 1), flex .2s cubic-bezier(0.215, 0.610, 0.355, 1), border .05s linear;
    z-index: 1;
}

finput > content > textwrap > p,
finput > content > textwrap > h1,
finput > content > textwrap > h2,
finput > content > textwrap > h3,
finput > content > textwrap > h4,
finput > content > textwrap > h5,
finput > content > textwrap > h6 {
    position: relative;
    display: block;
    white-space: pre-wrap;
    margin: 0 0 4px 0;
}

finput.c > content {
    display: flex;
    align-items: center;
}

finput.c > content > textwrap > p,
scform.compact finput.c > content > textwrap > p {
    margin: 0 0 0 8px;
}

finput > content > textwrap > h1:not(:last-child),
finput > content > textwrap > h2:not(:last-child),
finput > content > textwrap > h3:not(:last-child),
finput > content > textwrap > h4:not(:last-child),
finput > content > textwrap > h5:not(:last-child),
finput > content > textwrap > h6:not(:last-child) {
    margin: 0 0 8px;
}

finput.error > content > textwrap > p,
finput.error > content > textwrap > h1,
finput.error > content > textwrap > h2,
finput.error > content > textwrap > h3,
finput.error > content > textwrap > h4,
finput.error > content > textwrap > h5,
finput.error > content > textwrap > h6 {
    color: var(--color-red);
    opacity: 1;
}

finput > content > inputwrap {
    position: relative;
    display: flex;
    align-items: flex-end;
    width: 100%;
    outline: unset;
    border-radius: 8px;
    border: unset;
    font-size: 17px;
    line-height: 1.25;
    font-family: "Inter", sans-serif;
    background: #ffffff;
    color: #000000;
    transform: translate3d(0, 0, 0);
    border: 1px solid #dddddd;
    padding: 8px 4px;
    z-index: 0;
}

scform.oe:not(.e) finput > content > inputwrap {
    transform: translate3d(-12px, -12px, 0);
    border-color: transparent;
    background: transparent;
}

finput:not(.s) > content > inputwrap {
    cursor: text;
}

scform.oe:not(.e) finput.l > content > inputwrap > input {
    color: var(--accent-color);
    cursor: pointer;
}


scform.oe:not(.e) finput > content > inputwrap > input::placeholder {
    color: transparent;
}


finput.g > content > inputwrap {
    display: block;
    border-radius: 0;
}

finput.g > content > inputwrap > frow {
    position: relative;
    display: flex;
    width: 100%;
    padding: 0;
}

finput.g > content > inputwrap > frow > inputwrap {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1 1;
    height: 34px;
}

scform.oe:not(.e) finput.g > content > inputwrap > frow > inputwrap {
    height: 20px;
}

finput.g > content > inputwrap > frow > inputwrap > input,
finput.g > content > inputwrap > frow > inputwrap > select {
    position: relative;
    display: block;
    padding: 0 8px;
}

@media(max-width: 375px) {

    finput.g > content > inputwrap > frow > inputwrap > input,
    finput.g > content > inputwrap > frow > inputwrap > select {
        font-size: 13px;
    }
}

finput.g > content > inputwrap > frow > inputwrap > select {
    background-position-y: 0px;
}

scform.oe:not(.e) finput.g > content > inputwrap > frow > inputwrap > select {
    background: transparent;
}

scform.oe:not(.e) finput.g > content > inputwrap > frow > inputwrap > input::placeholder {
    color: transparent;
}


finput.error > content > inputwrap {
    border: 1px solid var(--color-red);
}

finput:focus-within > content > inputwrap {
    border: 1px solid var(--accent-color);
}


finput > content > inputwrap > p {
    position: relative;
    display: inline-block;
    font-size: 15px;
    line-height: 1.25;
    color: #404040;
    opacity: 1;
    padding: 2px 0;
    cursor: text;
    transition: color .2s cubic-bezier(0.215, 0.610, 0.355, 1), opacity .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

@media(max-width: 375px) {
    finput > content > inputwrap > p {
        font-size: 14px;
    }
}

scform.oe:not(.e) finput.ei > content > inputwrap > p {
    opacity: 0;
}




finput.b,
finput.b > content,
finput.m,
finput.m > content {
    cursor: pointer;
}

finput.b > content > icon,
finput.m > content > icon {
    position: relative;
    margin: 0 10px 0 0;
    cursor: pointer;
}

finput.b > content > icon,
finput.b > content > icon::after {
    color: var(--accent-color);
}


finput.m > content > icon,
finput.m > content > icon::after {
    color: #999999;
    transition: opacity .12s linear;
    opacity: 1;
}

finput.b > content > textwrap > p {
    color: var(--accent-color);
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    cursor: pointer;
}


finput.m > content > textwrap > p:last-of-type {
    padding: 10px 12px;
    color: #ffffff;
    flex: 1 1 100%;
    text-align: left;
}



finput.c > content > checkbox.a > icon,
checkbox.a > icon {
    visibility: visible;
}

finput.s > content > button {
    position: relative;
    display: block;
    white-space: nowrap;
    width: 100%;
    text-align: left;
    padding: 2px 6px 4px;
}

scform.oe:not(.e) finput.s > content > inputwrap > select {
    background: transparent;
}


finput.t > content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}




scform datetimepickerbuttonswrap {
    position: relative;
    display: flex;
    align-items: center;
}


scform datetimepickerbuttonswrap > *:not(:last-child) {
    margin-right: 8px;
}

datetimepickerbuttons {
    position: relative;
    display: flex;
    align-items: center;
    transform: translate3d(0, 0, 0);
    transition: opacity .2s cubic-bezier(0.215, 0.610, 0.355, 1), transform .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

scform datetimepickerbuttons {
    height: 100%;
}

scform:not(.compact) datetimepickerbuttons {
    padding: 8px 0;
}

datetimepickerbuttons > *:not(:last-child) {
    margin: 0 4px 0 0;
}


datetimepickerbuttons > entry {
    position: relative;
    display: flex;
    align-content: center;
    padding: 0px;
    border-radius: 6px;
    background: transparent;
    font-size: 15px;
    opacity: 1;
    padding: 0 8px;
    color: #000000;
    transition: opacity .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

scform datetimepickerbuttons > entry {
    height: 100%;
}

datetimepickerbuttons > entry::before {
    position: absolute;
    left: 0;
    top: -4px;
    width: 100%;
    height: calc(100% + 8px);
    background: rgba(155, 155, 155, .2);
    border-radius: 8px;
    content: '';
}

scform.oe:not(.e) datetimepickerbuttons {
    transform: translate3d(-8px, 0, 0);
}

scform.oe.e datetimepickerbuttons > entry,
scform:not(.oe) datetimepickerbuttons > entry {
    cursor: pointer;
    font-weight: 450;
    color: var(--accent-color);
    opacity: 1;
}

scform.oe:not(.e) datetimepickerbuttons > entry::before {
    opacity: 0;
}

scform.oe:not(.e) datetimepickerbuttons > entry.empty {
    opacity: 0;
}



scform.oe.e datetimepickerbuttons > entry:active::before,
scform:not(.oe) datetimepickerbuttons > entry:active::before {
    transition: unset;
    background: rgba(155, 155, 155, .35);
}





/* ------ Form (Compact Style) ------ */


scform.compact > content {
    border-radius: 10px;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
}

scform.compact > content > bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
    display: block;
    content: '';
    background: rgba(160, 160, 160, .08);
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transform-origin: left top;
}

@media(max-width: 700px) {
    view:not(.sheet) scform.compact > content > bg {
        background: #ffffff;
    }
}


scform.compact.oe:not(.e) > content > bg {
    opacity: 0;
}

scform.compact > content > finput {
    padding: 0;
    overflow: hidden;
}

scform.compact > content > finput > content {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 12px;
    transform: translate3d(0, 0, 0);
    width: 100%;
    opacity: 1;
}

@media(max-width: 375px) {
    scform.compact > content > finput > content {
        padding: 0 8px;
    }
}

scform.compact > content > finput > content > textwrap {
    display: inline-block;
    width: unset;
}

scform.compact > content > finput > content > textwrap > p,
scform.compact > content > finput > content > textwrap > select {
    position: relative;
    display: block;
    width: 100%;
    white-space: nowrap;
    margin: 0;
    padding: 0;
    font-size: 15px;
    font-weight: 400;
}

@media(max-width: 375px) {

    scform.compact > content > finput > content > textwrap > p,
    scform.compact > content > finput > content > textwrap > select {
        font-size: 13px;
    }
}

scform.compact > content > finput > content > textwrap > select {
    width: calc(100% - 8px);
    background-position-y: 1px;
    color: var(--accent-color);
}

scform.compact.oe:not(.e) > content > finput > content > textwrap > select {
    color: #505050;
    background: unset;
}

scform.compact > content > finput > content > inputwrap {
    background: transparent;
    border: transparent;
    padding: 0;
    box-shadow: 0px 0px 0px transparent;
    flex: 1 1 100%;
}

scform.compact > content > finput > content > inputwrap > p:first-child {
    padding-right: 4px;
}

scform.compact > content > finput > content > inputwrap > p:last-child {
    padding-left: 4px;
}

scform.compact > content > finput > content > inputwrap > input,
scform.compact > content > finput > content > inputwrap > select {
    padding-left: 0;
    padding-right: 0;
}

scform.compact > content > finput.g > content > inputwrap > frow > borleft {
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
    height: 20px;
    background: linear-gradient(to top, rgba(0, 0, 0, .1) 0%, rgba(0, 0, 0, 0) 100%);
    content: '';
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transform-origin: top left;
}

scform.compact.oe:not(.e) > content > finput.g > content > inputwrap > frow > borleft {
    opacity: 0;
}

scform.compact > content > finput.g > content > inputwrap > frow > borbottom {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: rgba(0, 0, 0, .1);
    content: '';
    opacity: 1;
}

scform.compact.oe:not(.e) > content > finput.g > content > inputwrap > frow > borbottom {
    opacity: 0;
}

scform > content > finput.g > content > inputwrap > frow:last-child > borbottom {
    display: none;
}

scform.compact.oe:not(.e) > content > finput.g > content > inputwrap {
    border-left-color: transparent;
}


scform.compact.oe:not(.e) > content > finput.g > content > inputwrap > frow > inputwrap:not(:last-of-type):not(:first-of-type) {
    border-left-color: transparent;
    padding-left: 8px;
}

scform.compact > content > finput > content > delbutton,
listentry > delbutton {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    margin: 0 8px 0 0;
    border-radius: 5000px;
    cursor: pointer;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
    background: var(--color-red);
    transition: opacity .15s linear .05s, transform .2s cubic-bezier(0.215, 0.610, 0.355, 1), flex .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

listentry > delbutton {
    margin-left: 4px;
}

@media(max-width: 375px) {

    scform.compact > content > finput > content > delbutton,
    listentry > delbutton {
        width: 16px;
        height: 16px;
        flex: 0 0 16px;
        margin: 0 4px 0 0;
    }
}

scform.compact.oe:not(.e) > content > finput.removable > content > textwrap,
scform.compact.oe:not(.e) > content > finput.removable > content > inputwrap {
    transform: translate3d(-28px, 0, 0);
}

@media(max-width: 375px) {

    scform.compact.oe:not(.e) > content > finput.removable > content > textwrap,
    scform.compact.oe:not(.e) > content > finput.removable > content > inputwrap {
        transform: translate3d(-24px, 0, 0);
    }
}

scform.compact.oe:not(.e) > content > finput.g.removable > content > inputwrap {
    transform: translate3d(-36px, 0, 0);
    width: calc(100% + 36px);
}

scform.compact.oe:not(.e) > content > finput > content > delbutton,
list.fileslist.oe:not(.e) listentry > delbutton {
    transition: opacity .05s linear, transform .2s cubic-bezier(0.215, 0.610, 0.355, 1), flex .2s cubic-bezier(0.215, 0.610, 0.355, 1);
    opacity: 0;
    transform: translate3d(-20px, 0, 0);
    flex: 0 0 20px;
}

scform.compact > content > finput > content > delbutton:active::before,
listentry > delbutton:active::before {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .25);
    content: '';
}

scform.compact > content > finput > content > delbutton > div,
listentry > delbutton > div {
    position: absolute;
    left: 4px;
    top: 9px;
    display: block;
    width: 12px;
    height: 2px;
    flex: 0 0 12px;
    border-radius: 5000px;
    background: #ffffff;
    margin: 0;
    padding: 0;
    opacity: 1;
    cursor: pointer;
    transition: opacity .1s linear;
    pointer-events: none;
}

@media(max-width: 375px) {

    scform.compact > content > finput > content > delbutton > div,
    listentry > delbutton > div {
        left: 3px;
        top: 7px;
        width: 10px;
    }
}

scform.compact > content > finput > content > delbutton > p,
listentry > delbutton > p {
    position: relative;
    display: inline-block;
    white-space: nowrap;
    color: #ffffff;
    font-size: 13px;
    font-weight: 550;
    margin: 0;
    padding: 0 12px;
    opacity: 0;
    text-transform: uppercase;
    cursor: pointer;
    pointer-events: none;
    transition: opacity .1s linear;
}


scform.compact > content > finput > content > favbutton,
scform.compact > content > finput > content > errbutton {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    cursor: pointer;
    transform: translate3d(0, 0, 0);
    margin: 0 0 0 12px;
    transition: opacity .2s cubic-bezier(0.215, 0.610, 0.355, 1), transform .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

scform.compact.oe:not(.e) > content > finput > content > favbutton,
scform.compact.oe:not(.e) > content > finput > content > errbutton {
    width: 0;
    margin: 0;
    transform: translate3d(25px, 0, 0);
    overflow: visible;
    justify-content: flex-end;
}

@media(max-width: 375px) {

    scform.compact.oe:not(.e) > content > finput > content > favbutton,
    scform.compact.oe:not(.e) > content > finput > content > errbutton {
        margin: 0;
        transform: translate3d(15px, 0, 0);
    }
}

scform.compact.oe:not(.e) > content > finput > content > favbutton:not(.a) {
    opacity: 0;
}

scform.compact > content > finput > content > favbutton > icon,
scform.compact > content > finput > content > errbutton > icon {
    color: var(--accent-color);
    font-size: 20px;
    opacity: 1;
    cursor: pointer;
    transform-origin: right center;
    transform: translate3d(0, 0, 0) scale(1);
    transition: color .2s cubic-bezier(0.215, 0.610, 0.355, 1), transform .2s cubic-bezier(0.215, 0.610, 0.355, 1);
    pointer-events: none;
}

scform.compact > content > finput > content > errbutton > icon {
    color: var(--color-red);
}

scform.compact.oe:not(.e) > content > finput > content > favbutton > icon,
scform.compact.oe:not(.e) > content > finput > content > errbutton > icon {
    transform: translate3d(0, 0, 0) scale(.8);
    color: #888888;
}

scform.compact > content > finput > content > favbutton:active > icon,
scform.compact > content > finput > content > errbutton:active > icon {
    opacity: .5;
}



scform.compact > content > finput:not(:last-child)::before {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1px;
    width: 100%;
    content: '';
    display: block;
    background: rgba(0, 0, 0, 0);
}

scform.compact.oe.e > content > finput:not(:last-child)::before,
scform.compact:not(.oe) > content > finput:not(:last-child)::before {
    background: rgba(0, 0, 0, .1);
}


scform.compact.oe:not(.e) > content > finput > content > icon {
    pointer-events: none;
    opacity: 0;
}

scform.compact.oe:not(.e) > content > finput > content > inputwrap {
    transform: translate3d(0, 0, 0);
}

scform.compact.oe:not(.e) > content > finput > content > inputwrap > p {
    color: #000000;
}





scform.compact > content > sbutton,
list.fileslist > content > sbutton {
    display: flex;
    padding: 0 12px;
    margin: 0;
    background: transparent;
    border-radius: 0;
    height: 45px;
    width: 100%;
}

list.fileslist > content > sbutton {
    transform-origin: top center;
}

list.fileslist.compact > content > sbutton,
list.fileslist.grey > content > sbutton {
    background: rgba(160, 160, 160, .08);
}

list.fileslist.compact > content > sbutton:active,
list.fileslist.grey > content > sbutton:active {
    background: rgba(160, 160, 160, .15);
}

scform.compact.oe:not(.e) > content > sbutton {
    pointer-events: none;
    overflow: hidden;
    height: 0px;
}

list.fileslist.oe:not(.e) > content > sbutton {
    pointer-events: none;
    overflow: hidden;
}

list.fileslist > content > sbutton.d {
    opacity: 1;
}

list.fileslist > content > sbutton.d > icon,
list.fileslist > content > sbutton.d > content > p {
    color: #888888;
}

scform.compact > content > sbutton > icon,
scform.compact > content > sbutton > content > p,
list.fileslist > content > sbutton > icon,
list.fileslist > content > sbutton > content > p {
    color: var(--accent-color);
    opacity: 1;
    text-align: left;
    transition: unset;
}

scform.compact > content > sbutton > content > p,
list.fileslist > content > sbutton > content > p {
    font-size: 15px;
}

scform.compact.oe:not(.e) > content > sbutton > icon,
scform.compact.oe:not(.e) > content > sbutton > content > p {
    opacity: 0;
}



/* ------ Form (Card Style) ------ */

scform.card > content {
    border-radius: 12px;
    padding: 32px;
    border: 1px solid rgba(0, 0, 0, .1);
}



selectview.selectview-color entry {
    position: relative;
    display: block;
    width: 21px;
    height: 21px;
    flex: 0 0 21px;
}

view.selectview-color colorgrid {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 8px;
}

view.selectview-color colorgrid > entry {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
}



sscrollerwrap {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    overflow: hidden;
}

@media(min-width: 901px) {
    sscrollerwrap {
        height: 400px;
    }

    view.selectview-color colorgrid {
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    }
}

sscrollerwrap > sscroller {
    position: relative;
    display: block;
    flex: 0 0 100px;
    height: 100%;
    overflow: hidden;
}

sscrollerwrap > sscroller > content {
    position: relative;
    display: block;
    width: 100%;
    -webkit-transform-style: flat;
    transform-style: flat;
}

sscrollerwrap > sscroller > content > sscrollertile {
    position: relative;
    display: block;
    width: 100px;
    height: 100px;
    padding: 4px;
}

sscrollerwrap > sscroller > content > sscrollertile > content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
    padding: 4px 8px;
    opacity: .25;
    cursor: pointer;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
}

sscrollerwrap > sscroller > content > sscrollertile > content::after {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    border: 3px solid #ffffff;
    content: '';
    z-index: -1;
}

sscrollerwrap > sscroller > content > sscrollertile > content.a::after {
    border: 3px solid transparent;
}

@media(min-width: 901px) {
    sscrollerwrap > sscroller > content > sscrollertile > content:active {
        opacity: .1;
    }
}


sscrollerwrap > sscroller > content > sscrollertile > content > h3 {
    position: relative;
    display: block;
    width: 100%;
    white-space: nowrap;
    font-weight: 400;
    font-size: 32px;
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}



toggle {
    position: relative;
    display: block;
    height: 24px;
    width: 44px;
    flex: 0 0 44px;
    padding: 3px;
    border-radius: 5000px;
    border: 1px solid rgba(0, 0, 0, .12);
    background: rgba(155, 155, 155, .25);
    overflow: hidden;
    transition: background .15s cubic-bezier(0.215, 0.610, 0.355, 1);
    cursor: pointer;
}


toggle > content {
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
}


toggle > handle {
    position: relative;
    display: block;
    width: 16px;
    height: 100%;
    transform: translate3d(0, 0, 0);
    transition: transform .15s cubic-bezier(0.215, 0.610, 0.355, 1);
}

toggle > handle::before {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    width: 16px;
    height: 100%;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, .2);
    transform: translate3d(0, 0, 0);
    transition: transform .15s cubic-bezier(0.215, 0.610, 0.355, 1);
    box-shadow: 0px 0px 4px rgba(0, 0, 0, .12);
    content: '';
}

toggle:active > handle:before {
    transition: transform .1s cubic-bezier(0.215, 0.610, 0.355, 1);
    transform: translate3d(0, 0, 0) scale(.8);
}

/* ----- Timeline ----- */

timeline {
    position: relative;
    width: 100%;
    padding: 0 0;
    display: block;
}


timeline > bg {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 68px;
    display: block;
    z-index: 0;
}


timeline > bg > line {
    position: relative;
    display: block;
    height: 100%;
    width: 1px;
    border-right: 2.5px dashed #333333;
    margin: 0 auto;
    z-index: 0;
}

timeline > bg > grad {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 22px;
    display: block;
    background: linear-gradient(to bottom, #000000 0%, #00000000 100%);
    z-index: 1;
}

timeline > bg > grad:last-of-type {
    position: absolute;
    left: 0;
    top: unset;
    bottom: 0;
    width: 100%;
    background: linear-gradient(to top, #000000 0%, #00000000 100%);
}


timeline > entry {
    position: relative;
    width: 100%;
    display: flex;
    padding: 32px 0;
    z-index: 2;
}

timeline > entry:first-of-type {
    padding-top: 0;
}

timeline > entry:last-of-type {
    padding-bottom: 0;
}

timeline > entry > tdateblock {
    position: relative;
    display: block;
    padding: 0 22px 0 0;
    width: 90px;
    flex: 0 0 90px;
    height: 68px;
    margin: 22px 0 0 0;
    box-shadow: 0px 0px 42px 12px rgba(0, 0, 0, 1);
}

timeline > entry > tdateblock > binder {
    position: absolute;
    left: 12px;
    top: -3px;
    height: 9px;
    width: 3px;
    background: linear-gradient(to bottom, #333333 0%, #bbbbbb 50%, #666666 100%);
    z-index: 2;
    border-radius: 10000px;
}

timeline > entry > tdateblock > binder:last-of-type {
    left: 53px;
}

timeline > entry > tdateblock > content {
    position: relative;
    background: #fefefe;
    border-radius: 10px;
    border: 1px solid #292929;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
}

timeline > entry > tdateblock > content > mon {
    position: relative;
    display: block;
    width: 100%;
    padding: 2px 0;
    text-align: center;
    color: #f0f0f0;
    background: #f13e32;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}

timeline > entry > tdateblock > content > dat {
    position: relative;
    display: block;
    height: auto;
    padding: 6px;
}

timeline > entry > tdateblock > content > dat h3 {
    position: relative;
    margin: 0;
    text-align: center;
    font-size: 28px;
    font-weight: 450;
    color: #000000;
}




timeline > entry > content {
    position: relative;
    flex: 1 1 100%;
    padding: 0 0 0 8px;
    display: block;
}

timeline > entry > content > entry {
    position: relative;
    display: flex;
    padding: 18px;
    border-radius: 10px;
    border: 1px solid #292929;
    background: #111111;
    width: 100%;
}

timeline > entry > content > entry:not(:last-of-type) {
    margin-bottom: 8px;
}

timeline > entry > content > entry > content {
    position: relative;
    display: flex;
    width: 100%;
}

timeline > entry > content > entry > content > icon {
    position: relative;
    display: block;
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    border: 1px solid #292929;
    background: rgba(255, 255, 255, .05);
    border-radius: 6px;
    font-size: 32px;
    text-align: center;
    padding: 12px 0;
}

timeline > entry > content > entry > content > textwrap {
    position: relative;
    width: 100%;
    flex: 1 1 100%;
}

timeline > entry > content > entry > content > textwrap:not(:first-child) {
    padding-left: 22px;
}


timeline > entry > content > entry > content > textwrap > p:first-of-type {
    position: relative;
    margin: 0 0 6px;
    display: inline-block;
    padding: 0;
}

timeline > entry > content > entry > content > textwrap > h1,
timeline > entry > content > entry > content > textwrap > h2,
timeline > entry > content > entry > content > textwrap > h3,
timeline > entry > content > entry > content > textwrap > h4,
timeline > entry > content > entry > content > textwrap > h5,
timeline > entry > content > entry > content > textwrap > h6 {
    position: relative;
    margin: 0 0 4px;
}


timeline > entry > content > entry > content > textwrap > p:last-of-type {
    position: relative;
    padding-bottom: 0;
}



/* ---- Title ---- */

stitle {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    margin: var(--generic-element-margin) 0;
}


section.animate-section-to-left stitle p {
    animation: animSectionToLeft .5s cubic-bezier(0.075, 0.82, 0.165, 1);
}

section.animate-section-to-right stitle p {
    animation: animSectionToRight .5s cubic-bezier(0.075, 0.82, 0.165, 1);
}


stitle > textwrap {
    position: relative;
    display: block;
    flex: 1 1 100%;
}

stitle > textwrap > h6,
stitle > textwrap > h5,
stitle > textwrap > h4,
stitle > textwrap > h3,
stitle > textwrap > h2,
stitle > textwrap > h1 {
    position: relative;
    margin: 0 0 8px;
    font-weight: 700;
}

stitle > textwrap > h6:last-child,
stitle > textwrap > h5:last-child,
stitle > textwrap > h4:last-child,
stitle > textwrap > h3:last-child,
stitle > textwrap > h2:last-child,
stitle > textwrap > h1:last-child {
    margin: 0;
}

stitle.ticenter > textwrap > h6,
stitle.ticenter > textwrap > h5,
stitle.ticenter > textwrap > h4,
stitle.ticenter > textwrap > h3,
stitle.ticenter > textwrap > h2,
stitle.ticenter > textwrap > h1,
stitle.tecenter > textwrap > p {
    text-align: center;
    width: 100%;
}



stitle > textwrap > p {
    position: relative;
    margin: 0;
}

stitle > textwrap > h6 {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    font-size: 12px;
    color: #191919;
    font-weight: 550;
}

stitle > textwrap > h6::after {
    position: relative;
    flex: 1 1 0px;
    content: '';
    height: 2px;
    background: rgba(0, 0, 0, .05);
    margin: 0 0 0 16px;
}

/* -- Indicator -- */

sindicator {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

sbox sindicator {
    margin: 16px 0;
}

sindicator > indicator {
    position: relative;
    display: block;
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    margin: 0 8px 0 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, .5);
}

sindicator > textwrap {
    position: relative;
    display: block;
}

sindicator > textwrap > h1:not(:last-child),
sindicator > textwrap > h2:not(:last-child),
sindicator > textwrap > h3:not(:last-child),
sindicator > textwrap > h4:not(:last-child),
sindicator > textwrap > h5:not(:last-child),
sindicator > textwrap > h6:not(:last-child),
sindicator > textwrap > p:not(:last-child) {
    color: #222222;
    opacity: 1;
}

sindicator > textwrap > h1:last-child:first-child,
sindicator > textwrap > h2:last-child:first-child,
sindicator > textwrap > h3:last-child:first-child,
sindicator > textwrap > h4:last-child:first-child,
sindicator > textwrap > h5:last-child:first-child,
sindicator > textwrap > h6:last-child:first-child,
sindicator > textwrap > p:last-child:first-child {
    opacity: 1;
    color: #222222;
}

boxgrid.compact sindicator > textwrap > h1:not(:last-child),
boxgrid.compact sindicator > textwrap > h2:not(:last-child),
boxgrid.compact sindicator > textwrap > h3:not(:last-child),
boxgrid.compact sindicator > textwrap > h4:not(:last-child),
boxgrid.compact sindicator > textwrap > h5:not(:last-child),
boxgrid.compact sindicator > textwrap > h6:not(:last-child),
boxgrid.compact sindicator > textwrap > p:not(:last-child) {
    color: #222222;
    opacity: 1;
}

boxgrid.compact sindicator > textwrap > h1:last-child:first-child,
boxgrid.compact sindicator > textwrap > h2:last-child:first-child,
boxgrid.compact sindicator > textwrap > h3:last-child:first-child,
boxgrid.compact sindicator > textwrap > h4:last-child:first-child,
boxgrid.compact sindicator > textwrap > h5:last-child:first-child,
boxgrid.compact sindicator > textwrap > h6:last-child:first-child,
boxgrid.compact sindicator > textwrap > p:last-child:first-child {
    opacity: 1;
    font-size: 16px;
}

@media(max-width: 700px) {

    boxgrid.compact sindicator > textwrap > h1:last-child:first-child,
    boxgrid.compact sindicator > textwrap > h2:last-child:first-child,
    boxgrid.compact sindicator > textwrap > h3:last-child:first-child,
    boxgrid.compact sindicator > textwrap > h4:last-child:first-child,
    boxgrid.compact sindicator > textwrap > h5:last-child:first-child,
    boxgrid.compact sindicator > textwrap > h6:last-child:first-child,
    boxgrid.compact sindicator > textwrap > p:last-child:first-child {
        opacity: 1;
        font-size: 14px;
    }
}


/* ---- Alert --- */

salert {
    position: relative;
    display: block;
    width: 100%;
    margin: 16px 0;
}


salert > contentwrap {
    position: relative;
    display: flex;
    width: 100%;
    margin: 0;
    border-radius: 10px;
    padding: 32px 32px 32px 24px;
    background: rgba(160, 160, 160, .08);
}

@media(max-width: 700px) {
    salert > contentwrap {
        padding: 16px;
        background: rgba(155, 155, 155, .2);
    }
}

salert > contentwrap > icon {
    position: relative;
    display: block;
    font-size: 28px;
    flex: 0 0 28px;
    margin: 0 16px 0 0;
    color: var(--accent-color);
    pointer-events: none;
}

salert.red > contentwrap > icon {
    color: var(--color-red);
}

salert.green > contentwrap > icon {
    color: var(--color-green);
}

salert > contentwrap > content {
    position: relative;
    display: block;
}

salert > contentwrap > content > h6,
salert > contentwrap > content > h5,
salert > contentwrap > content > h4,
salert > contentwrap > content > h3,
salert > contentwrap > content > h2,
salert > contentwrap > content > h1 {
    position: relative;
    margin: 0 0 6px;
    font-weight: 700;
}

salert > contentwrap > content > h6:last-child,
salert > contentwrap > content > h5:last-child,
salert > contentwrap > content > h4:last-child,
salert > contentwrap > content > h3:last-child,
salert > contentwrap > content > h2:last-child,
salert > contentwrap > content > h1:last-child {
    margin: 0;
}

salert > contentwrap > content > p {
    position: relative;
    display: block;
    font-size: 15px;
}

salert > contentwrap > content > *:last-child {
    margin-bottom: 0;
}


/* ---- Box ---- */

sbox {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    border-radius: 10px;
    padding: 32px;
    border: 1px solid rgba(0, 0, 0, .1);
    background: #ffffff;
    overflow: hidden;
}

@media(max-width: 700px) {
    sbox {
        padding: 16px 16px 0;
    }

    view:not(.sheet) sbox {
        border: unset;
    }
}


sbox > icon {
    position: relative;
    display: block;
    width: 100%;
    font-size: 42px;
    margin: 0 0 16px;
    text-align: left;
    background: linear-gradient(#777777, #333333);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
}


sbox > img {
    position: relative;
    display: block;
    width: 15%;
    height: auto;
    margin: 0 0 16px;
}


sbox > contentwrap {
    position: relative;
    display: block;
    width: 100%;
}

sbox > contentwrap > slink {
    margin: 8px 0;
}

sbox > contentwrap > slink:last-child {
    margin-bottom: 0;
}

sbox.grey > contentwrap {
    border: unset;
    background: rgba(160, 160, 160, .08);
}

boxgrid.compact sbox > contentwrap > content > *:first-child {
    margin-top: 0;
}

sbox > contentwrap > content > *:last-child {
    margin-bottom: 0;
}


sbox > textwrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    flex: 1 1 100%;
    margin: 0 0 16px 0;
}

sbox > textwrap > h6,
sbox > textwrap > h5,
sbox > textwrap > h4,
sbox > textwrap > h3,
sbox > textwrap > h2,
sbox > textwrap > h1 {
    position: relative;
    display: block;
    flex: 1 1 100%;
    margin: 0;
}

section > content > sbox > textwrap > h6,
section > content > sbox > textwrap > h5,
section > content > sbox > textwrap > h4,
section > content > sbox > textwrap > h3,
section > content > sbox > textwrap > h2,
section > content > sbox > textwrap > h1 {
    font-weight: 700;
}


sbox > textwrap > h6:last-child,
sbox > textwrap > h5:last-child,
sbox > textwrap > h4:last-child,
sbox > textwrap > h3:last-child,
sbox > textwrap > h2:last-child,
sbox > textwrap > h1:last-child {
    margin: 0;
}


sbox > textwrap > p {
    position: relative;
    margin: 0;
}

sbox > textwrap > a {
    padding-left: 32px;
    margin: 0;
}

sbox > contentwrap > content {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
}

sbox > contentwrap > content > p {
    margin: 0 0 16px;
}

@media(max-width: 700px) {
    sbox > contentwrap > content > *:last-child:not(list) {
        margin-bottom: 16px;
    }
}

@media(min-width: 700px) {
    sbox > contentwrap > content > *:last-child {
        margin-bottom: 0;
    }
}




/* ----- Box Grid ----- */

boxgrid {
    position: relative;
    display: block;
    width: 100%;
}



boxgrid > content {
    position: relative;
    width: 100%;
    display: grid;
    column-gap: 16px;
    row-gap: 32px;
    grid-template-columns: 1fr 1fr 1fr;
    padding: 0;
    margin-bottom: var(--generic-element-margin);
}

boxgrid.col-1 > content {
    grid-template-columns: 1fr;
}

boxgrid.col-2 > content {
    grid-template-columns: 1fr 1fr;
}

sheet view boxgrid > content {
    grid-template-columns: 1fr 1fr;
}

@media (max-width: 700px) {

    boxgrid > content,
    sheet view boxgrid > content {
        column-gap: 16px;
        row-gap: 20px;
    }
}

boxgrid.card > content,
boxgrid.card.col-2 > content {
    grid-template-columns: 1fr 1fr;
    column-gap: 32px;
}

@media(max-width: 1250px) {

    boxgrid > content,
    boxgrid.col-2 > content {
        grid-template-columns: 1fr 1fr;
    }

    boxgrid.card > content {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 700px) {

    boxgrid > content,
    sheet view boxgrid > content {
        column-gap: 12px;
        row-gap: 24px;
    }

    boxgrid.col-1 > content {
        grid-template-columns: 1fr;
    }

    boxgrid.col-2 > content {
        grid-template-columns: 1fr;
    }
}


boxgrid > textwrap {
    position: relative;
    display: block;
    margin: 0 0 16px 0;
}

boxgrid > textwrap > h6 {
    position: relative;
    display: flex;
    align-items: center;
    white-space: nowrap;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    font-size: 12px;
}

boxgrid > textwrap > h6::after {
    position: relative;
    flex: 1 1 100%;
    content: '';
    height: 2px;
    background: rgba(0, 0, 0, .05);
    margin: 0 0 0 16px;
}

boxgrid.compact > content > sbox {
    margin: 0;
    padding: 0;
    background: transparent;
    border-radius: unset;
}


boxgrid > content > sbox,
boxgrid > content > sbox > contentwrap {
    margin: 0;
}

boxgrid.compact > content > sbox,
boxgrid.compact > content > sbox > contentwrap {
    border: unset;
}

boxgrid.compact > content > sbox > contentwrap {
    display: flex;
    flex-direction: column;
}

boxgrid.compact > content > sbox > textwrap {
    margin: 0 0 4px 0;
}

boxgrid.compact > content > sbox > contentwrap > content {
    flex: 1 1 100%;
}

boxgrid.compact > content > sbox > contentwrap > a {
    margin: 8px 0 0 0;
}


boxgrid > content > sbox > textwrap > h6,
boxgrid > content > sbox > textwrap > h5,
boxgrid > content > sbox > textwrap > h4,
boxgrid > content > sbox > textwrap > h3,
boxgrid > content > sbox > textwrap > h2,
boxgrid > content > sbox > textwrap > h1 {
    position: relative;
    width: 100%;
}

boxgrid.compact > content > sbox > textwrap > h6,
boxgrid.compact > content > sbox > textwrap > h5,
boxgrid.compact > content > sbox > textwrap > h4,
boxgrid.compact > content > sbox > textwrap > h3,
boxgrid.compact > content > sbox > textwrap > h2,
boxgrid.compact > content > sbox > textwrap > h1 {
    margin: 0;
    font-size: 12px;
    opacity: .6;
    font-weight: 600;
}

@media(max-width: 700px) {

    boxgrid.compact > content > sbox > textwrap > h6,
    boxgrid.compact > content > sbox > textwrap > h5,
    boxgrid.compact > content > sbox > textwrap > h4,
    boxgrid.compact > content > sbox > textwrap > h3,
    boxgrid.compact > content > sbox > textwrap > h2,
    boxgrid.compact > content > sbox > textwrap > h1 {
        margin: 0;
        font-size: 13px;
        opacity: .6;
        font-weight: 600;
    }
}

boxgrid.compact > content > sbox > contentwrap > content > p {
    font-size: 15px;
    opacity: 1;
    margin-bottom: 4px;
    color: #000000;
}

boxgrid.compact > content > sbox > contentwrap > content > span {
    position: relative;
    width: 100%;
    display: block;
    padding: 0;
    font-size: 14px;
}

@media(max-width: 1200px) {
    boxgrid.compact > content > sbox > contentwrap > content > p {
        font-size: 14px;
    }

    boxgrid.compact > content > sbox > contentwrap > content > span {
        display: block;
        padding: 0;
        font-size: 14px;
    }
}



boxgrid.card > content > sbox > textwrap > h6,
boxgrid.card > content > sbox > textwrap > h5,
boxgrid.card > content > sbox > textwrap > h4,
boxgrid.card > content > sbox > textwrap > h3,
boxgrid.card > content > sbox > textwrap > h2,
boxgrid.card > content > sbox > textwrap > h1 {
    font-weight: 700;
}



/* ---- DatePicker && SublistPicker ---- */

datepicker,
sublistpicker {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0;
    overflow: hidden;
    transition: height .2s cubic-bezier(.2, .4, 0, 1);
}

datepicker > picker,
sublistpicker > picker {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    display: block;
}


datepicker.oe,
sublistpicker.oe {
    display: flex;
    align-items: center;
}

datepicker.oe > picker,
sublistpicker.oe > picker {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    padding: 0 0;
    transition: opacity .1s linear;
    pointer-events: none;
}

datepicker.oe.e > picker,
sublistpicker.oe.e > picker {
    transition: opacity .1s linear .1s;
    opacity: 1;
    pointer-events: all;
}

datepicker > picker > textwrap,
sublistpicker > picker > textwrap {
    position: relative;
    width: 100%;
    display: flex;
    margin: 0 0 14px 0;
    align-items: center;
}

datepicker > picker > textwrap > icon {
    position: relative;
    height: 32px;
    padding: 4px;
}

datepicker > picker > textwrap > icon:not(.s):hover {
    background: #f0f0f0;
    border-radius: 50%;
}

datepicker > picker > textwrap > icon:not(.s):active {
    background: #292929;
    border-radius: 50%;
}

datepicker > picker > textwrap h4 {
    position: relative;
    padding: 0 8px;
}

datepicker > picker > days {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    overflow: hidden;
}

datepicker > picker > days > h6 {
    position: relative;
    display: block;
    flex: 1 1 100%;
    text-transform: uppercase;
    margin: 0;
    text-align: center;
}


datepicker > picker > content {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    padding: 10px 0;
}

datepicker > picker > content > dates {
    position: relative;
    width: 100%;
    display: block;
    transition: transform .2s cubic-bezier(0.25, 0.46, 0.45, 0.94), height .2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

datepicker > picker > content > dates > month {
    position: relative;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    opacity: 1;
    transition: opacity .2s linear;
}

datepicker > picker > content > dates > month > * {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 14.2857142857%;
    height: 50px;
}

datepicker > picker > content > dates > month > entry {
    cursor: pointer;
}


datepicker > picker > content > dates > month > * > h6 {
    position: relative;
    display: inline-block;
    text-align: center;
    margin: 0;
    font-weight: 400;
    cursor: pointer;
    flex: 0 0 42px;
}

datepicker > picker > content > dates > month > * > h6 {
    position: relative;
    padding: 12px;
}

datepicker > picker > content > dates > month > entry.t > h6 {
    padding: 12px 12px 5px 12px;
}

datepicker > picker > content > dates > month > entry.t > h6::after {
    position: relative;
    display: block;
    width: 4px;
    margin: 3px auto 0;
    height: 4px;
    border-radius: 25%;
    background: #e61e1e;
    content: "";
}

datepicker > picker > content > dates > month > entry.t.s > h6::after {
    background: #111111;
}

datepicker > picker > content > dates > month > *:not(.s):hover > h6 {
    background: #f0f0f0;
    border-radius: 50%;
}

datepicker > picker > content > dates > month > *:not(.s):active > h6 {
    background: #292929;
    border-radius: 50%;
}

datepicker > picker > content > dates > month > *.s > h6 {
    background: var(--accent-color);
    border-radius: 50%;
    color: #111111;
}


datepicker > eoi,
sublistpicker > eoi {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    opacity: 1;
    transition: opacity .1s linear .1s;
}

datepicker.oe.e > eoi,
sublistpicker.oe.e > eoi {
    transition: opacity .1s linear;
    opacity: 0;
    pointer-events: none;
}

datepicker > eoi > cal {
    position: relative;
    display: block;
    padding: 0 22px 0 0;
    width: 90px;
    flex: 0 0 90px;
    height: 68px;
}



datepicker > eoi > cal > binder {
    position: absolute;
    left: 12px;
    top: -3px;
    height: 9px;
    width: 3px;
    background: linear-gradient(to bottom, #bebebe 0%, #eeeeee 50%, #cccccc 100%);
    z-index: 2;
    border-radius: 10000px;
}

datepicker > eoi > cal > binder:last-of-type {
    left: 53px;
}

datepicker > eoi > cal > content {
    position: relative;
    background: #fefefe;
    border-radius: 10px;
    border: 1px solid #292929;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
}

datepicker > eoi > cal > content > mon {
    position: relative;
    display: block;
    width: 100%;
    padding: 2px 0;
    text-align: center;
    color: #111111;
    background: #f13e32;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}

datepicker > eoi > cal > content > dat {
    position: relative;
    display: block;
    height: auto;
    padding: 6px;
}

datepicker > eoi > cal > content > dat h3 {
    position: relative;
    margin: 0;
    text-align: center;
    font-size: 28px;
    font-weight: 400;
}



/* ---- SublistPicker ---- */

sublistpicker > eoi > textwrap {
    position: relative;
    width: 100%;
    display: block;
}

sublistpicker > eoi > textwrap > p {
    position: relative;
    margin: 0 0 2px 0;
}

sublistpicker > eoi > textwrap > h5 {
    position: relative;
}


sublistpicker > picker > content {
    position: relative;
    display: block;
    width: 100%;
    height: 600px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #292929;
    padding: 0;
    z-index: 3;
}


sublistpicker > picker > content > actions {
    position: relative;
    width: 100%;
    background: rgba(30, 30, 30, .8);
    -webkit-backdrop-filter: blur(12px) saturate(150%);
    backdrop-filter: blur(12px) saturate(150%);
    border-bottom: 1px solid #292929;
    height: 50px;
    z-index: 2;
    padding: 0 12px;
}

sublistpicker > picker > content > actions > content {
    padding-left: 0;
    padding-right: 0;
}

sublistpicker > picker > content > info {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    padding: 0;
    background: rgba(30, 30, 30, .8);
    -webkit-backdrop-filter: blur(12px) saturate(150%);
    backdrop-filter: blur(12px) saturate(150%);
    border-bottom: 1px solid #292929;
    height: 44px;
    z-index: 2;
}

sublistpicker > picker > content > info > entry {
    position: relative;
    display: flex;
    padding: 10px 12px;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}


sublistpicker > picker > content > info > entry:not(:last-child) {
    border-right: 1px solid #292929;
}

sublistpicker > picker > content > info > entry > icon {
    position: relative;
    display: block;
    margin: 0 0 0 8px;
    color: #999999;
    cursor: pointer;
    opacity: 0;
}

sublistpicker > picker > content > info > entry.sa > icon {
    opacity: 1;
    transform: rotate(180deg);
}


sublistpicker > picker > content > info > entry > p {
    position: relative;
    display: block;
    color: #999999;
    margin: 0;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
}


sublistpicker > picker > content > info > entry:active {
    background: rgba(0, 0, 0, .2);
}


sublistpicker > picker > content > content {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 44px 0 0 0;
    z-index: 0;
}


sublistpicker > picker > content > content entry {
    position: relative;
    width: 100%;
    display: block;
}

sublistpicker > picker > content > content entry.link {
    height: 44px;
}



sublistpicker > picker > content > content entry {
    border-bottom: 1px solid #292929;
}

sublistpicker > picker > content > content entry > header {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    padding: 6px 0;
    cursor: pointer;
}

sublistpicker.sl > picker > content > content entry > header,
sublistpicker.sl > picker > content > content entry.link > header {
    height: 58px;
}

sublistpicker > picker > content > content entry.link > header {
    height: 100%;
    padding-left: 32px;
}

sublistpicker > picker > content > content entry > header.a {
    background: var(--accent-color);
}

sublistpicker > picker > content > content entry > header > input {
    position: absolute;
    left: 0;
    top: 0;
    width: 150px;
    padding: 3px 11px;
    font-size: 16px;
    border: 1px solid transparent;
    background: transparent;
    border-radius: 0;
}


sublistpicker > picker > content > content entry > header > icon {
    position: relative;
    width: 28px;
    display: block;
    flex: 0 0 28px;
    color: #ffffff;
    text-align: right;
    font-family: "Material Symbols Rounded";
    cursor: pointer;
    padding: 0;
    transition: opacity .12s linear;
}

sublistpicker > picker > content > content entry.link > header > icon,
sublistpicker > picker > content > content entry.link > header > p {
    color: var(--accent-color);
}

sublistpicker > picker > content > content entry > header > imgpicker {
    position: relative;
    display: block;
    border: 1px solid #292929;
    background: #111111;
    overflow: hidden;
    flex: 0 0 30px;
    height: 30px;
    cursor: pointer;
}

sublistpicker > picker > content > content entry > header > imgpicker > icon {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    cursor: pointer;
}

sublistpicker > picker > content > content entry > header > imgpicker > img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
    transition: opacity .1s linear;
    object-fit: cover;
    object-position: center center;
}

sublistpicker > picker > content > content entry > header.e > icon {
    opacity: .2;
}

sublistpicker > picker > content > content entry > header.e > icon.arrow {
    opacity: 0;
    pointer-events: none;
}


sublistpicker > picker > content > content entry > header > icon.arrow {
    position: relative;
    width: 30px;
    display: block;
    flex: 0 0 30px;
    color: #666666;
    padding: 4px;
    transform: rotate(-90deg);
    margin: 0 0 0 2px;
}

sublistpicker > picker > content > content entry > header.a > icon.arrow {
    color: #cccccc;
}


sublistpicker > picker > content > content entry > header > content {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
}

sublistpicker > picker > content > content entry > header > p {
    position: relative;
    padding: 4px 12px;
    color: #f0f0f0;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: opacity .12s linear, transform .05s linear;
    opacity: 1;
}

sublistpicker > picker > content > content entry > header.e > p {
    opacity: .2;
}

sublistpicker > picker > content > content entry > header > p icon {
    position: relative;
    flex: 0 0 16px;
    font-family: "Material Symbols Rounded";
    content: 'edit';
    display: block;
    line-height: 1;
    height: 16px;
    width: 16px;
    font-size: 16px;
    color: var(--accent-color);
    margin: 0 0 0 6px;
    cursor: pointer;
    opacity: 0;
    transition: opacity .12s linear;
}

sublistpicker > picker > content > content entry > header.a > p icon {
    color: #cccccc;
}

sublistpicker > picker > content > content entry > header:not(.e) > p:hover icon {
    opacity: 1;
}


sublistpicker > picker > content > content entry > children {
    position: relative;
    display: block;
    width: calc(100% - 32px);
    height: 0px;
    overflow: hidden;
    transition: height .2s cubic-bezier(0.215, 0.610, 0.355, 1);
    margin: 0 0 0 32px;
    border-left: 1px solid #292929;
}

sublistpicker > picker > content > content entry > children > content {
    position: relative;
    display: block;
    width: 100%;
}


/* ---- DatePicker ---- */

filepicker {
    position: relative;
    display: block;
    width: 100%;
    padding: 0 0;
    overflow: hidden;
    transition: height .2s cubic-bezier(.2, .4, 0, 1);
}

filepicker > picker {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    display: block;
}


filepicker.oe {
    display: flex;
    align-items: center;
}

filepicker.oe > picker {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    padding: 0 0;
    transition: opacity .1s linear;
    pointer-events: none;
}

filepicker.oe.e > picker {
    transition: opacity .1s linear .1s;
    opacity: 1;
    pointer-events: all;
}




filepicker > eoi {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    opacity: 1;
    transition: opacity .1s linear .1s;
}

filepicker.oe.e > eoi {
    transition: opacity .1s linear;
    opacity: 0;
    pointer-events: none;
}





/* ---- Stack ---- */

stack {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: block;
    background: #ffffff;
}

@media(min-width: 701px) {
    stack.sidebar {
        display: flex;
    }

    stack.sidebar > view:first-of-type {
        border-right: 1px solid #eeeeee;
        max-width: 400px;
        flex: 0 0 35vw;
    }
}





/* ---- Drop Zone ---- */

dropzone {
    position: relative;
    width: 140px;
    flex: 0 0 140px;
    height: 100px;
    background: #f9f9f9;
    border: 1px solid #292929;
    overflow: hidden;
    padding: 8px;
    border-radius: 10px;
    transition: border-color .12s linear;
}

dropzone.o {
    border-color: var(--accent-color);
    cursor: copy;
}

dropzone > content {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

dropzone > content > load {
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

dropzone > content > load > svg {
    position: relative;
    flex: 0 0 50px;
    height: 50px;
    width: 50px;
    transform: rotate(-90deg);
}

dropzone > content > load > svg > circle {
    stroke-width: 6;
    fill: transparent;
    stroke-linecap: round;
    transition: stroke-dashoffset .2s cubic-bezier(0.215, 0.610, 0.355, 1);
}

dropzone > content > load > svg > circle:first-of-type {
    stroke: #e0e0e0;
}

dropzone > content > load > svg > circle:last-of-type {
    stroke: var(--accent-color);
    stroke-dasharray: 100;
    stroke-dashoffset: 100;
}




/* ---- Progressbar ---- */



progressbar {
    position: relative;
    display: block;
    width: 100%;
    margin: var(--generic-element-margin) 0;
}

progressbar > textwrap {
    position: relative;
    display: flex;
    margin: 8px 0 0 0;
}

progressbar > textwrap > p {
    position: relative;
    display: block;
    width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    margin: 0;
    flex: 1 1 100%;
}

progressbar > textwrap > p:first-child {
    opacity: 1;
    font-weight: 500;
}

progressbar > textwrap > p:last-of-type:not(:first-child) {
    text-align: right;
}

progressbar > content {
    position: relative;
    display: block;
    width: 100%;
    height: 8px;
    background: rgba(155, 155, 155, .15);
    border: 1px solid rgba(200, 200, 200, .25);
    overflow: hidden;
    border-radius: 50000px;
}

progressbar > content > div {
    position: relative;
    width: 0px;
    height: 100%;
    background: var(--accent-color);
    transition: width .05s ease-out;
}

progressbar > content > div.undef {
    width: 100%;
    animation: slideProgBar 1.75s infinite linear;
}

@keyframes slideProgBar {
    from {
        transform: translate3d(-100%, 0, 0) scaleX(.65);
    }

    to {
        transform: translate3d(100%, 0, 0) scaleX(.65);
    }
}




/* ---- dialog ----- */



dialog {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    z-index: 40;
    color: unset;
    border: unset;
    background: transparent;
}

dialog > bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    z-index: 0;
    opacity: 0;
    background: rgb(155, 155, 155);
    transition: opacity .12s linear;
}


dialog > cardwrap {
    position: relative;
    display: block;
    padding: 0;
    z-index: 1;
    transform: scale(1);
    opacity: 0;
    -webkit-filter: drop-shadow(0px 2px 8px rgba(0, 0, 0, .12));
    filter: drop-shadow(0px 2px 8px rgba(0, 0, 0, .12));
    pointer-events: none;
}

dialog.arrow > cardwrap {
    position: absolute;
    left: 0;
    top: 0;
}

dialog > cardwrap scform,
dialog > cardwrap list {
    margin: 8px 0;
}

dialog > cardwrap stitle {
    margin: 0;
    padding: 16px;
    max-width: 350px;
}

dialog > cardwrap arrow {
    display: none;
}

@media(min-width: 751px) {
    dialog:not(.arrow) {
        padding-bottom: 52px;
        padding-right: 60px;
    }

    dialog.arrow > cardwrap arrow {
        position: absolute;
        height: 16px;
        width: 16px;
        background: #ffffff;
        z-index: 0;
        display: inline-block;
    }

    dialog.arrow > cardwrap.tl > arrow {
        left: 6px;
        top: 0px;
        border-left: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        transform: translate(50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.tc > arrow {
        left: 50%;
        top: 0px;
        border-left: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        transform: translate(-50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.tr > arrow {
        right: 6px;
        top: 0px;
        border-left: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        transform: translate(-50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.rt > arrow {
        right: 0;
        top: 6px;
        border-right: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        transform: translate(50%, 50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.rc > arrow {
        right: 0;
        top: 50%;
        border-right: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        transform: translate(50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.rb > arrow {
        bottom: 6px;
        right: 0;
        border-right: 1px solid #e0e0e0;
        border-top: 1px solid #e0e0e0;
        transform: translate(50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.bl > arrow {
        bottom: 0;
        left: 6px;
        border-bottom: 1px solid #e0e0e0;
        border-right: 1px solid #e0e0e0;
        transform: translate(50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.bc > arrow {
        bottom: 0;
        left: 50%;
        border-bottom: 1px solid #e0e0e0;
        border-right: 1px solid #e0e0e0;
        transform: translate(-50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.br > arrow {
        bottom: 0;
        right: 6px;
        border-bottom: 1px solid #e0e0e0;
        border-right: 1px solid #e0e0e0;
        transform: translate(-50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.lt > arrow {
        left: 0;
        top: 32px;
        border-bottom: 1px solid #e0e0e0;
        border-left: 1px solid #e0e0e0;
        transform: translate(-50%, 50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.lc > arrow {
        left: 0;
        top: 50%;
        border-bottom: 1px solid #e0e0e0;
        border-left: 1px solid #e0e0e0;
        transform: translate(-50%, -50%) rotate(45deg);
    }

    dialog.arrow > cardwrap.lb > arrow {
        bottom: 32px;
        left: 0;
        border-bottom: 1px solid #e0e0e0;
        border-left: 1px solid #e0e0e0;
        transform: translate(-50%, -50%) rotate(45deg);
    }



    dialog.arrow > cardwrap.tl {
        transform-origin: 0% 0%;
    }

    dialog.arrow > cardwrap.tc {
        transform-origin: 50% -16px;
    }

    dialog.arrow > cardwrap.tr {
        transform-origin: calc(100% - 16px) 16px;
    }

    dialog.arrow > cardwrap.rt {
        transform-origin: calc(100% - 16px) -16px;
    }

    dialog.arrow > cardwrap.rc {
        transform-origin: calc(100% - 16px) 50%;
    }

    dialog.arrow > cardwrap.rb {
        transform-origin: calc(100% - 16px) calc(100% - 16px);
    }

    dialog.arrow > cardwrap.bl {
        transform-origin: 14px 100%;
    }

    dialog.arrow > cardwrap.bc {
        transform-origin: 50% 100%;
    }

    dialog.arrow > cardwrap.br {
        transform-origin: 0% 0%;
    }

    dialog.arrow > cardwrap.lt {
        transform-origin: 0 16px;
    }

    dialog.arrow > cardwrap.lc {
        transform-origin: 0 50%;
    }

    dialog.arrow > cardwrap.lb {
        transform-origin: 0 calc(100% - 16px);
    }
}


dialog > cardwrap > contentwrap {
    position: relative;
    display: block;
    padding: 8px 0;
    border-radius: 14px;
    background: rgba(255, 255, 255, 1);
    overflow: auto;
    z-index: 1;
}

@media(max-width: 750px) {
    dialog {
        padding-top: 52px;
    }

    dialog > bg {
        background: linear-gradient(to top, #e5e5e5 0%, #e5e5e5 92%, #ffffff 100%);
    }

    dialog > cardwrap {
        max-height: calc(100% - 16px);
        position: relative;
        overflow: auto;
        border-radius: 14px;
    }

    dialog > cardwrap > contentwrap {
        border-radius: unset;
        overflow: visible;
    }

    dialog > cardwrap stitle {
        margin: 0 auto;
    }

    dialog list listentry {
        background: rgba(160, 160, 160, .08);
    }

    dialog list listentry > content > textwrap > content > titlewrap > h6 {
        text-align: left;
    }
}

@supports (-webkit-backdrop-filter: blur(20px) saturate(150%)) {
    dialog > cardwrap > contentwrap {
        backdrop-filter: blur(20px) saturate(150%);
        -webkit-backdrop-filter: blur(20px) saturate(150%);
        background: rgba(255, 255, 255, .90);
    }
}


@media(max-width: 750px) {
    dialog > cardwrap > contentwrap {
        width: 80vw;
        max-width: 300px;
        padding: 0;
        background: #ffffff;
        backdrop-filter: unset;
        -webkit-backdrop-filter: unset;
    }
}


dialog > cardwrap > contentwrap > loading {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

dialog > cardwrap > contentwrap > loading > p {
    position: relative;
    width: 100%;
    margin: 16px 0 0 0;
    text-align: center;
    font-size: 15px;
}

dialog > cardwrap > contentwrap > content {
    position: relative;
    display: block;
    padding: 0 8px;
}

@media(max-width: 750px) {
    dialog > cardwrap > contentwrap > content {
        text-align: center;
    }
}

dialog > cardwrap > contentwrap > actions {
    position: relative;
    display: block;
    overflow: hidden;
}

dialog > cardwrap > contentwrap > actions:not(:first-child) {
    background: rgba(160, 160, 160, .08);
    margin: 0 8px;
    border-radius: 10px;
}

@media(min-width: 751px) {
    dialog > cardwrap > contentwrap > actions:not(:first-child) > entry:not(:last-child) {
        border-bottom: 1px solid #dddddd;
    }
}

@media(max-width: 750px) {
    dialog > cardwrap > contentwrap > actions:not(:first-child) {
        margin: 0;
        background: unset;
        border-radius: unset;
    }
}

dialog > cardwrap > contentwrap > actions > entry {
    position: relative;
    width: 100%;
    display: block;
    cursor: pointer;
}

dialog > cardwrap > contentwrap > actions > entry:not(:last-child) {
    border-bottom: 1px solid #eeeeee;
}

@media(max-width: 750px) {
    dialog > cardwrap > contentwrap > actions > entry:not(:last-child) {
        border-bottom: unset;
    }

    dialog > cardwrap > contentwrap > actions > entry {
        border-top: 1px solid #e0e0e0;
    }
}

@media(min-width: 751px) {
    dialog > cardwrap > contentwrap > actions entry:hover {
        background: rgba(0, 0, 0, .025);
    }
}

dialog > cardwrap > contentwrap > actions entry:active,
dialog > cardwrap > contentwrap > actions entry.down {
    background: rgba(0, 0, 0, .12);
}

dialog > cardwrap > contentwrap > actions entry > content {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    padding: 8px 16px;
}

@media(max-width: 750px) {
    dialog > cardwrap > contentwrap > actions entry > content {
        padding: 12px 20px;
    }

    dialog > cardwrap > contentwrap > actions entry.has-icon > content {
        padding-left: 49px;
    }
}


dialog > cardwrap > contentwrap > actions entry > content > p {
    position: relative;
    display: inline-block;
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1;
    font-weight: 500;
    color: var(--accent-color);
    opacity: .8;
}

@media(max-width: 750px) {
    dialog > cardwrap > contentwrap > actions entry > content > p {
        font-size: 15px;
        text-align: center;
        display: block;
    }
}

dialog > cardwrap > contentwrap > actions entry > content > icon,
dialog > cardwrap > contentwrap > actions entry > content > img {
    position: relative;
    display: inline-block;
    cursor: pointer;
    color: var(--accent-color);
    font-size: 17px;
    padding: 0 0 0 12px;
    font-weight: 700;
    opacity: .8;
}

dialog > cardwrap > contentwrap > actions entry > content > img {
    position: relative;
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    padding: 0;
    margin: 0 0 0 12px;
}

dialog > cardwrap > contentwrap > actions entry:active > content > p,
dialog > cardwrap > contentwrap > actions entry:active > content > icon {
    opacity: 1;
}

dialog > cardwrap > contentwrap > actions entry.red > content > icon,
dialog > cardwrap > contentwrap > actions entry.red > content > p {
    color: var(--color-red);
}


@media(min-width: 1000px) {

    dialog > cardwrap > contentwrap > actions entry:hover > content > p,
    dialog > cardwrap > contentwrap > actions entry:hover > content > icon {
        opacity: 1;
    }
}







dialog pickerwrap {
    position: relative;
    display: block;
}

dialog pickerwrap > header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 16px 8px 8px;
    border-bottom: 1px solid #e0e0e0;
}

dialog pickerwrap > header > p {
    position: relative;
    display: inline-block;
    font-weight: 500;
    font-size: 15px;
    padding: 8px 2px 8px 8px;
    margin: 0;
    color: var(--accent-color);
    cursor: pointer;
}

dialog pickerwrap > header > icon {
    position: relative;
    display: inline-block;
    color: var(--accent-color);
    margin: 0;
    padding: 0;
    font-size: 18px;
    cursor: pointer;
}


dialog pickerwrap > header > icon.empty {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 16px 8px;
    font-size: 20px;
}

@media(max-width: 750px) {

    dialog pickerwrap > header,
    dialog pickerwrap > header > icon.empty {
        padding-top: 8px;
    }
}

dialog pickerwrap > row {
    position: relative;
    display: grid;
    padding: 0 8px;
    grid-template-columns: repeat(7, 40px);
}

dialog pickerwrap > row.days {
    padding-top: 8px;
}

dialog pickerwrap > row > p {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 40px;
    text-align: center;
}

dialog pickerwrap > row.days > p {
    text-transform: uppercase;
    font-size: 12px;
    height: unset;
    color: #666666;
}

dialog pickerwrap > row.days > p:nth-child(6),
dialog pickerwrap > row.days > p:nth-child(7) {
    opacity: .6;
}


dialog pickerwrap > row > div {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 40px;
    text-align: center;
}

dialog pickerwrap > row > div::before {
    position: absolute;
    left: 5px;
    top: 5px;
    width: 30px;
    height: 30px;
    content: '';
    border-radius: 50%;
}

dialog pickerwrap > row > div.a::before {
    background: var(--accent-color);
}

dialog pickerwrap > row > div:not(.a):active:before {
    background: rgba(155, 155, 155, .2);
}

dialog pickerwrap > row > div > p {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-align: center;
    font-weight: 500;
    font-size: 16px;
    color: #111111;
    cursor: pointer;
}

dialog pickerwrap > row > div.a > p {
    font-weight: 550;
    color: #ffffff;
}

dialog pickerwrap > row > div.disabled:not(.a) {
    opacity: .25;
    pointer-events: none;
}



dialog pickerwrap > picker {
    position: relative;
    display: flex;
    align-items: center;
    padding: 16px 16px 8px;
}

dialog pickerwrap > picker > select {
    position: relative;
    display: block;
    flex: 0 0 65%;
    margin: 0 8px 0 0;
}

dialog pickerwrap > picker > input {
    position: relative;
    display: block;
    padding-left: 4px;
    padding-right: 4px;
    flex: 1 1;
}

dialog timewrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
    padding: 16px 0 8px;
}

dialog timewrap > h1 {
    position: relative;
    display: inline-block;
    padding: 0;
    margin: 0;
    flex-grow: 0;
    flex-shrink: 0;
}

dialog timewrap > input {
    position: relative;
    display: block;
    width: 60px;
    text-align: center;
    font-size: 32px;
    border-radius: 8px;
    line-height: 1;
    border: 1px solid #dddddd;
}

dialog timewrap > input:focus {
    border: 1px solid var(--accent-color);
}



view.seditor > contentwrap {
    background: #ffffff;
}

view.seditor > contentwrap > content {
    position: relative;
    display: block;
    max-width: 750px;
    margin: 0 auto;
    width: 100%;
    padding: 32px 0 92px;
    overflow: auto;
    min-height: 101vh;
}

view.seditor > contentwrap > content > page,
view.seditor > contentwrap > content > pagetitle {
    position: relative;
    display: block;
    width: 100%;
}

view.seditor > contentwrap > content > pagetitle {
    position: relative;
    margin: 0 0 32px 0;
}


@media(min-width: 901px) {
    view.seditor > contentwrap {
        overflow: auto;
        background: #efefef;
    }

    view.seditor > contentwrap::-webkit-scrollbar {
        position: absolute;
        right: 0;
        top: 0;
        width: 4px;
        background: transparent;
    }

    view.seditor > contentwrap::-webkit-scrollbar-thumb {
        width: 5px;
        background: var(--accent-color);
    }

    view.seditor > contentwrap > content {
        overflow: visible;
        display: block;
        min-height: 100%;
    }

    view.seditor > contentwrap > content::before,
    view.seditor > contentwrap > content::after {
        position: relative;
        display: block;
        width: 100%;
        height: 10vh;
        content: '';
    }


    view.seditor > contentwrap > content > page {
        height: unset;
        min-height: 80vh;
        margin: 0 auto;
        padding: 32px 0;
        border: 1px solid #dddddd;
        background: #ffffff;
    }

}


view.seditor > contentwrap > seditordtools {
    position: relative;
    display: block;
    width: 100%;
    max-width: 350px;
    height: 100%;
    background: #ffffff;
    z-index: 3;
    border-left: 1px solid #cecece;
}

view.seditor > contentwrap > seditordtools > content {
    position: relative;
    display: block;
    padding: 0 2px;
    align-items: center;
    transform-origin: left bottom;
    transform: scale(0);
}


view.seditor > contentwrap > content > page > entry {
    position: relative;
    display: flex;
    width: 100%;
}


view.seditor > contentwrap > content > page > entry > optionsicon {
    position: relative;
    display: block;
    padding: 20px;
    flex-grow: 0;
    cursor: pointer;
    z-index: 1;
}

@media(max-width: 900px) {
    view.seditor > contentwrap > seditordtools {
        display: none;
    }
}

@media(min-width: 901px) {
    view.seditor > contentwrap > content > page > entry:hover > optionsicon {
        opacity: 1 !important;
    }
}


view.seditor > contentwrap > content > page > entry > optionsicon > svg,
view.seditor > contentwrap > content > page > entry > optionsicon > icon {
    position: relative;
    display: block;
    width: 20px;
    height: 20px;
    transform: rotate(90deg);
    stroke: #000000;
    color: #000000;
    stroke-width: 2;
    font-size: 20px;
}

view.seditor > contentwrap > content > page > entry > optionsicon:active > svg,
view.seditor > contentwrap > content > page > entry > optionsicon:active > icon {
    opacity: .75;
    stroke: var(--accent-color);
    color: var(--accent-color);
}

view.seditor > contentwrap > content > page > entry > seditorentrycontent {
    position: relative;
    display: block;
    padding: 18px 32px;
    flex-grow: 1;
    flex: 1 1 100%;
    z-index: 0;
}

@media(min-width: 901px) {
    view.seditor > contentwrap > content > page > entry > seditorentrycontent {
        padding-left: 52px;
        padding-right: 52px;
    }
}

view.seditor > contentwrap > content > page > entry > seditorentrycontent:focus {
    border: unset;
    outline: unset;
}



view.seditor > contentwrap > content > page > entry > seditorentrycontent ul,
view.seditor > contentwrap > content > page > entry > seditorentrycontent ol {
    position: relative;
    display: block;
    padding: 8px 0 8px 28px;
}

view.seditor > contentwrap > content > page > entry > seditorentrycontent ol {
    padding-left: 32px;
}

view.seditor > contentwrap > content > page > entry > seditorentrycontent ul:first-child,
view.seditor > contentwrap > content > page > entry > seditorentrycontent ol:first-child {
    padding-top: 0;
}

view.seditor > contentwrap > content > page > entry > seditorentrycontent ul li,
view.seditor > contentwrap > content > page > entry > seditorentrycontent ol li {
    position: relative;
    padding: 2px 0;
}

view.seditor > contentwrap > content > page > entry > seditorentrycontent ul li:first-of-type,
view.seditor > contentwrap > content > page > entry > seditorentrycontent ol li:first-of-type {
    padding-top: 0;
}


view.seditor > contentwrap > content > page > entry.image {
    display: block;
}

view.seditor > contentwrap > content > page > entry.image > optionsicon {
    position: absolute;
    left: 0;
    top: 18px;
    background: var(--accent-color);
}

view.seditor > contentwrap > content > page > entry.image > optionsicon > svg,
view.seditor > contentwrap > content > page > entry.image > optionsicon > icon {
    stroke: #ffffff;
    color: #ffffff;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent {
    position: relative;
    display: block;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > imagewrap {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    overflow: hidden;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > imagewrap > img {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    overflow: hidden;
    margin: 0;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap {
    position: relative;
    display: block;
    width: 100%;
    background: #eeeeee;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > input,
view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > textarea {
    position: relative;
    display: block;
    width: 100%;
    background: transparent;
    font-size: 15px;
    padding: 14px 24px;
    margin: 0;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > input {
    color: #444444;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > textarea {
    color: #000000;
}


view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > input::placeholder,
view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > textarea::placeholder {
    color: #666666;
}

view.seditor > contentwrap > content > page > entry.image > seditorentrycontent > textwrap > sep {
    position: relative;
    display: block;
    width: calc(100% - 20px);
    margin: 0 0 0 20px;
    height: 3px;
    background: #cccccc;
}