/* Reset y box-sizing global */ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } /* Variables de colores y métricas */ :root { /* Colores */ --color-bg: #1a1a2e; --color-text: #e7e7de; --color-accent: #e94560; --color-highlight: #f9d923; --color-canvas-bg: #0f3460; --color-shadow: rgba(37, 34, 43, 0.8); /* Sombras y radios */ --radius: 8px; --shadow: 0 0 16px var(--color-shadow); /* Tipografía */ --font: 'Arial', sans-serif; } /* BODY: centrar y padding responsive */ body { background: var(--color-bg); color: var(--color-text); font-family: var(--font); font-size: 100%; /* 1rem = 16px base */ line-height: 1.4; text-align: center; display: flex; flex-direction: column; align-items: center; min-height: 100vh; padding: clamp(1rem, 4vw, 2rem); } /* TITULAR */ h1 { margin-top: clamp(1.5rem, 6vw, 3rem); color: var(--color-accent); font-size: clamp(1.75rem, 8vw, 2.75rem); line-height: 1.2; } /* PÁRRAFOS */ p { color: #fff; font-size: clamp(0.9rem, 2.5vw, 1.2rem); margin: clamp(0.5rem, 2vw, 1rem) 0; } /* CANVAS: ancho fluido, altura automática para mantener proporción */ canvas { width: 100%; max-width: 640px; aspect-ratio: 640 / 480; height: auto; background: var(--color-canvas-bg); display: block; margin: clamp(1rem, 4vw, 2rem) auto; border-radius: var(--radius); box-shadow: var(--shadow); } /* PUNTUACIÓN */ #score { color: var(--color-highlight); font-size: clamp(1rem, 2.5vw, 1.5rem); margin-top: clamp(0.5rem, 2vw, 1rem); } /* MENSAJE DE GAME OVER */ #game-over-message { color: var(--color-accent); font-size: clamp(1.2rem, 4vw, 1.8rem); margin-top: clamp(0.75rem, 3vw, 1.5rem); min-height: 2em; } /* BOTÓN REINICIAR */ #restart-btn { margin-top: clamp(0.75rem, 3vw, 1.5rem); font-size: clamp(0.9rem, 2.5vw, 1.2rem); padding: clamp(0.5rem, 2vw, 1rem) clamp(1rem, 4vw, 2rem); border: none; border-radius: var(--radius); background: var(--color-accent); color: #fafafa; cursor: pointer; transition: background 0.2s ease-in-out; } #restart-btn:hover { background: #f0134d; } /* MEDIA QUERY (opcional) para pantallas muy pequeñas */ @media (max-width: 320px) { body { padding: 1rem; } h1 { font-size: 1.8rem; } #restart-btn { padding: 0.5rem 1rem; } }