/* 全局重置基础 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    font-family: "Microsoft Yahei", PingFang SC, sans-serif;
    background-color: #f5f7fa;
    color: #333;
    line-height: 1.8;
}
a {
    text-decoration: none;
    color: #333;
}
ul {
    list-style: none;
}

/* 容器统一（覆盖重复尺寸，max-width自适应优先） */
.container {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
}

/* 头部导航 合并所有重复.nav-wrap/.logo/.nav-list样式 */
header {
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    position: sticky;
    top: 0;
    z-index: 999;
}
.nav-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px;
    gap: 20px;
    padding: 20px 0;
    border-bottom: 1px #eee solid;
}
.logo {
    font-size: 24px;
    font-weight: bold;
    color: #2563eb;
    text-decoration: none;
}
.nav-list {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.nav-list a {
    margin-left: 30px;
    font-size: 16px;
    color: #666;
    transition: all 0.3s;
    padding: 6px 10px;
    white-space: nowrap;
}
.nav-list a.active,
.nav-list a:hover {
    color: #2563eb;
    background: #2563eb;
    color: #fff;
    border-radius: 4px;
}

/* 导航更多下拉菜单 */
.nav-more {
    position: relative;
}
.more-btn {
    padding: 6px 10px;
    cursor: pointer;
    white-space: nowrap;
}
.more-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    border-radius: 4px;
    min-width: 120px;
    z-index: 999;
}
.more-dropdown a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    white-space: nowrap;
    margin: 0;
}
.nav-more:hover .more-dropdown {
    display: block;
}

/* 顶部横幅 */
.banner {
    background: linear-gradient(135deg, #2563eb 0%, #4f46e5 100%);
    color: #fff;
    text-align: center;
    padding: 60px 20px;
    border-radius: 12px;
    margin: 30px 0;
}
.banner h1 {
    font-size: 36px;
    margin-bottom: 15px;
}
.banner p {
    font-size: 16px;
    opacity: 0.9;
}

/* 标题行模块 */
.title-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 40px 0 20px;
}
.title-box h2 {
    font-size: 22px;
    color: #222;
}
.title-box a {
    color: #2563eb;
}

/* AI工具通用卡片网格 */
.tool-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
    margin-bottom: 50px;
}
.tool-card {
    background: #fff;
    padding: 25px;
    border-radius: 12px;
    box-shadow: 0 2px 15px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    cursor: pointer;
    border: 1px #eee solid;
    margin: 10px 0;
}
.tool-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(37, 99, 235, 0.15);
}
.tool-card h3 {
    font-size: 18px;
    margin-bottom: 10px;
    color: #222;
}
.tool-card p {
    color: #666;
    font-size: 14px;
    margin-bottom: 15px;
}
.tool-tag {
    display: inline-block;
    padding: 4px 12px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 12px;
    border-radius: 20px;
}
.tag-type {
    background:#4285f4;
    color:#fff;
    padding:2px 8px;
    border-radius:4px;
    font-size:12px;
    margin-left:8px;
}
.card-info,.card-mod,.card-feat,.card-use {
    margin:6px 0;
    font-size:14px;
    color:#444;
}

/* AI三列卡片列表 */
.ai-card-list {
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:20px;
    margin:30px 0;
}
.ai-card {
    border:1px #eee solid;
    padding:18px;
    border-radius:8px;
}
.ai-card h3 a {
    color:#2563eb;
    text-decoration:none;
}
.info {
    color:#666;
    margin:12px 0;
}
.desc-item {
    margin:10px 0;
    line-height:1.8;
}

/* 分类导航与区块 */
.cate-nav {
    margin:20px 0;
    padding:12px;
    background:#f7f7f7;
    border-radius:8px;
}
.cate-nav a {
    margin:0 10px;
    color:#222;
}
.cate-block {
    margin:35px 0;
}
.cate-title h3 {
    padding:8px 12px;
    border-left:4px solid #2577e3;
}

