/* style.css - 完美体育官网完整样式表 */
/* 全局重置与基础 */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
    background:#f8f9fa;
    color:#1a1a2e;
    line-height:1.6;
    transition:background .3s ease,color .3s ease;
    min-height:100vh;
    overflow-x:hidden
}
body.dark-mode{background:#1a1a2e;color:#e0e0e0}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
ul,ol{list-style:none}
button{cursor:pointer;font-family:inherit;border:none;background:none}
input,textarea,select{font-family:inherit;font-size:inherit}

/* 容器 */
.container{max-width:1200px;margin:0 auto;padding:0 20px;width:100%}

/* 头部导航 */
.header{
    background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);
    color:#fff;
    position:sticky;
    top:0;
    z-index:1000;
    transition:background .3s ease,box-shadow .3s ease;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px)
}
.header.scrolled{
    box-shadow:0 2px 20px rgba(0,0,0,.3);
    background:rgba(26,26,46,.95)
}
.header-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:15px 0
}
.logo{
    font-size:1.5rem;
    font-weight:700;
    letter-spacing:1px;
    color:#e94560;
    text-decoration:none;
    transition:transform .3s ease
}
.logo:hover{transform:scale(1.05)}
.nav{
    display:flex;
    gap:20px;
    align-items:center
}
.nav a{
    color:#fff;
    text-decoration:none;
    padding:8px 14px;
    border-radius:6px;
    transition:background .3s,color .3s,transform .2s;
    font-weight:500;
    position:relative
}
.nav a::after{
    content:'';
    position:absolute;
    bottom:2px;
    left:50%;
    transform:translateX(-50%) scaleX(0);
    width:60%;
    height:2px;
    background:#e94560;
    transition:transform .3s ease;
    border-radius:2px
}
.nav a:hover::after{transform:translateX(-50%) scaleX(1)}
.nav a:hover{background:rgba(233,69,96,.2);transform:translateY(-1px)}
.menu-toggle{
    display:none;
    background:none;
    border:none;
    color:#fff;
    font-size:1.5rem;
    cursor:pointer;
    padding:5px;
    border-radius:4px;
    transition:background .3s
}
.menu-toggle:hover{background:rgba(255,255,255,.1)}
.dark-toggle{
    background:rgba(255,255,255,.1);
    border:2px solid rgba(255,255,255,.3);
    color:#fff;
    padding:6px 14px;
    border-radius:25px;
    cursor:pointer;
    transition:background .3s,transform .2s,box-shadow .3s;
    font-size:.9rem;
    backdrop-filter:blur(5px)
}
.dark-toggle:hover{
    background:rgba(255,255,255,.2);
    transform:scale(1.05);
    box-shadow:0 0 15px rgba(233,69,96,.3)
}

