/* ======================================================================
   cURL 命令转换生成器 · 独立设计（终端窗口主题）
   浅色 = 米白纸张 + 墨绿终端；深色 = 纯黑控制台 + 荧光绿
   ====================================================================== */
.ccv{
  --ink:#1c2422; --sub:#5b6864; --faint:#93a29d;
  --bg:#f4f6f5; --card:#ffffff; --card2:#eef2f0; --line:#dde5e2; --line2:#e9efec;
  --pri:#0f766e; --pri-2:#14b8a6; --pri-soft:#e4f3f0; --pri-ink:#0b5c56;
  --term:#0d1512; --term-ink:#a7f3d0; --term-line:#1e2f29;
  --amber:#b45309; --amber-soft:#fdf3e2;
  --red:#b42323; --red-soft:#fdecec;
  --r:14px;
  --shadow:0 1px 2px rgba(28,36,34,.05),0 10px 28px rgba(28,36,34,.07);
  color:var(--ink);
  font-family:-apple-system,"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",system-ui,sans-serif;
  font-size:15px; line-height:1.75;
  background:
    radial-gradient(900px 420px at 88% -140px, rgba(20,184,166,.10), transparent 60%),
    radial-gradient(700px 360px at -8% 140px, rgba(180,83,9,.06), transparent 60%),
    var(--bg);
  padding:0 16px 56px;
}
:root[data-theme="dark"] .ccv{
  --ink:#e8f0ed; --sub:#9db0aa; --faint:#6b7f79;
  --bg:#0e1513; --card:#16201d; --card2:#1a2622; --line:#273831; --line2:#213029;
  --pri:#2dd4bf; --pri-2:#5eead4; --pri-soft:rgba(45,212,191,.12); --pri-ink:#99f6e4;
  --term:#070d0b; --term-ink:#6ee7b7; --term-line:#16241f;
  --amber:#fbbf24; --amber-soft:rgba(251,191,36,.10);
  --red:#f87171; --red-soft:rgba(248,113,113,.12);
  --shadow:0 1px 2px rgba(0,0,0,.4),0 12px 32px rgba(0,0,0,.4);
}
.ccv *{box-sizing:border-box;}
.ccv b{font-weight:700;}
.ccv-wrap{max-width:1120px;margin:0 auto;}
.ccv code,.ccv pre,.ccv textarea,input,.ccv-mono{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Courier New",monospace;}

/* ---------- 首屏：终端窗口 Hero ---------- */
.ccv-hero{
  margin-top:22px;border:1px solid var(--term-line);border-radius:16px;overflow:hidden;
  background:var(--term);box-shadow:var(--shadow);
}
.ccv-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--term-line);}
.ccv-dot{width:11px;height:11px;border-radius:50%;}
.ccv-bar b{margin-left:8px;font-size:12px;color:#5f7a72;font-weight:600;letter-spacing:.08em;}
.ccv-hero-body{padding:26px 28px 24px;}
.ccv-hero h1{margin:0 0 8px;font-size:clamp(24px,3.6vw,32px);font-weight:900;color:#f0fdf8;line-height:1.3;}
.ccv-hero p{margin:0;color:#8fb3a9;font-size:15px;max-width:760px;}
.ccv-hero p em{font-style:normal;color:var(--term-ink);font-weight:700;}
.ccv-cursor{display:inline-block;width:9px;height:1.05em;background:var(--term-ink);vertical-align:-2px;margin-left:3px;animation:ccvBlink 1.1s steps(1) infinite;}
@keyframes ccvBlink{50%{opacity:0;}}

/* ---------- 工作台 ---------- */
.ccv-desk{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px;}
@media (max-width:900px){.ccv-desk{grid-template-columns:1fr;}}
.ccv-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:18px 18px 16px;}
.ccv-card h2{margin:0 0 4px;font-size:16px;font-weight:800;display:flex;align-items:center;gap:8px;}
.ccv-card h2 .ccv-num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:7px;background:var(--pri);color:#fff;font-size:12px;font-weight:800;}
:root[data-theme="dark"] .ccv-card h2 .ccv-num{color:#06201c;}
.ccv-tip{font-size:12.5px;color:var(--sub);margin:0 0 10px;}
.ccv-ta{
  width:100%;min-height:190px;resize:vertical;padding:12px 14px;border-radius:10px;
  border:1px solid var(--line);background:var(--card2);color:var(--ink);
  font-size:13px;line-height:1.7;outline:none;transition:border-color .15s;
}
.ccv-ta:focus{border-color:var(--pri-2);box-shadow:0 0 0 3px var(--pri-soft);}
.ccv-out{
  width:100%;min-height:190px;border-radius:10px;border:1px solid var(--line);
  background:var(--term);color:var(--term-ink);padding:12px 14px;font-size:13px;line-height:1.7;
  overflow:auto;white-space:pre;margin:0;
}
.ccv-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;}
.ccv-chip{
  border:1px solid var(--line);background:var(--card2);color:var(--sub);
  border-radius:999px;padding:5px 14px;font-size:13px;cursor:pointer;font-weight:600;transition:all .15s;
}
.ccv-chip:hover{border-color:var(--pri-2);color:var(--pri-ink);}
.ccv-chip.on{background:var(--pri);border-color:var(--pri);color:#fff;}
:root[data-theme="dark"] .ccv-chip.on{color:#06201c;}
.ccv-btn{
  border:none;border-radius:10px;padding:9px 20px;font-size:14px;font-weight:800;cursor:pointer;transition:all .15s;
}
.ccv-btn-go{background:var(--pri);color:#fff;}
:root[data-theme="dark"] .ccv-btn-go{color:#06201c;}
.ccv-btn-go:hover{background:var(--pri-2);}
.ccv-btn-ghost{background:var(--card2);color:var(--pri-ink);border:1px solid var(--line);}
.ccv-btn-ghost:hover{border-color:var(--pri-2);}
.ccv-msg{margin-top:10px;font-size:13px;min-height:20px;font-weight:600;}
.ccv-msg.err{color:var(--red);}
.ccv-msg.ok{color:var(--pri);}
.ccv-stats{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;}
.ccv-stat{font-size:12.5px;color:var(--sub);background:var(--card2);border:1px solid var(--line2);border-radius:8px;padding:4px 10px;}
.ccv-stat b{color:var(--pri-ink);}

/* ---------- 解析明细 ---------- */
.ccv-detail{margin-top:18px;}
.ccv-detail table{width:100%;border-collapse:collapse;font-size:13px;}
.ccv-detail th,.ccv-detail td{border:1px solid var(--line);padding:7px 10px;text-align:left;word-break:break-all;}
.ccv-detail th{background:var(--card2);font-weight:700;white-space:nowrap;}

/* ---------- 批量转换 ---------- */
.ccv-batch{margin-top:18px;}
.ccv-ta-sm{min-height:104px;}
.ccv-viz{margin-top:12px;border:1px solid var(--line);border-radius:10px;background:var(--card2);padding:10px 12px;overflow-x:auto;}
.ccv-viz svg{display:block;width:100%;height:auto;min-width:560px;}
.ccv-viz .ccv-vt{fill:var(--sub);font-size:12px;font-weight:700;font-family:inherit;}
.ccv-viz .ccv-vl{fill:var(--ink);font-size:11.5px;font-weight:800;font-family:"JetBrains Mono",ui-monospace,Consolas,monospace;}
.ccv-viz .ccv-vn{fill:var(--sub);font-size:11px;font-family:"JetBrains Mono",ui-monospace,Consolas,monospace;}
.ccv-batch-scroll{overflow-x:auto;margin-top:12px;border:1px solid var(--line);border-radius:10px;background:var(--card);}
.ccv-batch-table{width:100%;min-width:700px;border-collapse:collapse;font-size:12.5px;}
.ccv-batch-table th{background:var(--card2);color:var(--sub);font-size:12px;text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap;}
.ccv-batch-table td{padding:7px 10px;border-bottom:1px solid var(--line2);vertical-align:top;}
.ccv-batch-table tr:last-child td{border-bottom:none;}
.ccv-batch-table tr.bad td{background:var(--red-soft);}
.ccv-batch-table td.url{max-width:330px;word-break:break-all;font-family:"JetBrains Mono",ui-monospace,Consolas,monospace;font-size:11.5px;}
.ccv-batch-table .yes{color:var(--pri);font-weight:800;}
.ccv-batch-table .no{color:var(--red);font-weight:800;}
.ccv-mini{border:1px solid var(--line);background:var(--card2);color:var(--pri-ink);border-radius:6px;padding:3px 10px;font-size:12px;font-weight:800;cursor:pointer;}
.ccv-mini:hover{border-color:var(--pri-2);}
@media (max-width:640px){
  .ccv-batch{padding:14px 12px;}
  .ccv-viz svg{min-width:440px;}
}

/* ---------- SEO 问答 ---------- */
.ccv-faq{margin-top:34px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px;box-shadow:var(--shadow);}
.ccv-faq h2{margin:0 0 12px;font-size:19px;font-weight:900;}
.ccv-faq h3{margin:18px 0 6px;font-size:15.5px;font-weight:800;color:var(--pri-ink);}
.ccv-faq p{margin:0;color:var(--sub);font-size:14px;}
.ccv-faq p b{color:var(--ink);}
