/* Reset and base styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    height: 100%;
}

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    background: #0a0a0f;
    color: #ffffff;
    min-height: 100vh;
    overflow: hidden;
}

/* Digital font using system monospace as fallback */
.digital {
    font-family: 'Courier New', monospace;
    font-weight: bold;
}

/* Button styles */
button {
    background: #2a2a3e;
    color: #fff;
    border: 2px solid #4a4a6e;
    padding: 12px 24px;
    font-size: 16px;
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.2s ease;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

button:hover:not(:disabled) {
    background: #3a3a5e;
    border-color: #6a6a9e;
    transform: translateY(-1px);
}

button:active:not(:disabled) {
    transform: translateY(0) scale(0.98);
}

button:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Button variants */
.btn-primary {
    background: #00aa33;
    border-color: #00cc44;
}

.btn-primary:hover:not(:disabled) {
    background: #00cc44;
    border-color: #00ee55;
}

.btn-secondary {
    background: #444;
    border-color: #666;
}

.btn-secondary:hover:not(:disabled) {
    background: #555;
    border-color: #777;
}

.btn-accent {
    background: #0066cc;
    border-color: #0088ff;
}

.btn-accent:hover:not(:disabled) {
    background: #0088ff;
    border-color: #00aaff;
}

.btn-danger {
    background: #cc0033;
    border-color: #ff0044;
}

.btn-danger:hover:not(:disabled) {
    background: #ff0044;
    border-color: #ff3366;
}

.btn-reset {
    background: #333;
    border-color: #555;
    width: 100%;
    margin-top: 20px;
}

/* Utility classes */
.hidden {
    display: none !important;
}

/* Flash effect for winner reveal */
.flash {
    animation: flash-animation 0.3s ease;
}

@keyframes flash-animation {
    0%, 100% { background: #0a0a0f; }
    50% { background: #1a1a3f; }
}
