/* ========================================================================= */
/* === 移动端与中小屏幕适配响应式代码 (Media Queries) === */
/* ========================================================================= */

/* 强制导航文字不折行，宁可超出也不要挤成一坨 */
.nav-menu>li>a,
.header-contact,
.logo-text,
.logo-tagline span {
    white-space: nowrap;
}
@media (max-width: 1600px) {
    .nav-menu>li>a{
        font-size: 15px;
    }
}
/* 1. 笔记本电脑屏幕 (1400px以下)：稍微缩小字号和间距 */
@media (max-width: 1400px) {
    .nav-menu>li {
        padding: 0 10px;
    }

    .nav-menu>li>a {
        font-size: 15px;
    }

    .logo-text {
        font-size: 22px;
    }

    .header-contact {
        font-size: 18px;
    }
    .kb-grid { grid-template-columns: repeat(3, 1fr); }
}

/* 2. 小尺寸笔记本/iPad横屏 (1200px以下)：隐藏副标题省空间，极限压缩间距 */
@media (max-width: 1200px) {

    .logo-tagline,
    .logo-divider {
        display: none;
    }

    /* 隐藏副标题 */
    .nav-menu>li {
        padding: 0 6px;
    }

    .nav-menu>li>a {
        font-size: 14px;
        gap: 3px;
    }

    .header-contact {
        font-size: 16px;
    }

    /* 底部其他模块的压缩 */
    .content-columns {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-links-area {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 30px;
        border: none;
    }

    .footer-col {
        width: 30%;
    }
}

/* 3. 平板/手机端 (1024px以下)：实在放不下，提前呼出汉堡菜单！ */
@media (max-width: 1024px) {
    .logo-text img {
        max-height: 60px;
    }

    .top-bar-wrapper {
        display: none;
    }

    /* 顶部黑条隐藏 */

    /* 手机版顶部与汉堡菜单 */
    header {
        height: 60px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
    }

    .logo-text {
        font-size: 20px;
    }

    .header-contact {
        display: none;
    }

    /* 顶部电话隐藏，留给移动端底栏 */
    .mobile-menu-btn {
        display: block;
    }

    /* 移动端下拉菜单覆盖 */
    .nav-menu {
        display: none;
        position: absolute;
        top: 60px;
        left: 0;
        width: 100%;
        background: #fff;
        flex-direction: column;
        height: auto;
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        padding: 0;
    }

    .nav-menu.active {
        display: flex;
    }

    /* 强制 li 为块级元素 */
    .nav-menu>li {
        display: block;
        width: 100%;
        padding: 0;
        border-bottom: 1px solid #f4f4f4;
    }

    .nav-menu>li>a {
        display: flex;
        justify-content: space-between;
        padding: 15px 20px;
        width: 100%;
        font-size: 16px;
    }

    .nav-menu>li>a::after {
        display: none;
    }

    .nav-menu>li.mobile-active>a {
        color: var(--primary-color);
    }

    .nav-menu>li.mobile-active>a i {
        transform: rotate(180deg);
        color: var(--primary-color);
    }

    /* 完全覆盖 PC 端的 dropdown 属性 */
    .dropdown {
        position: static !important;
        box-shadow: none !important;
        display: none !important;
        transform: none !important;
        width: 100%;
        padding: 0;
        border: none !important;
        background: #fafafa;
    }

    .dropdown::before {
        display: none !important;
    }

    .nav-menu>li.mobile-active .dropdown,
    .nav-menu>li:hover .dropdown {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
    }

    .dropdown li a {
        padding: 12px 20px 12px 40px;
        color: #666;
        font-size: 14px;
        border-bottom: 1px solid #f0f0f0;
    }

    .dropdown li:last-child a {
        border-bottom: none;
    }

    /* 主内容区域的单列化压缩 */
    .hero {
        height: auto;
        min-height: 500px;
        padding: 40px 0 80px 0;
    }

    .hero-bg-img {
        opacity: 0.2;
        width: 100%;
    }

    .hero-content {
        width: 100%;
        text-align: center;
    }

    .hero-title {
        font-size: 32px;
    }

    .hero-features {
        justify-content: center;
    }

    .hero-btns {
        justify-content: center;
    }

    .btn-main,
    .btn-outline {
        width: 100%;
        max-width: 300px;
    }

    .hero-wave-white {
        height: 100px;
        bottom: -30px;
    }

    .hero-wave-green {
        height: 80px;
    }

    .ai-panel-wrapper {
        margin-top: -40px;
    }

    .ai-form {
        flex-direction: column;
        gap: 15px;
        align-items: stretch;
    }

    .btn-submit {
        margin-top: 10px;
    }

    .service-matrix-panel {
        flex-wrap: wrap;
        padding: 20px 0;
    }

    .matrix-item {
        flex: none;
        width: 50%;
        padding: 20px 10px;
        border-bottom: 1px solid var(--border-color);
    }

    .matrix-item:nth-child(even) {
        border-right: none;
    }

    .matrix-item:nth-last-child(-n+2) {
        border-bottom: none;
    }

    .stats-banner {
        flex-direction: column;
        gap: 20px;
        padding: 40px 20px;
    }

    .stat-divider {
        width: 80%;
        height: 1px;
    }

    .content-columns {
        grid-template-columns: 1fr;
    }

    .bottom-banners-wrapper {
        flex-direction: column;
    }

    .ai-tool-card {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }

    .ai-tool-img {
        margin-top: 10px;
    }

    .partners-track {
        overflow-x: auto;
        justify-content: flex-start;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 10px;
    }

    .partner-logo {
        margin-right: 30px;
    }

    /* Footer 压缩 */
    .footer-top {
        flex-direction: column;
        gap: 30px;
    }

    .footer-brand {
        width: 100%;
        padding-right: 0;
        text-align: center;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        padding-bottom: 20px;
    }

    .footer-logo-container {
        justify-content: center;
    }

    .footer-links-area {
        width: 100%;
        padding: 0;
        justify-content: space-between;
        border: none;
    }

    .footer-col {
        width: 45%;
    }

    .footer-qr-area {
        width: 100%;
        padding: 0;
        align-items: center;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        padding-top: 30px;
    }

    .qr-box {
        flex-direction: column;
        text-align: center;
    }

    .qr-text {
        text-align: center;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }

    /* 底部快捷操作栏 */
    body {
        padding-bottom: 60px;
    }

    .float-menu {
        top: auto;
        bottom: 0;
        right: 0;
        left: 0;
        width: 100%;
        flex-direction: row;
        border-radius: 0;
        transform: none;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.06);
    }

    .float-item {
        padding: 10px 0;
    }

    .float-item i {
        font-size: 18px;
        margin-bottom: 4px;
    }

    .float-item span {
        font-size: 11px;
    }

    .float-item {
        flex: 1;
        border-bottom: none;
        border-right: 1px solid #f0f0f0;
    }

    .float-item:last-child {
        border-right: none;
    }

    .float-item:hover {
        border-radius: 0;
        background: var(--bg-white);
    }

    .float-popup {
        display: none !important;
    }

    .chat-widget {
        right: 5%;
        bottom: 80px;
        width: 90%;
    }

    .paths-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .icon-nav-container {
        flex-wrap: wrap;
        gap: 20px;
        padding: 20px;
        justify-content: center;
    }

    .icon-nav-item {
        width: 20%;
        min-width: 80px;
    }

    .training-content-body {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 25px;
    }

    .info-split-layout {
        flex-direction: column;
    }

    .training-tabs {
        overflow-x: auto;
    }

    .training-tab {
        min-width: 80px;
    }

    .resource-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        padding: 25px;
    }
 .paths-grid { grid-template-columns: repeat(2, 1fr); }
            .paths-grid .path-card:last-child { grid-column: 1 / -1; grid-template-columns: 1fr; }
            .icon-nav-container { flex-wrap: wrap; justify-content: center; gap: 15px; }
            .icon-nav-item { width: 22%; min-width: 80px; }

 .topics-grid { grid-template-columns: repeat(2, 1fr); }
            .article-faq-section { grid-template-columns: 1fr; gap: 40px; }

  .kb-hero-inner { flex-direction: column; align-items: flex-start; gap: 30px; }
            .kb-search-area { width: 100%; max-width: 100%; }
            .kb-nav-container { flex-wrap: wrap; justify-content: center; gap: 20px; padding: 25px; }
            .kb-nav-item { width: 22%; min-width: 80px; }
            .univ-grid { grid-template-columns: repeat(2, 1fr); }
            .kb-section-header { flex-direction: column; gap: 15px; align-items: flex-start; }

  .tool-layout { grid-template-columns: 1fr; }
            .tool-grid { grid-template-columns: repeat(2, 1fr); }
            .tool-sidebar { margin-top: 10px; }

 .service-grid { grid-template-columns: repeat(2, 1fr); }
            .company-layout, .contact-layout { grid-template-columns: 1fr; }
            .contact-map { height: 250px; }
            .section-header { flex-direction: column; gap: 10px; }


