Zelyanoth's picture
fff
25f22bf
raw
history blame
2.82 kB
/* Header Responsive Styles */
.header {
background: white;
border-bottom: 1px solid var(--color-secondary-200);
position: fixed;
top: 0;
left: 0;
right: 0;
height: 4rem; /* 64px - consistent with h-16 */
z-index: var(--z-50);
backdrop-filter: blur(10px);
background: rgba(255, 255, 255, 0.95);
}
/* Mobile header behavior */
@media (max-width: 1023px) {
.header {
z-index: var(--z-50);
}
}
.header-content {
display: flex;
align-items: center;
justify-content: space-between;
height: 100%;
padding-left: 1rem;
padding-right: 1rem;
}
@media (min-width: 640px) {
.header-content {
padding-left: 1.5rem;
padding-right: 1.5rem;
}
}
@media (min-width: 1024px) {
.header-content {
padding-left: 2rem;
padding-right: 2rem;
}
}
.header-logo {
font-size: var(--font-size-xl);
font-weight: var(--font-weight-bold);
color: var(--color-primary-600);
text-decoration: none;
}
.header-nav {
display: flex;
align-items: center;
gap: var(--spacing-6);
}
.header-actions {
display: flex;
align-items: center;
gap: var(--spacing-4);
}
.hamburger {
display: none;
flex-direction: column;
cursor: pointer;
padding: var(--spacing-2);
background: none;
border: none;
}
.hamburger span {
width: 24px;
height: 2px;
background: var(--color-secondary-700);
margin: 2px 0;
transition: all var(--transition-normal);
}
.hamburger.active span:nth-child(1) {
transform: rotate(45deg) translate(5px, 5px);
}
.hamburger.active span:nth-child(2) {
opacity: 0;
}
.hamburger.active span:nth-child(3) {
transform: rotate(-45deg) translate(7px, -6px);
}
/* Mobile styles - using Tailwind's lg breakpoint (1024px) */
@media (max-width: 1023px) {
.hamburger {
display: flex;
}
.header-nav {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100vh;
background: white;
flex-direction: column;
justify-content: center;
align-items: center;
gap: var(--spacing-8);
transform: translateX(-100%);
transition: transform var(--transition-slow);
z-index: var(--z-30);
}
.header-nav.active {
transform: translateX(0);
}
.header-actions {
display: none;
}
}
/* Ensure proper z-index relationship with sidebar */
@media (max-width: 1023px) {
.header {
z-index: var(--z-40);
}
/* Sidebar should be above header on mobile */
.sidebar {
z-index: var(--z-50);
}
}
/* High contrast mode support */
@media (prefers-contrast: high) {
.header {
border: 2px solid currentColor;
}
}
/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
.header {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
}
.hamburger span {
transition-duration: 0.01ms !important;
}
}