* { margin: 0; padding: 0; box-sizing: border-box; } body { width: 380px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; background: #0f172a; color: #f1f5f9; } .container { background: linear-gradient(to bottom, #1e293b, #0f172a); padding: 0; max-height: 600px; overflow-y: auto; } .header { text-align: center; padding: 24px 20px 20px; background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%); border-radius: 0 0 24px 24px; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3); } .logo { display: flex; align-items: center; justify-content: center; gap: 8px; margin-bottom: 4px; } .logo svg { color: white; } .header h1 { font-size: 24px; font-weight: 700; color: white; letter-spacing: -0.5px; } .subtitle { font-size: 12px; color: rgba(255, 255, 255, 0.8); font-weight: 400; letter-spacing: 0.5px; text-transform: uppercase; } .status-card { margin: 20px; padding: 20px; background: rgba(30, 41, 59, 0.6); border: 1px solid rgba(148, 163, 184, 0.1); border-radius: 16px; backdrop-filter: blur(10px); } #status-container { margin-bottom: 12px; } .status { padding: 16px; border-radius: 12px; font-weight: 600; text-align: center; font-size: 15px; display: flex; align-items: center; justify-content: center; gap: 8px; } .status.safe { background: linear-gradient(135deg, rgba(34, 197, 94, 0.15), rgba(22, 163, 74, 0.15)); color: #86efac; border: 1px solid rgba(34, 197, 94, 0.3); } .status.danger { background: linear-gradient(135deg, rgba(239, 68, 68, 0.15), rgba(220, 38, 38, 0.15)); color: #fca5a5; border: 1px solid rgba(239, 68, 68, 0.3); animation: pulse 2s ease-in-out infinite; } .status.checking { background: linear-gradient(135deg, rgba(234, 179, 8, 0.15), rgba(202, 138, 4, 0.15)); color: #fde047; border: 1px solid rgba(234, 179, 8, 0.3); } @keyframes pulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.02); opacity: 0.9; } } .loading { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 16px; color: #cbd5e1; font-size: 14px; } .spinner { width: 18px; height: 18px; border: 2px solid rgba(148, 163, 184, 0.3); border-top-color: #8b5cf6; border-radius: 50%; animation: spin 0.8s linear infinite; } @keyframes spin { to { transform: rotate(360deg); } } .url-display { font-size: 11px; color: #64748b; word-break: break-all; background: rgba(15, 23, 42, 0.5); padding: 8px 12px; border-radius: 8px; font-family: 'Courier New', monospace; border: 1px solid rgba(148, 163, 184, 0.1); } .manual-check { margin: 0 20px 20px; } .input-group { display: flex; gap: 8px; margin-bottom: 12px; } #url-input { flex: 1; padding: 12px 16px; background: rgba(30, 41, 59, 0.6); border: 1px solid rgba(148, 163, 184, 0.2); border-radius: 12px; font-size: 13px; color: #f1f5f9; transition: all 0.2s; } #url-input::placeholder { color: #64748b; } #url-input:focus { outline: none; border-color: #8b5cf6; background: rgba(30, 41, 59, 0.8); box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1); } #check-btn { padding: 12px 20px; background: linear-gradient(135deg, #6366f1, #8b5cf6); color: white; border: none; border-radius: 12px; cursor: pointer; font-weight: 600; font-size: 13px; transition: all 0.2s; display: flex; align-items: center; gap: 6px; white-space: nowrap; } #check-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(139, 92, 246, 0.4); } #check-btn:active { transform: translateY(0); } #manual-result { margin-top: 12px; border-radius: 12px; display: none; } #manual-result.show { display: block; } .error { padding: 12px; background: rgba(239, 68, 68, 0.1); border: 1px solid rgba(239, 68, 68, 0.3); border-radius: 12px; color: #fca5a5; font-size: 13px; text-align: center; } .stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 20px 20px; } .stat-card { background: rgba(30, 41, 59, 0.6); border: 1px solid rgba(148, 163, 184, 0.1); border-radius: 16px; padding: 16px; text-align: center; transition: all 0.2s; } .stat-card:hover { background: rgba(30, 41, 59, 0.8); border-color: rgba(139, 92, 246, 0.3); transform: translateY(-2px); } .stat-value { font-size: 28px; font-weight: 700; background: linear-gradient(135deg, #6366f1, #8b5cf6); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 4px; } .stat-label { font-size: 11px; color: #94a3b8; text-transform: uppercase; letter-spacing: 0.5px; font-weight: 500; } /* Scrollbar styling */ ::-webkit-scrollbar { width: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(139, 92, 246, 0.3); border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: rgba(139, 92, 246, 0.5); }