/* =========================================================
   信息披露页 disclosure.css
   - Banner 高度/底图规则复用 about.css（jxzn-page__other）
   - 本文件只负责：hero 副标题 + 列表卡片 + 筛选 + 表格 + 空状态 + 分页
   ========================================================= */

/* ---------- 第一屏：一整屏一张背景图 ----------
   disclosure-bg 压顶、满宽按比例（约 900 高）；底部本就渐暗，
   再叠一道渐变融入 section 深色 → hero 文字 + 卡片都浮在这张图上，无接缝 */
.jxzn-disclosure-screen {
    position: relative;
    background: #05080f;
    padding: clamp(120px, 16vh, 220px) 0 clamp(60px, 9vh, 130px);
    min-height: 100vh;
    overflow: hidden;
}
.jxzn-disclosure-screen__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
    pointer-events: none;
}
.jxzn-disclosure-screen__bg img {
    display: block;
    width: 100%;
    height: auto;
}
/* 从顶部 480px 起，向下渐变到深色（先浅后深），盖住蓝色背景图、一直到底部 */
.jxzn-disclosure-screen::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 480px;
    bottom: 0;
    z-index: 0;
    background: linear-gradient(to bottom, rgba(5, 8, 15, 0) 0%, #05080f 62%, #05080f 100%);
    pointer-events: none;
}
.jxzn-disclosure__inner {
    position: relative;
    z-index: 1;
    width: 90%;
    max-width: 1200px;          /* 主体宽 1200 */
    margin: 0 auto;
}

/* ---------- Hero（标题 + 副标题，叠在背景图上） ---------- */
.jxzn-disclosure-hero {
    text-align: center;
    margin-bottom: 76px;        /* 副标题 → 主体卡片 间距 76px */
}
.jxzn-disclosure-hero__title {
    margin: 0;
    color: #fff;
    font-size: clamp(34px, 3.4vw, 60px);
    font-weight: 700;
    letter-spacing: 0.04em;
}
.jxzn-disclosure-hero__subtitle {
    margin: 16px auto 0;
    max-width: 760px;
    color: rgba(255, 255, 255, 0.72);
    font-size: clamp(14px, 0.94vw, 18px);
    line-height: 1.7;
    text-align: center;
}

/* ---------- 卡片面板 ----------
   关键视觉：
   1) 本体背景做"顶部 #000E2A → 底部 #05080f（=section 背景色）"的垂直渐变，
      让卡片底部颜色与页面背景融为一体，整块往下"溶解"
   2) 描边通过 ::before + mask 镂空实现，从顶部亮蓝逐渐淡到底端完全透明，
      达到"顶亮、左右渐隐、底边几乎消失"的若隐若现观感 */
.jxzn-disclosure__card {
    position: relative;         /* ::before 的定位基准 */
    width: 100%;
    min-height: 454px;          /* 主体 1200×454（高随内容增多而增长） */
    padding: clamp(24px, 3vw, 40px);
    border-radius: 40px;        /* 四角 40 */
    background: linear-gradient(180deg,
        #000E2A 0%,
        #000E2A 55%,
        #030820 80%,
        #05080f 100%
    );
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
}
.jxzn-disclosure__card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    padding: 1.5px;             /* 边框厚度 */
    background: linear-gradient(180deg,
        rgba(149, 191, 232, 0.95) 0%,
        rgba(130, 175, 222, 0.62) 25%,
        rgba(110, 155, 205, 0.30) 55%,
        rgba(100, 140, 190, 0.08) 85%,
        rgba(100, 140, 190, 0)    100%
    );
    /* mask 双层 xor：只保留 padding 那一圈宽度，做成镂空边框 */
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    pointer-events: none;
}

