/* ============================================================
   统一放大「最新资讯 / 活动日历 / 游客打卡墙 / 游客问答墙」
   四个互动页面的阅读字号 —— 与首页 Bootstrap 标题层级对齐。

   对齐首页字号体系（首页使用 Bootstrap 默认）：
   - 页面大标题    : 36px  (同首页 h1)
   - 区块/栏目标题  : 30px  (同首页 h2)
   - 卡片标题      : 22px  (介于首页 h3/h4 之间，加粗)
   - 正文/描述     : 16px  (舒适阅读档，略大于首页 14px 正文)
   - 次要信息/元信息 : 15px
   - 小标签/角标    : 14px
   全部使用 !important，覆盖模板内零散的 px/rem 声明。
   ============================================================ */

/* ---------- 统一基准：四个页面容器 ---------- */
.news-page,
.calendar-page,
.checkin-page,
.qa-wall-page {
    font-size: 16px !important;
    line-height: 1.85 !important;
    color: #333;
}

/* ============================================================
   1) 最新资讯页
   ============================================================ */
.news-page .page-main-title     { font-size: 36px !important; }
.news-page .page-subtitle       { font-size: 20px !important; }
.news-page .section-header h2,
.news-page .section-header h3   { font-size: 30px !important; }
.news-page .section-subtitle    { font-size: 18px !important; }
.news-page .filter-tab          { font-size: 18px !important; }
.news-page .search-input        { font-size: 18px !important; }
.news-page .location-tag        { font-size: 16px !important; }
.news-page .user-name           { font-size: 18px !important; }
.news-page .star-rating         { font-size: 16px !important; }
.news-page .checkin-text        { font-size: 18px !important; }
.news-page .empty-checkin-tip p { font-size: 22px !important; }
.news-page .empty-checkin-tip span { font-size: 18px !important; }

/* 资讯卡片 —— 核心可读区域，对齐首页卡片/区块层级 */
.news-page .news-title          { font-size: 22px !important; font-weight: 600; }
.news-page .news-excerpt        { font-size: 16px !important; line-height: 1.8; }
/* 资讯页内嵌的打卡/问答卡片也纳入统一字号 */
.news-page .card-title          { font-size: 22px !important; font-weight: 600; }
.news-page .card-content        { font-size: 16px !important; line-height: 1.8; }
.news-page .meta-item           { font-size: 15px !important; }
.news-page .news-date           { font-size: 15px !important; }
.news-page .btn-action          { font-size: 16px !important; }
.news-page .btn-detail          { font-size: 16px !important; padding: 9px 22px; }

/* 路线 / 景点弹窗区块 */
.news-page .route-author-info    { font-size: 16px !important; }
.news-page .route-badge         { font-size: 15px !important; }
.news-page .attraction-info-label { font-size: 16px !important; }
.news-page .attraction-info-value { font-size: 18px !important; }
.news-page .detail-section-title { font-size: 24px !important; }
.news-page .detail-text         { font-size: 16px !important; line-height: 1.8; }
.news-page .itinerary-day-title { font-size: 18px !important; }
.news-page .itinerary-day-content { font-size: 18px !important; }

/* 问答卡片（嵌在资讯页） */
.news-page .qa-card-question     { font-size: 16px !important; }
.news-page .qa-card-reply-content { font-size: 18px !important; }
.news-page .qa-author-info      { font-size: 15px !important; }

/* 热门排行侧栏 */
.news-page .hot-rank-views      { font-size: 15px !important; }
.news-page .hot-rank-empty      { font-size: 16px !important; }

/* 登录提示 */
.news-page .login-prompt-content h3 { font-size: 26px !important; }
.news-page .login-prompt-content p  { font-size: 16px !important; }

/* ============================================================
   2) 活动日历页 —— 与首页标题层级对齐
   ============================================================ */
.calendar-page .breadcrumb-trail { font-size: 16px !important; }
.calendar-page .cal-header h1    { font-size: 36px !important; }
.calendar-page .cal-header p     { font-size: 18px !important; }
.calendar-page .cal-month-title  { font-size: 30px !important; font-weight: 700; }
.calendar-page .cal-item-body h3 { font-size: 22px !important; font-weight: 600; }
.calendar-page .cal-item-body p  { font-size: 16px !important; line-height: 1.8; }
.calendar-page .cal-item-date    { font-size: 16px !important; }
.calendar-page .cal-empty p      { font-size: 22px !important; }

