/* =========================================================
   NepalTechHub - Final Header CSS
   ========================================================= */

:root{
  --nth-header-bg:#ffffff;
  --nth-header-text:#111827;
  --nth-header-muted:#6b7280;
  --nth-header-border:#e5e7eb;
  --nth-header-accent:#2563eb;
  --nth-header-accent-dark:#1d4ed8;
  --nth-header-shadow:0 8px 24px rgba(15,23,42,.06);
}

/* =========================================================
   Base
   ========================================================= */

.nth-header-dev-note{
  display:block;
}

.nth-topbar,
.nth-main-header,
.nth-header-ticker{
  width:100%;
  box-sizing:border-box;
}

.nth-header-inner{
  width:min(1200px, calc(100% - 24px));
  margin-inline:auto;
}

.nth-flex{ display:flex; }
.nth-center{ display:flex; align-items:center; justify-content:center; }
.nth-between{ display:flex; align-items:center; justify-content:space-between; }
.nth-gap-8{ gap:8px; }
.nth-gap-10{ gap:10px; }
.nth-gap-12{ gap:12px; }
.nth-gap-16{ gap:16px; }

.nth-hidden{
  display:none !important;
}

.nth-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  border:1px solid var(--nth-header-border);
  border-radius:999px;
  background:#fff;
  color:var(--nth-header-muted);
  font-size:13px;
  line-height:1.2;
  text-decoration:none;
}

.nth-label{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:8px;
  background:var(--nth-header-accent);
  color:#fff;
  font-weight:700;
  font-size:12px;
  line-height:1;
}

.nth-icon-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border:1px solid var(--nth-header-border);
  border-radius:999px;
  background:#fff;
  color:var(--nth-header-accent);
  box-shadow:0 2px 10px rgba(37,99,235,.08);
  transition:all .2s ease;
  font-size:16px;
  cursor:pointer;
}

.nth-icon-btn i{
  font-size:16px;
  line-height:1;
}

.nth-icon-btn:hover{
  border-color:var(--nth-header-accent);
  background:var(--nth-header-accent);
  color:#fff;
}

/* Prevent accidental selection */
.nth-main-header,
.nth-header-ticker,
.nth-icon-btn{
  -webkit-user-select:none;
  user-select:none;
}

/* =========================================================
   Hide old theme header/nav
   ========================================================= */

#wpadminbar{
  display:block !important;
}

body #masthead,
body .site-header,
body .inside-header,
body .site-branding,
body .site-logo,
body .site-brand-container,
body .navigation-branding,
body nav.main-navigation,
body #site-navigation,
body #sticky-navigation,
body .main-navigation,
body .inside-navigation,
body .main-nav,
body .menu-bar-items,
body .mobile-menu-control-wrapper,
body .menu-toggle,
body .secondary-navigation,
body .top-bar,
body .header-widget,
body .header-widget-area{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  height:0 !important;
  min-height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
}

body .site,
body .site-content,
body #page,
body .content-area{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* =========================================================
   Topbar
   ========================================================= */

.nth-topbar{
  display:none !important;
}

/* =========================================================
   Main Header
   ========================================================= */

.nth-main-header{
  display:block !important;
  background:#ffffff;
  border-bottom:1px solid var(--nth-header-border);
  box-shadow:0 1px 0 rgba(15,23,42,.04);
  padding:8px 0;
}

.nth-main-header .nth-header-inner{
  min-height:52px;
}

.nth-site-brand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.nth-site-brand .custom-logo{
  max-height:30px;
  width:auto;
  display:block;
}

.nth-site-title{
  font-size:20px;
  font-weight:800;
  color:var(--nth-header-text);
  line-height:1.1;
}

/* =========================================================
   Ticker
   ========================================================= */

.nth-header-ticker{
  display:block !important;
  background:#ffffff;
  border-bottom:1px solid var(--nth-header-border);
  padding:5px 0;
}

.nth-header-ticker .nth-header-inner{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}

.nth-header-ticker .nth-pill{
  max-width:145px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  padding:5px 9px;
  font-size:11px;
}

/* =========================================================
   Panels hidden/open state
   ========================================================= */

.nth-main-header .nth-mobile-panel,
.nth-main-header .nth-search-panel,
.nth-main-header [data-nth-mobile-panel],
.nth-main-header [data-nth-search-panel]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
}

.nth-main-header .nth-mobile-panel.nth-is-open,
.nth-main-header .nth-search-panel.nth-is-open,
.nth-main-header [data-nth-mobile-panel].nth-is-open,
.nth-main-header [data-nth-search-panel].nth-is-open{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  padding:12px 0 !important;
  margin:0 !important;
  background:#ffffff !important;
  border-top:1px solid var(--nth-header-border) !important;
  border-bottom:1px solid var(--nth-header-border) !important;
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}

/* =========================================================
   Mobile Menu
   ========================================================= */

.nth-mobile-nav-wrap{
  width:100%;
}

.nth-mobile-nav,
.nth-mobile-nav ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.nth-mobile-nav{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.nth-mobile-nav li{
  list-style:none !important;
  margin:0;
  padding:0;
}

.nth-mobile-nav > li > a,
.nth-mobile-nav .sub-menu li a{
  display:block;
  padding:11px 12px;
  border:1px solid var(--nth-header-border);
  border-radius:10px;
  background:#fff;
  color:var(--nth-header-text);
  font-weight:700;
  font-size:14px;
  text-decoration:none;
}

.nth-mobile-nav > li > a:hover,
.nth-mobile-nav .sub-menu li a:hover{
  border-color:var(--nth-header-accent);
  color:var(--nth-header-accent);
}

.nth-mobile-nav .sub-menu{
  margin-top:6px !important;
  margin-left:10px !important;
  display:flex;
  flex-direction:column;
  gap:6px;
}

/* =========================================================
   Search Panel
   ========================================================= */

.nth-search-form{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}

.nth-search-form input[type="search"]{
  flex:1 1 220px;
  min-width:180px;
  height:42px;
  padding:0 14px;
  border:1px solid var(--nth-header-border);
  border-radius:10px;
  background:#fff;
  color:var(--nth-header-text);
  font-size:14px;
}

.nth-search-form button{
  height:42px;
  padding:0 18px;
  border:none;
  border-radius:10px;
  background:var(--nth-header-accent);
  color:#fff;
  font-weight:700;
  font-size:14px;
  cursor:pointer;
}

.nth-search-form button:hover{
  background:var(--nth-header-accent-dark);
}

/* =========================================================
   Logged-in support
   ========================================================= */

body.admin-bar .nth-main-header,
body.admin-bar .nth-header-ticker{
  position:relative;
  z-index:99;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width:768px){
  .nth-header-inner{
    width:min(100% - 16px, 100%);
  }

  .nth-main-header{
    padding:8px 0;
  }

  .nth-main-header .nth-header-inner{
    min-height:52px;
  }

  .nth-site-brand .custom-logo{
    max-height:30px;
  }

  .nth-site-title{
    font-size:20px;
  }

  .nth-icon-btn{
    width:34px;
    height:34px;
    font-size:15px;
  }

  .nth-icon-btn i{
    font-size:15px;
  }

  .nth-header-ticker{
    padding:5px 0;
  }

  .nth-header-ticker .nth-label{
    min-height:30px;
    padding:0 10px;
    font-size:11px;
  }

  .nth-header-ticker .nth-pill{
    max-width:145px;
    font-size:11px;
    padding:5px 9px;
  }
}