/* ---------- 类型筛选（下拉） ---------- */
.jxzn-disclosure__filter {
    position: relative;
    display: inline-block;
    margin-bottom: 22px;
}
.jxzn-disclosure__filter-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 20px;
    border: 0;
    border-radius: 12px;
    /* 蓝色渐变（占位，待替换为设计的精确色值，见对话说明） */
    background: linear-gradient(135deg, #e3efff 0%, #b4d2f4 100%);
    color: #0d2a52;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: filter .2s;
}
.jxzn-disclosure__filter-btn:hover { filter: brightness(1.04); }
.jxzn-disclosure__filter-grid { width: 16px; height: 16px; display: block; }
.jxzn-disclosure__filter-caret {
    width: 11px; height: 11px; fill: none;
    stroke: #0d2a52; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round;
    transition: transform .2s;
}
.jxzn-disclosure__filter.is-open .jxzn-disclosure__filter-caret { transform: rotate(180deg); }

.jxzn-disclosure__filter-menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    min-width: 100%;
    margin: 0;
    padding: 6px;
    list-style: none;
    background: #0c1733;
    border: 1px solid rgba(120, 160, 255, 0.22);
    border-radius: 10px;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity .18s, transform .18s, visibility .18s;
    z-index: 20;
}
.jxzn-disclosure__filter.is-open .jxzn-disclosure__filter-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.jxzn-disclosure__filter-menu a {
    display: block;
    padding: 8px 14px;
    border-radius: 7px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 14px;
    white-space: nowrap;
    text-decoration: none;
    transition: background .15s, color .15s;
}
.jxzn-disclosure__filter-menu a:hover { background: rgba(91, 157, 255, 0.14); color: #fff; }
.jxzn-disclosure__filter-menu a.is-active { background: rgba(91, 157, 255, 0.2); color: #cfe0ff; }

/* ---------- 表格 ---------- */
.jxzn-disclosure__table-wrap { width: 100%; overflow-x: auto; }
.jxzn-disclosure__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 15px;
}
.jxzn-disclosure__table thead th {
    padding: 14px 16px;
    color: rgba(255, 255, 255, 0.55);
    font-weight: 500;
    text-align: left;
    white-space: nowrap;
    background: rgba(120, 160, 255, 0.06);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.jxzn-disclosure__table thead th:first-child { border-radius: 10px 0 0 10px; }
.jxzn-disclosure__table thead th:last-child  { border-radius: 0 10px 10px 0; }
.jxzn-disclosure__table tbody td {
    padding: 18px 16px;
    color: rgba(255, 255, 255, 0.86);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    vertical-align: middle;
}
.jxzn-disclosure__table tbody tr:hover td { background: rgba(91, 157, 255, 0.05); }

.jxzn-disclosure__table .col-date  { width: 22%; white-space: nowrap; color: rgba(255,255,255,0.72); }
.jxzn-disclosure__table .col-type  { width: 16%; }
.jxzn-disclosure__table .col-title { width: 46%; }
.jxzn-disclosure__table .col-action{ width: 16%; white-space: nowrap; }

.jxzn-disclosure__table .col-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 0;
}

/* 日期前小圆点 */
.jxzn-disclosure__dot {
    display: inline-block;
    width: 7px; height: 7px;
    margin-right: 10px;
    border-radius: 50%;
    background: #5b9dff;
    box-shadow: 0 0 8px rgba(91, 157, 255, 0.8);
    vertical-align: middle;
}

/* 类型 badge */
.jxzn-disclosure__badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 13px;
    line-height: 1.6;
    white-space: nowrap;
}
.jxzn-disclosure__badge.is-announcement { color: #6aa6ff; background: rgba(56, 130, 246, 0.16); }
.jxzn-disclosure__badge.is-disclosure   { color: #36d6a0; background: rgba(46, 204, 140, 0.16); }

/* 操作链接 */
.jxzn-disclosure__act {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #6aa6ff;
    font-size: 14px;
    text-decoration: none;
    transition: color .15s;
}
.jxzn-disclosure__act img { width: 17px; height: 17px; display: block; }
.jxzn-disclosure__act:hover { color: #9fc2ff; }

/* ---------- 空状态条 ----------
   去掉描边，仅靠极淡蓝色雾化层显形，呼应卡片底部融背景的"若隐若现"基调 */
.jxzn-disclosure__empty {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 22px;
    padding: 22px 24px;
    border-radius: 12px;
    background: rgba(120, 160, 255, 0.035);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
.jxzn-disclosure__empty-icon {
    flex: 0 0 auto;
    display: block;
    width: 52px;
    height: 52px;
    opacity: 0.85;
}
.jxzn-disclosure__empty-text { display: flex; flex-direction: column; gap: 4px; }
.jxzn-disclosure__empty-text strong { color: rgba(255, 255, 255, 0.72); font-size: 15px; font-weight: 600; }
.jxzn-disclosure__empty-text span { color: rgba(255, 255, 255, 0.4); font-size: 13px; }

/* ---------- 分页（套 ThinkPHP paginate 默认结构 .pagination） ---------- */
.jxzn-disclosure__pager { margin-top: 28px; display: flex; justify-content: center; }
.jxzn-disclosure__pager .pagination {
    display: flex;
    gap: 8px;
    padding: 0;
    margin: 0;
    list-style: none;
}
.jxzn-disclosure__pager .pagination li > * {
    display: block;
    min-width: 36px;
    padding: 7px 12px;
    border: 1px solid rgba(120, 160, 255, 0.2);
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 14px;
    text-align: center;
    text-decoration: none;
    transition: background .15s, border-color .15s, color .15s;
}
.jxzn-disclosure__pager .pagination li > a:hover {
    background: rgba(91, 157, 255, 0.14);
    border-color: rgba(120, 160, 255, 0.4);
    color: #fff;
}
.jxzn-disclosure__pager .pagination li.active > * {
    background: rgba(91, 157, 255, 0.22);
    border-color: rgba(120, 160, 255, 0.5);
    color: #cfe0ff;
}
.jxzn-disclosure__pager .pagination li.disabled > * { opacity: .4; pointer-events: none; }

/* ---------- 响应式 ---------- */
@media (max-width: 1023px) {
    .jxzn-disclosure-hero { margin-bottom: 40px; }
    .jxzn-disclosure__card { padding: 18px 14px; min-height: auto; border-radius: 24px; }
    .jxzn-disclosure__table { font-size: 13.5px; }
    .jxzn-disclosure__table thead th,
    .jxzn-disclosure__table tbody td { padding: 12px 10px; }
    .jxzn-disclosure__table .col-title { max-width: 220px; }
    .jxzn-disclosure-hero__subtitle { font-size: 14px; padding: 0 16px; }
}

/* 英文 SP */
@media (max-width: 767px) {
    html[lang="en"] .jxzn-disclosure-hero__subtitle {
        font-size: 13px;
        line-height: 1.45;
        overflow-wrap: anywhere;
    }
    html[lang="en"] .jxzn-disclosure__filter-btn {
        font-size: 13px;
        line-height: 1.3;
        white-space: normal;
        text-align: left;
    }
    html[lang="en"] .jxzn-disclosure__filter-menu a {
        white-space: normal;
        font-size: 13px;
        line-height: 1.35;
    }
    html[lang="en"] .jxzn-disclosure__table {
        font-size: 12.5px;
    }
    html[lang="en"] .jxzn-disclosure__table thead th,
    html[lang="en"] .jxzn-disclosure__table tbody td {
        padding: 10px 8px;
    }
    html[lang="en"] .jxzn-disclosure__table .col-date {
        white-space: normal;
        line-height: 1.3;
    }
    html[lang="en"] .jxzn-disclosure__table .col-title {
        white-space: normal;
        max-width: none;
        overflow: visible;
        text-overflow: unset;
        word-break: break-word;
        overflow-wrap: anywhere;
        line-height: 1.35;
    }
    html[lang="en"] .jxzn-disclosure__badge {
        white-space: normal;
        font-size: 11px;
        line-height: 1.3;
        padding: 3px 8px;
        text-align: center;
    }
    html[lang="en"] .jxzn-disclosure__table .col-action {
        white-space: normal;
    }
    html[lang="en"] .jxzn-disclosure__act {
        font-size: 12px;
        line-height: 1.3;
        flex-wrap: wrap;
    }
}
