﻿/* ShowDoc CHM offline stylesheet */
html, body { margin: 0; padding: 0; background: #f4f6f8; color: #20252b; }
body { font-family: "Microsoft YaHei", "微软雅黑", SimSun, Arial, sans-serif; font-size: 14px; line-height: 1.75; }
a { color: #1167b1; text-decoration: none; }
a:hover { text-decoration: underline; }
.wrap { width: 94%; max-width: 1180px; margin: 18px auto 36px auto; }
.topbar { background: #16324f; color: #fff; padding: 12px 3%; border-bottom: 3px solid #2f80c9; }
.topbar a { color: #fff; margin-right: 18px; font-weight: bold; }
.topbar .title { font-size: 18px; margin-right: 28px; }
.panel, .content, .card { background: #fff; border: 1px solid #d8dee4; border-radius: 5px; box-shadow: 0 1px 2px rgba(0,0,0,.05); }
.content { padding: 26px 34px; }
.panel { padding: 18px 22px; margin: 16px 0; }
.hero { background: #fff; border-left: 6px solid #2f80c9; padding: 24px 28px; margin: 18px 0; }
.hero h1 { margin: 0 0 8px 0; font-size: 28px; color: #16324f; }
.hero p { margin: 5px 0; color: #56616c; }
.cards { margin: 0 -8px; }
.card { display: inline-block; vertical-align: top; box-sizing: border-box; width: 31.5%; min-width: 260px; margin: 8px; padding: 18px; }
.card h2, .card h3 { margin-top: 0; color: #16324f; }
.badge { display: inline-block; border: 1px solid #b7c7d8; background: #edf4fb; color: #315b80; border-radius: 12px; padding: 1px 9px; margin-right: 6px; font-size: 12px; }
.badge.warn { border-color: #e3b6b6; background: #fff1f1; color: #a43636; }
.breadcrumb { color: #6d7780; margin-bottom: 14px; padding-bottom: 10px; border-bottom: 1px solid #e6eaee; }
.breadcrumb a { color: #4b6e8f; }
.meta { color: #707b86; font-size: 12px; margin: 6px 0 18px 0; }
.deleted-banner { border: 1px solid #e3a3a3; background: #fff0f0; color: #9b2f2f; padding: 12px 16px; margin: 12px 0 20px 0; font-weight: bold; }
h1, h2, h3, h4, h5, h6 { color: #23384d; line-height: 1.35; }
h1 { font-size: 27px; margin: 5px 0 12px 0; }
h2 { font-size: 21px; border-bottom: 1px solid #dfe5ea; padding-bottom: 6px; margin-top: 28px; }
h3 { font-size: 17px; margin-top: 24px; }
h4 { font-size: 15px; }
p { margin: 10px 0; }
ul, ol { padding-left: 28px; }
blockquote { margin: 14px 0; padding: 10px 16px; border-left: 4px solid #88afd1; background: #f5f9fc; color: #4a5661; }
code { font-family: Consolas, "Courier New", monospace; background: #eef1f4; border-radius: 3px; padding: 1px 4px; }
pre { font-family: Consolas, "Courier New", monospace; background: #1f252b; color: #f0f3f6; border: 1px solid #11171c; padding: 14px; overflow: auto; white-space: pre-wrap; word-wrap: break-word; line-height: 1.55; }
pre code { background: transparent; padding: 0; color: inherit; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; margin: 16px 0; background: #fff; }
th, td { border: 1px solid #bbc5ce; padding: 7px 9px; vertical-align: top; }
th { background: #e9f1f8; color: #254763; font-weight: bold; }
img { max-width: 100%; height: auto; border: 0; }
.external-image { display: block; margin: 12px auto 3px auto; }
.external-note { border: 1px solid #e5d49a; background: #fffbea; color: #705d1f; padding: 10px 14px; margin: 14px 0; }
.local-toc { background: #f7fafc; border: 1px solid #dbe5ed; padding: 12px 18px; margin: 14px 0 22px 0; }
.local-toc strong { color: #31536e; }
.local-toc ul { margin: 5px 0; }
.local-toc .level-3 { margin-left: 18px; }
.local-toc .level-4 { margin-left: 36px; }
.topic-tree, .topic-tree ul { list-style-type: none; margin: 0; padding-left: 20px; }
.topic-tree { padding-left: 0; }
.topic-tree li { margin: 4px 0; }
.topic-tree .folder { font-weight: bold; color: #294b66; margin-top: 9px; }
.topic-tree .page-link { font-weight: normal; }
.nav-prev-next { margin-top: 30px; padding-top: 14px; border-top: 1px solid #dce2e7; }
.nav-prev-next .prev { float: left; width: 48%; }
.nav-prev-next .next { float: right; width: 48%; text-align: right; }
.clear { clear: both; }
.search-box { width: 96%; box-sizing: border-box; font-size: 16px; padding: 10px 12px; border: 1px solid #93a7b8; }
#resultCount { color: #5e6b75; margin: 8px 0 14px 0; }
.search-table td { vertical-align: top; }
.search-table .path { color: #6b7780; font-size: 12px; }
.search-table .snippet { color: #444; }
.whiteboard-frame { overflow: auto; border: 1px solid #aeb8c1; background: #fff; padding: 8px; margin: 15px 0; }
.whiteboard-frame svg { display: block; min-width: 900px; }
.sheet-wrap { overflow-x: auto; }
.raw-link { margin: 12px 0; font-size: 12px; }
.footer { margin-top: 24px; color: #7a858e; border-top: 1px solid #e3e7eb; padding-top: 12px; font-size: 12px; }
.small { font-size: 12px; color: #66717a; }
.project-highlight { border-left: 5px solid #d8891c; }
@media screen and (max-width: 900px) { .card { width: 46%; } .content { padding: 20px; } }
@media screen and (max-width: 600px) { .card { width: 96%; } .wrap { width: 97%; } }
/* Reviewed-v2 table fixes */
.table-summary { margin: 2px 0 8px 0; color: #66717a; font-size: 12px; }
.variable-table .variable-desc { width: 60%; }
.variable-table .variable-name { width: 40%; font-family: Consolas, "Courier New", monospace; word-break: break-all; }
.variable-table .variable-name code { display: inline-block; white-space: normal; word-break: break-all; }
.variable-table tbody tr:nth-child(even), .parameter-table tbody tr:nth-child(even) { background: #f8fafc; }


/* v4: images are embedded in the CHM and scale to the page width. */
.image-block { margin: 14px 0; text-align: center; }
.page-body img.local-image { max-width: 100%; height: auto; display: block; margin: 0 auto; }


/* v8 ETmir2 command merge */
.source-note { border: 1px solid #b8cde0; background: #f2f7fb; color: #36546d; padding: 10px 14px; margin: 14px 0 18px 0; }
.gom-source-body h3 { margin-top: 20px; margin-bottom: 8px; color: #31536e; }
.gom-source-body pre.command-format { border-left: 4px solid #2f80c9; }
.gom-table td:first-child, .gom-mapping td:first-child { width: 34%; }
.gom-table .section-row th, .gom-table tr.section-row th { background: #dceaf6; color: #1f4665; text-align: left; }
.gom-mapping code { white-space: nowrap; }
.related-pages { border-top: 1px dashed #c8d2db; margin-top: 22px; padding-top: 10px; }
.related-pages ul { margin-top: 6px; }
.folder > a { color: #294b66; }


/* v11: map/NPC/monster/color reference pages */
.reference-table-wrap { overflow-x: auto; margin: 14px 0; }
.reference-gallery { table-layout: fixed; min-width: 690px; }
.reference-gallery td { width: 33.333%; text-align: center; vertical-align: top; padding: 10px; }
.reference-card { text-align: center; }
.reference-image { display: block; margin: 0 auto 8px auto; max-width: 100%; height: auto; }
.reference-gallery .reference-image { width: 200px; height: 150px; object-fit: contain; background: #f7f8fa; }
.reference-label { font-family: Consolas, "Courier New", "Microsoft YaHei", monospace; line-height: 1.55; color: #23384d; }
.reference-empty { background: #f8fafc; }
.reference-color-table { table-layout: fixed; min-width: 520px; }
.reference-color-table td { text-align: center; height: 34px; font-family: Consolas, "Courier New", monospace; font-weight: bold; text-shadow: 0 1px 1px rgba(128,128,128,.35); }


/* v12: fixed-size four-column NPC card gallery (legacy CHM compatible). */
.npc-card-grid-wrap {
  overflow-x: auto;
  margin: 14px 0 4px 0;
  padding: 2px 0 10px 0;
}
.npc-card-grid {
  width: 100%;
  min-width: 820px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 10px;
  margin: 0;
  background: transparent;
}
.npc-card-grid .npc-card-cell {
  width: 25%;
  padding: 0;
  border: 0;
  vertical-align: top;
  background: transparent;
}
.npc-card-grid .npc-card-placeholder {
  width: 25%;
  padding: 0;
  border: 0;
  background: transparent;
}
.npc-card {
  min-height: 218px;
  padding: 10px;
  border: 1px solid #c7d5e1;
  background: #ffffff;
  text-align: center;
  box-shadow: 0 2px 5px rgba(33, 67, 96, .10);
}
.npc-image-frame {
  width: 160px;
  height: 160px;
  line-height: 160px;
  margin: 0 auto;
  overflow: hidden;
  text-align: center;
  background: #f4f7fa;
  border: 1px solid #dbe4ec;
}
.npc-gallery-image {
  display: inline-block;
  max-width: 150px;
  max-height: 150px;
  width: auto;
  height: auto;
  margin: 0;
  vertical-align: middle;
  line-height: normal;
}
.npc-code-badge {
  display: block;
  margin: 10px auto 0 auto;
  padding: 4px 8px;
  border: 1px solid #b5d2e8;
  border-radius: 12px;
  background: #eaf4fc;
  color: #155d93;
  text-align: center;
  white-space: nowrap;
  font-family: Consolas, "Courier New", "Microsoft YaHei", monospace;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.45;
}
.npc-card:hover {
  border-color: #6c9fc5;
  box-shadow: 0 3px 8px rgba(33, 91, 137, .17);
}


/* v24: comfortable syntax colouring and compact update log. */
.code-window { margin: 15px 0; border: 1px solid #4d5e62; border-radius: 4px; background: #344247; overflow: hidden; box-shadow: 0 1px 2px rgba(0,0,0,.12); }
.code-window-bar { height: 19px; padding: 9px 12px 0 12px; background: #344247; line-height: 10px; }
.code-dot { display: inline-block; width: 9px; height: 9px; margin-right: 5px; border-radius: 9px; font-size: 1px; line-height: 9px; vertical-align: top; }
.code-dot-red { background: #ff5f57; }
.code-dot-yellow { background: #ffbd2e; }
.code-dot-green { background: #28c840; }
.code-window pre.syntax-code { margin: 0; padding: 6px 14px 16px 14px; border: 0; border-radius: 0; background: #344247; color: #c3e88d; line-height: 1.62; white-space: pre-wrap; word-wrap: break-word; }
.code-window pre.syntax-code code { padding: 0; background: transparent; color: #c3e88d; }
.syntax-code .tok-directive { color: #b7c9d3; }
.syntax-code .tok-number { color: #f78c6c; }
.syntax-code .tok-string { color: #ffcb6b; }
.syntax-code .tok-operator { color: #89ddff; }
.syntax-code .tok-comment { color: #829a9f; }
.update-log > p { margin: 12px 0 4px 0; line-height: 1.45; }
.update-log > ol { margin: 0 0 10px 0; padding-left: 32px; }
.update-log > ol > li { margin: 0; padding: 0 0 2px 2px; line-height: 1.5; }
.update-log > ol > li > p { margin: 0; }
.update-log > hr { height: 0; margin: 10px 0; padding: 0; border: 0; border-top: 1px solid #7f858a; }

.script-divider{border:0;border-top:1px solid #9aa9ad;margin:12px 0;}
