/* ============================================================
   公共前台头部（页头导航）样式
   由 includes/front_header.php 内联 <style> 抽离而来（样式与程序分离）。
   动态主题色经由页面根元素的 inline style 注入 CSS 变量。
   ============================================================ */
.xhd{background:var(--xhd-bg);border-bottom:1px solid #eee;position:relative;z-index:30}
/* 头部内容区与页面内容区 .cw 严格同宽同位：
   宽度取自 --cw（页面包裹层可覆盖，如 /report/ 与 /announcements/ 为 1000px），
   缺省 1200px；max-width 与 .cw 保持一致，且不设左右 padding，
   这样头部的 logo / 登录区与下方卡片的左右边缘完全对齐。 */
.xhd-inner{width:var(--cw,1200px);max-width:calc(100% - 24px);margin:0 auto;padding:0;height:64px;display:flex;align-items:center;gap:20px}
.xhd-brand{flex-shrink:0;display:flex;align-items:center;gap:8px;text-decoration:none}
.xhd-brand .xhd-mark{width:36px;height:36px;border-radius:8px;background:var(--xhd);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:18px}
.xhd-brand .xhd-name{font-size:19px;font-weight:800;color:#2b2b2b;letter-spacing:.5px;white-space:nowrap}
.xhd-brand img{max-height:44px;display:block;object-fit:contain}
.xhd-nav{display:flex;align-items:center;gap:2px;flex-shrink:0}
.xhd-nav a{position:relative;font-size:15px;color:#333;text-decoration:none;padding:8px 14px;border-radius:6px;transition:color .15s}
.xhd-nav a:hover{color:var(--xhd)}
.xhd-nav a.on{color:var(--xhd);font-weight:600}
.xhd-nav a.on::after{content:'';position:absolute;left:14px;right:14px;bottom:-1px;height:3px;border-radius:2px;background:var(--xhd)}
.xhd-search{flex:1;max-width:440px;min-width:120px}
.xhd-search form{display:flex;height:40px;border:2px solid var(--xhd);border-radius:20px;overflow:hidden;background:#fff}
.xhd-search input{flex:1;min-width:0;border:none;outline:none;padding:0 16px;font-size:14px;color:#333;background:transparent}
.xhd-search button{flex-shrink:0;border:none;background:var(--xhd);color:#fff;width:56px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:filter .15s}
.xhd-search button:hover{filter:brightness(1.06)}
.xhd-search button svg{width:19px;height:19px}
.xhd-right{margin-left:auto;flex-shrink:0;display:flex;align-items:center;gap:16px}
.xhd-vip{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:#8a5a12;text-decoration:none;background:linear-gradient(90deg,#ffe4a8,#ffcf76);padding:7px 15px;border-radius:16px;transition:filter .15s}
.xhd-vip:hover{filter:brightness(1.04)}
.xhd-link{font-size:14px;color:#555;text-decoration:none;transition:color .15s}
.xhd-link:hover{color:var(--xhd)}
.xhd-auth{display:flex;align-items:center;gap:8px;font-size:14px}
.xhd-auth a{color:#555;text-decoration:none}
.xhd-auth a:hover{color:var(--xhd)}
.xhd-auth .sep{color:#dcdcdc}
.xhd-user{display:flex;align-items:center;gap:8px;text-decoration:none}
.xhd-user .av{width:34px;height:34px;border-radius:50%;overflow:hidden;background:var(--xhd);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}
.xhd-user .av img{width:100%;height:100%;object-fit:cover}
.xhd-user .nm{font-size:14px;color:#333;max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xhd-user:hover .nm{color:var(--xhd)}
@media (max-width:920px){.xhd-nav{display:none}}
@media (max-width:640px){
  .xhd-inner{gap:12px;height:56px;padding:0}   /* 窄屏同样不加 padding，靠 max-width 与 .cw 对齐 */
  .xhd-brand .xhd-name{display:none}
  .xhd-vip,.xhd-link{display:none}
  .xhd-search{max-width:none}
  .xhd-user .nm{display:none}
}
