:root{--primary-color: #2c3e50;--primary-light: #34495e;--primary-dark: #1a252f;--secondary-color: #3498db;--secondary-light: #5dade2;--secondary-dark: #2980b9;--accent-color: #e74c3c;--accent-light: #ec7063;--accent-dark: #c0392b;--success-color: #27ae60;--warning-color: #f39c12;--danger-color: #e74c3c;--text-primary: #2c3e50;--text-secondary: #7f8c8d;--text-light: #bdc3c7;--background-primary: #ffffff;--background-secondary: #f8f9fa;--background-tertiary: #ecf0f1;--border-color: #e9ecef;--shadow-light: 0 2px 4px rgba(0,0,0,.1);--shadow-medium: 0 4px 8px rgba(0,0,0,.12);--shadow-heavy: 0 8px 16px rgba(0,0,0,.15);--border-radius: 8px;--border-radius-large: 12px;--transition: all .3s ease}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--background-secondary)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;margin-bottom:1rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1rem;color:var(--text-secondary)}.btn{display:inline-block;padding:12px 24px;border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:500;text-decoration:none;cursor:pointer;transition:var(--transition);text-align:center;min-width:120px}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.btn-secondary{background-color:var(--secondary-color);color:#fff}.btn-secondary:hover{background-color:var(--secondary-dark);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.btn-accent{background-color:var(--accent-color);color:#fff}.btn-accent:hover{background-color:var(--accent-dark);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.btn-outline{background-color:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);color:#fff}.card{background:var(--background-primary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);padding:1.5rem;margin-bottom:1.5rem;transition:var(--transition);border:1px solid var(--border-color)}.card:hover{box-shadow:var(--shadow-medium);transform:translateY(-2px)}.card-header{border-bottom:1px solid var(--border-color);padding-bottom:1rem;margin-bottom:1.5rem}.card-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);background-color:var(--background-primary)}.form-input:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a}.form-select{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;background-color:var(--background-primary);cursor:pointer}.form-textarea{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;resize:vertical;min-height:100px;font-family:inherit}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.grid{display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.badge-success{background-color:var(--success-color);color:#fff}.badge-warning{background-color:var(--warning-color);color:#fff}.badge-danger{background-color:var(--danger-color);color:#fff}.badge-info{background-color:var(--secondary-color);color:#fff}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}.card{padding:1rem;margin-bottom:1rem}.btn{padding:10px 20px;min-width:100px}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.home-container{min-height:100vh;background:linear-gradient(135deg,var(--background-secondary) 0%,var(--background-tertiary) 100%);display:flex;align-items:center;justify-content:center;padding:2rem}.content{max-width:1200px;width:100%;text-align:center}.content h1{font-size:3.5rem;font-weight:700;color:var(--primary-color);margin-bottom:1.5rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.content p{font-size:1.2rem;color:var(--text-secondary);max-width:800px;margin:0 auto 3rem;line-height:1.8}.buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem;max-width:900px;margin:0 auto}.button-group{background:var(--background-primary);padding:2.5rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color);transition:var(--transition)}.button-group:hover{box-shadow:var(--shadow-medium);transform:translateY(-4px)}.button-group h3{color:var(--primary-color);font-size:1.5rem;margin-bottom:1.5rem;font-weight:600}.button-group button{display:block;width:100%;margin-bottom:1rem;padding:16px 24px;border:none;border-radius:var(--border-radius);font-size:1.1rem;font-weight:500;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.donor-signup-btn{background:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-light) 100%);color:#fff;margin-bottom:1rem}.donor-signup-btn:hover{background:linear-gradient(135deg,var(--accent-dark) 0%,var(--accent-color) 100%);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.donor-login-btn{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-light) 100%);color:#fff}.donor-login-btn:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 100%);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.hospital-signup-btn{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--secondary-light) 100%);color:#fff;margin-bottom:1rem}.hospital-signup-btn:hover{background:linear-gradient(135deg,var(--secondary-dark) 0%,var(--secondary-color) 100%);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.hospital-login-btn{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-light) 100%);color:#fff}.hospital-login-btn:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 100%);transform:translateY(-2px);box-shadow:var(--shadow-medium)}@media (max-width: 768px){.home-container{padding:1rem}.content h1{font-size:2.5rem}.content p{font-size:1rem;margin-bottom:2rem}.buttons{grid-template-columns:1fr;gap:2rem}.button-group{padding:2rem}.button-group button{padding:14px 20px;font-size:1rem}}@media (max-width: 480px){.content h1{font-size:2rem}.button-group{padding:1.5rem}}.donor-login-container{height:100vh;width:100vw;background:linear-gradient(to right,#fce4ec,#f8bbd0,#f48fb1);display:flex;justify-content:center;align-items:center}.donor-login-form{background-color:#ffe6f0;padding:40px 50px;border-radius:20px;box-shadow:0 12px 25px #d81b604d;width:350px;display:flex;flex-direction:column}.donor-login-form h2{color:#d81b60;margin-bottom:25px;text-align:center}.donor-login-form label{margin-bottom:8px;font-weight:600;color:#444}.donor-login-form input{padding:12px;margin-bottom:20px;border-radius:10px;border:1px solid #d81b60;font-size:1rem}.donor-login-form button{background-color:#d81b60;color:#fff;padding:12px 0;font-weight:600;font-size:1.1rem;border:none;border-radius:10px;cursor:pointer;margin-top:5px;transition:background-color .3s ease}.donor-login-form button:hover{background-color:#b01445}.signup-link{background:transparent;color:#d81b60;border:none;padding:8px 0;font-size:.9rem;cursor:pointer;transition:all .3s ease;width:100%;text-decoration:underline;margin-bottom:15px}.signup-link:hover{color:#b01445}.back-btn{background-color:#777;margin-top:15px}.back-btn:hover{background-color:#555}.hospital-login-container{height:100vh;width:100vw;background:linear-gradient(to right,#bbdefb,#90caf9,#64b5f6);display:flex;justify-content:center;align-items:center}.hospital-login-form{background-color:#e3f2fd;padding:40px 50px;border-radius:20px;box-shadow:0 12px 25px #2196f34d;width:350px;display:flex;flex-direction:column}.hospital-login-form h2{color:#1976d2;margin-bottom:25px;text-align:center}.hospital-login-form label{margin-bottom:8px;font-weight:600;color:#333}.hospital-login-form input{padding:12px;margin-bottom:20px;border-radius:10px;border:1px solid #1976d2;font-size:1rem}.hospital-login-form button{background-color:#1976d2;color:#fff;padding:12px 0;font-weight:600;font-size:1.1rem;border:none;border-radius:10px;cursor:pointer;margin-top:5px;transition:background-color .3s ease}.hospital-login-form button:hover{background-color:#0d47a1}.login-actions{margin-top:20px}.signup-link{background:transparent;color:#1976d2;border:none;padding:8px 0;font-size:.9rem;cursor:pointer;transition:all .3s ease;width:100%;text-decoration:underline;margin-bottom:15px}.signup-link:hover{color:#0d47a1}.back-btn{background-color:#555;margin-top:15px}.back-btn:hover{background-color:#333}.donor-signup-container{min-height:100vh;background:linear-gradient(135deg,#ff6b6b,#ee5a24);padding:20px;display:flex;justify-content:center;align-items:center}.donor-signup-form{background:#fff;padding:40px;border-radius:20px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:800px;max-height:90vh;overflow-y:auto}.donor-signup-form h2{text-align:center;color:#2d3748;margin-bottom:10px;font-size:2.5rem;font-weight:700}.form-section{margin-bottom:30px;padding:20px;background:#f7fafc;border-radius:12px;border-left:4px solid #ff6b6b}.form-section h3:before{content:"";width:8px;height:8px;background:#ff6b6b;border-radius:50%;margin-right:12px}.form-group input,.form-group select{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .3s ease;background:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1a}.form-group input.error,.form-group select.error{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.signup-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;border:none;padding:15px 40px;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:15px;width:100%;max-width:300px}.signup-btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px #ff6b6b4d}.back-btn{background:transparent;color:#ff6b6b;border:2px solid #ff6b6b;padding:12px 30px;border-radius:20px;font-size:1rem;cursor:pointer;transition:all .3s ease;width:100%;max-width:300px}.back-btn:hover{background:#ff6b6b;color:#fff;transform:translateY(-1px)}@media (max-width: 768px){.donor-signup-container{padding:10px}.donor-signup-form{padding:30px 20px}.donor-signup-form h2{font-size:2rem}.form-row{grid-template-columns:1fr;gap:15px}.form-section{padding:15px}}@media (max-width: 480px){.donor-signup-form{padding:20px 15px}.donor-signup-form h2{font-size:1.8rem}.form-section{padding:12px}}.hospital-signup-container{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;display:flex;justify-content:center;align-items:center}.hospital-signup-form{background:#fff;padding:40px;border-radius:20px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:800px;max-height:90vh;overflow-y:auto}.hospital-signup-form h2{text-align:center;color:#2d3748;margin-bottom:10px;font-size:2.5rem;font-weight:700}.form-subtitle{text-align:center;color:#718096;margin-bottom:30px;font-size:1.1rem}.form-section{margin-bottom:30px;padding:20px;background:#f7fafc;border-radius:12px;border-left:4px solid #667eea}.form-section h3{color:#2d3748;margin-bottom:20px;font-size:1.3rem;font-weight:600;display:flex;align-items:center}.form-section h3:before{content:"";width:8px;height:8px;background:#667eea;border-radius:50%;margin-right:12px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#4a5568;font-weight:600;font-size:.95rem}.form-group input{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .3s ease;background:#fff}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input.error{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.error-message{color:#e53e3e;font-size:.85rem;margin-top:5px;display:block}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.help-text{color:#718096;font-size:.9rem;margin-bottom:15px;font-style:italic}.form-actions{text-align:center;margin-top:30px}.signup-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 40px;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:15px;width:100%;max-width:300px}.signup-btn:hover{transform:translateY(-2px);box-shadow:0 10px 25px #667eea4d}.back-btn{background:transparent;color:#667eea;border:2px solid #667eea;padding:12px 30px;border-radius:20px;font-size:1rem;cursor:pointer;transition:all .3s ease;width:100%;max-width:300px}.back-btn:hover{background:#667eea;color:#fff;transform:translateY(-1px)}@media (max-width: 768px){.hospital-signup-container{padding:10px}.hospital-signup-form{padding:30px 20px}.hospital-signup-form h2{font-size:2rem}.form-row{grid-template-columns:1fr;gap:15px}.form-section{padding:15px}}@media (max-width: 480px){.hospital-signup-form{padding:20px 15px}.hospital-signup-form h2{font-size:1.8rem}.form-section{padding:12px}}.donor-navbar{background:var(--background-primary);box-shadow:var(--shadow-light);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000}.brand-icon{font-size:1.5rem;font-weight:700;color:var(--accent-color);text-transform:uppercase;letter-spacing:1px}.nav-link.active{background-color:var(--primary-color);color:#fff}@media (max-width: 768px){.donor-navbar{padding:1rem;flex-direction:column;gap:1rem}.nav-links{gap:.5rem}.nav-link{padding:10px 16px;font-size:.9rem}.brand-icon{font-size:1.25rem}.brand-text{font-size:1rem}}.donor-dashboard{min-height:100vh;background:var(--background-secondary)}@media (max-width: 768px){.dashboard-content{padding:1rem}}@media (max-width: 480px){.dashboard-content{padding:.5rem}}.alerts-container{padding:2rem;max-width:1400px;margin:0 auto}.alerts-header{text-align:center;margin-bottom:3rem;background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.alerts-header h2{color:var(--primary-color);font-size:2.5rem;font-weight:700;margin-bottom:1rem}.alerts-header p{color:var(--text-secondary);font-size:1.1rem;max-width:600px;margin:0 auto}.alerts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.alert-card{background:var(--background-primary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);padding:2rem;border:1px solid var(--border-color);transition:var(--transition);position:relative;overflow:hidden}.alert-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color))}.alert-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-4px)}.alert-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.alert-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0;flex:1}.urgency-badge{color:#fff;padding:6px 16px;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.blood-type-badge{background:linear-gradient(135deg,var(--accent-color),var(--accent-light));color:#fff;padding:8px 16px;border-radius:var(--border-radius);font-size:1rem;font-weight:600;text-align:center;margin-bottom:1.5rem;text-transform:uppercase;letter-spacing:.5px}.alert-message{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:1.5rem;min-height:60px}.alert-footer{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.location,.timestamp{color:var(--text-light);font-size:.9rem;font-weight:500}.respond-btn{width:100%;background:linear-gradient(135deg,var(--primary-color),var(--primary-light));color:#fff;border:none;padding:14px 24px;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.respond-btn:hover{background:linear-gradient(135deg,var(--primary-dark),var(--primary-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}@media (max-width: 768px){.alerts-container{padding:1rem}.alerts-header{padding:1.5rem;margin-bottom:2rem}.alerts-header h2{font-size:2rem}.alerts-grid{grid-template-columns:1fr;gap:1.5rem}.alert-card{padding:1.5rem}.alert-header,.alert-footer{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (max-width: 480px){.alerts-header h2{font-size:1.75rem}.alert-card{padding:1rem}.blood-type-badge{font-size:.9rem;padding:6px 12px}}.profile-container{max-width:1200px;margin:0 auto;padding:2rem}.profile-header{text-align:center;margin-bottom:3rem;background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.profile-header h2{color:var(--primary-color);font-size:2.5rem;font-weight:700;margin-bottom:1rem}.profile-header p{color:var(--text-secondary);font-size:1.1rem;max-width:600px;margin:0 auto}.profile-content{display:flex;flex-direction:column;gap:2rem}.profile-section{background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.section-header h3{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0}.edit-btn{background:linear-gradient(135deg,var(--secondary-color),var(--secondary-light));color:#fff;border:none;padding:10px 20px;border-radius:var(--border-radius);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.edit-btn:hover{background:linear-gradient(135deg,var(--secondary-dark),var(--secondary-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.form-input,.form-select{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);background-color:var(--background-primary);font-family:inherit}.form-input:focus,.form-select:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a}.form-input:disabled,.form-select:disabled{background-color:var(--background-tertiary);color:var(--text-secondary);cursor:not-allowed}.donation-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-number{font-size:2.5rem;font-weight:700;color:var(--primary-color);line-height:1;margin-bottom:.5rem}.profile-actions{display:flex;gap:1rem;justify-content:center;padding-top:2rem;border-top:1px solid var(--border-color)}.save-btn{background:linear-gradient(135deg,var(--success-color),#2ecc71);color:#fff;border:none;padding:14px 28px;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px;min-width:140px}.save-btn:hover{background:linear-gradient(135deg,#229954,var(--success-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}.cancel-btn{background:linear-gradient(135deg,var(--text-secondary),#95a5a6);color:#fff;border:none;padding:14px 28px;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px;min-width:140px}.cancel-btn:hover{background:linear-gradient(135deg,#7f8c8d,var(--text-secondary));transform:translateY(-2px);box-shadow:var(--shadow-medium)}@media (max-width: 768px){.profile-container{padding:1rem}.profile-header{padding:1.5rem;margin-bottom:2rem}.profile-header h2{font-size:2rem}.profile-section{padding:1.5rem}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.profile-grid,.donation-stats{grid-template-columns:1fr;gap:1rem}.profile-actions{flex-direction:column;align-items:center}.save-btn,.cancel-btn{width:100%;max-width:300px}}@media (max-width: 480px){.profile-header h2{font-size:1.75rem}.profile-section{padding:1rem}.stat-number{font-size:2rem}}.hospital-navbar{background:var(--background-primary);box-shadow:var(--shadow-light);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000}.nav-brand{display:flex;align-items:center;gap:1rem}.brand-icon{font-size:1.5rem;font-weight:700;color:var(--secondary-color);text-transform:uppercase;letter-spacing:1px}.brand-text{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.nav-links{display:flex;gap:1rem}.nav-link{background:transparent;border:none;padding:12px 20px;border-radius:var(--border-radius);font-size:1rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.nav-link:hover{background-color:var(--background-secondary);color:var(--text-primary)}.nav-link.active{background-color:var(--secondary-color);color:#fff}.nav-actions{display:flex;align-items:center}.logout-btn{background:linear-gradient(135deg,var(--danger-color) 0%,var(--accent-color) 100%);color:#fff;border:none;padding:10px 20px;border-radius:var(--border-radius);font-size:.9rem;font-weight:500;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.logout-btn:hover{background:linear-gradient(135deg,var(--accent-dark) 0%,var(--danger-color) 100%);transform:translateY(-2px);box-shadow:var(--shadow-medium)}@media (max-width: 768px){.hospital-navbar{padding:1rem;flex-direction:column;gap:1rem}.nav-links{gap:.5rem}.nav-link{padding:10px 16px;font-size:.9rem}.brand-icon{font-size:1.25rem}.brand-text{font-size:1rem}}@media (max-width: 480px){.nav-links{flex-direction:column;gap:.5rem}.nav-link{width:100%;text-align:center}}.hospital-dashboard{min-height:100vh;background:var(--background-secondary)}.dashboard-content{padding:2rem;max-width:1400px;margin:0 auto}.message{padding:1rem;border-radius:var(--border-radius);margin-bottom:1rem;font-weight:500}.message.success{background-color:#27ae601a;color:var(--success-color);border:1px solid var(--success-color)}.message.error{background-color:#e74c3c1a;color:var(--danger-color);border:1px solid var(--danger-color)}.no-requests,.no-hospitals{text-align:center;padding:3rem;background:var(--background-primary);border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.no-requests p,.no-hospitals p{color:var(--text-secondary);font-size:1.1rem;margin:0}.info-container{max-width:1400px;margin:0 auto}.info-header{text-align:center;margin-bottom:3rem;background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.info-header h2{color:var(--primary-color);font-size:2.5rem;font-weight:700;margin-bottom:1rem}.info-header p{color:var(--text-secondary);font-size:1.1rem;max-width:600px;margin:0 auto}.info-content{display:flex;flex-direction:column;gap:2rem}.info-section{background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.info-section h3{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item.full-width{grid-column:1 / -1}.info-item label{font-weight:600;color:var(--text-primary);font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.info-item span{color:var(--text-secondary);font-size:1rem;padding:.5rem 0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-card{background:var(--background-secondary);padding:1.5rem;border-radius:var(--border-radius);border:1px solid var(--border-color);text-align:center;transition:var(--transition)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}.stat-icon{font-size:2rem;margin-bottom:1rem}.stat-number{font-size:2rem;font-weight:700;color:var(--primary-color);line-height:1;margin-bottom:.5rem}.stat-label{color:var(--text-secondary);font-size:.9rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.specialties-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.specialty-card{background:linear-gradient(135deg,var(--secondary-color),var(--secondary-light));color:#fff;padding:1rem 1.5rem;border-radius:var(--border-radius);text-align:center;transition:var(--transition)}.specialty-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}.specialty-name{font-weight:600;font-size:1rem}.emergency-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.emergency-item{display:flex;flex-direction:column;gap:.5rem}.emergency-item label{font-weight:600;color:var(--text-primary);font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.status-available{color:var(--success-color);font-weight:600;font-size:1rem}.status-unavailable{color:var(--danger-color);font-weight:600;font-size:1rem}.trauma-level{background:linear-gradient(135deg,var(--accent-color),var(--accent-light));color:#fff;padding:.5rem 1rem;border-radius:var(--border-radius);font-weight:600;text-align:center;display:inline-block;width:fit-content}.bloodbanks-container{max-width:1400px;margin:0 auto}.bloodbanks-header{text-align:center;margin-bottom:3rem;background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.bloodbanks-header h2{color:var(--primary-color);font-size:2.5rem;font-weight:700;margin-bottom:1rem}.bloodbanks-header p{color:var(--text-secondary);font-size:1.1rem;max-width:600px;margin:0 auto}.bloodbanks-content{display:flex;flex-direction:column;gap:2rem}.bloodbanks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.bloodbank-card{background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color);transition:var(--transition);position:relative;overflow:hidden}.bloodbank-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color))}.bloodbank-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-4px)}.bank-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.bank-header h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0;flex:1}.status-badge{color:#fff;padding:6px 16px;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.bank-info{margin-bottom:2rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none}.info-row label{font-weight:600;color:var(--text-primary);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.info-row span{color:var(--text-secondary);font-size:.95rem}.bank-actions{display:flex;gap:1rem}.contact-btn,.request-btn{flex:1;padding:12px 20px;border:none;border-radius:var(--border-radius);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.contact-btn{background:linear-gradient(135deg,var(--secondary-color),var(--secondary-light));color:#fff}.contact-btn:hover{background:linear-gradient(135deg,var(--secondary-dark),var(--secondary-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}.request-btn{background:linear-gradient(135deg,var(--accent-color),var(--accent-light));color:#fff}.request-btn:hover{background:linear-gradient(135deg,var(--accent-dark),var(--accent-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}.blood-data-container{max-width:1400px;margin:0 auto}.blood-data-header{text-align:center;margin-bottom:3rem;background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.blood-data-header h2{color:var(--primary-color);font-size:2.5rem;font-weight:700;margin-bottom:1rem}.blood-data-header p{color:var(--text-secondary);font-size:1.1rem;max-width:600px;margin:0 auto}.blood-data-content{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.inventory-section{background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color)}.inventory-section h3{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:2rem;text-align:center}.blood-inventory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.blood-card{background:var(--background-secondary);padding:1.5rem;border-radius:var(--border-radius);border:1px solid var(--border-color);text-align:center;transition:var(--transition);position:relative;overflow:hidden}.blood-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-color),var(--secondary-color))}.blood-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}.blood-type-header{margin-bottom:1rem}.blood-type-header h4{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.status-badge{color:#fff;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.quantity-display{margin-bottom:1.5rem}.quantity-number{display:block;font-size:2.5rem;font-weight:700;color:var(--primary-color);line-height:1}.quantity-unit{color:var(--text-secondary);font-size:.9rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.blood-actions{margin-top:auto}.request-btn{width:100%;background:linear-gradient(135deg,var(--secondary-color),var(--secondary-light));color:#fff;border:none;padding:12px 20px;border-radius:var(--border-radius);font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px}.request-btn:hover{background:linear-gradient(135deg,var(--secondary-dark),var(--secondary-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}.request-section{background:var(--background-primary);padding:2rem;border-radius:var(--border-radius-large);box-shadow:var(--shadow-light);border:1px solid var(--border-color);height:fit-content}.request-section h3{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:2rem;text-align:center}.request-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{margin-bottom:0}.form-label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary);font-size:.95rem}.blood-type-select,.urgency-select,.quantity-input,.notes-textarea{width:100%;padding:12px 16px;border:2px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:var(--transition);background-color:var(--background-primary);font-family:inherit}.blood-type-select:focus,.urgency-select:focus,.quantity-input:focus,.notes-textarea:focus{outline:none;border-color:var(--secondary-color);box-shadow:0 0 0 3px #3498db1a}.notes-textarea{resize:vertical;min-height:80px}.submit-request-btn{background:linear-gradient(135deg,var(--accent-color),var(--accent-light));color:#fff;border:none;padding:16px 24px;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:.5px;margin-top:1rem}.submit-request-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-dark),var(--accent-color));transform:translateY(-2px);box-shadow:var(--shadow-medium)}.submit-request-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 1024px){.blood-data-content{grid-template-columns:1fr;gap:2rem}.blood-inventory-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.bloodbanks-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width: 768px){.dashboard-content{padding:1rem}.info-header,.blood-data-header,.bloodbanks-header{padding:1.5rem;margin-bottom:2rem}.info-header h2,.blood-data-header h2,.bloodbanks-header h2{font-size:2rem}.info-section,.inventory-section,.request-section,.bloodbank-card{padding:1.5rem}.info-grid{grid-template-columns:1fr;gap:1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.specialties-grid{grid-template-columns:1fr}.blood-inventory-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.blood-card{padding:1rem}.quantity-number{font-size:2rem}.emergency-info{grid-template-columns:1fr}.bloodbanks-grid{grid-template-columns:1fr;gap:1.5rem}.bank-actions{flex-direction:column}}@media (max-width: 480px){.info-header h2,.blood-data-header h2,.bloodbanks-header h2{font-size:1.75rem}.info-section,.blood-card,.bloodbank-card{padding:1rem}.blood-inventory-grid{grid-template-columns:1fr}.request-form{gap:1rem}.stat-number{font-size:1.5rem}.bank-header{flex-direction:column;align-items:flex-start;gap:.5rem}}
