/** * @fileoverview Header Styles for Rantii * @author retoor * @description Application header component styles * @keywords css, header, navigation, styles */ app-header { position: fixed; top: 0; left: 0; right: 0; height: var(--header-height); background-color: var(--color-surface); border-bottom: 1px solid var(--color-border); z-index: var(--z-sticky); } .header-container { display: flex; align-items: center; height: 100%; padding: 0 var(--spacing-md); gap: var(--spacing-md); } .header-left { display: flex; align-items: center; gap: var(--spacing-sm); } .menu-toggle { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: var(--radius-md); color: var(--color-text); } .menu-toggle:hover { background-color: var(--color-surface-hover); } .menu-icon { display: block; width: 20px; height: 2px; background-color: currentColor; position: relative; } .menu-icon::before, .menu-icon::after { content: ''; position: absolute; left: 0; width: 100%; height: 2px; background-color: currentColor; } .menu-icon::before { top: -6px; } .menu-icon::after { bottom: -6px; } .logo { display: flex; align-items: center; text-decoration: none; } .logo-text { font-size: var(--font-size-xl); font-weight: 700; color: var(--color-primary); } .header-center { flex: 1; max-width: 400px; margin: 0 auto; } .search-container { position: relative; display: flex; align-items: center; } .search-input { width: 100%; padding-right: 40px; } .search-btn { position: absolute; right: 4px; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; color: var(--color-text-muted); border-radius: var(--radius-sm); } .search-btn:hover { color: var(--color-text); background-color: var(--color-surface-hover); } .header-right { display: flex; align-items: center; gap: var(--spacing-xs); } .header-btn { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: var(--color-text-secondary); border-radius: var(--radius-md); transition: all var(--transition-fast); } .header-btn:hover { color: var(--color-text); background-color: var(--color-surface-hover); } .login-btn { width: auto; padding: 0 var(--spacing-md); background-color: var(--color-primary); color: white; } .login-btn:hover { background-color: var(--color-primary-hover); color: white; } .notifications-btn { position: relative; } .notification-badge { position: absolute; top: 4px; right: 4px; min-width: 18px; height: 18px; padding: 0 4px; font-size: var(--font-size-xs); font-weight: 600; background-color: var(--color-primary); color: white; border-radius: var(--radius-full); display: flex; align-items: center; justify-content: center; } .theme-icon-light { display: none; } .theme-dark .theme-icon-dark, .theme-black .theme-icon-dark, .theme-ocean .theme-icon-dark, .theme-forest .theme-icon-dark, .theme-sunset .theme-icon-dark { display: block; } .theme-dark .theme-icon-light, .theme-black .theme-icon-light, .theme-ocean .theme-icon-light, .theme-forest .theme-icon-light, .theme-sunset .theme-icon-light { display: none; } .theme-light .theme-icon-dark, .theme-white .theme-icon-dark { display: none; } .theme-light .theme-icon-light, .theme-white .theme-icon-light { display: block; } @media (min-width: 769px) { .menu-toggle { display: none; } } @media (max-width: 480px) { .header-center { display: none; } }