/* ============================================================
   3) 游客打卡墙页
   ============================================================ */
.checkin-page .page-header-section h1 { font-size: 36px !important; }
.checkin-page .page-subtitle          { font-size: 18px !important; }
.checkin-page .card-title             { font-size: 22px !important; font-weight: 600; }
.checkin-page .card-content           { font-size: 16px !important; line-height: 1.8; }
.checkin-page .card-user-name         { font-size: 18px !important; }
.checkin-page .card-user-time         { font-size: 15px !important; }
.checkin-page .card-action-btn        { font-size: 16px !important; }
.checkin-page .comment-name           { font-size: 16px !important; }
.checkin-page .comment-content        { font-size: 16px !important; }
.checkin-page .form-section-title     { font-size: 30px !important; }
.checkin-page .login-modal h3         { font-size: 30px !important; }
.checkin-page .tag-checkbox span      { font-size: 16px !important; }
.checkin-page .empty-state            { font-size: 20px !important; }
.checkin-page .btn-publish-checkin,
.checkin-page .btn-login              { font-size: 16px !important; }

/* ============================================================
   4) 游客问答墙页
   ============================================================ */
.qa-wall-page .page-header-section h1 { font-size: 36px !important; }
.qa-wall-page .page-subtitle          { font-size: 18px !important; }
.qa-wall-page .stat-number            { font-size: 40px !important; }
.qa-wall-page .stat-label             { font-size: 15px !important; }
.qa-wall-page .qa-status-badge        { font-size: 15px !important; }
.qa-wall-page .qa-question-content    { font-size: 16px !important; line-height: 1.8; }
.qa-wall-page .qa-meta                { font-size: 16px !important; }
.qa-wall-page .qa-time                { font-size: 15px !important; }
.qa-wall-page .qa-action-btn          { font-size: 16px !important; }
.qa-wall-page .admin-badge            { font-size: 15px !important; }
.qa-wall-page .admin-time             { font-size: 15px !important; }
.qa-wall-page .admin-content          { font-size: 18px !important; }
.qa-wall-page .reply-content          { font-size: 18px !important; }
.qa-wall-page .reply-time             { font-size: 15px !important; }
.qa-wall-page .qa-empty h4            { font-size: 22px !important; }
.qa-wall-page .qa-empty p             { font-size: 16px !important; }
.qa-wall-page .login-prompt-content h3 { font-size: 26px !important; }
.qa-wall-page .login-prompt-content p  { font-size: 16px !important; }
.qa-wall-page .modal-header h3        { font-size: 30px !important; }
.qa-wall-page .modal-body p           { font-size: 18px !important; }
.qa-wall-page .form-group label       { font-size: 18px !important; }
.qa-wall-page .ask-question-btn,
.qa-wall-page .btn-login              { font-size: 16px !important; }

/* ---------- 移动端适配 ---------- */
@media (max-width: 768px) {
    .news-page,
    .calendar-page,
    .checkin-page,
    .qa-wall-page { font-size: 16px !important; line-height: 1.8 !important; }

    .news-page .page-main-title,
    .calendar-page .cal-header h1,
    .checkin-page .page-header-section h1,
    .qa-wall-page .page-header-section h1 { font-size: 28px !important; }

    .news-page .section-header h2,
    .news-page .section-header h3,
    .calendar-page .cal-month-title,
    .checkin-page .form-section-title,
    .checkin-page .login-modal h3,
    .qa-wall-page .modal-header h3 { font-size: 24px !important; }

    .news-page .news-title,
    .news-page .card-title,
    .calendar-page .cal-item-body h3 { font-size: 20px !important; }

    .news-page .news-excerpt,
    .news-page .card-content,
    .calendar-page .cal-item-body p,
    .checkin-page .card-content,
    .qa-wall-page .qa-question-content { font-size: 16px !important; }
}
