/* ============================================ HEADER STYLES ============================================ */ .header { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; padding: 0.75rem 0; transition: all 0.3s ease; background: transparent; } .header--scrolled { background: rgba(255, 255, 255, 0.92); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06); padding: 0.5rem 0; } .header__container { display: flex; align-items: center; justify-content: space-between; gap: 2rem; } /* Logo */ .header__logo { display: flex; align-items: center; gap: 0.75rem; flex-shrink: 0; } .header__logo-img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; } .header__logo-text { display: flex; flex-direction: column; line-height: 1.15; } .header__logo-name { font-family: var(--font-heading); font-size: 1.1rem; font-weight: 700; color: white; } .header--scrolled .header__logo-name { color: var(--color-primary-600); } .header__logo-sub { font-size: 0.7rem; font-weight: 500; color: rgba(255, 255, 255, 0.8); letter-spacing: 0.02em; } .header--scrolled .header__logo-sub { color: var(--color-neutral-500); } /* Navigation */ .header__nav { display: flex; align-items: center; gap: 0.25rem; } .header__nav-item { position: relative; } .header__nav-link { display: flex; align-items: center; gap: 0.25rem; padding: 0.5rem 0.85rem; font-size: 0.9rem; font-weight: 500; color: white; border-radius: var(--radius-md); transition: all 0.25s ease; } .header--scrolled .header__nav-link { color: var(--color-neutral-700); } .header__nav-link:hover, .header__nav-link--active { color: var(--color-primary-200); background: rgba(255, 255, 255, 0.1); } .header--scrolled .header__nav-link:hover, .header--scrolled .header__nav-link--active { color: var(--color-primary-500); background: rgba(45, 106, 79, 0.06); } .header__chevron { font-size: 0.85rem; transition: transform 0.2s ease; } .header__nav-item:hover .header__chevron { transform: rotate(180deg); } /* Dropdown */ .header__dropdown { position: absolute; top: 100%; left: 0; min-width: 200px; background: white; border-radius: var(--radius-lg); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12); padding: 0.5rem; margin-top: 0.25rem; border: 1px solid rgba(0, 0, 0, 0.04); } .header__dropdown--right { left: auto; right: 0; } .header__dropdown-link { display: block; padding: 0.6rem 1rem; font-size: 0.88rem; font-weight: 500; color: var(--color-neutral-700); border-radius: var(--radius-sm); transition: all 0.2s ease; width: 100%; text-align: left; } .header__dropdown-link:hover { background: var(--color-primary-50); color: var(--color-primary-600); } .header__dropdown-link--danger:hover { background: #fee2e2; color: #EF4444; } .header__dropdown-user { display: flex; flex-direction: column; padding: 0.75rem 1rem; border-bottom: 1px solid var(--color-neutral-100); margin-bottom: 0.25rem; } .header__dropdown-user strong { font-size: 0.9rem; color: var(--color-neutral-900); } .header__dropdown-user span { font-size: 0.78rem; color: var(--color-neutral-500); } /* Actions */ .header__actions { display: flex; align-items: center; gap: 0.75rem; flex-shrink: 0; } .header__donate-btn { animation: pulse 3s ease-in-out infinite; } .header__user-btn { display: flex; align-items: center; color: white; transition: color 0.3s ease; } .header--scrolled .header__user-btn { color: var(--color-neutral-600); } .header__user-btn:hover { color: var(--color-primary-200); } .header--scrolled .header__user-btn:hover { color: var(--color-primary-500); } .header__avatar { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; border: 2px solid var(--color-primary-500); } .header__mobile-toggle { display: none; color: white; } .header--scrolled .header__mobile-toggle { color: var(--color-neutral-700); } /* Mobile Menu */ .header__mobile { display: none; overflow: hidden; background: white; border-top: 1px solid var(--color-neutral-100); } .header__mobile-nav { display: flex; flex-direction: column; padding: 1rem 1.5rem 1.5rem; } .header__mobile-link { display: block; padding: 0.75rem 0; font-size: 1rem; font-weight: 500; color: var(--color-neutral-700); border-bottom: 1px solid var(--color-neutral-100); } .header__mobile-link--active { color: var(--color-primary-500); } .header__mobile-sub { padding-left: 1.25rem; } .header__mobile-sub-link { display: block; padding: 0.5rem 0; font-size: 0.9rem; color: var(--color-neutral-500); } /* Responsive */ @media (max-width: 1024px) { .header__nav { display: none; } .header__mobile-toggle { display: flex; } .header__mobile { display: block; } .header__donate-btn { display: none; } } @media (max-width: 480px) { .header__logo-text { display: none; } }