/* 站点统一外观：只改视觉，不动任何计算逻辑与 DOM 结构 */

:root {
  --paper: #f4efe5;
  --paper-2: #ebe4d6;
  --ink: #15140f;
  --ink-soft: #3a3830;
  --muted: #6f6a5c;
  --line: rgba(21, 20, 15, 0.14);
  --line-strong: rgba(21, 20, 15, 0.32);
  --accent: #b8442a;
  --accent-soft: rgba(184, 68, 42, 0.08);
  --serif: "Songti SC", "Source Han Serif SC", SimSun, "Noto Serif CJK SC", serif;
  --sans: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
  --mono: "Cascadia Code", "JetBrains Mono", Consolas, monospace;
}

html,
body {
  background: var(--paper) !important;
  color: var(--ink) !important;
  font-family: var(--sans) !important;
  font-size: 14px;
}

body::before {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-image: radial-gradient(circle at 1px 1px, rgba(21, 20, 15, 0.05) 1px, transparent 0);
  background-size: 4px 4px;
  content: "";
  pointer-events: none;
}

.container {
  position: relative;
  z-index: 1;
}

h1 {
  font-family: var(--serif) !important;
  font-size: clamp(1.5rem, 3.4vw, 2.1rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.04em;
  color: var(--ink) !important;
  padding: 6px 0 14px !important;
}

/* 卡片 */
.card {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: var(--paper) !important;
  box-shadow: none !important;
}

/* 区块标题 */
.sec-title {
  border-bottom: 1px solid var(--line) !important;
  color: var(--ink) !important;
  font-family: var(--mono) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding-bottom: 10px !important;
}

.sub-title {
  color: var(--muted) !important;
  font-family: var(--mono) !important;
  font-size: 10px !important;
  letter-spacing: 0.08em;
}

.desc,
.ft {
  color: var(--muted) !important;
}

/* 国家 / 渠道标签 */
.tag {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ink) !important;
  font-size: 12.5px !important;
  transition: background 150ms ease-out, color 150ms ease-out, border-color 150ms ease-out;
}

.tag:hover:not(.active) {
  border-color: var(--accent) !important;
}

.tag.active {
  border-color: var(--ink) !important;
  background: var(--ink) !important;
  color: var(--paper) !important;
}

/* 输入 */
input,
select,
textarea,
.fld {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
  font-family: var(--sans) !important;
  font-size: 13.5px !important;
}

input:focus,
select:focus,
textarea:focus,
.fld:focus {
  border-color: var(--accent) !important;
  outline: none !important;
  box-shadow: none !important;
}

label {
  color: var(--muted) !important;
  font-size: 11.5px !important;
}

/* 智能粘贴区 */
.lazy-header {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: var(--paper-2) !important;
  color: var(--ink) !important;
}

.lazy-header-sub {
  color: var(--muted) !important;
}

.lazy-paste-area,
.lazy-textarea {
  border: 1px dashed var(--line-strong) !important;
  border-radius: 0 !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
  font-family: var(--mono) !important;
  font-size: 12.5px !important;
}

.lazy-tip {
  border-left: 2px solid var(--accent) !important;
  border-radius: 0 !important;
  background: var(--accent-soft) !important;
  color: var(--ink-soft) !important;
}

.lazy-btn-primary {
  border: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  background: var(--ink) !important;
  color: var(--paper) !important;
}

.lazy-btn-danger {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--accent) !important;
}

/* 按钮 */
.btn-go {
  border: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  background: var(--ink) !important;
  color: var(--paper) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
}

.btn-sm,
.mode-btn {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ink) !important;
}

.mode-btn.active {
  border-color: var(--ink) !important;
  background: var(--ink) !important;
  color: var(--paper) !important;
}

/* 结果区 */
.rc {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: var(--paper) !important;
  box-shadow: none !important;
}

.spec-table th {
  background: var(--paper-2) !important;
  color: var(--ink) !important;
  font-family: var(--mono) !important;
  font-size: 10px !important;
  letter-spacing: 0.06em;
}

.spec-table th,
.spec-table td {
  border-color: var(--line) !important;
}

.spec-summary {
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  background: var(--paper-2) !important;
  color: var(--ink-soft) !important;
}

.switch-item label {
  color: var(--ink-soft) !important;
}

/* 顶部返回条，由站点注入 */
.wb-back {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--line);
  margin-bottom: 14px;
}

.wb-back a {
  color: var(--ink);
  font-size: 12.5px;
  border-bottom: 1px solid var(--line-strong);
  text-decoration: none;
}

.wb-back span {
  color: var(--muted);
  font-family: var(--mono);
  font-size: 9.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media (max-width: 640px) {
  body { font-size: 14px; }
  .container { padding-left: 12px !important; padding-right: 12px !important; }
}

/* 顶部「标准填表格式」说明块（原为内联蓝色样式） */
div[style*="eef4ff"] {
  background: var(--paper-2) !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
}

div[style*="eef4ff"] [style*="color:#1a3a5c"] { color: var(--ink) !important; }
div[style*="eef4ff"] [style*="color:#4a90d9"] { color: var(--accent) !important; }
div[style*="eef4ff"] [style*="color:#888"] { color: var(--muted) !important; }

/* 三个内联样式按钮（智能填表 / 清空 / 打托） */
button[onclick="parsePaste()"] {
  border: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  background: var(--ink) !important;
  color: var(--paper) !important;
}

button[onclick="clearAll()"] {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--accent) !important;
}

button[onclick*="pallet-calculator"] {
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ink) !important;
}

/* 标题左对齐，贴合站点排版 */
h1 { text-align: left !important; }

/* 智能粘贴区的橙色元素 */
.lazy-header-icon {
  background: var(--ink) !important;
  border-radius: 0 !important;
  color: var(--paper) !important;
}

.lazy-header-text { color: var(--ink) !important; font-size: 12.5px !important; }
.lazy-header-dot { background: var(--accent) !important; border-radius: 50% !important; }

.lazy-paste-area {
  background: var(--paper) !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.lazy-paste-area:focus-within {
  border-color: var(--accent) !important;
  box-shadow: none !important;
}

.lazy-textarea {
  background: var(--paper) !important;
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
}

.lazy-textarea:focus { border-color: var(--accent) !important; }

/* 智能模式图标在纸色背景上像黑方块，直接隐藏，文字已说明 */
.lazy-header-icon { display: none !important; }
.lazy-header { gap: 0 !important; }

/* ---------- 页头 ---------- */
.page-kicker {
  margin-top: 4px;
  color: var(--muted);
  font-family: var(--mono);
  font-size: 9.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.page-sub {
  margin: -6px 0 18px;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.7;
}

/* ---------- 折叠的填表格式说明 ---------- */
.fmt-help {
  margin-bottom: 14px;
  border: 1px solid var(--line) !important;
  background: var(--paper-2);
}

.fmt-help > summary {
  padding: 11px 14px;
  color: var(--ink-soft);
  font-size: 12px;
  cursor: pointer;
  list-style: none;
}

.fmt-help > summary::-webkit-details-marker { display: none; }

.fmt-help > summary::after {
  content: " ＋";
  color: var(--accent);
  font-family: var(--mono);
}

.fmt-help[open] > summary::after { content: " －"; }

.fmt-help > div {
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 14px 14px !important;
}

/* 卡片之间多一点呼吸 */
.card + .card { margin-top: 14px !important; }
