/* ==========================================================================
   AI 套系 · 北斗体系（2026-11-11）
   第一部分：公共小件，全套系加载——星名并列标签 .star-tag（由 ztc_ai_star_tag() 输出）。
   第二部分：北斗总页 /ai/beidou.html 专属（.bd-*）与总览页的北斗段（.ov-beidou）。
   颜色、字体与间距只读 ai-suite.css 的语义变量；不用近黑。
   ========================================================================== */

/* ---------- 公共小件：星名并列标签 ---------- */
.aisuite .star-tag {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 3px 13px 3px 11px;
  border: 1px solid color-mix(in srgb, var(--accent-ink) 40%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 9%, transparent);
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .02em;
  color: var(--fg-2);
  white-space: nowrap;
  vertical-align: middle;
  transition: background-color .25s, border-color .25s, color .25s;
}
.aisuite .star-tag::before {
  content: '';
  flex: none;
  width: 11px;
  height: 11px;
  margin-right: 8px;
  background: var(--accent-ink);
  /* 四芒小星：只作记号，不承载信息 */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 0c.5 3.4 2.6 5.5 6 6-3.4.5-5.5 2.6-6 6-.5-3.4-2.6-5.5-6-6 3.4-.5 5.5-2.6 6-6Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M6 0c.5 3.4 2.6 5.5 6 6-3.4.5-5.5 2.6-6 6-.5-3.4-2.6-5.5-6-6 3.4-.5 5.5-2.6 6-6Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.aisuite .star-tag b { font-family: var(--serif); font-weight: 700; letter-spacing: .04em; color: var(--fg); }
.aisuite .star-tag i { font-style: normal; white-space: pre; opacity: .55; }
.aisuite .star-tag em { font-style: normal; margin-left: 8px; color: var(--accent-ink); transition: transform .3s var(--ease); }
.aisuite a.star-tag:hover { background: color-mix(in srgb, var(--accent) 18%, transparent); border-color: color-mix(in srgb, var(--accent-ink) 70%, transparent); color: var(--fg); }
.aisuite a.star-tag:hover em { transform: translateX(3px); }
/* 名字不在中间断行（手机上放开） */
.aisuite .bd-nb { white-space: nowrap; }
/* 眉题一行里并排放：眉题文字在前，标签在后 */
.aisuite .kicker .star-tag { margin-left: 2px; letter-spacing: .02em; }
/* 定义段、正文旁单独成行时的间距 */
.aisuite .star-line { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 14px; font-size: 13.5px; line-height: 1.7; color: var(--fg-3); }
@media (max-width: 640px) {
  .aisuite .kicker:has(.star-tag) { flex-wrap: wrap; row-gap: 8px; }
}

/* ==========================================================================
   北斗总页 /ai/beidou.html
   ========================================================================== */

/* ---------- 首屏：北斗星图（页面签名） ---------- */
.aisuite .bd-hero .hero-split { align-items: center; }
.aisuite .bd-sky-fig { position: relative; width: 100%; min-width: 0; margin: 0; }
.aisuite .bd-sky { position: relative; width: 100%; aspect-ratio: 520 / 420; min-width: 0; }
.aisuite .bd-sky canvas { position: absolute; inset: -16px; width: calc(100% + 32px); height: calc(100% + 32px); display: block; pointer-events: none; }
/* 脚本不可用时的静态星图：细线加星点；画布就绪后让位 */
.aisuite .bd-sky-base { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; transition: opacity .6s ease; }
.aisuite .bd-sky-base line { stroke: rgba(255, 255, 255, .55); stroke-width: 1; }
.aisuite .bd-sky-dot { position: absolute; width: 5px; height: 5px; margin: -2.5px 0 0 -2.5px; border-radius: 50%; background: rgba(255, 255, 255, .6); transition: opacity .6s ease; }
.aisuite .bd-sky-dot.is-bright { width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; background: #fff; box-shadow: 0 0 14px 3px rgba(176, 232, 255, .8); }
.aisuite .bd-sky.is-live .bd-sky-base, .aisuite .bd-sky.is-live .bd-sky-dot { opacity: 0; }

.aisuite .bd-sky-names { position: absolute; inset: 0; }
.aisuite .bd-star { position: absolute; }
.aisuite .bd-star a { display: grid; justify-items: center; padding: 6px 13px 7px; border-radius: 11px; background: rgba(3, 40, 72, .74); box-shadow: 0 0 0 1px rgba(255, 255, 255, .26); color: #fff; line-height: 1.3; white-space: nowrap; transition: background-color .25s, box-shadow .25s, transform .3s var(--ease); }
.aisuite .bd-star b { font-family: var(--serif); font-size: 19px; font-weight: 700; letter-spacing: .08em; margin-right: -.08em; color: #fff; }
.aisuite .bd-star span:not(.sr-only) { font-size: 12.5px; letter-spacing: .02em; color: rgba(255, 255, 255, .92); }
.aisuite .bd-star a:hover, .aisuite .bd-star a:focus-visible { background: rgba(3, 40, 72, .92); box-shadow: 0 0 0 1px rgba(255, 255, 255, .62), 0 0 26px rgba(150, 225, 255, .45); }
/* 名字相对星位的摆法：避开连线 */
.aisuite .bd-star--tianshu { transform: translate(-50%, calc(-100% - 16px)); }
.aisuite .bd-star--tianquan { transform: translate(calc(-100% - 4px), calc(-100% - 12px)); }
.aisuite .bd-star--tianji { transform: translate(-50%, 16px); }
.aisuite .bd-star--kaiyang { transform: translate(-62%, calc(-100% - 16px)); }
/* 入口：整座星群外那一圈光上的名字，白底，和各页“去向”卡片同一语言 */
.aisuite .bd-star--ring { left: 20.5%; top: 18.5%; transform: translate(-50%, -50%); }
.aisuite .bd-star--ring a { grid-auto-flow: column; align-items: baseline; gap: 7px; padding: 7px 14px 8px; border-radius: 999px; background: #fff; box-shadow: 0 14px 30px -20px rgba(2, 30, 56, .7); color: var(--ztc-text); }
.aisuite .bd-star--ring b { font-size: 17px; color: var(--signal-700); }
.aisuite .bd-star--ring span:not(.sr-only) { font-size: 13.5px; font-weight: 600; color: var(--ztc-text); }
.aisuite .bd-star--ring small { font-family: var(--mono); font-size: 11.5px; letter-spacing: .04em; color: #5e6474; padding-left: 8px; border-left: 1px solid rgba(10, 43, 76, .2); }
.aisuite .bd-star--ring a:hover, .aisuite .bd-star--ring a:focus-visible { background: #fff; box-shadow: 0 18px 36px -18px rgba(2, 30, 56, .85), 0 0 0 1px rgba(255, 255, 255, .8); transform: translateY(-2px); }
.aisuite .bd-sky-fig figcaption { position: absolute; right: 0; bottom: 1%; max-width: 15em; font-size: 12.5px; line-height: 1.7; text-align: right; color: rgba(255, 255, 255, .86); }
.aisuite .bd-sky-fig figcaption b { display: block; font-family: var(--serif); font-size: 15px; font-weight: 600; letter-spacing: .06em; color: #fff; }

/* ---------- 分层架构图 ---------- */
.aisuite .bd-arch { --role-w: 76px; --gap: clamp(12px, 1.6vw, 20px); display: grid; grid-template-columns: minmax(0, 1fr) 68px; gap: var(--gap); align-items: stretch; }
.aisuite .bd-arch-stack { display: grid; min-width: 0; }
.aisuite .bd-tier { display: grid; grid-template-columns: var(--role-w) minmax(0, 1fr); gap: 0 var(--gap); align-items: stretch; }
.aisuite .bd-tier-role { display: flex; align-items: center; gap: 8px; font-family: var(--mono); font-size: 12.5px; letter-spacing: .06em; color: var(--fg-3); }
.aisuite .bd-tier-role::after { content: ''; flex: 1; height: 1px; background: var(--line-2); }
.aisuite .bd-node { position: relative; display: block; min-width: 0; padding: clamp(16px, 1.8vw, 22px) clamp(16px, 2vw, 26px); border: 1px solid var(--line-2); border-radius: 14px; background: #fff; color: var(--fg); transition: border-color .25s, box-shadow .25s, transform .3s var(--ease); }
.aisuite a.bd-node:hover, .aisuite a.bd-node:focus-visible { border-color: var(--signal-500); box-shadow: 0 22px 44px -32px rgba(10, 43, 76, .55); transform: translateY(-2px); }
.aisuite .bd-node h3 { font-family: var(--sans); font-size: 15.5px; font-weight: 600; line-height: 1.4; color: var(--fg); }
.aisuite .bd-node h3 b { font-family: var(--serif); font-size: clamp(20px, 1.8vw, 24px); font-weight: 700; letter-spacing: .06em; }
.aisuite .bd-node h3 i { font-style: normal; white-space: pre; opacity: .5; }
.aisuite .bd-node p { margin-top: 4px; font-size: 14px; line-height: 1.6; font-weight: 600; color: var(--fg); }
.aisuite .bd-node small { display: block; margin-top: 8px; font-size: 13px; line-height: 1.7; color: var(--fg-2); }
.aisuite .bd-node :is(ul, ol) { display: flex; flex-wrap: wrap; gap: 6px 8px; }
.aisuite .bd-node :is(ul, ol) li { padding: 3px 11px; border: 1px solid var(--line-2); border-radius: 999px; font-size: 13px; line-height: 1.6; color: var(--fg-2); white-space: nowrap; }
/* 入口：一小块品牌蓝，表示人从这里进来 */
.aisuite .bd-node--entry { --fg: #fff; --fg-2: rgba(255, 255, 255, .92); --line-2: rgba(255, 255, 255, .44); display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: center; gap: 8px clamp(14px, 2vw, 28px); border-color: transparent; background: var(--blue-static); color-scheme: dark; }
.aisuite .bd-node--entry p { margin: 0; padding-left: clamp(14px, 2vw, 28px); border-left: 1px solid rgba(255, 255, 255, .34); font-weight: 500; color: rgba(255, 255, 255, .92); }
.aisuite .bd-node--entry ul { justify-content: flex-end; }
.aisuite a.bd-node--entry:hover, .aisuite a.bd-node--entry:focus-visible { border-color: transparent; }
/* 中枢：四个动作首尾相接 */
.aisuite .bd-node--hub { display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: center; gap: 8px clamp(14px, 2vw, 28px); border-color: color-mix(in srgb, var(--signal-500) 55%, transparent); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--signal-500) 55%, transparent); }
.aisuite .bd-node--hub h3 b { color: var(--signal-700); }
.aisuite .bd-node--hub p { margin: 0; padding-left: clamp(14px, 2vw, 28px); border-left: 1px solid var(--line-2); font-weight: 500; color: var(--fg-2); }
.aisuite .bd-node--hub ol { justify-content: flex-end; gap: 6px 0; }
.aisuite .bd-node--hub ol li { border-color: color-mix(in srgb, var(--signal-500) 40%, transparent); color: var(--signal-700); background: color-mix(in srgb, var(--signal-500) 6%, #fff); }
.aisuite .bd-node--hub ol li + li { margin-left: 22px; position: relative; }
.aisuite .bd-node--hub ol li + li::before { content: '→'; position: absolute; left: -19px; top: 50%; transform: translateY(-50%); font-size: 13px; color: var(--signal-500); }
/* 底座：三张并列，各带层标签 */
.aisuite .bd-base { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gap); }
.aisuite .bd-base .bd-node { display: flex; flex-direction: column; align-items: flex-start; }
.aisuite .bd-base .bd-node .tag { margin-bottom: 10px; }
.aisuite .bd-base-note { grid-column: 2; margin-top: 10px; font-size: 13px; line-height: 1.7; color: var(--fg-3); text-align: center; }
/* 能力服务与基础：退到背景里 */
.aisuite .bd-node--service { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; background: var(--bg-3); border-color: transparent; }
.aisuite .bd-node--service h3 { font-size: 16px; }
.aisuite .bd-tier--ground { margin-top: var(--gap); }
.aisuite .bd-ground { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px dashed var(--line-2); border-radius: 14px; }
.aisuite .bd-ground li { padding: 14px clamp(14px, 2vw, 26px); }
.aisuite .bd-ground li + li { border-left: 1px dashed var(--line-2); }
.aisuite .bd-ground b { display: block; font-size: 14.5px; font-weight: 600; color: var(--fg); }
.aisuite .bd-ground span { display: block; margin-top: 2px; font-size: 13px; line-height: 1.6; color: var(--fg-2); }
/* 层与层之间的调用关系 */
.aisuite .bd-arch-flow { display: flex; align-items: center; justify-content: center; gap: 12px; height: 40px; margin-left: calc(var(--role-w) + var(--gap)); font-family: var(--mono); font-size: 12.5px; letter-spacing: .03em; color: var(--fg-3); }
.aisuite .bd-arch-flow::before { content: ''; width: 9px; height: 26px; background: linear-gradient(var(--signal-500), var(--signal-500)) center top / 1px 22px no-repeat, conic-gradient(from 135deg at 50% 100%, var(--signal-500) 90deg, transparent 0) center bottom / 9px 5px no-repeat; }
.aisuite .bd-arch-flow span { color: var(--fg-3); }
/* 贯穿各层：权限 · 人确认 · 留痕 */
.aisuite .bd-arch-guard { display: grid; grid-template-rows: 1fr auto 1fr; justify-items: center; align-items: center; gap: 14px; padding: 22px 0; border: 1px dashed color-mix(in srgb, var(--human-700) 38%, transparent); border-radius: 14px; background: color-mix(in srgb, var(--human-500) 7%, #fff); transition: border-color .25s, background-color .25s; }
.aisuite .bd-arch-guard span { writing-mode: vertical-rl; font-size: 14px; font-weight: 600; letter-spacing: .5em; color: var(--fg); }
.aisuite .bd-arch-guard span:first-child { align-self: start; padding-top: 6px; }
.aisuite .bd-arch-guard span:last-child { align-self: end; padding-bottom: 0; }
.aisuite .bd-arch-guard .is-human { padding: 14px 6px 8px; border-radius: 999px; border: 1px solid color-mix(in srgb, var(--human-700) 55%, transparent); background: #fff; color: var(--human-700); }
.aisuite .bd-arch-guard:hover, .aisuite .bd-arch-guard:focus-visible { border-color: var(--human-700); background: color-mix(in srgb, var(--human-500) 12%, #fff); }

/* ---------- 北斗 · AI 工作台 ---------- */
.aisuite .bd-bench { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(24px, 3.4vw, 56px); align-items: start; }
.aisuite .bd-bench-points li { padding-block: 18px; border-bottom: 1px solid var(--line); }
.aisuite .bd-bench-points li:first-child { border-top: 1px solid var(--line-2); }
.aisuite .bd-bench-points .mono { font-size: 12.5px; color: var(--accent-ink); }
.aisuite .bd-bench-points h3 { margin: 4px 0 4px; font-family: var(--serif); font-size: clamp(18px, 1.5vw, 20px); line-height: 1.4; }
.aisuite .bd-bench-points p { font-size: 14.5px; line-height: 1.8; }
.aisuite .bd-bench-points .is-human .mono { color: var(--human-ink); }
.aisuite .bd-shot { margin: 0; box-shadow: 0 30px 70px -48px rgba(10, 43, 76, .55); }
.aisuite .bd-shot img { width: 100%; height: auto; background: #f3f7fc; }

/* ---------- 名字与职责：五张卡 ---------- */
.aisuite .bd-cards { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 20px); }
.aisuite .bd-card { grid-column: span 2; display: flex; flex-direction: column; align-items: flex-start; padding: clamp(22px, 2.6vw, 34px); border: 1px solid var(--line); border-radius: 14px; background: #fff; color: var(--fg); }
.aisuite .bd-card--entry, .aisuite .bd-card--hub { grid-column: span 3; }
.aisuite .bd-card--entry { background: var(--bg); border-color: transparent; }
.aisuite .bd-card--hub { border-color: color-mix(in srgb, var(--signal-500) 55%, transparent); }
.aisuite .bd-card-role { font-size: 12.5px; letter-spacing: .04em; color: var(--accent-ink); }
.aisuite .bd-card h3 { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; margin: 8px 0 10px; font-family: var(--sans); font-size: 16px; font-weight: 600; color: var(--fg); }
.aisuite .bd-card h3 i { font-style: normal; opacity: .5; }
.aisuite .bd-card h3 b { font-family: var(--serif); font-size: clamp(26px, 2.4vw, 32px); font-weight: 700; line-height: 1.2; letter-spacing: .06em; }
.aisuite .bd-card--hub h3 b { color: var(--signal-700); }
.aisuite .bd-card > p:not(.bd-card-role) { font-size: 15px; line-height: 1.75; color: var(--fg); }
.aisuite .bd-card ul { align-self: stretch; margin: 16px 0 10px; border-top: 1px solid var(--line); }
.aisuite .bd-card li { position: relative; padding: 9px 0 9px 16px; border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.65; color: var(--fg-2); }
.aisuite .bd-card li::before { content: ''; position: absolute; left: 0; top: 19px; width: 5px; height: 5px; border-radius: 50%; background: var(--accent); }
.aisuite .bd-card .link { margin-top: auto; }

/* ---------- 一句需求，怎样走完 ---------- */
.aisuite .bd-run-ask { border-top: 0; padding-top: 0; padding-bottom: 0; }
.aisuite .bd-run-ask blockquote { margin-bottom: 0; }
.aisuite .bd-run .mono { color: var(--accent-ink); }
.aisuite .bd-run .is-human .mono { color: var(--human-ink); }
.aisuite .bd-run-base ul { margin-top: 2px; }
.aisuite .bd-run-base ul li { padding: 5px 0; border-left: 0; font-size: 13.5px; line-height: 1.65; color: var(--fg-2); }
.aisuite .bd-run-base ul li + li { padding-left: 0; border-left: 0; border-top: 1px dashed var(--line); }
.aisuite .bd-run-base ul li::before { content: none; }
.aisuite .bd-run-base ul b { display: block; font-family: var(--serif); font-size: 14.5px; font-weight: 700; letter-spacing: .02em; color: var(--fg); }

/* ---------- 两种用法 ---------- */
.aisuite .bd-ways { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(14px, 1.8vw, 24px); }
.aisuite .bd-ways article { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(24px, 3vw, 42px); border: 1px solid var(--line-2); border-radius: 14px; background: var(--bg-2); }
.aisuite .bd-ways .mono { font-size: 12.5px; color: var(--accent-ink); }
.aisuite .bd-ways h3 { margin: 8px 0 10px; font-size: clamp(21px, 2vw, 26px); line-height: 1.3; }
.aisuite .bd-ways article > p:not(.mono):not(.small) { font-size: 15px; line-height: 1.8; }
.aisuite .bd-ways ol { align-self: stretch; margin: 18px 0 14px; border-top: 1px solid var(--line-2); }
.aisuite .bd-ways li { display: grid; grid-template-columns: 7.5em minmax(0, 1fr); gap: 4px 16px; padding-block: 11px; border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.7; color: var(--fg-2); }
.aisuite .bd-ways li b { font-weight: 600; color: var(--fg); }
.aisuite .bd-ways .small { margin-bottom: 6px; }
.aisuite .bd-ways .link { margin-top: auto; }

/* ---------- 治理与可信 ---------- */
.aisuite #governance .head .link { display: flex; width: fit-content; }
.aisuite .bd-row-human > .no { color: var(--human-ink); }
.aisuite .bd-row-human h3 { color: var(--human-ink); }

/* ==========================================================================
   总览页 /ztccloudai.html 的北斗段，与三层页面里的并行名称
   ========================================================================== */
.aisuite .ov-beidou-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 5vw, 88px); align-items: center; }
.aisuite .ov-beidou-lead h2 { margin-bottom: 18px; }
.aisuite .ov-beidou-lead > p:not(.kicker) { font-size: 15px; line-height: 1.85; }
.aisuite .ov-beidou-lead .btn { margin-top: 24px; }
.aisuite .bd-mini { --gap: clamp(10px, 1.2vw, 14px); display: grid; min-width: 0; }
.aisuite .bd-mini .bd-node { padding: 15px clamp(14px, 1.6vw, 20px); }
.aisuite .bd-mini .bd-node > small { margin: 0; font-family: var(--mono); font-size: 12px; letter-spacing: .08em; color: var(--fg-2); }
.aisuite .bd-mini .bd-node--hub > small { color: var(--signal-700); }
.aisuite .bd-mini .bd-node--entry p, .aisuite .bd-mini .bd-node--hub p { font-size: 13.5px; }
.aisuite .bd-mini .bd-base .bd-node p { font-size: 13.5px; font-weight: 500; color: var(--fg-2); }
.aisuite .bd-mini .bd-base .bd-node .tag { margin-bottom: 8px; }
.aisuite .bd-mini .bd-arch-flow { height: 24px; margin-left: 0; }
.aisuite .bd-mini .bd-arch-flow::before { height: 18px; background-size: 1px 14px, 9px 5px; }
.aisuite .tile .star-tag { margin-top: -4px; }
.aisuite .an-apps-note { margin-top: 14px; }
.aisuite .ov-platform-lead p.small { margin-top: 12px; }

/* ==========================================================================
   响应式
   ========================================================================== */
@media (max-width: 1023px) {
  .aisuite .ov-beidou-grid { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-sky-fig { width: 100%; max-width: 520px; justify-self: center; }
  .aisuite .bd-bench { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-bench-points { order: 2; }
  .aisuite .bd-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .aisuite .bd-card, .aisuite .bd-card--entry, .aisuite .bd-card--hub { grid-column: span 1; }
  .aisuite .bd-card--entry { grid-column: 1 / -1; }
  .aisuite .bd-node--entry, .aisuite .bd-node--hub { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-node--entry p, .aisuite .bd-node--hub p { padding-left: 0; border-left: 0; }
  .aisuite .bd-node--entry ul, .aisuite .bd-node--hub ol { justify-content: flex-start; margin-top: 4px; }
}
@media (max-width: 760px) {
  .aisuite .bd-arch { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-tier { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .aisuite .bd-arch-flow { margin-left: 0; }
  .aisuite .bd-base, .aisuite .bd-ground { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-base-note { grid-column: 1; text-align: left; }
  .aisuite .bd-ground li + li { border-left: 0; border-top: 1px dashed var(--line-2); }
  .aisuite .bd-arch-guard { grid-template-rows: none; grid-template-columns: 1fr auto 1fr; padding: 12px 18px; }
  .aisuite .bd-arch-guard span { writing-mode: horizontal-tb; letter-spacing: .3em; }
  .aisuite .bd-arch-guard span:first-child { align-self: center; justify-self: start; padding: 0; }
  .aisuite .bd-arch-guard span:last-child { align-self: center; justify-self: end; }
  .aisuite .bd-arch-guard .is-human { padding: 4px 8px 4px 14px; }
  .aisuite .bd-node--hub ol li + li { margin-left: 18px; }
  .aisuite .bd-node--hub ol li + li::before { left: -16px; }
  .aisuite .bd-ways { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-cards { grid-template-columns: minmax(0, 1fr); }
  .aisuite .bd-biz { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 4px; }
  .aisuite .bd-biz li, .aisuite .bd-biz li + li { padding: 12px 12px 8px 0; border-left: 0; border-top: 1px solid var(--line); }
}
@media (max-width: 640px) {
  .aisuite .bd-sky-fig { margin-top: 6px; }
  .aisuite .bd-sky-fig figcaption { position: static; max-width: none; margin-top: 10px; text-align: center; }
  .aisuite .bd-sky-fig figcaption b { display: block; }
  .aisuite .bd-nb { white-space: normal; }
  .aisuite .bd-star a { padding: 4px 9px 5px; border-radius: 9px; }
  .aisuite .bd-star b { font-size: 16px; }
  .aisuite .bd-star span:not(.sr-only) { font-size: 11.5px; }
  .aisuite .bd-star--ring a { padding: 5px 11px 6px; gap: 5px; }
  .aisuite .bd-star--ring b { font-size: 15px; }
  .aisuite .bd-star--ring span:not(.sr-only) { font-size: 12.5px; }
  .aisuite .bd-star--ring small { display: none; }
  .aisuite .bd-ways li { grid-template-columns: minmax(0, 1fr); }
}
