* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
background: #6D1F2B;
background: linear-gradient(rgba(222, 19, 51, 1), rgba(78, 30, 41, 1));
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
padding: 20px;
text-wrap: balance;
text-wrap: pretty;
}

.container {
background: #fff;
border-radius: 10px;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
padding: 3lh 2lh;
text-align: center;
max-width: 50ch;
animation: slideIn 0.6s ease-out;
}

h1 {
font-size: 48px;
color: #333;
margin-bottom: 0.3lh;
}

p {
font-size: 18px;
color: #666;
line-height: 1.6;
}

.loading {
display: inline-block;
font-size: 24px;
margin-bottom: 1lh;
color: #6D1F2B;
}

.dot {animation: blink 1.4s infinite;}
.dot:nth-child(2) {animation-delay: 0.2s;}
.dot:nth-child(3) {animation-delay: 0.4s;}

@keyframes blink {
	0%, 60%, 100% {opacity: 0.3;}
	30% {opacity: 1;}
}

@keyframes slideIn {
    from {opacity: 0;transform: translateY(-30px);}
    to {opacity: 1;transform: translateY(0);}
}