/* --- General Styles --- */
body {
    font-family: 'Inter', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
}

/* --- Homepage Fade-in Animation --- */
@keyframes fade-in {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
    animation: fade-in 0.5s ease-out forwards;
}

/* --- Konami Code "Matrix" Theme --- */
.matrix-theme {
    background-color: #000 !important;
    color: #0d0 !important;
    font-family: 'Courier New', Courier, monospace !important;
}

.matrix-theme h1, .matrix-theme h2, .matrix-theme h3 {
    text-shadow: 0 0 5px #0d0;
}

.matrix-theme a, .matrix-theme button {
    color: #0f0 !important;
    border-color: #0f0 !important;
}

.matrix-theme .bg-white, .matrix-theme .bg-gray-50 {
    background-color: #111 !important;
    border: 1px solid #0a04;
}

.matrix-theme .text-gray-800, .matrix-theme .text-gray-600 {
    color: #0d0 !important;
}


/* Add this to style.css */
.break-words {
  word-wrap: break-word;
  overflow-wrap: break-word;
}



/* --- Glowing Card Effect --- */
.glowing-card {
    position: relative;
    overflow: hidden;
}

.glowing-card::before {
    content: '';
    position: absolute;
    width: 150px;
    height: 150px;
    background: radial-gradient(circle, rgba(47, 141, 70, 0.4), transparent 80%);
    border-radius: 50%;
    transition: opacity 0.3s ease;
    opacity: 0;
    pointer-events: none; /* Ignore mouse events */
    transform: translate(-50%, -50%); /* Center the glow on the cursor */
    left: var(--mouse-x, 50%); /* Add this */
    top: var(--mouse-y, 50%);  /* Add this */
}

.glowing-card:hover::before {
    opacity: 1;
}

/* --- Modal Animation --- */
@keyframes fade-in-up {
    from { opacity: 0; transform: translateY(20px) scale(0.95); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
.animate-fade-in-up {
    animation: fade-in-up 0.3s ease-out forwards;
}

/* --- Hint transition --- */
#hint-text {
    transition: all 0.3s ease-in-out;
}