/* 会议室产品不显示焦点环；变量会继承进组件的 Shadow DOM，键盘行为仍由组件处理。
   用透明阴影而不是 none，避免按钮把焦点环与原有阴影拼接时整条 box-shadow 失效。 */
:root,
:root[data-theme] {
  --cx-focus: transparent;
  --cx-focus-ring: 0 0 0 0 transparent;
  --cx-focus-ring-inset: inset 0 0 0 0 transparent;
  --cx-focus-glow: 0 0 0 0 transparent;
  --wa-focus-ring-width: 0px;
  --wa-focus-ring-offset: 0px;
}

/* 验证码的"当前格"是组件用焦点色画的一圈边框（wa-otp-input 的 .segment--active）；
   焦点色被上面抹成透明后，整格会消失、六位看着只有五格。只把当前格的边框色还回去，
   焦点环本身仍然不显示。 */
wa-otp-input { --wa-color-focus: var(--cx-ink); }

/* 原生控件的浏览器描边，以及日期条选中格单独绘制的焦点环。 */
:focus { outline: none; }
cx-week-strip::part(day):focus-visible { box-shadow: none; }

/* 聚焦时也保留普通细边框，错误提示的红边仍由组件处理。 */
:is(wa-input, wa-select, wa-textarea, wa-number-input):not(.cx-invalid):not([aria-invalid="true"]):focus-within::part(base),
wa-select:not(.cx-invalid):not([aria-invalid="true"]):focus-within::part(combobox),
cx-search:focus-within::part(box),
cx-combobox:not([error]):focus-within::part(control) {
  border-color: var(--cx-line);
}
/* 日期组件还会在内部标记解析错误；只换聚焦边色变量，保留它自己的错误优先级。 */
cx-date-picker:focus-within::part(control) { --cx-ink: var(--cx-line); }
