.nexus-error-boundary { display: flex; align-items: center; justify-content: center; min-height: 300px; width: 100%; padding: 2rem; background: rgba(18, 18, 18, 0.8); backdrop-filter: blur(10px); border-radius: 12px; margin: 1rem 0; } .error-card { background: #1e1e1e; border: 1px solid rgba(255, 68, 68, 0.2); border-radius: 16px; padding: 2.5rem; max-width: 500px; width: 100%; text-align: center; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4); } .error-icon { margin-bottom: 1.5rem; animation: pulse 2s infinite; } @keyframes pulse { 0% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.1); opacity: 0.8; } 100% { transform: scale(1); opacity: 1; } } h3 { color: #fff; font-family: var(--nexus-font-sans); margin-bottom: 1rem; font-weight: 700; } p { color: #aaa; font-size: 0.9rem; margin-bottom: 1.5rem; } .error-details { background: #000; padding: 1rem; border-radius: 8px; margin-bottom: 2rem; text-align: left; overflow-x: auto; } code { color: #ff4444; font-family: 'Fira Code', monospace; font-size: 0.8rem; white-space: pre-wrap; } .retry-btn { background: linear-gradient(135deg, #333 0%, #111 100%); border: 1px solid rgba(255, 255, 255, 0.1); color: #fff; padding: 0.8rem 1.5rem; border-radius: 8px; cursor: pointer; display: inline-flex; align-items: center; gap: 0.8rem; font-size: 0.9rem; transition: all 0.2s ease; } .retry-btn:hover { background: linear-gradient(135deg, #444 0%, #222 100%); border-color: rgba(255, 255, 255, 0.2); transform: translateY(-2px); }