/* === 日本本科页 移动端适配 === */
    .sub-hero { padding: 40px 0; }
    .sub-hero-inner { flex-direction: column; }
    
    /* 手机端将背景图挪到文字上方显示 */
    .sub-hero-content { width: 100%; padding-left: 0; text-align: center; margin-bottom: 30px; }
    .hero-check-list { align-items: center; }
    
    .sub-hero-bg { 
        position: relative; 
        width: 100%; 
        height: 250px; 
        right: auto; 
        top: auto; 
        border-radius: 12px; 
        background: url('https://images.unsplash.com/photo-1493976040374-85c8e12f0c0e?q=80&w=800&auto=format&fit=crop') no-repeat center center; 
        background-size: cover; 
        margin-top: 20px;
    }
    
    /* 四个横条变为 2x2 网格 */
    .features-bar-wrapper { margin-top: 20px; margin-bottom: 30px; }
    .features-bar { flex-wrap: wrap; gap: 20px; padding: 25px 15px; }
    .feature-box { width: 45%; }
    
    /* 左右分栏变单列 */
    .page-layout { grid-template-columns: 1fr; }

    .kb-grid { grid-template-columns: repeat(2, 1fr); }
    .kb-page-hero-inner { flex-direction: column; align-items: flex-start; gap: 20px; }
    .kb-page-search { width: 100%; }

    /* 缩小左侧主内容内边距 */
    .detail-main-col { padding: 30px 20px; }

