@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700;900&display=swap');

/* Global Styles */
body {
    font-family: 'Space Grotesk', sans-serif;
    background-color: #f4f4f0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

input, textarea {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
}

/* Neobrutalism Shadows & Effects */
.neo-shadow {
    box-shadow: 8px 8px 0px 0px rgba(0,0,0,1);
}

.neo-shadow-sm {
    box-shadow: 4px 4px 0px 0px rgba(0,0,0,1);
}

.neo-shadow-hover:hover {
    transform: translate(-4px, -4px);
    box-shadow: 12px 12px 0px 0px rgba(0,0,0,1);
}

.neo-shadow-sm-hover:hover {
    transform: translate(-2px, -2px);
    box-shadow: 6px 6px 0px 0px rgba(0,0,0,1);
}

/* Tabs */
.tab-active {
    background-color: #bbf7d0;
    border: 3px solid black;
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0px 0px rgba(0,0,0,1);
}

.tab-inactive {
    background-color: #e5e7eb;
    border: 3px solid transparent;
    color: #6b7280;
}

/* Animations */
@keyframes popIn {
    0% { transform: scale(0.95); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

.animate-pop {
    animation: popIn 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

/* Flatpickr Customization */
.flatpickr-calendar {
    background: #fff !important;
    border: 4px solid #000 !important;
    box-shadow: 8px 8px 0px 0px rgba(0,0,0,1) !important;
    border-radius: 16px !important;
    font-family: 'Space Grotesk', sans-serif !important;
    padding: 10px !important;
}

.flatpickr-day.selected {
    background: #3b82f6 !important;
    border: 2px solid #000 !important;
    font-weight: 900 !important;
    color: white !important;
    box-shadow: 2px 2px 0px #000 !important;
}

.flatpickr-day:hover {
    border: 2px solid #000 !important;
    background: #fef08a !important;
    color: black !important;
}