/* 英雄区Banner */
.hero{
    background:linear-gradient(135deg,#0f3460 0%,#533483 50%,#e94560 100%);
    color:#fff;
    padding:100px 0;
    text-align:center;
    position:relative;
    overflow:hidden
}
.hero::before{
    content:'';
    position:absolute;
    top:-50%;
    left:-50%;
    width:200%;
    height:200%;
    background:radial-gradient(circle at 30% 50%,rgba(233,69,96,.15) 0%,transparent 60%),
                radial-gradient(circle at 70% 50%,rgba(83,52,131,.2) 0%,transparent 50%);
    animation:heroGlow 6s ease-in-out infinite alternate;
    pointer-events:none
}
@keyframes heroGlow{
    0%{transform:translate(0,0) rotate(0deg)}
    100%{transform:translate(20px,20px) rotate(3deg)}
}
.hero h1{
    font-size:2.8rem;
    margin-bottom:20px;
    animation:fadeInUp .8s ease;
    position:relative;
    z-index:1;
    text-shadow:0 2px 20px rgba(0,0,0,.3)
}
.hero p{
    font-size:1.2rem;
    max-width:700px;
    margin:0 auto 30px;
    opacity:.95;
    animation:fadeInUp 1s ease;
    position:relative;
    z-index:1;
    text-shadow:0 1px 10px rgba(0,0,0,.2)
}
.hero .btn{
    display:inline-block;
    background:#e94560;
    color:#fff;
    padding:14px 45px;
    border-radius:50px;
    text-decoration:none;
    font-weight:600;
    font-size:1.05rem;
    transition:transform .3s ease,box-shadow .3s ease,background .3s;
    animation:fadeInUp 1.2s ease;
    position:relative;
    z-index:1;
    box-shadow:0 4px 15px rgba(233,69,96,.3)
}
.hero .btn:hover{
    transform:translateY(-4px);
    box-shadow:0 12px 35px rgba(233,69,96,.5);
    background:#d63851
}
@keyframes fadeInUp{
    from{opacity:0;transform:translateY(30px)}
    to{opacity:1;transform:translateY(0)}
}

/* 通用区块 */
.section{padding:70px 0;position:relative}
.section-title{
    font-size:2rem;
    margin-bottom:45px;
    text-align:center;
    position:relative;
    font-weight:700
}
.section-title::after{
    content:'';
    display:block;
    width:70px;
    height:4px;
    background:linear-gradient(90deg,#e94560,#533483);
    margin:12px auto 0;
    border-radius:3px;
    transition:width .5s ease
}
.section:hover .section-title::after{width:100px}

/* 网格布局 */
.grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:30px
}

/* 卡片 - 毛玻璃效果 */
.card{
    background:rgba(255,255,255,.7);
    backdrop-filter:blur(15px);
    -webkit-backdrop-filter:blur(15px);
    border-radius:16px;
    padding:30px;
    box-shadow:0 4px 25px rgba(0,0,0,.06);
    transition:transform .3s ease,box-shadow .3s ease,border .3s;
    border:1px solid rgba(255,255,255,.5);
    position:relative;
    overflow:hidden
}
.dark-mode .card{
    background:rgba(22,33,62,.8);
    backdrop-filter:blur(15px);
    border-color:rgba(255,255,255,.1);
    box-shadow:0 4px 25px rgba(0,0,0,.25)
}
.card::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg,#e94560,#533483);
    opacity:0;
    transition:opacity .3s ease
}
.card:hover::before{opacity:1}
.card:hover{
    transform:translateY(-6px);
    box-shadow:0 12px 40px rgba(0,0,0,.12);
    border-color:rgba(233,69,96,.2)
}
.dark-mode .card:hover{
    box-shadow:0 12px 40px rgba(0,0,0,.35);
    border-color:rgba(233,69,96,.3)
}
.card h3{
    color:#e94560;
    margin-bottom:15px;
    font-size:1.2rem;
    font-weight:600
}
.card p{color:#555;line-height:1.7;font-size:.95rem}
.dark-mode .card p{color:#ccc}

/* 关于区域 */
.about-content{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center
}
.about-text h2{
    font-size:2rem;
    margin-bottom:20px;
    color:#1a1a2e
}
.dark-mode .about-text h2{color:#e0e0e0}
.about-text p{
    margin-bottom:15px;
    color:#555;
    line-height:1.8
}
.dark-mode .about-text p{color:#ccc}

/* 统计数字 */
.stats{
    display:flex;
    justify-content:space-around;
    margin:30px 0;
    flex-wrap:wrap;
    gap:25px
}
.stat-item{
    text-align:center;
    padding:15px 20px;
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px);
    border-radius:12px;
    border:1px solid rgba(255,255,255,.15);
    min-width:140px;
    transition:transform .3s,box-shadow .3s
}
.stat-item:hover{
    transform:translateY(-3px);
    box-shadow:0 8px 25px rgba(0,0,0,.1)
}
.dark-mode .stat-item{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}
.stat-number{
    font-size:2.5rem;
    font-weight:700;
    color:#e94560;
    line-height:1.2
}
.stat-label{
    color:#666;
    margin-top:5px;
    font-size:.9rem
}
.dark-mode .stat-label{color:#aaa}

/* FAQ折叠面板 */
.faq-item{
    border:1px solid rgba(224,224,224,.7);
    border-radius:12px;
    margin-bottom:10px;
    overflow:hidden;
    transition:border-color .3s,box-shadow .3s;
    background:rgba(255,255,255,.5);
    backdrop-filter:blur(8px)
}
.dark-mode .faq-item{
    border-color:rgba(255,255,255,.1);
    background:rgba(22,33,62,.5)
}
.faq-item:hover{border-color:rgba(233,69,96,.3);box-shadow:0 2px 10px rgba(0,0,0,.05)}
.faq-question{
    background:transparent;
    border:none;
    width:100%;
    padding:20px 24px;
    text-align:left;
    font-size:1rem;
    font-weight:500;
    cursor:pointer;
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:inherit;
    transition:background .3s,color .3s
}
.faq-question:hover{background:rgba(233,69,96,.06)}
.faq-question::after{
    content:'+';
    font-size:1.3rem;
    font-weight:700;
    color:#e94560;
    transition:transform .3s ease,content .3s;
    flex-shrink:0;
    margin-left:15px
}
.faq-item.active .faq-question::after{content:'−';transform:rotate(180deg)}
.faq-answer{
    padding:0 24px 20px;
    display:none;
    color:#555;
    line-height:1.7;
    font-size:.95rem
}
.dark-mode .faq-answer{color:#ccc}
.faq-item.active .faq-answer{display:block;animation:fadeIn .4s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* 步骤指南 */
.howto-steps{max-width:700px;margin:0 auto;counter-reset:step}
.howto-step{
    display:flex;
    gap:20px;
    margin-bottom:25px;
    align-items:flex-start;
    padding:15px 20px;
    border-radius:12px;
    transition:background .3s,transform .3s;
    background:rgba(255,255,255,.4);
    backdrop-filter:blur(8px)
}
.dark-mode .howto-step{background:rgba(22,33,62,.4)}
.howto-step:hover{transform:translateX(5px);background:rgba(255,255,255,.6)}
.dark-mode .howto-step:hover{background:rgba(22,33,62,.6)}
.howto-step::before{
    counter-increment:step;
    content:counter(step);
    background:linear-gradient(135deg,#e94560,#533483);
    color:#fff;
    width:38px;
    height:38px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    flex-shrink:0;
    font-size:1rem;
    box-shadow:0 3px 10px rgba(233,69,96,.3)
}
.howto-step h4{margin-bottom:6px;font-size:1.05rem;color:#1a1a2e}
.dark-mode .howto-step h4{color:#e0e0e0}
.howto-step p{color:#555;line-height:1.7;font-size:.95rem}
.dark-mode .howto-step p{color:#ccc}

/* 文章卡片 */
.articles .article-card{padding:25px}
.article-card .date{
    color:#999;
    font-size:.85rem;
    margin-bottom:10px;
    display:block
}
.article-card h3{
    margin-bottom:10px;
    font-size:1.1rem;
    transition:color .3s
}
.article-card:hover h3{color:#d63851}
.article-card p{color:#555;margin-bottom:15px;line-height:1.7;font-size:.95rem}
.dark-mode .article-card p{color:#ccc}
.article-card .read-more{
    color:#e94560;
    text-decoration:none;
    font-weight:500;
    transition:opacity .3s,transform .2s;
    display:inline-flex;
    align-items:center;
    gap:5px
}
.article-card .read-more:hover{opacity:.8;transform:translateX(4px)}

/* 联系信息 */
.contact-info{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:25px;
    margin-top:30px
}
.contact-item{
    text-align:center;
    padding:25px 20px;
    background:rgba(255,255,255,.6);
    backdrop-filter:blur(10px);
    border-radius:14px;
    border:1px solid rgba(255,255,255,.4);
    transition:transform .3s,box-shadow .3s
}
.dark-mode .contact-item{
    background:rgba(22,33,62,.6);
    border-color:rgba(255,255,255,.1)
}
.contact-item:hover{
    transform:translateY(-4px);
    box-shadow:0 8px 25px rgba(0,0,0,.08)
}
.contact-item h4{color:#e94560;margin-bottom:10px;font-size:1.1rem}
.contact-item p{color:#555;line-height:1.6;font-size:.95rem}
.dark-mode .contact-item p{color:#ccc}

/* 页脚 */
.footer{
    background:linear-gradient(135deg,#1a1a2e,#0f3460);
    color:#ccc;
    padding:50px 0 40px;
    text-align:center;
    position:relative
}
.footer a{color:#e94560;text-decoration:none;transition:color .3s}
.footer a:hover{color:#ff6b81}
.footer-links{
    display:flex;
    justify-content:center;
    gap:25px;
    flex-wrap:wrap;
    margin:20px 0 25px
}
.footer-links a{
    color:#aaa;
    transition:color .3s,transform .2s;
    font-size:.9rem;
    padding:4px 8px;
    border-radius:4px
}
.footer-links a:hover{
    color:#e94560;
    transform:translateY(-2px)
}
.footer p{font-size:.9rem;line-height:1.8}
.footer p:last-child{color:#888;font-size:.85rem;margin-top:8px}

/* 返回顶部 */
.back-to-top{
    position:fixed;
    bottom:35px;
    right:35px;
    background:linear-gradient(135deg,#e94560,#d63851);
    color:#fff;
    width:52px;
    height:52px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-size:1.6rem;
    opacity:0;
    visibility:hidden;
    transition:opacity .3s ease,visibility .3s,transform .3s,box-shadow .3s;
    z-index:999;
    border:none;
    cursor:pointer;
    box-shadow:0 4px 15px rgba(233,69,96,.3)
}
.back-to-top.visible{opacity:1;visibility:visible}
.back-to-top:hover{
    transform:translateY(-3px) scale(1.05);
    box-shadow:0 8px 25px rgba(233,69,96,.5)
}

/* 轮播 */
.carousel{
    position:relative;
    overflow:hidden;
    border-radius:16px;
    margin:30px 0;
    background:rgba(255,255,255,.3);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.2)
}
.dark-mode .carousel{background:rgba(22,33,62,.3);border-color:rgba(255,255,255,.1)}
.carousel-inner{display:flex;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}
.carousel-item{
    min-width:100%;
    padding:50px 40px;
    background:linear-gradient(135deg,#0f3460,#533483);
    color:#fff;
    text-align:center
}
.carousel-item h3{font-size:1.5rem;margin-bottom:15px;font-weight:600}
.carousel-item p{font-size:1.05rem;max-width:600px;margin:0 auto;line-height:1.7;opacity:.95}
.carousel-btn{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    background:rgba(255,255,255,.2);
    backdrop-filter:blur(5px);
    border:none;
    color:#fff;
    width:44px;
    height:44px;
    border-radius:50%;
    cursor:pointer;
    font-size:1.3rem;
    transition:background .3s,transform .2s;
    display:flex;
    align-items:center;
    justify-content:center
}
.carousel-btn:hover{background:rgba(255,255,255,.4);transform:translateY(-50%) scale(1.1)}
.carousel-btn.prev{left:15px}
.carousel-btn.next{right:15px}

/* 搜索框（隐藏但保留样式） */
.search-box{max-width:400px;margin:0 auto 30px;position:relative}
.search-box input{
    width:100%;
    padding:14px 22px;
    border:2px solid rgba(224,224,224,.7);
    border-radius:50px;
    font-size:1rem;
    outline:none;
    transition:border .3s,box-shadow .3s;
    background:rgba(255,255,255,.8);
    backdrop-filter:blur(5px)
}
.dark-mode .search-box input{
    background:rgba(22,33,62,.7);
    border-color:rgba(255,255,255,.2);
    color:#e0e0e0
}
.search-box input:focus{border-color:#e94560;box-shadow:0 0 0 3px rgba(233,69,96,.15)}
.search-results{
    position:absolute;
    top:calc(100% + 5px);
    left:0;
    right:0;
    background:rgba(255,255,255,.95);
    backdrop-filter:blur(15px);
    border-radius:12px;
    box-shadow:0 8px 30px rgba(0,0,0,.12);
    max-height:320px;
    overflow-y:auto;
    display:none;
    z-index:100;
    border:1px solid rgba(255,255,255,.3)
}
.dark-mode .search-results{
    background:rgba(22,33,62,.95);
    border-color:rgba(255,255,255,.1)
}
.search-results.active{display:block;animation:fadeIn .3s ease}
.search-result-item{
    padding:14px 22px;
    cursor:pointer;
    transition:background .3s;
    font-size:.95rem
}
.search-result-item:hover{background:rgba(233,69,96,.1)}
.dark-mode .search-result-item:hover{background:rgba(233,69,96,.2)}
.highlight{background:rgba(233,69,96,.2);padding:0 4px;border-radius:3px}

/* 滚动高亮导航 */
.nav a.active{background:rgba(233,69,96,.2)}

/* 响应式设计 */
@media screen and (max-width:1024px){
    .hero h1{font-size:2.4rem}
    .hero p{font-size:1.1rem}
    .section-title{font-size:1.7rem}
    .about-content{gap:35px}
}

@media screen and (max-width:768px){
    .header-inner{padding:12px 0}
    .nav{
        display:none;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:rgba(26,26,46,.98);
        backdrop-filter:blur(15px);
        flex-direction:column;
        padding:20px;
        gap:8px;
        border-top:1px solid rgba(255,255,255,.1);
        box-shadow:0 10px 30px rgba(0,0,0,.3)
    }
    .nav.active{display:flex;animation:fadeIn .3s ease}
    .nav a{padding:12px 16px;width:100%;text-align:center;border-radius:8px}
    .nav a::after{display:none}
    .menu-toggle{display:block}
    .dark-toggle{margin-top:8px;width:100%;padding:10px 16px}
    .hero{padding:70px 0}
    .hero h1{font-size:1.8rem}
    .hero p{font-size:1rem;padding:0 10px}
    .hero .btn{padding:12px 35px;font-size:.95rem}
    .section{padding:50px 0}
    .section-title{font-size:1.4rem;margin-bottom:30px}
    .grid{grid-template-columns:1fr;gap:20px}
    .card{padding:22px}
    .about-content{grid-template-columns:1fr;gap:30px}
    .stats{flex-direction:column;align-items:center}
    .stat-item{min-width:120px;width:100%;max-width:250px}
    .stat-number{font-size:2rem}
    .carousel-item{padding:30px 20px}
    .carousel-item h3{font-size:1.2rem}
    .carousel-btn{width:36px;height:36px;font-size:1rem}
    .contact-info{grid-template-columns:1fr}
    .footer-links{gap:15px}
    .footer-links a{font-size:.85rem}
    .back-to-top{bottom:20px;right:20px;width:44px;height:44px;font-size:1.3rem}
    .howto-step{padding:12px 15px}
    .howto-step::before{width:32px;height:32px;font-size:.9rem}
}

@media screen and (max-width:480px){
    .container{padding:0 15px}
    .hero h1{font-size:1.5rem}
    .hero p{font-size:.9rem}
    .section-title{font-size:1.2rem}
    .card{padding:18px}
    .card h3{font-size:1.05rem}
    .faq-question{padding:16px 18px;font-size:.95rem}
    .faq-answer{padding:0 18px 16px;font-size:.9rem}
    .howto-step{gap:12px}
    .howto-step h4{font-size:.95rem}
    .stat-number{font-size:1.7rem}
    .carousel-item{padding:25px 15px}
    .carousel-item h3{font-size:1.05rem}
    .carousel-item p{font-size:.9rem}
    .back-to-top{bottom:15px;right:15px;width:40px;height:40px;font-size:1.1rem}
}

/* 暗色模式额外调整 */
.dark-mode .section-title{color:#e0e0e0}
.dark-mode .hero{background:linear-gradient(135deg,#0a0a1e,#1a1a3e,#2a1a4e)}
.dark-mode .footer{background:linear-gradient(135deg,#0a0a1e,#0f3460)}
.dark-mode .howto-steps .howto-step h4{color:#e0e0e0}
.dark-mode .search-box input::placeholder{color:#888}
.dark-mode .stat-item{color:#e0e0e0}
.dark-mode .faq-item.active{border-color:rgba(233,69,96,.4)}

/* 滚动条美化 */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:rgba(0,0,0,.05);border-radius:4px}
::-webkit-scrollbar-thumb{background:rgba(233,69,96,.3);border-radius:4px;transition:background .3s}
::-webkit-scrollbar-thumb:hover{background:rgba(233,69,96,.5)}
.dark-mode ::-webkit-scrollbar-track{background:rgba(255,255,255,.05)}
.dark-mode ::-webkit-scrollbar-thumb{background:rgba(233,69,96,.4)}

/* 打印优化 */
@media print{
    .header,.back-to-top,.dark-toggle,.menu-toggle,.carousel-btn{display:none}
    .hero{background:#1a1a2e!important;color:#fff!important;padding:40px 0}
    .card{break-inside:avoid;box-shadow:none;border:1px solid #ddd}
}