@import url('https://fonts.googleapis.com/css2?family=Share+Tech+Mono&display=swap');

:root {
    --matrix-bg: #000000;
    --matrix-text: #e0e0e0;
    --matrix-accent: #22d3ee;
    /* Tailwind cyan-400 */
    --matrix-accent-glow: rgba(34, 211, 238, 0.6);
}

body {
    background-color: var(--matrix-bg) !important;
    color: var(--matrix-text) !important;
    font-family: 'Share Tech Mono', monospace !important;
    overflow-x: hidden;
}

/* Matrix Background Canvas */
#matrix-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    /* Behind everything */
    pointer-events: none;
}

/* Transparency for sections to show rain behind */
header,
footer {
    background-color: rgba(5, 5, 10, 0.75) !important;
    backdrop-filter: blur(3px);
    border-color: rgba(34, 211, 238, 0.2) !important;
}

/* Hero section - mostly transparent to show matrix rain */
#inicio {
    background-color: transparent !important;
    backdrop-filter: none;
}

/* Hero text content - subtle radial backdrop for readability */
#inicio .text-center {
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.2) 60%, transparent 85%);
    padding: 3rem 2rem;
    border-radius: 1rem;
}

/* Hero title - strong text shadow for contrast over matrix */
#inicio h1 {
    color: #ffffff !important;
    text-shadow:
        0 0 15px rgba(0, 0, 0, 0.9),
        0 0 30px rgba(0, 0, 0, 0.7),
        0 0 8px var(--matrix-accent-glow),
        0 2px 4px rgba(0, 0, 0, 1);
}

/* Hero subtitle - brighter text with dark outline */
#inicio .text-gray-400 {
    color: #e5e7eb !important;
    text-shadow:
        0 0 10px rgba(0, 0, 0, 0.9),
        0 0 20px rgba(0, 0, 0, 0.7),
        0 1px 3px rgba(0, 0, 0, 1);
}

/* Other content sections - semi-transparent */
section:not(#inicio) {
    background-color: rgba(5, 5, 10, 0.65) !important;
    backdrop-filter: blur(2px);
    border-color: rgba(34, 211, 238, 0.15) !important;
}

/* Cards transparency */
.bg-gray-700,
.bg-gray-800 {
    background-color: rgba(20, 20, 30, 0.7) !important;
    border: 1px solid rgba(34, 211, 238, 0.1);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    transition: all 0.3s ease;
}

.bg-gray-700:hover,
.bg-gray-800:hover {
    background-color: rgba(20, 20, 30, 0.9) !important;
    border-color: var(--matrix-accent);
    box-shadow: 0 0 20px var(--matrix-accent-glow);
    transform: translateY(-2px);
}

/* Typography Enhancements */
h1,
h2,
h3,
h4,
h5,
h6 {
    text-transform: uppercase;
    letter-spacing: 2px;
    text-shadow: 0 0 5px var(--matrix-accent-glow);
}

.text-cyan-400 {
    color: var(--matrix-accent) !important;
    text-shadow: 0 0 8px var(--matrix-accent);
}

/* Buttons */
a.bg-cyan-400 {
    background-color: transparent !important;
    border: 1px solid var(--matrix-accent);
    color: var(--matrix-accent) !important;
    box-shadow: 0 0 10px var(--matrix-accent-glow), inset 0 0 10px var(--matrix-accent-glow);
    text-transform: uppercase;
    letter-spacing: 1px;
}

a.bg-cyan-400:hover {
    background-color: var(--matrix-accent) !important;
    color: #000 !important;
    box-shadow: 0 0 20px var(--matrix-accent), inset 0 0 20px var(--matrix-accent);
}

/* SVG Icons - animate or glow? */
svg {
    filter: drop-shadow(0 0 2px var(--matrix-accent));
}

/* Mobile Menu */
#mobile-menu {
    background-color: rgba(0, 0, 0, 0.95) !important;
    border-top: 1px solid var(--matrix-accent);
}