.ai-eval-card { border-radius: 12px; }
    .ai-form-grid { gap: 20px; }

/* 缩小左右比例，底层卡片变更为上下结构 */
    .calc-layout { grid-template-columns: 1fr; }
    .calc-result-area { border-left: none; border-top: 1px solid #eee; }
    .cost-guide-grid { grid-template-columns: repeat(2, 1fr); }

/* 缩小左侧内边距 */
    .timeline-main-area { padding: 30px; }


 .sh-main { flex-direction: column; }
            .sh-right { width: 100%; }
            .sh-main-img { height: 350px; }
            .req-cards { grid-template-columns: repeat(2, 1fr); }
            .surround-layout { flex-direction: column; }
            .surround-map { width: 100%; height: 250px; }




            
}

@media (max-width: 992px) {
    /* 平板端取消左右分栏 */
    .kb-detail-layout { grid-template-columns: 1fr; }
    
    /* 侧边栏可以横向铺开 */
    .detail-sidebar-col { flex-direction: row; flex-wrap: wrap; }
    .detail-sidebar-col .sidebar-widget { flex: 1; min-width: 300px; }

    /* 平板端取消左右分栏，右侧悬浮表单掉到底部 */
    .timeline-layout { grid-template-columns: 1fr; gap: 30px; }
    .sticky-widget { position: static; margin-bottom: 30px; }



}

