/* AffLink Custom CSS */ /* Global styles */ body { min-height: 100vh; display: flex; flex-direction: column; } footer { margin-top: auto; } /* Dashboard styles */ .status-card { box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); transition: all 0.3s ease; } .status-card:hover { box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1); } /* Link status colors */ .status-active { color: #28a745; } .status-broken { color: #dc3545; } .status-redirected { color: #ffc107; } .status-out-of-stock { color: #17a2b8; } .status-unknown { color: #6c757d; } /* Form styling */ .form-container { max-width: 800px; margin: 0 auto; } .required-field label:after { content: " *"; color: #dc3545; } /* Alert styling */ .alert-item { transition: all 0.2s ease; } .alert-item:hover { background-color: rgba(0, 0, 0, 0.03); } /* Responsive tweaks */ @media (max-width: 768px) { .table-responsive { font-size: 0.9rem; } .card-title { font-size: 1.1rem; } .display-4 { font-size: 2.5rem; } } /* Utility classes */ .cursor-pointer { cursor: pointer; } .truncate { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }