/*!
 * bv-spec — 商品规格描述共用样式
 * 由 product_desc 插件维护。全站只引用一次（web/baiduvps/common/header.html）。
 *
 * ⚠ 不要把这份 CSS 复制进商品描述里 —— 商品描述只允许出现语义骨架：
 *   <ul class=bv-spec><li class=i-cpu><b>CPU</b>2H E5-2697V4</li></ul>
 *   <p class=bv-note>禁止：...</p>
 *
 * 标签刻意压到每行 2 个（li + b），值用裸文本：description 是转义入库的，
 * 每个尖括号会膨胀成 4 字符，标签数就是长度大头。图标挂在 li 的 class 上。
 *
 * 图标用 CSS mask + currentColor，不依赖 Font Awesome，也不请求任何外部资源。
 * 新增图标：在下面 ICONS 段落追加一条 .bv-spec .i-xxx{--bvi:url("...")}，
 * 并在 lib/Spec.php 的 $ICONS 里登记同名 key（两处都要，否则后台选不到）。
 */

/* ── 布局 ────────────────────────────────────────────── */
.bv-spec {
  list-style: none;
  margin: 0;
  padding: 0;
}

.bv-spec li {
  display: flex;
  align-items: center;
  padding: 2px 0;
  line-height: 1.6;
}

.bv-spec li > b {
  display: inline-flex;
  align-items: center;
  flex: none;
  min-width: 84px;
  margin-right: 10px;
  font-weight: 400;
}

/* 图标位。没有 class 的行不占位，键名直接顶格。 */
.bv-spec li[class] > b::before {
  content: "";
  flex: none;
  width: 16px;
  height: 16px;
  margin-right: 7px;
  background-color: currentColor;
  opacity: .85;
  -webkit-mask: var(--bvi) center / contain no-repeat;
          mask: var(--bvi) center / contain no-repeat;
}

/* 底部提示（原来那句红色「禁止：...」）。 */
.bv-spec + .bv-note,
.bv-note {
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.5;
  color: #d9534f;
}

