/* ==========================================================================
   Powerman Header CSS (final v10.5 • SVG icon + sticky target fix)
   - 不使用 !important
   - 三列 15/55/30 由模板控制，本文件不分配列宽
   - 语言切换：兼容 .pm-lang / .pm-lang-switch（含无类名 <ul> 回退）
   - Search：按钮 icon-only（SVG mask），抽屉 [hidden]
   - CTA：仅在 .pm-cta 作用域着色，并含结构兜底
   - Sticky：将吸顶对象改为模板片段容器（.wp-block-template-part），含 Admin Bar 兼容
   ========================================================================== */

/* ===== Header 基础容器（不分配列宽） =================================== */
.pm-header-grid{ display:block; margin:0; }

.pm-col-left{  display:flex; align-items:center; justify-content:flex-start; }
.pm-col-mid{   display:flex; align-items:center; justify-content:flex-end; }   /* 中列靠右 */
.pm-col-right{ display:flex; align-items:center; justify-content:center; }    /* 右列居中 */

.pm-right-cluster{
  display:flex; align-items:center; justify-content:flex-end;
  gap:var(--wp--preset--spacing--20);
}

/* ===== 导航：右对齐 + 不换行 ========================================== */
.pm-col-mid nav.wp-block-navigation{
  justify-content:flex-end;
  flex-wrap:nowrap;
}

/* ===== Language Switcher（兼容两套类 + 无类名回退） ==================== */
.pm-header .pm-lang,
.pm-header .pm-lang-switch{ display:inline-block; }

.pm-header .pm-lang details,
.pm-header .pm-lang-switch details{ position:relative; display:inline-block; }

/* 按要求：summary 无圆角 */
.pm-header .pm-lang summary,
.pm-header .pm-lang-switch summary{
  list-style:none; cursor:pointer; user-select:none;
  display:inline-flex; align-items:center; gap:.5em;
  padding:.5em .75em;
  border-radius:0;
  border:1px solid var(--wp--custom--pm--color--border, rgba(0,0,0,.12));
  background:var(--wp--preset--color--background);
  color:var(--wp--preset--color--foreground);
}
.pm-header .pm-lang summary::-webkit-details-marker,
.pm-header .pm-lang-switch summary::-webkit-details-marker{ display:none; }

.pm-header .pm-lang[open] summary,
.pm-header .pm-lang-switch[open] summary{
  box-shadow:var(--wp--custom--pm--shadow--sm, 0 1px 2px rgba(0,0,0,.06));
}

/* 列表层（带类名与无类名 <ul> 均适配） */
.pm-header .pm-lang .pm-lang__list,
.pm-header .pm-lang-switch .pm-lang__list,
.pm-header .pm-lang details > ul,
.pm-header .pm-lang-switch details > ul{
  position:absolute; inset-inline-start:0; inset-block-start:calc(100% + 6px);
  min-inline-size:160px; padding:.5em; margin:0;
  border:1px solid var(--wp--custom--pm--color--border, rgba(0,0,0,.12));
  border-radius:var(--wp--custom--pm--radius--card, 12px);
  background:var(--wp--preset--color--background);
  box-shadow:var(--wp--custom--pm--shadow--sm, 0 1px 2px rgba(0,0,0,.06));
  display:grid; gap:.25em; z-index:1090;
  list-style:none;
}
.pm-header .pm-lang .pm-lang__item,
.pm-header .pm-lang-switch .pm-lang__option,
.pm-header .pm-lang details > ul > li,
.pm-header .pm-lang-switch details > ul > li{ list-style:none; }

