/* Shared navigation. Keep its layout independent of each page's button styles. */
.ca-site-header { background:#fff; border-bottom:1px solid #dce5e8; box-shadow:0 2px 8px #203b4610; font-family:Roboto,Arial,sans-serif; letter-spacing:0; z-index:1030; }
.ca-site-header .navbar { padding:0; min-height:76px; }
.ca-header-inner { width:100%; max-width:1280px; padding:12px 24px; margin:0 auto; display:flex; align-items:center; gap:16px; min-width:0; }
.ca-site-header .navbar-brand { margin:0 12px 0 0; padding:0; flex-shrink:0; }
.ca-site-header .header-logo { width:144px; height:48px; max-width:100%; object-fit:contain; }
.ca-site-header #mainNavbar { align-items:center; justify-content:space-between; gap:16px; min-width:0; }
.ca-site-header .navbar-nav { margin:0; gap:4px; align-items:center; }
.ca-site-header .nav-link,.ca-site-header .ca-category-menu summary { color:#31464f!important; font:500 14px/1.4 Roboto,Arial,sans-serif; display:flex!important; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px!important; border:0; border-radius:6px; background:transparent; white-space:nowrap; text-decoration:none; cursor:pointer; }
.ca-site-header .nav-link:hover,.ca-site-header summary:hover,.ca-site-header .nav-link[aria-current=page] { background:#edf4f5; color:#1f4e5f!important; }
.ca-site-header .ca-header-register { border:1px solid #afc2cb; padding:10px 12px!important; }
.ca-site-header .ca-header-publish { flex-shrink:0; min-height:44px; height:44px; padding:10px 14px; display:inline-flex; align-items:center; justify-content:center; gap:8px; font:600 14px/1.4 Roboto,Arial,sans-serif; color:#fff; background:#1f4e5f; border:1px solid #1f4e5f; border-radius:6px; box-shadow:none; text-transform:none; letter-spacing:0; white-space:nowrap; margin:0; }
.ca-site-header .ca-header-publish:hover { background:#163946; border-color:#163946; }
.ca-site-header .ca-navbar-toggler { width:44px; height:44px; min-height:44px; padding:0; border:1px solid #c6d4da; border-radius:6px; box-shadow:none; }
.ca-site-header .ca-publish-short,.ca-site-header .ca-mobile-nav-label { display:none; }
.ca-site-header .ca-header-icon { min-width:44px; font-size:18px; position:relative; }
.ca-site-header .notification-badge { position:absolute; top:0; right:-3px; margin:0; font-size:11px; }
.ca-site-header .dropdown-menu { border-radius:8px; min-width:240px; max-width:100%; padding:8px; box-shadow:0 8px 28px #203b4624; }
.ca-site-header .dropdown-item { display:flex; align-items:center; gap:10px; min-height:44px; padding:10px; border-radius:4px; font-size:14px; white-space:normal; }
.ca-site-header .dropdown-item i { width:18px; text-align:center; flex-shrink:0; }
.ca-site-header .dropdown-user-box { padding:8px 10px; }
.ca-site-header a:focus-visible,.ca-site-header button:focus-visible,.ca-site-header summary:focus-visible { outline:3px solid #d9a72f; outline-offset:3px; }
.ca-category-menu { position:relative; }
.ca-category-menu summary { list-style:none; }
.ca-category-menu summary::-webkit-details-marker { display:none; }
.ca-category-menu .ca-menu-chevron { font-size:10px; transition:transform .15s; }
.ca-category-menu[open] .ca-menu-chevron { transform:rotate(180deg); }
.ca-category-menu[open] summary { background:#edf4f5; }
.ca-category-panel { position:absolute; left:0; top:calc(100% + 12px); width:570px; padding:12px; display:grid; grid-template-columns:1fr 1fr; gap:4px; background:#fff; border:1px solid #ccd9de; border-radius:8px; box-shadow:0 12px 32px #203b4624; z-index:1040; }
.ca-category-panel a { display:flex; align-items:center; gap:12px; padding:12px; min-height:52px; border-radius:4px; font-size:14px; line-height:1.4; color:#31464f; text-decoration:none; }
.ca-category-panel a>i { width:22px; flex-shrink:0; text-align:center; color:#1f4e5f; font-size:18px; }
.ca-category-panel a:hover,.ca-category-panel a[aria-current=page] { background:#edf4f5; color:#1f4e5f; }
.ca-category-panel .ca-category-panel-all { grid-column:1/-1; justify-content:space-between; border-top:1px solid #e1e8eb; border-radius:0; margin-top:4px; font-weight:600; }
@media(max-width:1199.98px) {
 .ca-header-inner { flex-wrap:wrap; gap:12px; }
 .ca-site-header .navbar-brand { order:0; margin-right:auto; }
 .ca-site-header .ca-header-publish { order:1; }
 .ca-site-header .ca-navbar-toggler { order:2; }
 .ca-site-header #mainNavbar { order:3; flex-basis:100%; width:100%; padding:12px 0 0; border-top:1px solid #e1e8eb; max-height:calc(100dvh - 90px); overflow-y:auto; }
 .ca-site-header .navbar-nav { align-items:stretch; gap:2px; }
 .ca-site-header #mainNavbar .nav-item { width:100%; }
 .ca-site-header #mainNavbar .nav-link,.ca-site-header .ca-category-menu summary { justify-content:flex-start; width:100%; margin:0; }
 .ca-site-header .ca-header-account { border-top:1px solid #e1e8eb; padding-top:10px; margin-top:10px; }
 .ca-site-header .ca-header-register { justify-content:center!important; }
 .ca-site-header .ca-mobile-nav-label { display:inline; font-size:14px; }
 .ca-site-header .notification-badge { position:static; margin-left:auto; }
 .ca-site-header .ca-category-menu summary .ca-menu-chevron { margin-left:auto; }
 .ca-category-panel { position:static; width:100%; box-shadow:none; padding:4px; margin:4px 0 8px; }
 .ca-site-header .nav-dropdown-account .dropdown-menu { position:static!important; transform:none!important; float:none; width:100%; box-shadow:none; margin:4px 0; background:#f7f9fa; }
}
@media(max-width:575.98px) {
 .ca-header-inner { padding:10px 16px; gap:8px; }
 .ca-site-header .navbar { min-height:68px; }
 .ca-site-header .header-logo { width:126px; height:42px; }
 .ca-site-header .ca-publish-full { display:none; }
 .ca-site-header .ca-publish-short { display:inline; }
 .ca-site-header .ca-header-publish { padding:10px; font-size:13px; gap:6px; }
 .ca-category-panel { grid-template-columns:minmax(0,1fr); }
 .ca-category-panel a { min-height:44px; padding:10px; }
}