@media (max-width: 768px) {
    .page-hero {
        height: 300px;
        background-position: left center;
    }

    .page-hero-title {
        font-size: 32px;
    }

    .paths-grid {
        grid-template-columns: 1fr;
    }

    .cta-banner {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }

    .page-hero {
        height: 350px;
    }

    .page-hero-title {
        font-size: 32px;
    }

    .cta-banner {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }

      .paths-grid { grid-template-columns: 1fr; }
            .cta-banner { flex-direction: column; text-align: center; gap: 20px; }
 .topics-section { margin-top: 20px; }
            .topics-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
            .topic-card { padding: 20px 15px; }
            .cta-banner { flex-direction: column; text-align: center; gap: 20px; }

            .univ-grid { grid-template-columns: 1fr; }
            .kb-tabs { overflow-x: auto; width: 100%; padding-bottom: 5px; }
            .kb-tab { white-space: nowrap; }


             .tool-grid { grid-template-columns: 1fr; }
            .tool-ai-banner { flex-direction: column; text-align: center; gap: 20px; padding: 30px 20px; }

        .about-subnav { justify-content: flex-start; padding: 12px 15px; }
            .about-subnav li a { padding: 6px 18px; font-size: 15px; }
            .service-grid { grid-template-columns: 1fr; }
            .about-hero { height: 350px; }
            .about-hero-content h1 { font-size: 36px; }
            .section-block { padding: 50px 0; }

        /* === 资讯详情页 移动端适配 === */
            .article-container {
                padding: 25px 20px;
                margin-top: 15px;
            }
            .article-title {
                font-size: 24px;
            }
            .article-banner {
                height: 200px;
            }
            .article-summary {
                padding: 20px 25px;
                font-size: 15px;
            }
            .article-content h3 {
                font-size: 18px;
            }
            .article-related {
                padding: 25px 20px;
            }
            .related-list li {
                flex-direction: column;
                align-items: flex-start;
                gap: 8px;
            }
            .related-list li .date {
                padding-left: 20px;
            }

            .kb-grid { grid-template-columns: 1fr; }
    
    .kb-page-hero { padding: 40px 0; }
    .kb-page-hero-text h1 { font-size: 28px; }
    
    .search-bar-ui { height: 50px; }
    .search-bar-ui i { line-height: 50px; padding: 0 15px; }
    .search-bar-ui button { padding: 0 20px; font-size: 15px; }
    
    .kb-filter-box { padding: 15px; }
    .filter-row { flex-direction: column; gap: 10px; }
    .filter-label { padding-top: 0; }


/* Hero 名片调整为上下结构 */
    .kb-detail-hero { padding: 30px 0; }
    .kb-detail-hero-inner { flex-direction: column; align-items: flex-start; gap: 25px; }
    
    .detail-profile { flex-direction: column; align-items: center; text-align: center; width: 100%; }
    .detail-avatar { width: 90px; height: 90px; margin-bottom: 10px; }
    
    .detail-title { flex-direction: column; gap: 5px; font-size: 24px; }
    .detail-tags { justify-content: center; }
    
    /* 数据条变为横向铺满 */
    .detail-stats { width: 100%; padding-left: 0; border-left: none; border-top: 1px dashed #eee; padding-top: 25px; justify-content: space-around; }
    .stat-value { font-size: 20px; }
    
    /* 内部锚点导航支持横向滚动 */
    .detail-tabs { overflow-x: auto; white-space: nowrap; padding-bottom: 2px; }
    
    /* 院系卡片网格变2列 */
    .faculty-grid { grid-template-columns: repeat(2, 1fr); }
    
    /* 侧边栏变单列 */
    .detail-sidebar-col { flex-direction: column; }
    .detail-sidebar-col .sidebar-widget { min-width: 100%; }

.ai-tool-hero { padding: 50px 0 100px 0; }
    .ai-tool-hero-content h1 { font-size: 32px; }
    .ai-tool-hero-content p { font-size: 15px; padding: 0 15px; }
    
    .ai-eval-wrapper { margin-top: -60px; }
    .ai-eval-header { flex-direction: column; gap: 10px; text-align: center; padding: 20px; }
    .ai-eval-form { padding: 25px 20px; }
    
    /* 表单强制变为单列 */
    .ai-form-grid { grid-template-columns: 1fr; margin-bottom: 25px; gap: 20px; }
    
    .btn-ai-generate { width: 100%; padding: 15px 20px; justify-content: center; }
    
    /* 底部优势区域转为单列 */
    .ai-features-grid { grid-template-columns: 1fr; gap: 20px; }



    .tool-hero { padding: 50px 0 100px 0; }
    .tool-hero-content h1 { font-size: 32px; }
    .tool-hero-content p { font-size: 15px; padding: 0 15px; }
    
    .calc-wrapper { margin-top: -60px; }
    .calc-form-area { padding: 30px 20px; }
    
    /* 手机端表单单列显示 */
    .calc-form-grid { grid-template-columns: 1fr; gap: 20px; margin-bottom: 30px; }
    
    .calc-result-area { padding: 30px 20px; }
    .result-receipt { padding: 25px 20px; }
    .receipt-total strong { font-size: 36px; }
    
    .cost-guide-grid { grid-template-columns: 1fr; }

    .scoring-panel {
        padding: 30px 20px;
    }
    
    /* 手机端打分按钮单列显示更易于点击 */
    .score-chips {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    .score-chip {
        padding: 12px 15px;
    }
    
    .report-grade-letter {
        font-size: 38px;
    }

    .time-hero { padding: 40px 0 80px 0; }
    
    /* 调整顶部切换栏结构 */
    .timeline-header { flex-direction: column; align-items: flex-start; gap: 15px; }
    .timeline-tabs { width: 100%; display: flex; }
    .t-tab { flex: 1; text-align: center; }
    
    /* 缩小左侧留白与主线位置 */
    .timeline-main-area { padding: 25px 15px; }
    .timeline-container { padding-left: 20px; }
    .timeline-line { left: 26px; }
    .timeline-item { padding-left: 30px; }
    .timeline-date { flex-direction: column; gap: 2px; font-size: 16px; }
    .timeline-content { padding: 15px; }
    
    .success-item .timeline-dot { width: 22px; height: 22px; left: -4px; font-size: 10px; }

     .school-hero-container { padding: 20px; margin-top: 10px;max-width: 100%;}
            .sh-header { flex-direction: column; align-items: flex-start; gap: 10px;}
            .info-grid-4 { grid-template-columns: 1fr; }
            .sh-stats-row { flex-wrap: wrap; gap: 15px; justify-content: flex-start;}
            .stat-col { width: 30%; align-items: flex-start; text-align: left; }
            .sh-actions { flex-wrap: wrap; }
            .sh-main-img { height: 220px; }
            .req-cards { grid-template-columns: 1fr; }
            .detail-tabs { overflow-x: auto; white-space: nowrap; padding-bottom: 5px; }
            .main-content-card { padding: 20px; margin-bottom: 30px;}
            
            /* 宿舍卡片移动端适配 */
            .dorm-card { flex-direction: column; padding: 20px; }
            .dorm-info { padding-right: 0; margin-bottom: 25px; }
            .dorm-img-wrap { width: 100%; height: 220px; }



}