/* =============================================================
   PAGE.CSS — 内容单页专属样式
   ============================================================= */

/* ====== Page Body ====== */
.page-body { padding: 3rem 0; }

/* ====== Sidebar ====== */
.page-sidebar { position: sticky; top: 80px; }
.page-sidebar .sb-title {
  font-size: 1rem; font-weight: 700; color: #fff;
  background: linear-gradient(135deg, var(--c-teal-700), var(--c-teal-500));
  padding: 0.8rem 1.2rem; border-radius: var(--radius-round) var(--radius-round) 0 0;
  margin-bottom: 0;
}
.page-sidebar .sb-list {
  list-style: none; padding: 0; margin: 0; background: var(--c-snow);
  border: 1px solid #e8ecf0; border-top: none;
  border-radius: 0 0 var(--radius-round) var(--radius-round); overflow: hidden;
}
.page-sidebar .sb-list li a {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0.7rem 1.2rem; font-size: 0.85rem; color: var(--c-ink-60);
  border-bottom: 1px solid #f0f3f7; transition: 0.2s;
}
.page-sidebar .sb-list li:last-child a { border-bottom: none; }
.page-sidebar .sb-list li a:hover { background: var(--c-ice); color: var(--c-teal-500); padding-left: 1.5rem; }
.page-sidebar .sb-list li a.active {
  background: rgba(13,115,119,0.06); color: var(--c-teal-500); font-weight: 600;
  border-left: 3px solid var(--c-teal-500);
}
.page-sidebar .sb-list li a i { font-size: 0.7rem; opacity: 0.5; }
.page-sidebar .sb-contact {
  margin-top: 1.5rem; background: var(--c-ink);
  border-radius: var(--radius-round); padding: 1.2rem; color: rgba(255,255,255,0.7);
}
.page-sidebar .sb-contact h6 { color: #fff; font-size: 0.85rem; margin-bottom: 0.6rem; }
.page-sidebar .sb-contact p { font-size: 0.78rem; margin-bottom: 0.3rem; }
.page-sidebar .sb-contact p i { color: var(--c-teal-300); margin-right: 0.4rem; }

/* ====== Content ====== */
.page-content {
  background: var(--c-snow); border-radius: var(--radius-round);
  padding: 2rem 2.2rem; box-shadow: var(--shadow-s);
}
.page-content h2 {
  font-size: 1.4rem; font-weight: 700; color: var(--c-ink);
  padding-bottom: 0.6rem; margin-bottom: 1.2rem;
  border-bottom: 2px solid var(--c-teal-100); position: relative;
}
.page-content h2::after {
  content: ''; position: absolute; bottom: -2px; left: 0;
  width: 60px; height: 2px; background: var(--c-teal-500);
}
.page-content h3 {
  font-size: 1.05rem; font-weight: 700; color: var(--c-ink);
  margin: 1.5rem 0 0.6rem; padding-left: 0.7rem; border-left: 3px solid var(--c-teal-300);
}
.page-content p { font-size: 0.88rem; color: var(--c-ink-60); line-height: 1.9; margin-bottom: 0.8rem; text-indent: 2em; }
.page-content p.no-indent { text-indent: 0; }
.page-content ul, .page-content ol { font-size: 0.88rem; color: var(--c-ink-60); line-height: 1.9; padding-left: 1.5rem; margin-bottom: 1rem; }
.page-content ul li, .page-content ol li { margin-bottom: 0.3rem; }
.page-content strong { color: var(--c-ink); }
.page-content .info-box {
  background: var(--c-ice); border-radius: var(--radius-round);
  padding: 1rem 1.2rem; margin: 1rem 0; border-left: 3px solid var(--c-coral);
}
.page-content .info-box p { text-indent: 0; margin-bottom: 0; font-size: 0.82rem; }
.page-content table { width: 100%; font-size: 0.82rem; margin: 1rem 0; border-collapse: collapse; }
.page-content table th { background: var(--c-teal-500); color: #fff; padding: 0.6rem 0.8rem; text-align: left; font-weight: 600; }
.page-content table td { padding: 0.6rem 0.8rem; border-bottom: 1px solid #e8ecf0; color: var(--c-ink-60); }
.page-content table tr:hover td { background: var(--c-ice); }
.page-nav {
  display: flex; justify-content: space-between;
  margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid #e8ecf0;
}
.page-nav a { font-size: 0.82rem; color: var(--c-ink-40); display: inline-flex; align-items: center; gap: 0.3rem; transition: 0.2s; }
.page-nav a:hover { color: var(--c-teal-500); }
.page-nav .pn-label { font-size: 0.72rem; color: var(--c-ink-40); display: block; }

/* ====== Responsive ====== */
@media (max-width: 991px) {
  .page-sidebar { position: static; margin-bottom: 1.5rem; }
  .page-content { padding: 1.5rem; }
  .page-banner h1 { font-size: 1.5rem; }
}