.pm-header .pm-lang .pm-lang__link,
.pm-header .pm-lang-switch .pm-lang__link,
.pm-header .pm-lang details > ul a,
.pm-header .pm-lang-switch details > ul a{
  display:flex; align-items:center; gap:.5em;
  padding:.5em .75em;
  border-radius:var(--wp--custom--pm--radius--card, 12px);
  text-decoration:none;
  color:var(--wp--preset--color--foreground);
}
.pm-header .pm-lang .pm-lang__link[aria-current="true"],
.pm-header .pm-lang-switch .pm-lang__link[aria-current="true"],
.pm-header .pm-lang details > ul a[aria-current="true"],
.pm-header .pm-lang-switch details > ul a[aria-current="true"]{
  background:var(--wp--custom--pm--color--muted, var(--wp--preset--color--muted, #fff));
}

/* ===== Search（触发按钮 + 抽屉） ====================================== */
/* 提升层级，避免被语言层遮挡 */
.pm-header .js-search-toggle{ position:relative; z-index:1200; }
.pm-header .pm-lang[open] summary{ position:relative; z-index:1080; }

.pm-header .js-search-toggle .wp-block-button__link,
.pm-header .js-search-toggle .wp-element-button,
.pm-header .pm-search .wp-block-button__link,
.pm-header .pm-search .wp-element-button{
  width:auto; /* 避免整行 100% 覆盖 */
  display:inline-flex; align-items:center; justify-content:center;
  background:transparent; border:none; box-shadow:none;
  color:var(--wp--preset--color--foreground);
  position:relative; text-indent:-9999px; overflow:hidden;
  padding:var(--wp--preset--spacing--20);
}

.pm-header .js-search-toggle .wp-block-button__link::before,
.pm-header .js-search-toggle .wp-element-button::before,
.pm-header .pm-search .wp-block-button__link::before,
.pm-header .pm-search .wp-element-button::before{
  content:"";
  position:absolute; inset-inline-start:50%; inset-block-start:50%;
  transform:translate(-50%,-50%);
  width:1.25em; height:1.25em; /* 允许数值：icon 尺寸 */
  background:currentColor;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="7"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>') center/contain no-repeat;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="7"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>') center/contain no-repeat;
}

/* 焦点可视 */
.pm-header .js-search-toggle .wp-block-button__link:focus-visible,
.pm-header .js-search-toggle .wp-element-button:focus-visible,
.pm-header .pm-search .wp-block-button__link:focus-visible,
.pm-header .pm-search .wp-element-button:focus-visible{
  outline:var(--wp--custom--pm--a11y--focus-ring, 2px solid #1e90ff);
  outline-offset:2px;
}

/* 抽屉容器（push-down） */
#pm-search-panel,
.pm-search-panel{
  margin-block-start:var(--wp--preset--spacing--8);
  padding:0;
}
#pm-search-panel[hidden],
.pm-search-panel[hidden]{ display:none; }

#pm-search-panel .wp-block-search__inside-wrapper,
.pm-search-panel .wp-block-search__inside-wrapper{
  display:flex; align-items:center; gap:.5rem;
  border-radius:var(--wp--custom--pm--radius--pill, var(--wp--preset--radius--pill, 9999px));
  box-shadow:none;
  border:1px solid var(--wp--custom--pm--color--border, rgba(0,0,0,.12));
  padding-inline:var(--wp--preset--spacing--20);
  background:var(--wp--preset--color--background);
}
#pm-search-panel .wp-block-search__input,
.pm-search-panel .wp-block-search__input{
  border:none; outline:none; box-shadow:none; background:transparent;
  min-height:52px; /* 允许数值 */
  font:inherit; color:inherit; flex:1 1 auto;
}
#pm-search-panel .wp-block-search__button,
.pm-search-panel .wp-block-search__button{
  border:none;
  border-radius:var(--wp--custom--pm--radius--pill, var(--wp--preset--radius--pill, 9999px));
  padding:.5rem .75rem;
}

/* ===== CTA（圆角修复：类名与结构双兜底） ============================== */
/* 方案 1：有 .pm-cta 时（优先按作用域处理） */
.pm-header .pm-cta a.wp-element-button,
.pm-header .pm-cta .wp-block-button.is-style-fill .wp-block-button__link{
  display:inline-flex; align-items:center; justify-content:center;
  inline-size:auto; block-size:auto; white-space:nowrap;
  padding-inline:var(--wp--preset--spacing--20);
  padding-block:calc(var(--wp--preset--spacing--20)/2);
  line-height:1.2;
  border-radius:var(--wp--custom--pm--radius--pill, var(--wp--preset--radius--pill, 9999px));
  background-color:var(--wp--preset--color--accent);
  color:var(--wp--preset--color--background);
  border:none;
}
/* 方案 2：未加 .pm-cta（结构兜底：右侧集群最后一个 *非搜索* 按钮组） */
.pm-header .pm-right-cluster .wp-block-buttons:not(.pm-search):last-of-type
  .wp-block-button .wp-block-button__link{
  border-radius:var(--wp--custom--pm--radius--pill, var(--wp--preset--radius--pill, 9999px));
}

/* ===== Sticky（**改为模板片段容器吸顶**） ============================= */
/* Admin Bar 顶距变量（桌面 32px / 窄屏 46px） */
:root{ --pm-header-sticky-top: 0px; }
body.admin-bar{ --pm-header-sticky-top: 32px; }
@media (max-width:782px){
  body.admin-bar{ --pm-header-sticky-top: 46px; }
}

/* 吸顶对象：.wp-site-blocks > .aligncenter.wp-block-template-part */
.wp-site-blocks > .aligncenter.wp-block-template-part{
  position: sticky;
  top: var(--pm-header-sticky-top, 0);
  z-index: 2000;
  background: var(--wp--preset--color--background);
}

/* .pm-header 仅保留视觉与尺寸，不再负责 position:sticky */
.pm-header{
  background-color:var(--wp--preset--color--background);
  min-height:var(--wp--custom--pm--header--height-desktop, 76px); /* 允许数值兜底 */
  transition:box-shadow .2s ease-in-out, background-color .2s ease-in-out;
}
.pm-header.is-stuck{ box-shadow:var(--wp--custom--pm--shadow--sm, 0 1px 2px rgba(0,0,0,.06)); }

/* ===== Mobile（轻量对齐；详细收缩走系统侧） =========================== */
@media (max-width:768px){
  .pm-right-cluster{ justify-content:flex-start; }
  .pm-col-mid nav.wp-block-navigation{ justify-content:flex-start; }
  #pm-search-panel .wp-block-search__inside-wrapper,
  .pm-search-panel .wp-block-search__inside-wrapper{ min-height:48px; } /* 允许数值 */
  .pm-header{ min-height:var(--wp--custom--pm--header--height-mobile, 60px); } /* 允许数值兜底 */
}
