/* Notification Bell */
.sc-notif-wrap { position: relative; display: inline-block; }
.sc-notif-bell { cursor: pointer; font-size: 1.3rem; padding: 8px; position: relative; color: #94a3b8; transition: color 0.2s; }
.sc-notif-bell:hover { color: #d4a843; }
.sc-notif-badge { position: absolute; top: 2px; right: 0; background: #ef4444; color: #fff; font-size: 0.65rem; font-weight: 700; padding: 1px 5px; border-radius: 10px; min-width: 16px; text-align: center; }
.sc-notif-dropdown { position: absolute; right: 0; top: 100%; width: 320px; max-height: 400px; overflow-y: auto; background: #1a2744; border: 1px solid #2a3a5c; border-radius: 12px; box-shadow: 0 8px 32px rgba(0,0,0,0.4); z-index: 1000; }
.sc-notif-item { display: flex; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #2a3a5c; text-decoration: none; transition: background 0.2s; }
.sc-notif-item:hover { background: rgba(212,168,67,0.05); }
.sc-notif-item--unread { background: rgba(212,168,67,0.08); border-left: 3px solid #d4a843; }
.sc-notif-icon { font-size: 1.2rem; flex-shrink: 0; }
.sc-notif-text strong { display: block; color: #e2e8f0; font-size: 0.85rem; margin-bottom: 2px; }
.sc-notif-text span { color: #64748b; font-size: 0.75rem; }
.sc-notif-empty, .sc-notif-loading { padding: 2rem; text-align: center; color: #64748b; font-size: 0.9rem; }

/* Glassmorphism enhancement */
.sc-glass { background: rgba(26, 39, 68, 0.7) !important; backdrop-filter: blur(12px) saturate(180%); -webkit-backdrop-filter: blur(12px) saturate(180%); border: 1px solid rgba(255,255,255,0.08) !important; }

/* Skeleton Loading */
.sc-skeleton { background: linear-gradient(90deg, #1a2744 25%, #2a3a5c 50%, #1a2744 75%); background-size: 200% 100%; animation: sc-skeleton-pulse 1.5s ease-in-out infinite; border-radius: 8px; }
@keyframes sc-skeleton-pulse { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
.sc-skeleton-text { height: 14px; margin-bottom: 8px; }
.sc-skeleton-title { height: 20px; width: 60%; margin-bottom: 12px; }
.sc-skeleton-card { height: 180px; }

/* Pilot Stats Card (profile page) */
.sc-pilot-stats { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 1rem; margin: 1.5rem 0; }
.sc-pilot-stat { background: rgba(26, 39, 68, 0.7); backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 1.25rem; text-align: center; }
.sc-pilot-stat__value { font-size: 1.8rem; font-weight: 700; color: #d4a843; display: block; }
.sc-pilot-stat__label { font-size: 0.8rem; color: #94a3b8; text-transform: uppercase; letter-spacing: 0.05em; margin-top: 4px; }

/* Group Flights */
.sc-group-flights { max-width: 1200px; margin: 0 auto; padding: 2rem 1rem; }
.sc-gf-card { background: #1a2744; border: 1px solid #2a3a5c; border-radius: 12px; padding: 1.5rem; margin-bottom: 1.5rem; transition: transform 0.2s, border-color 0.2s; }
.sc-gf-card:hover { transform: translateY(-3px); border-color: #d4a843; }
.sc-gf-card h3 { margin: 0 0 0.75rem; }
.sc-gf-card h3 a { color: #e2e8f0; text-decoration: none; }
.sc-gf-card h3 a:hover { color: #d4a843; }
.sc-gf-meta { display: flex; gap: 1.5rem; flex-wrap: wrap; margin-bottom: 0.75rem; }
.sc-gf-meta span { color: #94a3b8; font-size: 0.85rem; }
.sc-gf-body { color: #94a3b8; font-size: 0.9rem; }

/* Custom Error Pages */
.sc-error-page { text-align: center; padding: 4rem 2rem; }
.sc-error-page__code { font-size: 8rem; font-weight: 800; color: #d4a843; line-height: 1; margin-bottom: 1rem; text-shadow: 0 0 40px rgba(212,168,67,0.3); }
.sc-error-page__title { font-size: 1.5rem; color: #e2e8f0; margin-bottom: 1rem; }
.sc-error-page__text { color: #94a3b8; margin-bottom: 2rem; max-width: 500px; margin-left: auto; margin-right: auto; }
.sc-error-page__btn { display: inline-block; background: #d4a843; color: #0f172a; padding: 12px 28px; border-radius: 8px; text-decoration: none; font-weight: 600; transition: background 0.2s; }
.sc-error-page__btn:hover { background: #f59e0b; }