:root { font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; line-height: 1.5; font-weight: 400; color-scheme: light dark; background-color: #242424; } body { margin: 0; display: flex; place-items: center; min-width: 320px; min-height: 100vh; overflow: hidden; /* Evitar scrollbars por el canvas */ } #app { width: 100%; height: 100vh; } canvas { display: block; } /* HUD Wrapper */ #hud { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; /* Dejar pasar clics al juego 3D */ z-index: 999; } /* UI Elements inside HUD (reactivate pointer events) */ #hud>* { pointer-events: auto; } /* Minimap */ #minimap-container { position: absolute; top: 20px; left: 20px; width: 200px; height: 200px; background: rgba(0, 0, 0, 0.7); border: 2px solid #444; border-radius: 8px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); display: flex; justify-content: center; align-items: center; } #minimap { width: 100%; height: 100%; } /* Compass UI */ #compass { position: absolute; top: 20px; right: 20px; width: 100px; height: 100px; display: grid; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 1fr 1fr 1fr; gap: 2px; } .compass-btn { background: rgba(50, 50, 50, 0.8); border: 2px solid rgba(255, 255, 255, 0.3); color: rgba(255, 255, 255, 0.6); font-size: 18px; font-weight: bold; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; user-select: none; } .compass-btn:hover { background: rgba(70, 70, 70, 0.9); border-color: rgba(255, 255, 255, 0.5); color: rgba(255, 255, 255, 0.8); } .compass-btn.active { background: rgba(255, 200, 0, 0.9); border-color: rgba(255, 220, 0, 1); color: rgba(0, 0, 0, 1); box-shadow: 0 0 15px rgba(255, 200, 0, 0.6); } #compass-n { grid-column: 2; grid-row: 1; } #compass-s { grid-column: 2; grid-row: 3; } #compass-e { grid-column: 3; grid-row: 2; } #compass-w { grid-column: 1; grid-row: 2; } /* Modal Styles */ #door-modal { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); display: flex; justify-content: center; align-items: center; z-index: 2000; pointer-events: auto; } #door-modal.hidden { display: none; } .modal-content { background: #2a2a2a; padding: 20px; border: 2px solid #555; border-radius: 8px; text-align: center; color: #fff; box-shadow: 0 4px 15px rgba(0,0,0,0.5); } .modal-content p { margin-bottom: 20px; font-size: 1.2rem; } .modal-content button { padding: 8px 20px; margin: 0 10px; border: none; border-radius: 4px; cursor: pointer; font-weight: bold; font-size: 1rem; } #btn-open-yes { background: #4CAF50; color: white; } #btn-open-yes:hover { background: #45a049; } #btn-open-no { background: #f44336; color: white; } #btn-open-no:hover { background: #d32f2f; }