/* 文章详情盒子 */
.article-box {
    background: #fff;
    padding: 40px;
    border-radius: 12px;
    margin: 30px 0;
}
.article-box h1 {
    font-size: 28px;
    margin-bottom: 15px;
}
.article-box p {
    margin-bottom: 20px;
    font-size: 16px;
    color: #444;
}

/* 404错误页 */
.error-box {
    text-align: center;
    padding: 100px 0;
}
.error-box h2 {
    font-size: 48px;
    color: #2563eb;
    margin-bottom: 20px;
}
.error-box p {
    color: #666;
    margin-bottom: 30px;
}
.error-box a {
    display: inline-block;
    padding: 12px 30px;
    background: #2563eb;
    color: #fff;
    border-radius: 6px;
}

/* 页脚统一 */
footer {
    text-align: center;
    padding: 40px 0 20px;
    color: #999;
    font-size: 14px;
    background: #fff;
    margin-top: 60px;
    border-top:1px #eee solid;
}

/* 赛事/作品页面扩展样式（之前配套） */
.contest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-bottom:40px;}
.index-card{border:3px solid #ff5566;background:linear-gradient(150deg,#0c0529,#3c196b);color:#fff;box-shadow:0 4px 18px rgba(146,36,255,0.27);padding:22px;border-radius:14px;}
.list-card{border:2px solid #7928ca;background:#fcfaff;padding:20px;border-radius:12px;margin-bottom:20px;}
.card-status,.list-status{display:inline-block;padding:4px 10px;border-radius:20px;font-size:13px;margin-bottom:10px;}
.status-ing{background:#ffe9ec;color:#c22850;}
.status-soon{background:#e8f0ff;color:#470099;}
.status-end{background:#f2f2f2;color:#666;}
.card-title a{color:#ffdd55;font-size:20px;}
.list-title a{color:#7928ca;font-size:18px;}
.card-time{color:#ffb8b8;margin:6px 0;}
.list-meta{color:#666;margin:8px 0;}
.join-num{color:#fffa70;font-weight:bold;}
.card-desc{color:#ccc;line-height:1.7;margin:12px 0;}
.list-desc{color:#333;line-height:1.6;}
.btn-join{display:inline-block;margin-top:8px;padding:8px 20px;background:linear-gradient(90deg,#ff3e6c,#ff725e);border-radius:8px;color:#fff;font-weight:bold;}
.list-btn{padding:5px 14px;background:#7928ca;color:#fff;border-radius:6px;display:inline-block;margin-top:8px;}
.block-box{background:#f8f9fa;border-radius:12px;padding:20px;margin:24px 0;}
.block-title{font-size:20px;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #eee;}
.rule-text{line-height:1.7;color:#333;}
.warn-red{color:#c22850;margin-top:10px;}
.works-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:16px;}
.work-card{background:#fff;border:1px solid #eee;border-radius:8px;padding:14px;}
.work-rank{display:inline-block;padding:3px 9px;border-radius:16px;font-size:13px;margin-bottom:8px;}
.rank-1{background:#ffd700;color:#222;}
.rank-2{background:#c0c0c0;color:#222;}
.rank-3{background:#cd7f32;color:#fff;}
.rank-good{background:#e8f0ff;color:#470099;}
.work-title{font-size:16px;font-weight:bold;margin:6px 0;}
.work-match{font-size:13px;color:#666;margin:4px 0;}
.work-desc{color:#444;line-height:1.6;margin-top:10px;max-height:120px;overflow:hidden;}
.page-nav{text-align:center;margin:40px 0;}
.page-nav a{margin:0 5px;padding:6px 12px;border:1px solid #ddd;border-radius:4px;color:#333;display:inline-block;}
.page-nav a.active{background:#470099;color:#fff;border-color:#470099;}
.float-submit{position:fixed;right:16px;bottom:30px;z-index:9999;}
.float-submit button,.float-submit a{background:#ff2e5c;color:#fff;border:none;padding:12px 20px;border-radius:50px;font-weight:bold;box-shadow:0 3px 12px rgba(255,46,92,0.35);cursor:pointer;display:block;}
.tip-text{color:#666;margin:6px 0;}
.info-box{background:#f8f9fa;border-radius:12px;padding:24px;margin:20px 0;}
.info-row{display:flex;gap:20px;flex-wrap:wrap;margin:10px 0;}
.info-item{flex:1;min-width:200px;}
.btn-submit{background:#ff2e5c;color:#fff;border:none;padding:12px 28px;border-radius:8px;font-weight:bold;display:inline-block;margin-top:20px;}
.rule-block{margin:24px 0;line-height:1.7;}
.tab-wrap{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0;}
.tab-item{padding:8px 16px;border:1px solid #ddd;border-radius:6px;cursor:pointer;white-space:nowrap;}
.tab-item.active{background:#470099;color:#fff;border-color:#470099;}
.step-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;text-align:center;}
.step-item{padding:16px;background:#fff;border-radius:10px;}
.step-num-1{font-size:26px;font-weight:bold;color:#470099;}
.step-num-2{font-size:26px;font-weight:bold;color:#ff2e5c;}
.faq-item{margin:12px 0;border-bottom:1px solid #eee;padding-bottom:12px;}
.faq-q{font-weight:bold;margin-bottom:6px;cursor:pointer;}
.faq-a{color:#555;line-height:1.6;display:none;}
.faq-a.show{display:block;}
.form-wrap{max-width:780px;margin:0 auto;background:#fff;padding:30px;border-radius:14px;border:1px solid #eee;}
.form-item{margin-bottom:22px;}
.form-item label{display:block;margin-bottom:8px;font-weight:bold;color:#222;}
.form-item input,.form-item textarea,.form-item select{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:8px;font-size:15px;}
.form-item textarea{min-height:140px;resize:vertical;}
.form-tip{font-size:13px;color:#666;margin-top:6px;line-height:1.6;}
.red-tip{color:#c22850;}
.btn-submit-form{width:100%;padding:14px;background:#ff2e5c;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:bold;cursor:pointer;margin-top:10px;}
.btn-submit-form:disabled{background:#ff99aa;cursor:not-allowed;}
.result-box{margin-top:20px;padding:14px;border-radius:8px;display:none;}
.success-box{background:#e6f9ef;border:1px solid #36c66c;color:#1f883d;}
.fail-box{background:#fff1f3;border:1px solid #ff7b89;color:#c22850;}
.loading-text{text-align:center;margin:10px 0;color:#666;display:none;}
.check-box{display:flex;gap:8px;align-items:flex-start;margin:10px 0;}
.check-box input{width:auto;margin-top:4px;}

/* 响应式媒体查询（合并去重，移动端规则后置覆盖） */
@media (max-width: 1200px) {
    .container {
        width: 100%;
    }
}
@media (max-width: 768px) {
    .banner h1 {
        font-size: 26px;
    }
    .tool-grid {
        grid-template-columns: 1fr 1fr;
    }
    .ai-card-list {
        grid-template-columns: 1fr 1fr;
    }
    .nav-list {
        gap: 0.5rem;
    }
    .nav-list > a, .more-btn {
        padding: 4px 8px;
        font-size: 14px;
    }
}
@media (max-width: 480px) {
    .tool-grid, .ai-card-list {
        grid-template-columns: 1fr;
    }
    .nav-wrap {
        flex-wrap: wrap;
        height: auto;
    }
}


.st{
    display:flex;
    gap:2px;
    height:12px;
    margin:6px 0;
}
.sb{
    flex:1;
    min-width:4px;
    border-radius:2px;
}
.sg{background:#28a745;}
.sy{background:#ffc107;}
.sr{background:#dc3545;}
.se{background:#e2e2e2;}