/* ==========================================================================
   江城市第十四中学 · 数字校史陈列室
   样式按 2004—2005 年校内自建站的实际做法写：
   760px 定宽白底内容区 + 全宽色带页头、宋体 12px、表格化分栏、
   无圆角 / 无阴影 / 无渐变 / 无过渡动画。
   ========================================================================== */

* { box-sizing: content-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  padding: 0;
  font: 12px/1.7 "SimSun", "宋体", "Songti SC", "MS Song", serif;
  color: #000000;
  background: #d8d4c4;
}

/* ---------------------------------------------------------------- 顶部状态条 */
.led {
  background: #000000;
  color: #33ff33;
  font: 12px/1.6 "Courier New", "NSimSun", monospace;
  letter-spacing: 1px;
  text-align: center;
  padding: 2px 4px;
}
.led .dim { color: #0f7f0f; }
.led .warn { color: #ffcc00; }

/* ---------------------------------------------------------------- 页头 */
.site-head {
  background: #1d4a33;
  border-bottom: 3px double #c8c4b0;
  color: #ffffff;
  padding: 8px 12px;
  display: table;
  width: 100%;
}
.seal {
  display: table-cell;
  vertical-align: middle;
  width: 46px;
  height: 46px;
  border: 2px solid #d8c98a;
  color: #d8c98a;
  font: 700 24px/44px "KaiTi", "楷体", "SimSun", serif;
  text-align: center;
  background: #163d29;
}
.site-head .head-main { display: table-cell; vertical-align: middle; padding-left: 10px; }
.site-head h1 {
  margin: 0;
  font: 700 20px/1.4 "SimHei", "黑体", "SimSun", sans-serif;
  letter-spacing: 2px;
}
.site-head .sub {
  margin: 2px 0 0;
  font-size: 12px;
  color: #c8d4c4;
}
.head-extra {
  display: table-cell;
  vertical-align: top;
  text-align: right;
  font-size: 12px;
  color: #c8d4c4;
  white-space: nowrap;
}
.head-extra a { color: #ffe9a0; }

/* ---------------------------------------------------------------- 导航 */
.menu {
  background: #e6e2cf;
  border-bottom: 1px solid #8a8674;
  text-align: center;
  padding: 3px 0;
}
.menu a {
  color: #0000cc;
  text-decoration: underline;
  padding: 0 4px;
}
.menu a.on { color: #a30000; font-weight: 700; text-decoration: none; }
.menu a + a:before { content: "｜"; color: #8a8674; text-decoration: none; margin: 0 2px; }

/* ---------------------------------------------------------------- 进度条 */
.progress {
  background: #e6e2cf;
  border-bottom: 1px solid #8a8674;
  color: #3a3a2e;
  font-size: 12px;
  text-align: center;
  padding: 2px 4px;
}
.progress .track {
  display: inline-block;
  width: 120px;
  height: 11px;
  background: #ffffff;
  border: 1px solid #000000;
  vertical-align: middle;
}
.progress .bar {
  display: block;
  height: 11px;
  width: 0;
  background: #0f7a34;
}

/* ---------------------------------------------------------------- 版式 */
.wrap {
  width: 760px;
  margin: 0 auto;
  background: #ffffff;
  border-left: 1px solid #8a8674;
  border-right: 1px solid #8a8674;
  padding: 8px 10px;
}
.cols { display: table; width: 100%; table-layout: fixed; }
.side { display: table-cell; width: 170px; vertical-align: top; padding-right: 10px; }
.main { display: table-cell; vertical-align: top; }

/* ---------------------------------------------------------------- 小框 */
.panel { border: 1px solid #8a8674; margin-bottom: 10px; background: #ffffff; }
.panel > h2, .panel > h3 {
  margin: 0;
  padding: 3px 6px;
  font: 700 12px/1.6 "SimHei", "黑体", "SimSun", sans-serif;
  color: #17304d;
  background: #dce6f0;
  border-bottom: 1px solid #7d8a9c;
  letter-spacing: 1px;
}
.panel > h3 { background: #efe9d4; border-bottom-color: #a09a80; color: #4a3a12; }
.panel .body { padding: 6px 8px; }
.panel p { margin: 6px 0; text-indent: 2em; }
.panel p.noindent { text-indent: 0; }

h2.doc {
  margin: 0 0 6px;
  font: 700 16px/1.5 "SimHei", "黑体", sans-serif;
  border-left: 5px solid #1d4a33;
  padding-left: 6px;
}
.hr { border: 0; border-top: 1px dashed #9a9583; margin: 10px 0; }

.side .panel .body { font-size: 12px; padding: 5px 6px; }
.side ul { margin: 2px 0; padding-left: 18px; }
.side li { margin: 2px 0; }

/* ---------------------------------------------------------------- 表格 */
table.grid { width: 100%; border-collapse: collapse; font-size: 12px; background: #ffffff; }
table.grid th, table.grid td { border: 1px solid #8f8b79; padding: 3px 5px; vertical-align: top; }
table.grid th { background: #dce6f0; color: #17304d; font-weight: 700; text-align: left; }
table.grid tr:nth-child(even) td { background: #f6f4ea; }
table.grid td.year { white-space: nowrap; font-family: "Courier New", monospace; font-weight: 700; }

/* ---------------------------------------------------------------- 涂黑条 */
.redact {
  background: #000000;
  color: #000000;
  padding: 0 4px;
  cursor: help;
}
.redact:hover { color: #ff0000; }

/* 影印件上被抽掉的东西：默认看不见，鼠标扫过才显形 */
.ghost { color: #ffffff !important; text-decoration: none; }
.ghost:hover { color: #a30000 !important; text-decoration: underline; }

/* ---------------------------------------------------------------- 计数器 */
.counter {
  text-align: center;
  font: 700 16px/1.8 "Courier New", monospace;
  color: #33ff33;
  background: #000000;
  border: 2px inset #888888;
  padding: 2px 4px;
  letter-spacing: 5px;
}
.counter small { color: #0f9f0f; letter-spacing: 1px; font-size: 11px; }

/* ---------------------------------------------------------------- 楼层图 */
.floor { width: 100%; border-collapse: collapse; font-size: 12px; }
.floor td, .floor th { border: 1px solid #6f6c5c; padding: 4px 6px; vertical-align: top; }
.floor th { background: #e6e2cf; width: 56px; text-align: center; font-weight: 700; }
.floor td.spot { background: #ffffff; }
.floor td.locked { background: #f2efe2; color: #4a473c; }
.floor td .tag {
  display: inline-block; font-size: 11px; color: #8a0000;
  border: 1px solid #c0392b; padding: 0 3px; margin-left: 4px;
}

/* ---------------------------------------------------------------- 论坛 */
.thread .post { border: 1px solid #a9a594; background: #ffffff; margin-bottom: 8px; }
.thread .post .head {
  background: #dce6f0;
  border-bottom: 1px solid #a9a594;
  padding: 2px 6px;
  font-size: 12px;
  color: #2b3d55;
}
.thread .post .head b { color: #7a1f12; }
.thread .post .content { padding: 5px 8px; font-size: 12px; }
.thread .post .content p { margin: 4px 0; text-indent: 2em; }
.thread .floor-no { color: #8a8577; font-family: "Courier New", monospace; }
.post.gone { background: #eceade; color: #8a8577; font-style: italic; }
.quote {
  border: 1px solid #c3c0b0;
  background: #f6f4ea;
  margin: 4px 0; padding: 3px 8px;
  color: #4a4a3e; font-size: 12px;
}

/* ---------------------------------------------------------------- 表单 */
.formbox { background: #f2efe2; border: 1px solid #9a9684; padding: 8px; }
.formbox label { display: block; font-size: 12px; margin-bottom: 3px; font-weight: 700; }
.formbox input[type="text"] {
  width: 260px;
  padding: 2px 4px;
  font: 13px/1.5 "Courier New", monospace;
  letter-spacing: 2px;
  border: 1px solid #7f9db9;
  background: #ffffff;
}
.btn {
  display: inline-block;
  font: 12px/1.6 "SimSun", "宋体", serif;
  padding: 1px 12px;
  background: #ece9d8;
  border: 1px solid;
  border-color: #ffffff #716f64 #716f64 #ffffff;
  cursor: pointer;
  color: #000000;
  text-decoration: none;
}
.btn:hover { color: #a30000; }
.btn.ghostbtn { background: #e3d9d9; }

.msg { margin-top: 8px; font-size: 12px; padding: 3px 6px; }
.msg.err { background: #fbe3e0; border: 1px solid #b5544a; color: #7a1f12; }
.msg.ok { background: #e8f2e4; border: 1px solid #4c8c50; color: #1e5622; }
.shake { color: #a30000; }

/* ---------------------------------------------------------------- 加锁页 */
.locked {
  text-align: center;
  padding: 24px 12px;
  background: #f2efe2;
  border: 1px dashed #9a9684;
  color: #5f5b4f;
}
.locked .big {
  font: 700 26px/1.6 "SimHei", "黑体", sans-serif;
  letter-spacing: 8px;
  color: #a30000;
  margin-bottom: 8px;
}

/* ---------------------------------------------------------------- 手写件 */
.handwriting {
  font-family: "KaiTi", "楷体", "STKaiti", "SimSun", serif;
  font-size: 15px;
  line-height: 2.0;
  background: #fcfaf2;
  border: 1px solid #b8b3a0;
  padding: 8px 14px;
  color: #1f2b45;
}
.entry { margin-bottom: 10px; }
.entry .date { font-size: 12px; color: #6b4a1f; font-family: "Courier New", monospace; }

.stamp {
  display: inline-block;
  border: 2px solid #a3322b;
  color: #a3322b;
  font-weight: 700;
  letter-spacing: 3px;
  padding: 1px 8px;
  font-size: 14px;
  background: transparent;
}

/* ---------------------------------------------------------------- 失效图片 */
.broken {
  border: 1px solid #999999;
  background: #f5f4ee;
  color: #55534a;
  font-size: 12px;
  padding: 4px 8px;
  font-family: "Courier New", "SimSun", monospace;
  margin: 6px 0;
}
.broken b { color: #a30000; }
.broken:before { content: "✕ "; color: #cc0000; font-weight: 700; }

/* ---------------------------------------------------------------- 音频 */
.player { background: #ece9d8; border: 2px inset #b5b1a2; padding: 6px; }
.player audio { width: 100%; height: 28px; }
.player .hintline { color: #004a00; font: 12px/1.7 "Courier New", monospace; margin: 4px 0 0; }

figure.spectro { margin: 8px 0; }
figure.spectro .scroll { overflow-x: auto; border: 1px solid #55503f; background: #000000; }
figure.spectro img { display: block; min-width: 900px; }
figure.spectro figcaption { font-size: 12px; color: #55503f; margin-top: 3px; }

/* ---------------------------------------------------------------- 杂项 */
.news { margin: 2px 0; padding-left: 18px; }
.news li { margin: 3px 0; }
.news .d { font-family: "Courier New", monospace; color: #55503f; margin-right: 6px; }

.note {
  background: #fffde7;
  border: 1px solid #c9a227;
  padding: 4px 8px;
  font-size: 12px;
  color: #5a4a15;
}
.warn {
  background: #fbe3e0;
  border: 1px solid #b5544a;
  padding: 4px 8px;
  font-size: 12px;
  color: #7a1f12;
}
.endings { display: inline; }
.endings .dot {
  display: inline-block;
  width: 10px; height: 10px;
  background: #ffffff;
  border: 1px solid #55534a;
  margin: 0 2px;
  vertical-align: middle;
}
.endings .dot.on { background: #0f7a34; }

.footer {
  margin-top: 12px;
  padding: 8px 4px;
  border-top: 1px solid #8a8674;
  font-size: 12px;
  color: #5f5b4f;
  text-align: center;
}
.copyright {
  border-top: 1px solid #d8d4c4;
  margin-top: 8px;
  padding-top: 6px;
  color: #6f6b5c;
  font-size: 12px;
}

/* ---------------------------------------------------------------- 晚自习时段 */
body.evening .site-head { background: #12303f; }
body.evening .seal { border-color: #b9d6e2; color: #b9d6e2; background: #0b1f2b; }
#piano-btn { display: none; }
body.evening #piano-btn { display: inline-block; }
body.evening .site-head .sub:after {
  content: " ｜ 现在是晚自习时间，四楼请勿单独前往";
  color: #ffcc00;
}

/* ---------------------------------------------------------------- IE 时代滚动条 */
body { scrollbar-face-color: #d8d4c4; scrollbar-track-color: #ece9d8;
       scrollbar-arrow-color: #4a473c; scrollbar-shadow-color: #8a8674; }

/* ---------------------------------------------------------------- 晚自习时段 */
body.evening .site-head, body.trance-night .site-head { background: #12303f; }
body.evening .seal, body.trance-night .seal {
  border-color: #b9d6e2; color: #b9d6e2; background: #0b1f2b;
}
body.evening .site-head .sub:after {
  content: " ｜ 现在是晚自习时间，四楼请勿单独前往";
  color: #ffcc00;
}
/* 录音页解锁后的「恍惚」状态：整站入夜，与真实时间无关 */
body.trance-night .site-head .sub:after {
  content: " ｜ 你听到了这段音频";
  color: #ffcc00;
}
.trance {
  background: #0e1a24;
  border: 1px solid #2c4a5e;
  color: #b9d6e2;
  font-family: "KaiTi", "楷体", "SimSun", serif;
  font-size: 15px;
  line-height: 2.1;
  text-align: center;
  padding: 14px 10px;
  margin-bottom: 10px;
}
.trance .trance-big {
  font-size: 19px;
  letter-spacing: 6px;
  color: #ffcc00;
  margin: 6px 0 0;
}

/* ---------------------------------------------------------------- 3D 漫游 */
.walk-shell { background: #101312; border: 2px inset #4a4a44; padding: 8px; }
.walk-shell .bar {
  color: #c9d6c9;
  font: 12px/1.7 "SimHei", "黑体", "SimSun", sans-serif;
  letter-spacing: 2px;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding-bottom: 4px;
}
.walk-shell .bar .t { color: #ffb000; }
#walk-canvas {
  display: block;
  width: 100%;
  height: auto;
  background: #000;
  border: 1px solid #333;
  image-rendering: pixelated;
}
.walk-cap {
  min-height: 44px;
  margin-top: 6px;
  padding: 5px 8px;
  background: #050807;
  border: 1px solid #223344;
  color: #b8e6c0;
  font: 13px/1.8 "KaiTi", "楷体", "SimSun", serif;
}
.walk-cap b { color: #ffcc00; }
.walk-cap a { color: #7fd4ff; }
.walk-pad { text-align: center; margin-top: 6px; }
.walk-pad button {
  font: 700 15px/1 "SimSun", serif;
  width: 54px; height: 40px;
  margin: 2px;
  background: #ece9d8;
  border: 1px solid;
  border-color: #ffffff #716f64 #716f64 #ffffff;
  cursor: pointer;
}
.walk-pad button:active { border-color: #716f64 #ffffff #ffffff #716f64; }

/* ---------------------------------------------------------------- 声音开关 */
.sndctl {
  position: fixed;
  right: 6px; bottom: 6px;
  z-index: 998;
  font: 12px/1.6 "SimSun", "宋体", serif;
  color: #17304d;
  background: #ece9d8;
  border: 1px solid;
  border-color: #ffffff #716f64 #716f64 #ffffff;
  padding: 1px 8px;
  cursor: pointer;
}
.sndctl.off { color: #8a8577; background: #e0ddd0; }

/* ---------------------------------------------------------------- 页面间的年代差异（刻意不一致） */
/* 档案摘录页：更旧的黄底栏目条 */
body[data-page="notice"] .panel > h2,
body[data-page="notice"] .panel > h3 { background: #efe9d4; border-bottom-color: #a09a80; color: #4a3a12; }
/* 论坛版面：栏目条偏灰蓝，表格字号大一号（另一拨人做的） */
body[data-page="forum-index"] .panel > h2 { background: #dfe3ea; }
body[data-page="forum-index"] table.grid { font-size: 13px; }
/* 校史页：表格行高更挤（2004 年做的） */
body[data-page="history"] table.grid td { padding: 3px 6px; line-height: 1.5; }
/* 口述/手抄页：正文字号略大（后期录入） */
body[data-page="oral"] .panel .body, body[data-page="score"] .panel .body { font-size: 13px; }

/* ==========================================================================
   顶栏改版（2005-09）：白底横幅 + 红字校名 + 印章，替代色带式报头
   （后期重做页面时换的样式，与早期页面并存——刻意不同）
   ========================================================================== */
.led {
  background: #f5f3e8;
  color: #6b5a1f;
  font: 12px/1.9 "SimSun", "宋体", serif;
  letter-spacing: 0;
  text-align: center;
  border-bottom: 1px solid #c9c4b0;
}
.led .dim { color: #8a8577; }
.led .warn { color: #a30000; font-weight: 700; }

.site-head {
  background: #fdfcf5;
  border-bottom: 3px double #9b1c1c;
  color: #333;
  padding: 12px 14px 10px;
}
.seal {
  width: 54px; height: 54px;
  border: 2px solid #9b1c1c;
  color: #9b1c1c;
  background: #ffffff;
  font: 700 22px/50px "KaiTi", "楷体", "SimSun", serif;
  box-shadow: none;
}
.site-head h1 {
  font: 700 24px/1.35 "SimSun", "宋体", serif;
  color: #8f1d1d;
  letter-spacing: 1px;
}
.site-head .sub { color: #6f6b5c; }
body.evening .site-head, body.trance-night .site-head {
  background: #101c26;
  border-bottom-color: #2c4a5e;
}
body.evening .site-head h1, body.trance-night .site-head h1 { color: #b9d6e2; }
body.evening .seal, body.trance-night .seal {
  border-color: #b9d6e2; color: #b9d6e2; background: transparent;
}

/* 导航：老门户式的小方块 */
.menu a {
  display: inline-block;
  padding: 2px 12px;
  background: #f5f3e8;
  border: 1px solid #b5b1a2;
  color: #0044aa;
  text-decoration: none;
  margin: 2px 1px;
}
.menu a + a:before { content: none; }
.menu a.on {
  background: #9b1c1c;
  color: #ffffff;
  border-color: #7a1414;
  font-weight: 400;
}
.menu a.on:visited { color: #ffffff; }

/* 栏目标题：去掉刻意拉开的车距 */
.panel > h2, .panel > h3 { letter-spacing: 0; }

/* 夜色状态下副标题可读性（白底横幅改色的配套） */
body.evening .site-head .sub, body.trance-night .site-head .sub { color: #b9d6e2; }
body.evening .site-head, body.trance-night .site-head { color: #dfe8ea; }
