/* Header styles */

.announcement-bar{background:linear-gradient(135deg,#1e40af,#2563eb);color:#fff;padding:10px 0;font-size:.85rem;position:relative;z-index:1001;}
.announcement-container{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;}
.announcement-icon{font-size:1rem;}
.announcement-text{margin:0;text-align:center;}
.announcement-close{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;opacity:.8;transition:opacity .2s;padding:0 4px;}
.announcement-close:hover{opacity:1;}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:1002;background:rgba(37,99,235,0.2);}
.scroll-progress-bar{width:0%;height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa);transition:width .1s ease;}
.site-header{position:sticky;top:0;z-index:1000;transition:all .3s ease;}
.site-header.scrolled{box-shadow:0 4px 20px rgba(0,0,0,0.08);}
.site-header-transparent{box-shadow:none;}
.site-header-transparent.scrolled{box-shadow:0 4px 20px rgba(0,0,0,0.08);}
.header-container{max-width:1280px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.navbar-brand{flex-shrink:0;}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;}
.logo-icon svg{width:32px;height:32px;}
.logo-text{font-size:1.2rem;font-weight:700;color:#1e293b;}
.logo-tagline{font-size:.7rem;color:#64748b;margin-left:4px;display:none;}
@media(min-width:768px){.logo-tagline{display:inline;}}
.navbar-nav-wrapper{flex:1;display:flex;justify-content:center;}
.navbar-nav{display:flex;list-style:none;margin:0;padding:0;gap:8px;}
.navbar-nav li{position:relative;}
.navbar-nav a{display:block;padding:8px 16px;text-decoration:none;color:#334155;font-weight:500;font-size:.9rem;transition:color .2s;border-radius:40px;}
.navbar-nav a:hover{color:#2563eb;}
.navbar-nav .current-menu-item a,.navbar-nav .current-page-ancestor a{color:#2563eb;background:#eff6ff;}
.navbar-nav .current-menu-item a:hover,.navbar-nav .current-page-ancestor a:hover{background:#dbeafe;}
.navbar-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;}
.search-toggle{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:#64748b;transition:color .2s;}
.search-toggle:hover{color:#2563eb;}
.user-dropdown{position:relative;}
.user-dropdown-trigger{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:6px 12px;border-radius:40px;transition:background .2s;font-family:inherit;font-size:.9rem;color:#1e293b;}
.user-dropdown-trigger:hover{background:#f1f5f9;}
.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;}
.user-initial{width:32px;height:32px;background:#2563eb;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;}
.user-name{font-size:.85rem;font-weight:500;color:#1e293b;}
.dropdown-arrow{transition:transform .2s;width:12px;height:12px;}
.user-dropdown.open .dropdown-arrow{transform:rotate(180deg);}
.user-dropdown-menu{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border-radius:16px;box-shadow:0 10px 25px rgba(0,0,0,0.1);min-width:220px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s;z-index:1001;}
.user-dropdown.open .user-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);}
.user-dropdown-header{padding:12px 16px;border-bottom:1px solid #e2e8f0;}
.user-dropdown-header strong{display:block;font-size:.85rem;}
.user-dropdown-header span{font-size:.7rem;color:#64748b;}
.dropdown-item{display:flex;align-items:center;gap:12px;padding:10px 16px;text-decoration:none;color:#334155;font-size:.85rem;transition:background .2s;}
.dropdown-item:hover{background:#f8fafc;color:#2563eb;}
.dropdown-item.logout{color:#ef4444;}
.dropdown-item.logout:hover{background:#fef2f2;}
.dropdown-divider{height:1px;background:#e2e8f0;margin:8px 0;}
.bs-notif-bell{position:relative;}
.bs-notif-count{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;border-radius:50%;padding:2px 6px;font-size:10px;font-weight:600;line-height:1.2;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:40px;font-weight:500;text-decoration:none;transition:all .2s;font-size:.85rem;border:none;cursor:pointer;font-family:inherit;}
.btn-outline{background:transparent;border:1px solid #e2e8f0;color:#334155;}
.btn-outline:hover{background:#f8fafc;border-color:#cbd5e1;}
.btn-primary{background:#2563eb;color:#fff;}
.btn-primary:hover{background:#1d4ed8;transform:translateY(-1px);}
.btn-nav{padding:10px 20px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-weight:600;}
.btn-sm{padding:6px 14px;font-size:.8rem;}
.btn-block{width:100%;justify-content:center;}
.navbar-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;}
.navbar-toggle span{display:block;width:22px;height:2px;background:#1e293b;transition:all .3s;}
.navbar-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.navbar-toggle.active span:nth-child(2){opacity:0;}
.navbar-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
.navbar-close{display:none;}
.search-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2000;display:none;align-items:flex-start;justify-content:center;}
.search-modal.open{display:flex;}
.search-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);}
.search-modal-container{position:relative;top:20%;width:90%;max-width:600px;background:#fff;border-radius:24px;padding:32px;animation:modalSlideIn .3s ease;}
@keyframes modalSlideIn{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}
.search-modal-close{position:absolute;top:16px;right:20px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;padding:4px 8px;line-height:1;}
.search-modal-content h3{margin:0 0 16px;font-size:1.2rem;}
.search-modal-form{display:flex;gap:12px;margin-bottom:24px;}
.search-modal-form input{flex:1;padding:14px 18px;border:2px solid #e2e8f0;border-radius:60px;font-size:1rem;outline:none;box-sizing:border-box;}
.search-modal-form input:focus{border-color:#2563eb;}
.search-modal-btn{padding:14px 28px;background:#2563eb;color:#fff;border:none;border-radius:60px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.9rem;white-space:nowrap;}
.search-suggestions h4{font-size:.85rem;margin:0 0 12px;color:#64748b;}
.suggestion-tags{display:flex;flex-wrap:wrap;gap:10px;}
.suggestion-tag{background:#f1f5f9;padding:6px 14px;border-radius:40px;font-size:.8rem;text-decoration:none;color:#334155;transition:all .2s;}
.suggestion-tag:hover{background:#2563eb;color:#fff;}
.mobile-search,.mobile-actions{display:none;}
@media(max-width:1024px){
    .navbar-nav-wrapper{position:fixed;top:0;right:-100%;width:80%;max-width:350px;height:100vh;height:100dvh;background:#fff;flex-direction:column;justify-content:flex-start;padding:80px 24px 24px;box-shadow:-5px 0 20px rgba(0,0,0,0.1);transition:right .3s ease;z-index:1002;overflow-y:auto;}
    .navbar-nav-wrapper.open{right:0;}
    .navbar-nav{flex-direction:column;gap:8px;margin-bottom:24px;}
    .navbar-nav a{padding:12px 16px;font-size:1rem;min-height:44px;display:flex;align-items:center;}
    .navbar-close{display:block;position:absolute;top:16px;right:20px;background:none;border:none;cursor:pointer;padding:8px;color:#1e293b;min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;}
    .navbar-toggle{display:flex;}
    .navbar-actions{gap:8px;}
    .user-name{display:none;}
    .btn-nav{display:none;}
    .mobile-search{display:block;margin:16px 0;}
    .mobile-search-form{display:flex;gap:12px;}
    .mobile-search-form input{flex:1;padding:10px 14px;border:1px solid #e2e8f0;border-radius:40px;font-size:.9rem;}
    .mobile-search-form button{padding:10px 16px;background:#2563eb;color:#fff;border:none;border-radius:40px;cursor:pointer;min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;}
    .mobile-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px;}
    .mobile-actions .btn{min-height:44px;display:flex;align-items:center;justify-content:center;}
}
@media(max-width:640px){
    .header-container{padding:12px 16px;}
    .logo-text{font-size:1rem;}
    .search-modal-container{width:95%;padding:24px;}
    .search-modal-form{flex-direction:column;}
    .announcement-text{font-size:.75rem;}
}
