/* Workshop 3D scene overlay styles */ * { margin: 0; padding: 0; box-sizing: border-box; } body { overflow: hidden; background: #0a0a14; font-family: "Courier New", monospace; color: #e0e0e0; touch-action: none; } canvas { display: block; } #overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 10; } #status { position: absolute; top: 16px; left: 16px; font-size: 14px; opacity: 0.8; } #status .name { font-size: 18px; font-weight: bold; color: #daa520; } #status .mood { font-size: 13px; color: #aaa; margin-top: 4px; } #speech-area { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); max-width: 480px; width: 90%; text-align: center; font-size: 15px; line-height: 1.5; color: #ccc; opacity: 0; transition: opacity 0.4s ease; } #speech-area.visible { opacity: 1; } #speech-area .bubble { background: rgba(10, 10, 20, 0.85); border: 1px solid rgba(218, 165, 32, 0.3); border-radius: 8px; padding: 12px 20px; } #connection-dot { position: absolute; top: 18px; right: 16px; width: 8px; height: 8px; border-radius: 50%; background: #555; } #connection-dot.connected { background: #00b450; }