#pragma once

#undef TAPPING_FORCE_HOLD

#undef TAPPING_TERM
#define TAPPING_TERM 175

#define SPACE_CADET_MODIFIER_CARRYOVER
#define LSPO_KEYS KC_LSFT, KC_TRNS, KC_LBRC
#define RSPC_KEYS KC_RSFT, KC_TRNS, KC_RBRC
#define LCPO_KEYS KC_LCTL, KC_TRNS, KC_MINS
#define RCPC_KEYS KC_RCTL, KC_TRNS, KC_EQL

// Running out of firmware space
#if defined(__AVR__)
#undef RGB_MATRIX_KEYPRESSES
#undef RGB_MATRIX_KEYRELEASES
#undef RGB_MATRIX_FRAMEBUFFER_EFFECTS
#else
#    define RGB_MATRIX_KEYPRESSES
#    undef RGB_MATRIX_KEYRELEASES
#    define RGB_MATRIX_FRAMEBUFFER_EFFECTS
#    define ENABLE_TYPING_HEATMAP_DISTANCE_CHECK
#endif

// No need for the single versions when multi performance isn't a problem =D
#define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
#define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
#define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
#define DISABLE_RGB_MATRIX_SPLASH
#define DISABLE_RGB_MATRIX_SOLID_SPLASH

// 20m timeout (20m * 60s * 1000mil)
#define RGB_DISABLE_TIMEOUT 1200000
#define OLED_SCROLL_TIMEOUT 20000