* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: Arial, sans-serif;
    background: #1a1a2e;
    color: #eee;
    margin: 0;
    overflow: hidden;
}
#ui {
    position: absolute; top: 20px; left: 20px; right: 20px;
    max-width: 600px; margin: 0 auto; text-align: center; z-index: 10;
}
h1 { font-size: 1.8rem; margin-bottom: 6px; color: #00d2ff; }
p { margin-bottom: 18px; color: #aaa; font-size: 0.95rem; }
.form-row { display: flex; gap: 10px; justify-content: center; align-items: center; flex-wrap: wrap; margin-bottom: 12px; }
label { font-size: 0.9rem; color: #ccc; }
input[type="text"] { padding: 8px 12px; font-size: 1rem; border: 1px solid #444; border-radius: 4px; background: #0f0f1a; color: #eee; }
button {
    padding: 8px 16px; font-size: 0.95rem; background: #00d2ff; color: #000;
    border: none; border-radius: 4px; cursor: pointer;
}
button:hover { background: #33e0ff; }
#status { margin-top: 10px; font-weight: bold; min-height: 1.2em; }
#status.ok { color: #00d2ff; } #status.err { color: #ff5555; }

#game { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#canvasContainer { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.toolbar {
    position: absolute; top: 12px; left: 50%; transform: translateX(-50%);
    z-index: 20; background: rgba(20, 20, 35, 0.85); padding: 8px 16px;
    border-radius: 30px; border: 1px solid #444; display: flex; gap: 12px; align-items: center; backdrop-filter: blur(4px);
}
.toolbar select { padding: 6px 10px; border-radius: 4px; border: 1px solid #555; background: #0f0f1a; color: #eee; }
.toolbar button { background: #00d2ff; color: #000; padding: 6px 14px; font-size: 0.9rem; }
.toolbar #turnInfo { margin-left: 18px; font-weight: bold; color: #00d2ff; font-size: 0.95rem; }

#chatPanel {
    position: absolute; bottom: 12px; right: 12px; width: 300px; height: 220px;
    z-index: 20; background: rgba(20, 20, 35, 0.85); border: 1px solid #444;
    border-radius: 8px; display: flex; flex-direction: column; backdrop-filter: blur(4px);
}
#chatMessages { flex: 1; overflow-y: auto; padding: 10px; font-size: 0.85rem; color: #ddd; }
.chat-input { display: flex; gap: 6px; padding: 8px; border-top: 1px solid #444; }
.chat-input input { flex: 1; padding: 6px; border: 1px solid #555; border-radius: 4px; background: #0f0f1a; color: #eee; }
.chat-input button { padding: 6px 12px; background: #00d2ff; color: #000; border: none; border-radius: 4px; font-size: 0.85rem; }
