:root {
    --altyn-margin: -18px -50px;
    --altyn-fill: #FFFFFF;
    --altyn-color: #000000;
    --altyn-padding: 20px;
    --altyn-radius: 3px;
    --altyn-shadow: 0px 0px 20px 0px rgba(142, 144, 179, 0.2);

    --altyn-form-title-size: 2.4rem;

    --altyn-form-label-size: 14px;
    --altyn-form-label-weight: 700;
    --altyn-form-label-required-color: #f10000;

    --altyn-form-group-border: 1px solid #e0e0e0;
    --altyn-form-group-background: #fafafa;

    --altyn-form-preview-width: 150px;

    --altyn-button-radius: 3px;
    --altyn-button-border: 1px;
    --altyn-button-color: #FFFFFF;
    --altyn-button-border-color: #6C757D;
    --altyn-button-background-color: #6C757D;

    --altyn-alert-color: #000000;
    --altyn-alert-padding: 20px;
    --altyn-alert-radius: 3px;
    --altyn-alert-border: 1px;
    --altyn-alert-border-color: #000000;
    --altyn-alert-error-background: #c73b3b;
    --altyn-alert-success-background: #0dba80;
    --altyn-alert-warning-background: #ffa100;
    --altyn-alert-state-color: #FFFFFF;

    --altyn-example-item-border-color: #e0e0e0;
}

.altyn-kyc {
    margin: var(--altyn-margin);
    background-color: var(--altyn-fill);
    padding: var(--altyn-padding);
    color: var(--altyn-color);
    border-radius: var(--altyn-radius);
    overflow: hidden;
}

.altyn-kyc-form {
    & h3 {
        font-size: var(--altyn-form-title-size);
    }

    & label {
        margin-bottom: 0.8rem;
        font-size: var(--altyn-form-label-size);
        font-weight: var(--altyn-form-label-weight);

        & sup {
            color: var(--altyn-form-label-required-color);
        }
    }

    & .hidden {
        display: none;
    }

    & .form-group {
        margin: 0 0 20px;
        border-radius: 8px;
        padding: 15px;
        border: var(--altyn-form-group-border);
        background: var(--altyn-form-group-background);

        small {
            display: block;
            margin: 10px 0;
        }
    }

    & .form-section {
        margin: 0 0 42px;
    }

    & .image-preview {
        max-width: var(--altyn-form-preview-width);

        img {
            margin: 0 0 16px;
        }
    }

    & .example-item {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        align-items: center;
        margin: 20px 0 0;
        padding: 20px 0 0;
        border-top: 1px solid var(--altyn-example-item-border-color);

        h5 {
            margin: 0 0 10px 0;
        }

        & .example-image {
            text-align: center;

            & img {
                width: auto;
                height: 100%;
                max-height: 150px;
                border-radius: 4px;
            }
        }

        & .example-requirements {
            list-style: none;
            padding: 0;
            margin: 0;
            text-align: left;
        }

        & .example-requirements li {
            margin-bottom: 5px;
            font-size: 14px;
            line-height: 1.4;
        }
    }
}

.altyn-button {
    padding: 12px 28px;
    background-color: var(--altyn-button-background-color);
    color: var(--altyn-button-color);
    border-color: var(--altyn-button-border-color);
    border-width: var(--altyn-button-border);
    border-style: solid;
    border-radius: var(--altyn-button-radius);
    cursor: pointer;
}

.altyn-alert {
    padding: var(--altyn-alert-padding);
    border-radius: var(--altyn-alert-radius);
    color: var(--altyn-alert-color);
    border-width: var(--altyn-alert-border);
    border-style: solid;
    border-color: var(--altyn-alert-border-color);

    &:not(.hidden) + form,
    &:not(.hidden) + .altyn-alert {
        margin-top: 30px;
    }

    & .altyn-alert__message {
        margin: 0;

        & li:not([class]) {
            padding: 0;
        }

        & li:before,
        & li:after {
            display: none;
        }
    }

    &.altyn-alert--error,
    &.altyn-alert--danger {
        color: var(--altyn-alert-state-color);
        background-color: var(--altyn-alert-error-background);
        border-color: var(--altyn-alert-error-background);
    }

    &.altyn-alert--warning {
        color: var(--altyn-alert-state-color);
        background-color: var(--altyn-alert-warning-background);
        border-color: var(--altyn-alert-warning-background);
    }

    &.altyn-alert--success {
        color: var(--altyn-alert-state-color);
        background-color: var(--altyn-alert-success-background);
        border-color: var(--altyn-alert-success-background);
    }
}

@media (max-width: 600px) {
    .altyn-kyc-form .example-item {
        grid-template-columns: 1fr;
    }
}