/* Global Performance Optimizations */
html, body {
  height: 100%;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  /* Performance optimizations for smooth scrolling */
  -webkit-overflow-scrolling: touch;
  scroll-behavior: auto;
}

/* Prevent horizontal scroll issues */
* {
  box-sizing: border-box;
}

body {
    background: linear-gradient(135deg, #1a1a1a 0%, #dc3545 100%);
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    margin: 0;
    padding: 20px;
    /* Performance optimizations for smooth scrolling */
    transform: translateZ(0); /* Force hardware acceleration */
    -webkit-transform: translateZ(0); /* Safari support */
    backface-visibility: hidden; /* Prevent flicker */
}

/* Rate limit countdown styling */
#rateLimitCountdown {
    font-weight: 600;
    border-left: 4px solid #ffc107;
    animation: pulse 2s ease-in-out infinite;
}

#rateLimitCountdown span {
    font-family: 'Courier New', monospace;
    font-size: 1.1em;
    color: #856404;
}

/* Disabled login button styling */
#loginButton:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: #6c757d !important;
    border-color: #6c757d !important;
}

#loginButton:disabled:hover {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
}

/* Pulse animation for countdown */
@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.8;
    }
}