.blood-bank-page{background:linear-gradient(to bottom,var(--bg-cream),var(--bg-primary));min-height:100vh;padding:2rem 0 4rem}.page-header{text-align:center;margin-bottom:3rem;padding:2rem 0}.blood-icon{margin-bottom:1rem;font-size:4rem;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.page-title{color:var(--primary-burgundy);margin-bottom:1rem;font-size:3rem;font-weight:700}.page-subtitle{color:var(--text-secondary);max-width:700px;margin:0 auto;font-size:1.2rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:3rem;display:grid}.stat-card{border-radius:var(--border-radius-lg);text-align:center;box-shadow:var(--shadow-md);background:#fff;border-top:4px solid #dc3545;padding:1.5rem 1rem;transition:all .3s}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.blood-group-badge{color:#dc3545;margin-bottom:.5rem;font-size:1.8rem;font-weight:700}.donor-count{color:var(--primary-burgundy);margin-bottom:.25rem;font-size:2.5rem;font-weight:700}.stat-label{color:var(--text-light);text-transform:uppercase;font-size:.85rem}.action-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem;display:flex}.register-btn{color:#fff;border-radius:var(--border-radius-md);cursor:pointer;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#dc3545,#c82333);border:none;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .3s}.register-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.search-box{flex:1;max-width:400px}.search-input{border:2px solid var(--bg-secondary);border-radius:var(--border-radius-md);width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .3s}.search-input:focus{border-color:#dc3545;outline:none;box-shadow:0 0 0 3px #dc35451a}.register-form-section{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);background:#fff;border-left:5px solid #dc3545;margin-bottom:3rem;padding:2.5rem;animation:.4s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.register-form-section h2{color:var(--primary-burgundy);margin-bottom:2rem;font-size:2rem}.register-form{flex-direction:column;gap:1.5rem;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;display:grid}.form-group{flex-direction:column;display:flex}.form-group label{color:var(--primary-burgundy);margin-bottom:.5rem;font-size:.95rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:2px solid var(--bg-secondary);border-radius:var(--border-radius-md);padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#dc3545;outline:none;box-shadow:0 0 0 3px #dc35451a}.form-group textarea{resize:vertical}.submit-btn{color:#fff;border-radius:var(--border-radius-md);cursor:pointer;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#dc3545,#c82333);border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .3s}.submit-btn:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-2px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.alert{border-radius:var(--border-radius-md);margin-top:1.5rem;padding:1rem 1.5rem;animation:.4s ease-out slideDown}.alert-success{border-left:4px solid var(--accent-green);color:var(--accent-green);background:#5cb85c1a}.alert-error{border-left:4px solid var(--accent-red);color:var(--accent-red);background:#d9534f1a}.filter-section{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);background:#fff;margin-bottom:2rem;padding:2rem}.filter-section h3{color:var(--primary-burgundy);margin-bottom:1.5rem;font-size:1.3rem}.blood-group-filters{flex-wrap:wrap;gap:1rem;display:flex}.filter-btn{color:#dc3545;cursor:pointer;box-shadow:var(--shadow-sm);background:#fff;border:2px solid #dc3545;border-radius:30px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s}.filter-btn:hover{box-shadow:var(--shadow-md);background:#dc35451a;transform:translateY(-2px)}.filter-btn.active{color:#fff;box-shadow:var(--shadow-md);background:linear-gradient(135deg,#dc3545,#c82333)}.donors-section{width:100%;margin-top:3rem}.donors-grid{display:block}.table-responsive{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);background:#fff;margin-top:2rem;overflow-x:auto}.donors-table{border-collapse:separate;border-spacing:0;width:100%;min-width:800px}.donors-table th,.donors-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #eee;padding:1rem 1.5rem}.donors-table th{color:var(--primary-burgundy);text-transform:uppercase;letter-spacing:.5px;background:#f8f9fa;font-size:.95rem;font-weight:700;position:sticky;top:0}.donors-table tr:last-child td{border-bottom:none}.donors-table tr:hover{background-color:#f9f9f9}.donor-name-cell{color:var(--text-primary);font-weight:600}.blood-badge-table{color:#fff;text-align:center;background:linear-gradient(135deg,#dc3545,#c82333);border-radius:20px;min-width:40px;padding:.25rem .75rem;font-size:.85rem;font-weight:700;display:inline-block}@media (max-width:768px){.donors-section h2{font-size:1.5rem}.donors-table th,.donors-table td{padding:.75rem 1rem;font-size:.9rem}}.empty-state{text-align:center;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);background:#fff;padding:4rem 2rem}.empty-state p{color:var(--text-secondary);font-size:1.2rem}@media (max-width:768px){.blood-bank-page{padding:1rem 0 3rem}.page-title{font-size:2.2rem}.stats-grid{grid-template-columns:repeat(4,1fr);gap:.75rem}.stat-card{padding:1rem .5rem}.blood-group-badge{font-size:1.3rem}.donor-count{font-size:1.8rem}.stat-label{font-size:.7rem}.action-bar{flex-direction:column}.search-box{max-width:100%}.register-form-section{padding:1.5rem}.form-row{grid-template-columns:1fr}.blood-group-filters{gap:.5rem}.filter-btn{padding:.6rem 1rem;font-size:.85rem}.donors-grid{grid-template-columns:1fr}}@media (max-width:480px){.page-title{font-size:1.8rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.donor-header{text-align:left;flex-direction:column;align-items:flex-start}.donor-details strong{min-width:80px}}
