/* DeltaWerks Global Styles */
/* Base styles are handled by Tailwind CDN in index.html */

/* Global scrollbar hiding */
html, body {
    overflow-x: hidden;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE/Edge */
}
html::-webkit-scrollbar, body::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
}

/* Additional utility classes */
.glass-panel {
    background: rgba(2, 6, 23, 0.6);
    backdrop-filter: blur(12px);
}

/* Custom scrollbar */
.custom-scrollbar::-webkit-scrollbar {
    width: 4px;
}
.custom-scrollbar::-webkit-scrollbar-track {
    background: rgba(34, 211, 238, 0.05);
}
.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(34, 211, 238, 0.3);
    border-radius: 2px;
}

/* Hide scrollbar utility */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}
.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Animation for scan effect */
@keyframes scan {
    0% { top: 0%; opacity: 0; }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { top: 100%; opacity: 0; }
}
.animate-scan {
    animation: scan 3s linear infinite;
}

/* Rhythmic border pulse — synced breath for division tiles.
   Only opacity animates (GPU-accelerated, no color banding).
   A static "bright glow" overlay fades in and out over the base blue border. */
@keyframes tile-pulse-opacity {
    0%, 100% { opacity: 0; }
    50% { opacity: 1; }
}

.animate-tile-pulse {
    position: relative;
    border-color: rgba(37, 99, 235, 0.7); /* static base blue */
}

.animate-tile-pulse::before {
    content: '';
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    border: 1px solid rgba(96, 165, 250, 1);
    box-shadow: 0 0 28px rgba(59, 130, 246, 0.5), inset 0 0 20px rgba(59, 130, 246, 0.15);
    opacity: 0;
    pointer-events: none;
    animation: tile-pulse-opacity 6s ease-in-out infinite;
    will-change: opacity;
}

/* Hover: the pulsing ::before fades out so the overlay held-at-max element shows cleanly.
   Animation keeps running in the background so sync is preserved on release. */
.animate-tile-pulse:hover::before {
    opacity: 0 !important;
}

/* Green accent for stock positive values */
.text-accent-green-400 {
    color: #4ade80;
}
.text-accent-green-500 {
    color: #22c55e;
}
.bg-accent-green-500 {
    background-color: #22c55e;
}
