/* ===== 培训管理子页：报名系统（CTA 引导式，与信用体系在线申请一致） ===== */

        .panel-head { margin-bottom: 26px; }

        /* 去掉副标题后，正文与标题保持适当距离 */
        #train-signup .panel-head { margin-bottom: 14px; }

        /* 报名流程步骤横向 */

        .apply-flow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 28px 0 30px; }

        .flow-step {

            position: relative; background: var(--bg-light); border: 1px solid var(--border-color);

            border-radius: var(--radius-md); padding: 22px 18px 20px;

        }

        .flow-step .step-no {

            width: 30px; height: 30px; border-radius: 50%; font-size: 14px; font-weight: 700; color: #fff;

            background: linear-gradient(135deg, var(--primary-blue), var(--accent-blue));

            display: flex; align-items: center; justify-content: center; margin-bottom: 12px;

        }

        .flow-step h4 { font-size: 16px; color: var(--text-primary); margin-bottom: 8px; }

        .flow-step p { font-size: 13px; color: var(--text-secondary); line-height: 1.7; }

        .flow-step:not(:last-child)::after {

            content: ''; position: absolute; top: 37px; right: -9px; width: 18px; height: 2px;

            background: var(--border-color);

        }

        /* 报名入口卡 */

        .apply-cta {

            display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;

            background: linear-gradient(135deg, rgba(10,50,108,0.04), rgba(79,163,255,0.08));

            border: 1px solid var(--border-color); border-radius: var(--radius-md);

            padding: 24px 28px;

        }

        .apply-cta .cta-text h4 { font-size: 18px; color: var(--text-primary); }

        .apply-cta .cta-text p { margin-top: 6px; font-size: 14px; color: var(--text-secondary); line-height: 1.7; }

        @media (max-width: 980px) {

            .apply-flow { grid-template-columns: repeat(2, 1fr); }

            .apply-flow .flow-step:nth-child(2)::after { display: none; }

        }

        @media (max-width: 640px) {

            .apply-flow { grid-template-columns: 1fr; }

            .apply-flow .flow-step::after { display: none; }

            .apply-cta { flex-direction: column; align-items: flex-start; }

        }
