/* 第3套：zh · 青绿侧栏看盘台 */
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }
body {
  font-family: Tahoma, "Microsoft YaHei", "PingFang SC", sans-serif;
  background: #d1e8e2;
  color: #2c3531;
  font-size: 15px;
  line-height: 1.7;
}
a { color: #116466; }
.frame { display: flex; min-height: 100vh; }
.rail {
  width: 238px;
  background: #2c3531;
  color: #d1e8e2;
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 22px 16px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.mark {
  color: #d1e8e2;
  text-decoration: none;
  font-size: 22px;
  letter-spacing: 0.16em;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
}
.side-nav a {
  display: block;
  color: #d1e8e2;
  text-decoration: none;
  padding: 9px 10px;
  margin-bottom: 6px;
  border-left: 3px solid transparent;
}
.side-nav a.here { background: #116466; border-left-color: #d9b08c; }
.side-dl {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: auto;
}
.side-dl a {
  background: #116466;
  color: #fff;
  text-decoration: none;
  text-align: center;
  padding: 8px 6px;
  font-size: 13px;
}
.stage { flex: 1; padding: 22px 28px 40px; }
.board {
  background: #f4fffd;
  border: 1px solid #9fc9c3;
  padding: 22px 24px;
  margin-bottom: 18px;
}
.board h1 { font-size: 28px; line-height: 1.4; margin-bottom: 12px; color: #116466; }
.rowbtns { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 4px; }
.tbtn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #116466;
  color: #fff;
  text-decoration: none;
  padding: 9px 14px;
  font-size: 13px;
}
.tbtn.alt { background: #2c3531; }
.tbtn.ghost { background: #fff; color: #116466; border: 1px solid #116466; }
.tilebox { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 18px; }
.tile {
  background: #f4fffd;
  border: 1px solid #9fc9c3;
  padding: 16px;
}
.tile h2, .board h2, .note h2, .full h2 {
  font-size: 19px;
  color: #116466;
  margin-bottom: 10px;
}
.full, .note {
  background: #f4fffd;
  border: 1px solid #9fc9c3;
  padding: 16px 18px;
  margin-bottom: 18px;
}
.full p, .tile p, .board p, .note p { margin-bottom: 10px; }
.kv { width: 100%; border-collapse: collapse; font-size: 13px; }
.kv th, .kv td { border: 1px solid #9fc9c3; padding: 7px 8px; text-align: left; }
.kv th { background: #116466; color: #fff; }
.feed li { list-style: none; padding: 10px 0; border-bottom: 1px dotted #9fc9c3; }
.feed time { color: #c38e70; font-size: 12px; margin-right: 8px; }
details {
  background: #f4fffd;
  border: 1px solid #9fc9c3;
  margin-bottom: 8px;
  padding: 8px 12px;
}
summary { cursor: pointer; color: #116466; font-weight: 700; }
.colophon {
  background: #2c3531;
  color: #d1e8e2;
  padding: 16px 18px;
  font-size: 12px;
}
.colophon a { color: #d9b08c; }
@media (max-width: 900px) {
  .frame { display: block; }
  .rail { position: relative; width: auto; height: auto; }
  .tilebox { grid-template-columns: 1fr; }
  .stage { padding: 16px; }
}
