main {
    margin: 15px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2%;
}

body {
    display: flex;
    flex-direction: column;
    margin: 10% 5%;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}

.text-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 5px;
}

#error-message {
    align-self: center;
}

.message-header {
    font-size: 28px;

    @media (max-width: 767px) {
        font-size: 18px;
    }
}

.message-body {
    font-size: 22px;

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

.loader {
    width: 50px;
    height: 50px;
    outline: 2px solid black;
    aspect-ratio: 1;
    color: #3EFF8A;
    position: relative;
    background:
            conic-gradient(from 134deg at top   ,currentColor 92deg,#0000 0) top,
            conic-gradient(from -46deg at bottom,currentColor 92deg,#0000 0) bottom;
    background-size: 100% 50%;
    background-repeat: no-repeat;
}
.loader:before {
    content:'';
    position: absolute;
    inset: 0;
    --g:currentColor 14.5px,#0000 0 calc(100% - 14.5px),currentColor 0;
    background:
            linear-gradient( 45deg,var(--g)),
            linear-gradient(-45deg,var(--g));
    animation: l7 1.5s infinite cubic-bezier(0.3,1,0,1);
}
@keyframes l7 {
    33%  {inset:-10px;transform: rotate(0deg)}
    66%  {inset:-10px;transform: rotate(90deg)}
    100% {inset:0    ;transform: rotate(90deg)}
}

