/* ==========================================================================
   Powerman Lang Switch — Dial-Ready (merged refinements)
   作用域：头部语言切换器 .pm-header .pm-lang / .pm-lang-switch
   拨盘：color/radius/shadow/space/focus 全部使用 --wp--custom--pm--*
   ========================================================================== */

/* ========== 基础容器 ===================================================== */
.pm-header .pm-lang,
.pm-header .pm-lang-switch{
  position: relative;
  display: inline-block;
  color: var(--wp--custom--pm--color--fg);
}

/* 结构：details/summary 触发器 */
.pm-header .pm-lang details,
.pm-header .pm-lang-switch details{
  position: relative;
  display: inline-block;
  min-inline-size: max-content; /* 微抛光①：触发器不压缩，避免抖动 */
}

/* 触发器（按钮态） */
.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: .25em .5em; line-height: 1.1;
  border-radius: var(--wp--custom--pm--radius--card);
  border: 1px solid var(--wp--custom--pm--color--border);
  background: var(--wp--custom--pm--color--bg);
  color: var(--wp--custom--pm--color--fg);
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.pm-header .pm-lang summary::-webkit-details-marker,
.pm-header .pm-lang-switch summary::-webkit-details-marker{ display:none; }

.pm-header .pm-lang summary:hover,
.pm-header .pm-lang-switch summary:hover{
  background: color-mix(in srgb, var(--wp--custom--pm--color--brand) 8%, var(--wp--custom--pm--color--bg));
}

/* 焦点可达性（统一拨盘焦点环） */
.pm-header .pm-lang summary:focus-visible,
.pm-header .pm-lang-switch summary:focus-visible{
  outline: var(--wp--custom--pm--focus--ring, var(--wp--custom--pm--a11y--focus-ring));
  outline-offset: 2px;
}

/* ========== 下拉面板 ===================================================== */
.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);
  z-index: var(--pm-z-lang);
  display: grid; gap: .25rem;
  padding: .25rem;
  margin: 0;
  list-style: none;
  background: var(--wp--custom--pm--color--bg);
  border: 1px solid var(--wp--custom--pm--color--border);
  border-radius: calc(var(--wp--custom--pm--radius--card) + 2px);
  box-shadow: var(--wp--custom--pm--shadow--level);
  min-inline-size: 100%; /* 微抛光①：面板最小宽度对齐触发器 */
  white-space: nowrap;
}

/* 面板项与链接 */
.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);
  text-decoration: none;
  color: var(--wp--custom--pm--color--fg);
  transition: background-color .15s ease, color .15s ease;
}
.pm-header .pm-lang .pm-lang__link:hover,
.pm-header .pm-lang-switch .pm-lang__link:hover,
.pm-header .pm-lang details > ul a:hover,
.pm-header .pm-lang-switch details > ul a:hover{
  background: color-mix(in srgb, var(--wp--custom--pm--color--brand) 10%, transparent);
}

.pm-header .pm-lang .pm-lang__link:focus-visible,
.pm-header .pm-lang-switch .pm-lang__link:focus-visible,
.pm-header .pm-lang details > ul a:focus-visible,
.pm-header .pm-lang-switch details > ul a:focus-visible{
  outline: var(--wp--custom--pm--focus--ring, var(--wp--custom--pm--a11y--focus-ring));
  outline-offset: 2px;
}

/* ========== 打开态修饰 =================================================== */
.pm-header .pm-lang[open] summary,
.pm-header .pm-lang-switch[open] summary{
  background: color-mix(in srgb, var(--wp--custom--pm--color--brand) 6%, var(--wp--custom--pm--color--bg));
  border-color: var(--wp--custom--pm--color--border);
  position: relative; z-index: var(--pm-z-lang); /* 与 header 层级协调 */
}

/* ========== 语言特异的微调（中文/英文版式差异） ========================= */
html[lang^="en"] .pm-header .pm-lang summary,
html[lang^="en"] .pm-header .pm-lang-switch summary{
  letter-spacing: 0;
}
html[lang^="zh"] .pm-header .pm-lang summary,
html[lang^="zh"] .pm-header .pm-lang-switch summary{
  letter-spacing: .02em;
  font-variant-east-asian: proportional-width;
}

/* 面板条目：中文略放大点击热区（更友好） */
html[lang^="zh"] .pm-header .pm-lang .pm-lang__link,
html[lang^="zh"] .pm-header .pm-lang-switch .pm-lang__link,
html[lang^="zh"] .pm-header .pm-lang details > ul a,
html[lang^="zh"] .pm-header .pm-lang-switch details > ul a{
  padding-block: .6em;
}

/* ========== 窄屏贴边对齐（微抛光②） =================================== */
@media (max-width: 480px){
  .pm-header .pm-lang .pm-lang__list,
  .pm-header .pm-lang-switch .pm-lang__list{
    inset-inline: auto 0;      /* 右对齐，避免窄屏溢出 */
    transform-origin: top right;
  }
}

/* ========== 降噪：减少动画/系统偏好 ==================================== */
@media (prefers-reduced-motion: reduce){
  .pm-header .pm-lang *,
  .pm-header .pm-lang-switch *{
    transition: none;
  }
}