.bv-note.bv-note-muted { color: #888; }
.bv-note.bv-note-info  { color: #337ab7; }

/* 窄屏：键名不再固定宽度，避免长值被挤成两行。 */
@media (max-width: 480px) {
  .bv-spec li > b { min-width: 0; }
}

/* ── ICONS ───────────────────────────────────────────────
 * 24x24 viewBox，纯 fill 路径。mask 只取 alpha，路径颜色无关紧要。
 */

/* 处理器核心数 */
.bv-spec .i-cpu{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 2h1.5v2h3V2H15v2h1a4 4 0 0 1 4 4v1h2v1.5h-2v3h2V15h-2v1a4 4 0 0 1-4 4h-1v2h-1.5v-2h-3v2H9v-2H8a4 4 0 0 1-4-4v-1H2v-1.5h2v-3H2V9h2V8a4 4 0 0 1 4-4h1V2zm-1 3.5A2.5 2.5 0 0 0 5.5 8v8A2.5 2.5 0 0 0 8 18.5h8a2.5 2.5 0 0 0 2.5-2.5V8A2.5 2.5 0 0 0 16 5.5H8zM9 9h6v6H9V9z'/%3E%3C/svg%3E")}

/* CPU 型号 / 芯片 */
.bv-spec .i-chip{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6zm2 0v12h12V6H6zm2 2h8v3H8V8zm0 5h5v3H8v-3z'/%3E%3C/svg%3E")}

/* 内存 */
.bv-spec .i-ram{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 7h20v7a2 2 0 0 1-2 2h-1v3h-2v-3h-2v3h-2v-3h-2v3H9v-3H7v3H5v-3H4a2 2 0 0 1-2-2V7zm2 2v5h16V9H4zm2 1h2v3H6v-3zm3.5 0h2v3h-2v-3zm3.5 0h2v3h-2v-3zm3.5 0h2v3h-2v-3z'/%3E%3C/svg%3E")}

/* 系统盘 / 硬盘 */
.bv-spec .i-disk{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c4.42 0 8 1.34 8 3v14c0 1.66-3.58 3-8 3s-8-1.34-8-3V5c0-1.66 3.58-3 8-3zm0 2C8.13 4 6 5.06 6 5s2.13 1 6 1 6-1.06 6-1-2.13-1-6-1zm6 4.24C16.53 8.71 14.4 9 12 9s-4.53-.29-6-.76V19c.24.35 2.4 1 6 1s5.76-.65 6-1V8.24zM16 17a1 1 0 1 1 0-2 1 1 0 0 1 0 2z'/%3E%3C/svg%3E")}

/* 数据盘 */
.bv-spec .i-disk-data{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c4.42 0 8 1.12 8 2.5S16.42 7 12 7 4 5.88 4 4.5 7.58 2 12 2zm8 5.2v3.3c0 1.38-3.58 2.5-8 2.5s-8-1.12-8-2.5V7.2C5.5 8.3 8.5 8.8 12 8.8s6.5-.5 8-1.6zm0 6v3.3c0 1.38-3.58 2.5-8 2.5s-8-1.12-8-2.5v-3.3c1.5 1.1 4.5 1.6 8 1.6s6.5-.5 8-1.6z'/%3E%3C/svg%3E")}

/* 上行带宽 */
.bv-spec .i-up{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3l7 7-1.4 1.4L13 6.83V21h-2V6.83L6.4 11.4 5 10l7-7z'/%3E%3C/svg%3E")}

/* 下行带宽 */
.bv-spec .i-down{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21l-7-7 1.4-1.4L11 17.17V3h2v14.17l4.6-4.57L19 14l-7 7z'/%3E%3C/svg%3E")}

/* 带宽（双向） */
.bv-spec .i-bandwidth{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2l4 4H8v12h3l-4 4-4-4h3V6H3l4-4zm10 0l4 4h-3v12h3l-4 4-4-4h3V6h-3l4-4z'/%3E%3C/svg%3E")}

/* 流量 */
.bv-spec .i-traffic{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6v4h4v4h2v6h-6v-4h-2v4H7v-4H5V7h4V3zm2 2v4H7v4h2v4h2v-4h2v4h2v-4h2V9h-4V5h-2z'/%3E%3C/svg%3E")}

/* IPv4 / 网络地址 */
.bv-spec .i-ipv4{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 2c-.9 0-2.05 1.2-2.7 3.3.85.13 1.76.2 2.7.2s1.85-.07 2.7-.2C14.05 5.2 12.9 4 12 4zM7.1 5.4A8.03 8.03 0 0 0 4.3 9h2.4c.14-1.3.4-2.5.75-3.5-.12-.03-.24-.07-.35-.1zm9.8 0c-.11.03-.23.07-.35.1.35 1 .61 2.2.75 3.5h2.4a8.03 8.03 0 0 0-2.8-3.6zM8.7 9h6.6c-.15-1.2-.4-2.28-.72-3.13A17 17 0 0 1 12 6c-.9 0-1.78-.05-2.58-.13-.32.85-.57 1.93-.72 3.13zM4 11a8 8 0 0 0 .3 2h2.4a22 22 0 0 1 0-2H4zm4.6 0a20 20 0 0 0 0 2h6.8a20 20 0 0 0 0-2H8.6zm8.7 0a22 22 0 0 1 0 2h2.4a8 8 0 0 0 0-2h-2.4zM4.3 15a8.03 8.03 0 0 0 2.8 3.6c-.35-1-.61-2.2-.75-3.6H4.3zm4.4 0c.15 1.2.4 2.28.72 3.13.8.08 1.68.13 2.58.13s1.78-.05 2.58-.13c.32-.85.57-1.93.72-3.13H8.7zm8.6 0c-.14 1.4-.4 2.6-.75 3.6a8.03 8.03 0 0 0 2.8-3.6h-2.05zM12 20c.9 0 2.05-1.2 2.7-3.3-.85.13-1.76.2-2.7.2s-1.85-.07-2.7-.2C9.95 18.8 11.1 20 12 20z'/%3E%3C/svg%3E")}

/* 防御 */
.bv-spec .i-shield{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l8 3v6.5c0 5-3.4 9.4-8 10.5-4.6-1.1-8-5.5-8-10.5V5l8-3zm0 2.14L6 6.39v5.11c0 3.87 2.5 7.36 6 8.4 3.5-1.04 6-4.53 6-8.4V6.39l-6-2.25zm3.3 4.3l1.4 1.42-5.3 5.3-3.1-3.1 1.4-1.42 1.7 1.7 3.9-3.9z'/%3E%3C/svg%3E")}

/* 线路 / 信号 */
.bv-spec .i-line{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 17h3v4H3v-4zm5.5-4h3v8h-3v-8zM14 8h3v13h-3V8zm5.5-5h3v18h-3V3z'/%3E%3C/svg%3E")}

/* 机房 / 位置 */
.bv-spec .i-location{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 1 7 7c0 5.25-7 13-7 13S5 14.25 5 9a7 7 0 0 1 7-7zm0 2a5 5 0 0 0-5 5c0 3.28 3.4 8.2 5 10.34C13.6 17.2 17 12.28 17 9a5 5 0 0 0-5-5zm0 2.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5z'/%3E%3C/svg%3E")}

/* 操作系统 */
.bv-spec .i-os{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h18a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1h-7v2h3v2H7v-2h3v-2H3a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1zm1 2v9h16V6H4z'/%3E%3C/svg%3E")}

/* 显卡 */
.bv-spec .i-gpu{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 6h19a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1h-2v3h-2v-3H6v3H4v-3H2a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1zm1 2v7h17V8H3zm5.5 1.5a2 2 0 1 1 0 4 2 2 0 0 1 0-4zm7 0a2 2 0 1 1 0 4 2 2 0 0 1 0-4z'/%3E%3C/svg%3E")}

/* 远程 / 终端 */
.bv-spec .i-remote{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h18a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zm1 4v12h16V7H4zm2.7 2.3L9.4 12l-2.7 2.7-1.4-1.4L6.6 12 5.3 10.7l1.4-1.4zM12 14h5v2h-5v-2z'/%3E%3C/svg%3E")}

/* 速度 / 仪表 */
.bv-spec .i-gauge{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4a9 9 0 0 1 7.8 13.5l-1.73-1a7 7 0 1 0-12.14 0l-1.73 1A9 9 0 0 1 12 4zm4.24 4.35l1.41 1.41-3.3 3.3a2.5 2.5 0 1 1-1.41-1.41l3.3-3.3z'/%3E%3C/svg%3E")}

/* 架构 / 虚拟化 */
.bv-spec .i-arch{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 3h4v3.1a6 6 0 0 1 2.2 1.27l2.68-1.55 2 3.46-2.68 1.55a6 6 0 0 1 0 2.34l2.68 1.55-2 3.46-2.68-1.55A6 6 0 0 1 14 17.9V21h-4v-3.1a6 6 0 0 1-2.2-1.27l-2.68 1.55-2-3.46 2.68-1.55a6 6 0 0 1 0-2.34L3.12 9.28l2-3.46L7.8 7.37A6 6 0 0 1 10 6.1V3zm2 6a3 3 0 1 0 0 6 3 3 0 0 0 0-6z'/%3E%3C/svg%3E")}

/* 时间 / 签发时长 */
.bv-spec .i-clock{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16zm1 3v4.6l3.2 1.85-1 1.73L11 12.6V7h2z'/%3E%3C/svg%3E")}

/* 验证 / 已包含 */
.bv-spec .i-check{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16zm4.3 4.9l1.4 1.4-6.7 6.7-3.7-3.7 1.4-1.4 2.3 2.3 5.3-5.3z'/%3E%3C/svg%3E")}

/* 加密 / 小锁 */
.bv-spec .i-lock{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a5 5 0 0 1 5 5v2h1a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-9a2 2 0 0 1 2-2h1V7a5 5 0 0 1 5-5zm0 2a3 3 0 0 0-3 3v2h6V7a3 3 0 0 0-3-3zM6 11v9h12v-9H6zm6 2.5a1.75 1.75 0 0 1 1 3.19V18h-2v-1.31a1.75 1.75 0 0 1 1-3.19z'/%3E%3C/svg%3E")}

/* 域名 / 站点 */
.bv-spec .i-domain{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zm0 2v2h16V6H4zm0 4v8h16v-8H4zm2 2h6v2H6v-2z'/%3E%3C/svg%3E")}

/* 赠送 / 活动 */
.bv-spec .i-gift{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 2a3 3 0 0 1 3 1.4A3 3 0 0 1 17.6 6H21v5h-1v10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V11H3V6h3.4A3 3 0 0 1 9 2zm2 9H6v9h5v-9zm7 0h-5v9h5v-9zm-7-2V7.5h-2a1 1 0 1 1 1-1.5H9a1 1 0 0 0 0 2h2zm2 0h2a1 1 0 0 0 0-2h-1a1 1 0 1 1 1 1.5h-2V9z'/%3E%3C/svg%3E")}

/* 云 / 通用 */
.bv-spec .i-cloud{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 1 5.92 5.02A4.5 4.5 0 0 1 17.5 20h-11a5.5 5.5 0 0 1-.9-10.93A6 6 0 0 1 12 3zm0 2a4 4 0 0 0-3.98 3.6l-.15 1.5-1.5.15A3.5 3.5 0 0 0 6.5 18h11a2.5 2.5 0 0 0 .3-4.98l-1.7-.2-.15-1.7A4 4 0 0 0 12 5z'/%3E%3C/svg%3E")}

/* 备注 / 说明 */
.bv-spec .i-info{--bvi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 1 0 20 10 10 0 0 1 0-20zm0 2a8 8 0 1 0 0 16 8 8 0 0 0 0-16zm-1 6h2v7h-2v-7zm1-3.5a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5z'/%3E%3C/svg%3E")}
