* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background: #020C16;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    font-family: 'Courier New', Courier, monospace;
    overflow: hidden;
}

body::before {
    content: '';
    position: fixed;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(
        ellipse at center,
        rgba(36, 150, 237, 0.06) 0%,
        transparent 55%
    );
    animation: ambientPulse 5s ease-in-out infinite;
    pointer-events: none;
}

@keyframes ambientPulse {
    0%, 100% { transform: scale(1);    opacity: 0.5; }
    50%       { transform: scale(1.08); opacity: 1;   }
}

.container {
    position: relative;
}

canvas {
    display: block;
    border-radius: 18px;
    box-shadow:
        0 0 0 2px rgba(36, 150, 237, 0.35),
        0 0 45px rgba(36, 150, 237, 0.28),
        0 0 90px rgba(36, 150, 237, 0.12),
        0 24px 70px rgba(0, 0, 0, 0.85);
    cursor: pointer;
    user-select: none;
    -webkit-user-select: none;
    touch-action: none;
}
