/* One public header for every page shell. */
.home-skip {
  position: fixed;
  top: -80px;
  left: 16px;
  z-index: 300;
  padding: 10px 16px;
  border-radius: 8px;
  background: #29213e;
  color: #fff;
  text-decoration: none;
}
.home-skip:focus { top: 8px; }
.home-header {
  position: sticky;
  top: 0;
  z-index: 100;
  flex-shrink: 0;
  width: 100%;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: rgba(9,11,17,.82);
  color: #f3f5fb;
  font-family: -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;
  backdrop-filter: blur(20px) saturate(150%);
  -webkit-backdrop-filter: blur(20px) saturate(150%);
}
.home-header, .home-header * { box-sizing: border-box; }
.home-header .home-wrap { width: 100%; max-width: 1220px; margin: 0 auto; padding: 0 16px; }
.home-header .home-nav { display: flex; align-items: center; gap: 12px; min-height: 66px; }
.home-header a { color: inherit; text-decoration: none; }
.home-header button { font: inherit; cursor: pointer; }
.home-header svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.home-header :is(a,button):focus-visible { outline:2px solid #b5a1ff; outline-offset:4px; }
.home-header [hidden] { display:none !important; }
.home-header .home-logo { flex-shrink:0; display:inline-flex; align-items:center; white-space:nowrap; }
.home-header .home-logo img { display:block; width:auto; height:38px; max-width:150px; object-fit:contain; }
.home-header .home-menu { display:flex; align-items:center; justify-content:center; flex:1; min-width:0; gap:clamp(4px,1.5vw,22px); flex-wrap:wrap; padding:8px 0; }
.home-header .home-menu > a { max-width:100%; padding:7px 6px; border-radius:10px; color:#a4abbe; font-size:14px; font-weight:500; overflow-wrap:anywhere; transition:background .18s,color .18s; }
.home-header .home-menu > a:hover { color:#fff; background:rgba(255,255,255,.07); }
.home-header .home-menu > a.is-current { color:#fff; background:linear-gradient(135deg,#ff3b52,#ff7a45); }
.home-header .home-menu-toggle, .home-header .home-menu > .home-mobile-account { display:none; }
.home-header .home-search { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:40px; height:40px; border:1px solid rgba(255,255,255,.08); border-radius:50%; background:rgba(255,255,255,.06); }
.home-header .home-search svg { width:19px; height:19px; }
.home-header .home-search span { display:none; }
.home-header .home-search:hover { border-color:rgba(255,255,255,.14); background:rgba(255,255,255,.1); }
.home-header .home-account { flex-shrink:0; max-width:150px; padding:8px 16px; border-radius:20px; background:linear-gradient(135deg,#ff3b52,#ff7a45); color:#fff; font-size:13.5px; font-weight:700; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
@media(max-width:1024px) {
  .home-header .home-nav { gap:8px; }
  .home-header .home-menu > a { padding:7px 5px; font-size:13px; }
}
@media(max-width:768px) {
  .home-header .home-nav { position:relative; justify-content:space-between; min-height:54px; gap:8px; flex-wrap:wrap; }
  .home-header .home-logo { position:absolute; top:9px; left:50%; transform:translateX(-50%); }
  .home-header .home-logo img { height:30px; max-width:132px; }
  .home-header .home-menu { order:3; flex:0 0 100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:12px 0; }
  .home-enhanced .home-header .home-menu { display:none; position:absolute; top:100%; left:0; right:0; max-height:calc(100dvh - 54px); overflow-y:auto; padding:16px; border-bottom:1px solid rgba(255,255,255,.14); background:#10131e; box-shadow:0 16px 28px -16px #000; }
  .home-enhanced .home-header .home-menu.is-open { display:grid; }
  .home-header .home-menu > a { padding:10px 6px; font-size:14px; text-align:center; white-space:normal; }
  .home-header .home-menu > .home-mobile-account { display:block; grid-column:1/-1; margin-top:4px; padding-top:12px; border-top:1px solid rgba(255,255,255,.08); }
  .home-header .home-menu-toggle { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; min-width:44px; height:48px; margin-left:-8px; padding:4px 8px; border:0; background:none; color:#fff; }
  .home-header .home-menu-toggle span, .home-header .home-search span { display:block; color:#a4abbe; font-size:10px; font-weight:600; line-height:1; }
  .home-header .home-search { flex-direction:column; gap:2px; min-width:44px; height:48px; margin-right:-8px; margin-left:auto; border:0; border-radius:0; background:none; }
  .home-header .home-search svg { width:22px; height:22px; }
  .home-header .home-account { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  .home-header *, .home-skip { transition:none !important; scroll-behavior:auto !important; }
}
