diff --git a/server/static/styles.css b/server/static/styles.css new file mode 100644 index 0000000..73cedd6 --- /dev/null +++ b/server/static/styles.css @@ -0,0 +1,149 @@ +:root { + --bg: #020617; + --panel: #0b1220; + --accent: #f97316; + --text: #e5e7eb; + --muted: #9ca3af; + --border: #1f2937; +} + +* { box-sizing: border-box; } + +html, body { + margin: 0; + height: 100%; + background: radial-gradient(circle at 20% 0%, #111827, #020617); + color: var(--text); + font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; +} + +#game { + position: fixed; + inset: 0; +} + +/* Generic panel style */ +.panel { + position: absolute; + background: var(--panel); + border: 1px solid var(--border); + border-radius: 12px; + box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6); + color: var(--text); +} + +.hidden { display: none; } + +.row { + display: flex; + gap: 8px; + margin: 6px 0; +} + +/* Auth panel */ +#ui-auth .panel { + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + padding: 16px; + width: 280px; +} + +input, button { + background: #020617; + color: var(--text); + border-radius: 8px; + border: 1px solid var(--border); + padding: 6px 8px; + font-size: 14px; +} + +button { + cursor: pointer; +} + +button:hover { + border-color: var(--accent); +} + +/* HUD */ +#ui-hud .panel { + top: 10px; + left: 10px; + right: 10px; + padding: 8px; + display: flex; + justify-content: space-between; + align-items: center; +} + +#xpbar { + position: relative; + width: 220px; + height: 18px; + border-radius: 999px; + background: #020617; + overflow: hidden; + border: 1px solid var(--border); +} + +#xpfill { + position: absolute; + inset: 0; + width: 20%; + background: linear-gradient(90deg, #f97316, #22c55e); +} + +#xplabel { + position: absolute; + inset: 0; + display: flex; + align-items: center; + justify-content: center; + font-size: 11px; +} + +/* Chat */ +#ui-chat .panel { + left: 10px; + bottom: 10px; + width: 320px; + padding: 8px; +} + +#chat-log { + height: 140px; + overflow-y: auto; + background: #020617; + border-radius: 8px; + padding: 6px; + border: 1px solid var(--border); + font-size: 12px; +} + +/* Inventory & crafting */ +#ui-inventory .panel, +#ui-crafting .panel { + top: 80px; + left: 50%; + transform: translateX(-50%); + width: 360px; + max-height: 60vh; + overflow-y: auto; + padding: 10px; +} + +#inv-grid { + display: grid; + grid-template-columns: repeat(4, 1fr); + gap: 6px; +} + +.slot { + background: #020617; + border-radius: 8px; + border: 1px solid var(--border); + padding: 6px; + font-size: 12px; + text-align: center; +}