/*
/
/ generieke, standard instellingen, zonder kleuren etc
/
*/


*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html,
body {
    font-family: var(--bodyFontFamily);
    font-size: var(--bodyFontSize);
    color: var(--bodyFontColor);
    letter-spacing: var(--bodyFontSpacing);
    
}

body {
    background: var(--bodyBackground);
    background-color: var(--bodyBackgroundColor);
    box-shadow: var(--bodyBackgroundShadow);
}

h1 {
    color: var(--headerFontColor);
    font-family: var(--headerFontFamily);
    font-size: var(--headerFontSize);
    font-weight: var(--headerFontWeight);
    text-transform: var(--headerFontTransform);
    font-style: normal;
    font-display: swap;
    margin: var(--headerMargin);
}

h2 {
    font-family: var(--subheaderFontFamily);
    font-size: var(--subheaderFontSize);
    color: var(--subheaderFontColor);
    font-weight: var(--subheaderFontWeight);
    font-style: normal;
    font-display: swap;
    text-transform: uppercase;
    margin-bottom: var(--subheaderMarginBottom);
}

h3 {
    padding-bottom: 15px;
}

ol {
    margin: var(--listMargin);
    list-style: none;
    counter-reset: stappen;
    display: grid;
    gap: var(--listGridRowsGap);
}

li {
    display: grid;
    grid-template-columns: var(--listGridColumnsTemplate);
    column-gap: var(--listGridColumnsGap);
    counter-increment: stappen;
}

li::before {
    width: var(--listGridDecoratorWidth);
    height: var(--listGridDecoratorHeight);
    background: var(--listGridDecoratorColor);
    clip-path: var(--listGridDecoratorShape);
    font-size: var(--listGridDecoratorFontSize);
    font-weight: var(--listGridDecoratorFontWeight);
    color: var(--listGridDecoratorFontColor);
    content: counter(stappen);
    display: flex;
    justify-content: center;
    align-items: center;
}

#wrapper-body {
    min-height: 100vh;
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
}

#wrapper-card {
    max-width: var(--cardWrapperWidth);
    max-height: var(--cardWrapperHeight);
    padding: var(--cardWrapperPadding);
    background: var(--cardWrapperBackground);
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    overflow: auto;
}

#card-header {
    max-width: var(--cardHeaderWidth);
    background: var(--cardHeaderBackground);
    border-radius: var(--cardHeaderBorderRadius);
    box-shadow: var(--cardHeaderShadow);
    overflow: hidden;
    display: flex;
    flex-flow: column wrap;
    align-self: stretch;
    justify-content: space-between;
}

#card-header__hero {
    width: var(--cardHeaderHeroWidth);
    height: var(--cardHeaderHeroHeight);
    background: var(--cardHeaderHeroImage);
    background-size: var(--cardHeaderHeroSize);
    border-radius: 50%;
}

#card-header__logo {
    width: var(--cardHeaderLogoWidth);
    height: var(--cardHeaderLogoHeight);
    background: var(--cardHeaderLogoImage);
    background-size: var(--cardHeaderLogoSize);
}

#card-header__logo img {
    width: var(--cardHeaderLogoImgWidth);
    height: var(--cardHeaderLogoImgHeight);
}

#card-body {
    max-width: calc( var(--cardWrapperWidth) - var(--cardHeaderWidth) - 2*var(--cardWrapperPadding) );
    background: var(--cardBodyBackground);
    box-shadow: var(--cardBodyShadow);
    border-radius: var(--cardBodyBorderRadius);
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    padding-left: var(--cardBodyPaddingLeft);
}

.btn-skip {
    background: var(--buttonBackground);
    padding: var(--buttonPadding);
    margin: var(--buttonMargin);
    border: var(--buttonBorder);
    box-shadow: var(--buttonShadow);
    font-family: var(--buttonFontFamily);
    font-size: var(--buttonFontSize);
    font-weight: var(--buttonFontWeight);
    color: var(--buttonFontColor);
    letter-spacing: var(--buttonFontSpacing);
    text-decoration: none;
    text-transform: uppercase;
    display: inline-flex;
    justify-content: center;
    text-align: center;
    transition: all 0.5s;
}

.btn-skip:hover {
    background: var(--buttonBackgroundHover);
    color: var(--buttonFontColorHover);
}

#card-footer {
    width: 100%;
    border-top: var(--cardFooterSeparator);
    margin: var(--cardFooterMargin);
    background: var(--cardFooterBackground);
}

#progress-wrap {
    width: 100%;
    height: var(--progressBarHeight);
    background: var(--progressBarBackground);
    border: var(--progressBarBorder);
    border-radius: var(--progressBarBorderRadius);
    margin: var(--progressWrapperMargin);
    box-shadow: var(--progressBarShadow);
    position: relative;
    overflow: hidden;
    transition: all 0.5s;
    will-change: transform;
}

#progress-content {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -100%;
    content: "";
    background: var(--progressBarColor);
    border-radius: inherit;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--progressBarFontColor);
}

#themeswitcher {
    display: flex;
    flex-flow: row wrap;
    
}

.btn-theme {
    width: 48px;
    height: 48px;
    margin: 10px;
    background-color: azure;
}