/* ======================================================================
   aw-subpage-0906.css · 0906 lill
   voice-api.html / avatar-api.html 两个子页共用。
   版式标准照 option6（option-c2-palmer-option6.css）：紫地 → 居中标题区裸放
   → .o9-tile 毛玻璃块（透白 .22 + blur 24 + 波浪纹）→ 白 .dv-plate 卡。
   这里只放三件：
   ① nav 下拉（首页写在页内 <style> 里的那段，原样搬）
   ② 全站禁等宽：把 --dv-mono / --p3-mono 顶成站点字体（数字也一样）
   ③ 子页专有：页头 hero、回首页/进 docs 出口、avatar 页六个图版（.av-*）
   没有渐变、没有阴影、卡片不加外描边（虚线除外）、没有红点、没有破折号。
   ====================================================================== */

/* ---------------------------------------------------------------- ① nav 下拉 */
.nc1-dd { --dd-p: clamp(8px, 0.8vw, 14px); position: relative; display: flex; }
.nc1-dd-trigger {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 0; border: 0; background: none; cursor: pointer;
  color: inherit; font: inherit; line-height: 1;
  opacity: .82; transition: opacity .18s ease;
}
.nc1-dd-trigger:hover,
.nc1-dd.is-open .nc1-dd-trigger { opacity: 1; }
.nc1-dd-trigger:focus-visible { outline: 2px solid currentColor; outline-offset: 6px; border-radius: 4px; }
.nc1-nav:not(.is-stuck) .nc1-dd-trigger { color: #fff; opacity: .82; }
.nc1-nav:not(.is-stuck) .nc1-dd-trigger:hover,
.nc1-nav:not(.is-stuck) .nc1-dd.is-open .nc1-dd-trigger { opacity: 1; }
.nc1-dd-caret { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; transition: transform .18s ease; }
.nc1-dd.is-open .nc1-dd-caret { transform: rotate(180deg); }
.nc1-dd-panel {
  position: absolute; left: 50%; top: 100%;
  translate: -50% 0; padding-top: 14px;
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity .18s ease, transform .18s cubic-bezier(.22,1,.36,1), visibility .18s;
  z-index: 60;
}
.nc1-dd.is-open .nc1-dd-panel { opacity: 1; visibility: visible; transform: translateY(0); }
.nc1-dd-card {
  box-sizing: border-box; min-width: 300px; padding: 12px;
  border-radius: 18px; background: #f5f5f7; color: #111;
}
.nc1-dd-label {
  margin: 6px 8px 8px; color: #8b8b93;
  font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.nc1-dd-item {
  display: block; padding: 10px 12px; border-radius: 12px;
  text-decoration: none; color: inherit;
  transition: background .16s ease;
}
.nc1-dd-item + .nc1-dd-item { margin-top: 2px; }
.nc1-dd-item b { display: block; font-size: 15px; font-weight: 700; letter-spacing: -.01em; }
.nc1-dd-item i { display: block; margin-top: 2px; font-style: normal; font-size: 12.5px; color: #7a7a83; }
.nc1-dd-item:hover { background: #fff; }
.nc1-dd-item:hover i { color: #55555d; }
.nc1-dd-item:focus-visible { outline: 2px solid #111; outline-offset: -2px; }
.nc1-dd-item + .nc1-dd-label { padding-top: 1.1em; }
@media (max-width: 767px) { .nc1-dd-panel { display: none; } }
body.nc1 .nc1-nav-links,
body.nc1 .nc1-nav-links a,
body.nc1 .nc1-dd-trigger { font-size: clamp(13px, 1.2vw, 19px); }

/* ------------------------------------------------- ② 全站禁等宽字（含数字） */
body.aw-sub,
body.aw-sub .dv,
body.aw-sub .dv-board,
body.aw-sub .nf,
body.aw-sub .nf-faq,
body.aw-sub .p3-foot {
  --dv-mono: "Proxima Nova", "proxima-nova", "Inter", -apple-system, sans-serif;
  --p3-mono: "Proxima Nova", "proxima-nova", "Inter", -apple-system, sans-serif;
  font-variant-numeric: normal;
}
body.aw-sub .dv-mono,
body.aw-sub .dk-lab,
body.aw-sub .dk-name,
body.aw-sub .rt-lab,
body.aw-sub .rt-mini,
body.aw-sub .rt-route,
body.aw-sub .dv-spec-axis,
body.aw-sub .dv-spec-lab,
body.aw-sub .dv-line-tag,
body.aw-sub .dv-marker,
body.aw-sub code, body.aw-sub pre, body.aw-sub kbd, body.aw-sub samp {
  font-family: "Proxima Nova", "proxima-nova", "Inter", -apple-system, sans-serif;
}

/* --------------------------------------------------------- ③ 子页骨架 / hero */
body.aw-sub { background: #7180ff; }
/* 首页把 .dv.nf 上提 100vh 压在舞台上（option6 css 2328 行）；子页没有舞台，收回来 */
body.aw-sub .dv.nf { margin-top: 0; }
/* 子页没有 hero track / bridge，nav 全程压在紫地上 */
body.aw-sub .nc1-nav { position: fixed; top: 0; left: 0; right: 0; }
body.aw-sub .nc1-nav.is-stuck { background: rgba(113,128,255,.86); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }

.sub-hero { position: relative; z-index: 1; padding: clamp(140px,20vh,232px) 24px clamp(24px,5vh,56px); }
.sub-hero-in { display: grid; justify-items: center; gap: 20px; max-width: 980px; margin: 0 auto; text-align: center; }
.sub-hero .dv-marker { margin: 0; }
.sub-hero h1 {
  margin: 0; color: #fff;
  font-family: var(--dv-font, "Proxima Nova", "proxima-nova", Inter, sans-serif);
  font-size: clamp(52px, 8.4vw, 132px); line-height: .94; font-weight: 700; letter-spacing: -.045em;
  text-wrap: balance;
}
/* Character API 的 hero 是两句话，不是一个词：字号收一档，宽度放到 18ch */
.aw-sub-avatar .sub-hero h1 { max-width: 18ch; font-size: clamp(38px, 5vw, 76px); line-height: 1.02; letter-spacing: -.035em; }
.aw-sub-avatar .sub-hero-sub { max-width: 46ch; }
.sub-hero-sub {
  margin: 4px 0 0; max-width: 34ch; color: rgba(255,255,255,.85);
  font-size: clamp(17px, 1.5vw, 22px); line-height: 1.45; font-weight: 500;
}
.sub-hero-cta { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 16px; margin-top: 12px; }
.sub-hero-rule { width: 100%; max-width: 1265px; height: 0; margin: clamp(28px,5vh,56px) auto 0; border-top: 1px dashed rgba(255,255,255,.3); }

/* 入场：跟 option6 的 data-nf 同一支缓动，逐项升起 */
.sub-hero [data-nf] { opacity: 0; transform: translateY(26px); transition: opacity .62s ease var(--nf-d,0ms), transform .82s cubic-bezier(.22,1,.36,1) var(--nf-d,0ms); }
.sub-hero [data-nf].is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .sub-hero [data-nf] { opacity: 1; transform: none; transition: none; } }

@media (max-width: 767px) {
  .sub-hero { padding: clamp(104px,16vh,140px) 16px 24px; }
  .sub-hero-in { justify-items: start; text-align: left; }
  .sub-hero-cta { justify-content: flex-start; }
  .sub-hero h1 { font-size: clamp(40px,11vw,60px); }
}

/* 页尾出口条：回首页 + 进 docs，一直放在 CTA 段里 */
.sub-exit { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 20px; }

/* 子页收尾大标题：句首大写，不做全大写（首页那两处 o6-caps 不动） */
.aw-sub .o6 .dv-board .dv-h2.sub-cta-h {
  margin: 0; max-width: 18ch; text-align: center; text-transform: none;
  font-size: clamp(34px, 4.4vw, 64px); line-height: 1.04; font-weight: 700; letter-spacing: -.035em;
}
.aw-sub .o6 .dv-board .dv-h2.sub-cta-h .dv-l { display: block; }
/* 边界图上的叉：跟虚线同一族，但实线，一眼看出是「被挡住」不是「还有一段路」 */
.av-bd-x { fill: none; stroke: rgba(36,28,78,.28); stroke-width: 2; stroke-linecap: round; }

/* 窄屏下 tags 那颗说话泡泡会顶出白卡 3px（首页同款，这里顺手收住） */
.aw-sub .tg-bubble { max-width: 100%; box-sizing: border-box; }
