diff --git a/client/css/style.css b/client/css/style.css index a070e21..3845693 100644 --- a/client/css/style.css +++ b/client/css/style.css @@ -26,6 +26,57 @@ html, body { .screen { position: absolute; inset: 0; display: none; } .screen.active { display: block; } +/* Boot-style loading log, sitting over every screen while a world is built. */ +.loading-overlay { + position: absolute; + inset: 0; + z-index: 200; + display: flex; + align-items: flex-start; + justify-content: flex-start; + padding: 28px 34px; + background: + radial-gradient(circle at 30% 0%, rgba(40, 70, 110, 0.25), transparent 60%), + #05070c; + overflow: hidden; +} +.loading-overlay.hidden { display: none; } +.loading-overlay.done { opacity: 0.0; transition: opacity 0.6s ease; } +.loading-panel { + width: min(720px, 100%); + max-height: 100%; + display: flex; + flex-direction: column; + gap: 10px; +} +.loading-title { + font-size: 13px; + letter-spacing: 0.12em; + text-transform: uppercase; + color: var(--accent); +} +.loading-log { + overflow: hidden auto; + padding: 12px 14px; + border-radius: 10px; + border: 1px solid rgba(120, 200, 255, 0.25); + background: rgba(4, 8, 14, 0.9); + box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.6); + font-family: "DejaVu Sans Mono", "Consolas", "Courier New", monospace; + font-size: 12.5px; + line-height: 1.55; + color: #b9d4e8; + white-space: pre; +} +.loading-line { color: #9fc3dc; } +.loading-line.loading-total { + margin-top: 6px; + padding-top: 6px; + border-top: 1px solid rgba(120, 200, 255, 0.2); + color: #ffd77a; + font-weight: 600; +} + /* ---------------------------------------------------------------- menus -- */ #screen-menu, #screen-new, #screen-join, #screen-choose { diff --git a/client/index.html b/client/index.html index dac234c..314b39d 100644 --- a/client/index.html +++ b/client/index.html @@ -322,6 +322,14 @@ + +
+