Files
kiosk-instrukcje/waiting.html
T
2026-05-05 15:54:08 +02:00

91 lines
1.9 KiB
HTML

<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Oczekiwanie na sieć</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html, body {
width: 100%;
height: 100%;
background: #0a0a0a;
display: flex;
align-items: center;
justify-content: center;
font-family: 'Segoe UI', Arial, sans-serif;
overflow: hidden;
user-select: none;
}
.container {
display: flex;
flex-direction: column;
align-items: center;
gap: 48px;
}
.spinner {
width: 72px;
height: 72px;
border: 5px solid rgba(255, 255, 255, 0.08);
border-top-color: rgba(255, 255, 255, 0.55);
border-radius: 50%;
animation: spin 1s linear infinite;
}
@keyframes spin {
to { transform: rotate(360deg); }
}
.text {
color: rgba(255, 255, 255, 0.75);
font-size: 2rem;
font-weight: 300;
letter-spacing: 0.04em;
animation: pulse 2.5s ease-in-out infinite;
}
@keyframes pulse {
0%, 100% { opacity: 0.6; }
50% { opacity: 1; }
}
.dots {
display: inline-block;
width: 2em;
text-align: left;
animation: dots 1.5s steps(4, end) infinite;
}
@keyframes dots {
0% { content: ''; clip-path: none; }
}
.dots::after {
content: '';
animation: dotcycle 1.5s steps(4, end) infinite;
}
@keyframes dotcycle {
0% { content: ''; }
25% { content: '.'; }
50% { content: '..'; }
75% { content: '...'; }
100% { content: ''; }
}
</style>
</head>
<body>
<div class="container">
<div class="spinner"></div>
<div class="text">Oczekiwanie na sieć<span class="dots"></span></div>
</div>
</body>
</html>