/* Utilities for zibll header chrome */ .css-icon.i-menu { position: relative; display: inline-block; width: 1.15em; height: 1em; vertical-align: -0.1em; } .css-icon.i-menu > i, .css-icon.i-menu::before, .css-icon.i-menu::after { content: ""; position: absolute; left: 0; right: 0; height: 2px; background: currentColor; border-radius: 1px; transition: 0.25s; } .css-icon.i-menu > i { top: 50%; margin-top: -1px; } .css-icon.i-menu::before { top: 0; } .css-icon.i-menu::after { bottom: 0; } .list-inline { padding-left: 0; list-style: none; margin: 0; } .list-inline > li { display: inline-block; vertical-align: middle; } .list-inline.splitters > li + li { margin-left: 6px; } .navbar-top .flex.ac { display: flex; align-items: center; } .navbar-top .flex.jsb { display: flex; justify-content: space-between; } .navbar-top .flex.jsa { display: flex; justify-content: space-around; } .navbar-top .flex.jc { display: flex; justify-content: center; } .mb6 { margin-bottom: 6px; } .mb10 { margin-bottom: 10px; } .mb20 { margin-bottom: 20px; } .mt6 { margin-top: 6px; } .mt10 { margin-top: 10px; } .ml6 { margin-left: 6px; } .ml10 { margin-left: 10px; } .em09 { font-size: 0.9em; } .em12 { font-size: 1.2em; } .muted-2-color { opacity: 0.7; } .muted-3-color { opacity: 0.55; } .text-ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .padding-10 { padding: 10px; } .relative { position: relative; } .inline-block { display: inline-block; } .hide { display: none !important; } .pull-right { float: right; } .null { background: none; border: 0; padding: 0; color: inherit; } .abs-right { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); } /* Mid breakpoint fold trigger (zibll ~991) */ @media (max-width: 991px) { .navbar-top .show-nav-but { display: block !important; } .navbar-top .nav.navbar-nav:not(.show) { display: none; } .navbar-top .nav.navbar-nav.show { display: block; position: absolute; left: 0; right: 0; top: 100%; background: var(--main-bg-color, #fff); z-index: 1001; padding: 10px; box-shadow: 0 8px 20px rgba(0,0,0,.08); } } /* Language dropdown */ .language-dropdown { position: relative; } .language-dropdown .dropdown-menu, .language-dropdown .hover-show-con { min-width: 140px; right: 0; left: auto; padding: 8px 0; } .language-dropdown .translate-button { display: flex; align-items: center; padding: 6px 14px; } .language-dropdown .translate-button.active { color: var(--focus-color); } /* Layout2 inline search focus panel */ .navbar-collapse .search-input { min-width: 160px; max-width: 240px; height: 34px; border-radius: 20px; border: 0; padding: 0 36px 0 14px; } .navbar-form.navbar-left.hover-show { margin: 0 8px; } .navbar-form .form-group.relative { position: relative; } .navbar-form .abs-right { right: 10px; } /* Mobile drawer body scroll lock */ body.mobile-navbar-show { overflow: hidden; } /* Ensure container-header flex row */ .container-header { display: flex; align-items: center; flex-wrap: nowrap; max-width: var(--nav-max-width, 100%); margin: 0 auto; width: 100%; } /* Beat Bootstrap 5 `.collapse:not(.show){display:none}` if legacy markup still carries both classes. Desktop top bar is always a flex row. */ .navbar-top .navbar-collapse, .navbar.navbar-top .collapse.navbar-collapse { display: flex !important; align-items: center; flex: 1 1 auto; min-width: 0; flex-wrap: nowrap; visibility: visible; height: auto; overflow: visible; justify-content: flex-start; gap: 4px; } .navbar-header { display: flex; align-items: center; flex-shrink: 0; } /* Primary menu: fill middle so right actions pin to trailing edge (zibll). */ .navbar-top .navbar-collapse > .nav.navbar-nav { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; margin-left: 12px; margin-right: 8px; float: none; } .navbar-top .navbar-collapse > .nav.navbar-nav > li { float: none; flex: 0 0 auto; } /* Right-side actions (publish / VIP / theme / user / search) stay packed. */ .navbar-top .navbar-collapse > .navbar-form, .navbar-top .navbar-collapse > .navbar-right { display: flex; align-items: center; flex: 0 0 auto; float: none; margin-top: 0; margin-bottom: 0; } .navbar-top .navbar-collapse > .navbar-form.navbar-left { margin-right: 8px; } /* No primary menu (or empty menu): pin first visible right cluster to the end. `.show-nav-but.hide` is display:none and does not participate in flex. */ .navbar-top .navbar-collapse:not(:has(> .nav.navbar-nav)) > .navbar-form.navbar-right:not(.hide) { margin-left: auto; } .navbar-top .navbar-collapse:not(:has(> .nav.navbar-nav)) > .navbar-form.navbar-right:not(.hide) ~ .navbar-form.navbar-right { margin-left: 0; } /* Layout-3: menu lives in a trailing .navbar-right wrapper */ .navbar-top .navbar-collapse > .navbar-right:last-child { margin-left: auto; } /* Mobile drawer toggle: hidden on PC (nav.css hardens with !important) */ .navbar-top .navbar-toggle { display: none; background: none; border: 0; color: inherit; } @media (max-width: 767px) { .navbar-top .navbar-toggle { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; } .navbar-top .navbar-collapse, .navbar.navbar-top .collapse.navbar-collapse { display: none !important; } } @media (min-width: 768px) { .navbar-top .navbar-toggle { display: none !important; } } /* Senior submenu full width under fixed header */ .navbar-top .sub-menu.senior-submenu { position: fixed; left: 0; right: 0; top: 59px; width: 100%; min-width: 100%; padding: 20px 0; border-radius: 0; z-index: 998; } .navbar-inline-search-panel { position: absolute; left: 0; top: calc(100% + 8px); min-width: 280px; max-width: 360px; padding: 12px; background: var(--main-bg-color, #fff); border-radius: var(--main-radius, 8px); box-shadow: 0 8px 24px rgba(0,0,0,.12); z-index: 1002; display: none; } .navbar-form .form-group:hover .navbar-inline-search-panel, .navbar-form .form-group:focus-within .navbar-inline-search-panel, .navbar-inline-search-panel.is-open { display: block; visibility: visible; } .navbar-inline-search-suggest__item { display: flex; flex-direction: column; padding: 6px 4px; color: inherit; text-decoration: none; } .navbar-inline-search-suggest__item:hover { color: var(--focus-color); } .navbar-inline-search-hots .but { margin: 0 4px 4px 0; } .aksrt-sme-field { display: block; margin: 4px 0; } .aksrt-sme-field span { display: block; font-size: 12px; color: #646970; } .aksrt-sme-card, .aksrt-sme-col { border: 1px solid #dcdcde; padding: 8px; margin: 8px 0; border-radius: 4px; } /* Navbar form vertical align */ .navbar-top .navbar-form { margin: 0; padding: 0 4px; border: 0; box-shadow: none; } .navbar-top .navbar-form .form-control { height: 34px; box-shadow: none; } /* Avatar in nav */ .navbar-top .navbar-avatar img, .navbar-top a.navbar-avatar img { width: 32px; height: 32px; border-radius: 50%; display: block; } .navbar-top .list-inline > li > a.btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0 !important; line-height: 1; gap: 0; vertical-align: middle; } /* Icon-only nav chips: neutralize .btn padding/height so FA sits dead-center */ .navbar-top .list-inline > li > a.btn > i, .navbar-top .list-inline > li > a.btn > .fa, .navbar-top .list-inline > li > a.btn > .fas, .navbar-top .list-inline > li > a.btn > .far, .navbar-top a.btn.nav-search-btn > i, .navbar-top a.btn.main-search-btn > i, .navbar-top a.btn.signin-loader > i { margin: 0 !important; line-height: 1 !important; width: 1em; height: 1em; display: inline-flex; align-items: center; justify-content: center; vertical-align: 0; position: relative; top: 0; transform: none; } /* Navbar CTA: icon + text baseline (zibll .navbar-but .but) */ .navbar-top .navbar-but .but, .navbar-top a.navbar-cta.but { display: inline-flex !important; align-items: center; justify-content: center; line-height: 1; vertical-align: middle; } .navbar-top .navbar-but .but > i, .navbar-top a.navbar-cta.but > i { margin: 0 0.25em 0 0 !important; line-height: 1 !important; position: relative; top: 0; transform: none; vertical-align: 0; } .navbar-top .navbar-but .but > i:last-child, .navbar-top a.navbar-cta.but > i:only-child { margin-right: 0 !important; } /* Theme toggle in navbar-form (not only cluster) */ .navbar-top .navbar-form .toggle-theme.toggle-radius, .navbar-top a.toggle-theme.toggle-radius { display: inline-block; width: 29px; height: 29px; overflow: hidden; vertical-align: middle; flex-shrink: 0; position: relative; } .navbar-top .navbar-form .toggle-theme.toggle-radius > i, .navbar-top a.toggle-theme.toggle-radius > i { position: absolute; top: 50%; left: 0; right: 0; margin: auto; transform: translateY(-50%); line-height: 1; /* visibility handled by theme-class rules in nav.css / header-menu-buttons.css */ } /* Menu item title + icon baseline (when menu is assigned) */ .navbar-top .nav > li > a { display: inline-flex !important; align-items: center; line-height: 1.44; } .navbar-top .nav > li > a > .menu-item-icon, .navbar-top .nav > li > a > i.menu-item-icon, .navbar-top .nav > li > a > .fa.menu-item-icon { margin-right: 0.25em; line-height: 1; flex-shrink: 0; position: relative; top: 0; transform: none; vertical-align: 0; } .navbar-top .nav > li > a > .menu-item-title { line-height: 1.44; display: inline-block; vertical-align: middle; } /* FA in header: line-height only — do NOT set vertical-align (causes flex drift). */ .navbar-top .fa, .navbar-top .fas, .navbar-top .far, .navbar-top .fab { line-height: 1 !important; vertical-align: 0 !important; } .navbar-top .css-icon { width: 1em; height: 1em; vertical-align: -0.15em; display: inline-block; position: relative; } /* Sub-user-box width + anchor under trigger */ .navbar-top .navbar-right .sub-menu { min-width: 280px; padding: 0; top: calc(100% + 6px); right: 0; left: auto; } .navbar-top .navbar-right .sub-menu .sub-user-box { min-width: 280px; } .navbar-top .list-inline > li { position: relative; } /* Ensure fold trigger visible only mid */ @media (min-width: 992px) { .navbar-top .show-nav-but { display: none !important; } } /* focus-show: reveal sibling dropdown when input focused (zibll) */ .form-group:focus-within .dropdown-menu.hover-show-con, .hover-show:focus-within .hover-show-con { visibility: unset; opacity: 1; transform: translateY(0); }