/* 自定义CSS变量 - 基于项目配色方案 */
:root {
    --white: #fff;
    --black: #000;
    --gray: #888;
    --dark: #1C1D21;
    --light: #B2B2B2;
    --logo: #D0121B;
    --red: #FC2944;
    --red1: #D0121B;
    --red2: #ea5455;
    --red3: #B7005B;
    --red0: rgba(208, 18, 27, 0.3);

    --orange: orange;
    --orange1: #ffa117;
    --orange2: #efb45f;
    --orange0: rgba(255, 161, 23, 0.3);

    --yellow: yellow;
    --yellow1: #C0C000;

    --purple: #FF00FF;
    --purple1: #8449FE;
    --purple2: #5864bd;
    --purple3: #6777ef;
    --purple4: #C000C0;
    --purple0: rgba(44, 65, 152, 0.3);

    --blue: #3a50db;
    --blue1: #3a54e2;
    --blue2: #2136a8;
    --blue3: #0495DB;
    --blue0: rgba(33, 54, 28, 0.3);

    --cyan: #00D3D3;
    --cyan1: #00D3D3;
    --cyan2: #4bded5;
    --cyan3: #00AFD7;
    --cyan0: rgba(0, 175, 215, 0.3);

    --green: #41CE9D;
    --green1: #28c76f;
    --green2: #006460;
    --green3: #85d888;
    --green0: rgba(13, 175, 85, 0.3);

    --btn: #3a54e2;
    --bg-menu: linear-gradient(14deg, #1761fd 0, #7fa0f8);
    --bg-menubg: linear-gradient(to bottom, var(--blue3) 0%, var(--blue2) 100%);
    --shadow: 0 2px 5px rgba(255, 255, 255, 0.2);

    --border: 1px #343434 solid;
    --border-color: #343434;
    --border-map: #413390;
    --border-active: 1px #ffa117 solid;

    --bg: var(--dark);
    --bg-gray: rgba(255, 255, 255, 0.05);
    --bg-deep: rgba(255, 255, 255, 0.1);
    --bg-WB: rgba(255, 255, 255, 0.75);
    --bg-BW: rgba(0, 0, 0, 0.75);
    --bg-cal: #353A40;
    --text: #CDDDF2;
    --text-gray: #CCC;
    --text-hover: var(--red);
    --WhiteBlack: #FFF;

    --font_tn: 0.75rem;
    --font_xs: 0.8125rem;
    --font_sm: 0.875rem;
    --font_md: 0.9375rem;
    --font_lg: 1rem;
    --font_xl: 1.125rem;
    --font-simsun: -apple-system, PingFangSC-Regular, Tahoma, Simsun;
    --font_simsun: Tahoma, Simsun;
    --font_retina: Tahoma, -apple-system, "PingFangSC-Regular", Monaco, "Hiragino Sans GB", "Microsoft YaHei UI", "微软雅黑", "STHeiti", "WenQuanYi Micro Hei";

    --lh_tn: 1rem;
    --lh_xs: 1.125rem;
    --lh_sm: 1.25rem;
    --lh_md: 1.375rem;
    --lh_lg: 1.5rem;
    --lh_xl: 1.625rem;
}

/* 全局样式 */
* {
    box-sizing: border-box;
}


/* 颜色 */

.bg{background-color: var(--bg-BW);}

.money, a{color: var(--cyan);}
.red, .red a, .m100yi{color: var(--red);}
.green, .green a{color: var(--green);}
.blue, .blue a{color: var(--blue);}
.orange, .orange a, .m10yi{color: var(--orange);}
.purple, .purple a, .m20yi{color: var(--purple);} .purple1, .purple-deep{color: var(--purple1);}
.white, .white a, .white:hover{color: var(--white);}
.gray, .gray a{color: var(--gray);}
.cyan{color: var(--cyan3);}
.white, .white:hover {color: #FFF}

.WB{color: var(--WhiteBlack);}
.shadow{box-shadow: var(--shadow);}

.z, .z a{color: var(--red);}
.d, .d a{color: var(--green);}
.zb, .zb a, .S破板 a{color: var(--purple1);}
a.dm.surge{color: var(--red3);}


.text-red{color: var(--red);}
.text-blue{color: var(--blue);}
.text-orange{color: var(--orange);}
.text-green{color: var(--green);}
.text-cyan{color: var(--cyan3);}
.text-purple{color: var(--purple2);}
.text-white{color: var(--white);}
.text-gray{color: var(--gray);}
.text-light{ color: var(--light);}
.text-dark{ color: var(--dark);}

.text-default{ color:#353535 !important;}
.text-primary{ color: var(--blue2) !important;}
.text-secondary{ color: var(--blue3) !important;}
.text-success{ color: var(--green) !important;}
.text-danger{ color: var(--red1) !important;}
.text-warning{ color: var(--orange) !important;}
.text-info{ color: var(--cyan3) !important;}


body {
    background-color: var(--bg);
    color: var(--text);
    font-family: var(--font_retina);
    font-size: var(--font_lg);
    line-height: var(--lh_lg);
    margin: 0;
    padding: 0;
}

/* 导航栏样式 */
.navbar {
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(10px);
    border-bottom: var(--border);
    padding: 1rem 0;
}

.navbar-brand .logo {
    color: var(--logo);
    font-weight: bold;
    font-size: 1.5rem;
    margin-right: 1rem;
}
.navbar-brand .logo img{height:60px;width: auto;}

.navbar-brand .slogan {
    color: var(--text);
    font-size: 0.9rem;
    font-weight: normal;
    opacity: 0.8;
}

.navbar-nav .nav-link {
    color: var(--text) !important;
    font-weight: 500;
    padding: 0.5rem 1rem !important;
    transition: color 0.3s ease;
}

.navbar-nav .nav-link:hover {
    color: var(--text-hover) !important;
}

.navbar-toggler {
    border-color: var(--border-color);
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28205, 221, 242, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* 大图区域样式 */
.hero-section {
    background: var(--bg);
    padding-top: 80px;
    height: 600px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}

/* 固定恒星背景 */
.hero-section .fixed-stars {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: 
        radial-gradient(2px 2px at 15% 25%, rgba(255,255,255,0.9), transparent),
        radial-gradient(1.5px 1.5px at 35% 15%, rgba(255,255,255,0.7), transparent),
        radial-gradient(2.5px 2.5px at 75% 35%, rgba(255,255,255,0.8), transparent),
        radial-gradient(1px 1px at 85% 20%, rgba(255,255,255,0.6), transparent),
        radial-gradient(1.5px 1.5px at 25% 65%, rgba(255,255,255,0.7), transparent),
        radial-gradient(2px 2px at 65% 75%, rgba(255,255,255,0.8), transparent),
        radial-gradient(1px 1px at 90% 60%, rgba(255,255,255,0.5), transparent),
        radial-gradient(1.5px 1.5px at 45% 85%, rgba(138, 73, 254, 0.6), transparent),
        radial-gradient(2px 2px at 80% 90%, rgba(58, 84, 226, 0.5), transparent),
        radial-gradient(1px 1px at 10% 80%, rgba(252, 41, 68, 0.4), transparent);
    z-index: 1;
}

/* 星空动画背景 */
.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: 
        radial-gradient(1px 1px at 120px 180px, #eee, transparent),
        radial-gradient(1px 1px at 350px 120px, rgba(255,255,255,0.8), transparent),
        radial-gradient(1px 1px at 580px 280px, #fff, transparent),
        radial-gradient(1px 1px at 750px 80px, rgba(255,255,255,0.6), transparent),
        radial-gradient(1px 1px at 950px 220px, #ddd, transparent),
        radial-gradient(2px 2px at 200px 300px, rgba(255,255,255,0.9), transparent),
        radial-gradient(1.5px 1.5px at 450px 180px, rgba(255,255,255,0.7), transparent),
        radial-gradient(2.5px 2.5px at 680px 350px, rgba(255,255,255,0.8), transparent),
        radial-gradient(1px 1px at 850px 150px, rgba(255,255,255,0.5), transparent),
        radial-gradient(1.5px 1.5px at 300px 400px, rgba(255,255,255,0.6), transparent);
    background-repeat: repeat;
    background-size: 1200px 400px;
    animation: starMove 120s linear infinite;
    z-index: 1;
}

.hero-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: 
        radial-gradient(1px 1px at 200px 300px, rgba(138, 73, 254, 0.4), transparent),
        radial-gradient(1px 1px at 600px 150px, rgba(58, 84, 226, 0.3), transparent),
        radial-gradient(1px 1px at 900px 350px, rgba(252, 41, 68, 0.3), transparent),
        radial-gradient(1.5px 1.5px at 400px 250px, rgba(138, 73, 254, 0.5), transparent),
        radial-gradient(2px 2px at 700px 100px, rgba(58, 84, 226, 0.4), transparent);
    background-repeat: repeat;
    background-size: 1400px 500px;
    animation: starMove 180s linear infinite reverse;
    z-index: 1;
}

/* 银河/星云效果 */
.hero-section .hero-galaxy {
    position: absolute;
    top: 35%;
    left: 25%;
    width: 300px;
    height: 400px;
    background: 
        radial-gradient(ellipse 200px 300px at center, rgba(138, 73, 254, 0.15) 0%, transparent 50%),
        radial-gradient(ellipse 150px 250px at 60% 40%, rgba(58, 84, 226, 0.1) 0%, transparent 60%),
        radial-gradient(ellipse 100px 200px at 80% 70%, rgba(252, 41, 68, 0.08) 0%, transparent 70%);
    animation: galaxyGlow 8s ease-in-out infinite alternate;
    z-index: 1;
}

/* 流星效果 */
.hero-section .meteor {
    position: absolute;
    width: 4px;
    height: 4px;
    background: radial-gradient(circle, #fff 0%, rgba(255,255,255,0.8) 30%, transparent 70%);
    border-radius: 50%;
    opacity: 0;
    z-index: 1;
}

.hero-section .meteor::before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    width: 6px;
    height: 6px;
    background: radial-gradient(circle, rgba(255,255,255,0.6) 0%, transparent 70%);
    border-radius: 50%;
}

.hero-section .meteor:nth-child(2) {
    top: 25%;
    left: 60%;
    animation: meteor1 4s linear infinite;
    animation-delay: 3s;
}

.hero-section .meteor:nth-child(3) {
    top: 45%;
    left: 55%;
    animation: meteor2 5s linear infinite;
    animation-delay: 8s;
}

.hero-section .meteor:nth-child(4) {
    top: 35%;
    left: 65%;
    animation: meteor3 4.5s linear infinite;
    animation-delay: 13s;
}

@keyframes starMove {
    0% {
        transform: translateX(0) translateY(0);
    }
    100% {
        transform: translateX(-1200px) translateY(-400px);
    }
}

@keyframes galaxyGlow {
    0% {
        opacity: 0.3;
        transform: scale(1) rotate(0deg);
    }
    100% {
        opacity: 0.6;
        transform: scale(1.1) rotate(2deg);
    }
}

@keyframes meteor1 {
    0% {
        opacity: 0;
        transform: translateX(0) translateY(0) scale(0);
    }
    5% {
        opacity: 1;
        transform: translateX(-10px) translateY(10px) scale(1);
        box-shadow: 
            0 0 15px #fff, 
            0 0 30px #fff, 
            0 0 45px #fff,
            -5px -5px 20px rgba(255,255,255,0.5);
    }
    100% {
        opacity: 0;
        transform: translateX(-300px) translateY(300px) scale(0);
        box-shadow: none;
    }
}

@keyframes meteor2 {
    0% {
        opacity: 0;
        transform: translateX(0) translateY(0) scale(0);
    }
    4% {
        opacity: 1;
        transform: translateX(-12px) translateY(12px) scale(1);
        box-shadow: 
            0 0 12px rgba(138, 73, 254, 0.9), 
            0 0 24px rgba(138, 73, 254, 0.7),
            -6px -6px 18px rgba(138, 73, 254, 0.4);
    }
    100% {
        opacity: 0;
        transform: translateX(-350px) translateY(350px) scale(0);
        box-shadow: none;
    }
}

@keyframes meteor3 {
    0% {
        opacity: 0;
        transform: translateX(0) translateY(0) scale(0);
    }
    6% {
        opacity: 1;
        transform: translateX(-15px) translateY(15px) scale(1);
        box-shadow: 
            0 0 10px rgba(58, 84, 226, 0.9), 
            0 0 20px rgba(58, 84, 226, 0.7),
            -8px -8px 15px rgba(58, 84, 226, 0.4);
    }
    100% {
        opacity: 0;
        transform: translateX(-320px) translateY(320px) scale(0);
        box-shadow: none;
    }
}

.hero-section .container {
    position: relative;
    z-index: 2;
}

.hero-title {
    font-size: 3.5rem;
    font-weight: bold;
    background: linear-gradient(90.77deg, #554aff .34%, #e9a5ef 55.32%, #fdd045 99.81%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
    margin-bottom: 1.5rem;
    text-shadow: none;
}

.hero-description {
    font-size: var(--font_xl);
    color: var(--text);
    margin-bottom: 2rem;
    line-height: var(--lh_xl);
}

.hero-btn {
    background: var(--bg-menu);
    border: none;
    padding: 1rem 2rem;
    font-size: var(--font_xl);
    font-weight: bold;
    border-radius: 50px;
    box-shadow: var(--shadow);
    transition: all 0.3s ease;
}

.hero-btn:hover {
    background: var(--bg-menubg);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 255, 255, 0.3);
}

.hero-image {
    text-align: center;
}

.hero-banner-img {
    width: 525px;
    height: auto;
    max-width: 100%;
    box-shadow: 6px 5px 0 rgba(0, 0, 0, 0.20);
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.hero-icon {
    font-size: 15rem;
    color: var(--blue1);
    opacity: 0.8;
    animation: float 3s ease-in-out infinite;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-20px);
    }
}

/* 功能板块样式 */
.features-section {
    padding: 2rem 0;
    background: var(--bg);
}

.feature-card {
    background: var(--bg-gray);
    border: var(--border);
    border-radius: 15px;
    padding: 2rem;
    height: 100%;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
}

.feature-card:hover {
    border-color: var(--orange1);
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(255, 161, 23, 0.2);
}

.feature-header {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}

.feature-icon {
    font-size: 2rem;
    margin-right: 1rem;
    color: var(--blue1);
}

.feature-header h3 {
    color: var(--text);
    font-size: var(--font_xl);
    font-weight: bold;
    margin: 0;
}

.feature-content {
    margin-top: 1rem;
}

.feature-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.feature-tag {
    background: var(--bg-deep);
    color: var(--text);
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: var(--font_sm);
    border: 1px solid var(--border-color);
    transition: all 0.3s ease;
}

.feature-tag:hover {
    background: var(--orange0);
    border-color: var(--orange1);
    color: var(--white);
}

/* 底部样式 */
.footer {
    background: #3C2B5F;
    border-top: var(--border);
    padding: 2rem 0;
    margin-top: 1.5rem;
}

.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

.footer-links a {
    color: var(--text-gray);
    text-decoration: none;
    font-size: var(--font_sm);
    transition: color 0.3s ease;
}

.footer-links a:hover {
    color: var(--text-hover);
}

.copyright {
    color: var(--text-gray);
    font-size: var(--font_sm);
    margin: 0;
}

/* 响应式设计 */
@media (max-width: 768px) {
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-description {
        font-size: var(--font_lg);
    }
    
    .hero-icon {
        font-size: 8rem;
    }
    
    .hero-btn {
        margin-bottom: 2rem;
    }
    
    .feature-card {
        margin-bottom: 2rem;
    }
    
    .footer-links {
        flex-direction: column;
        gap: 1rem;
    }
    
    .copyright {
        text-align: center !important;
        margin-top: 1rem;
    }
}

.hero-image .u-callout-wrapper{text-align: left;}
.u-callout { position: absolute; background-color: #fff; overflow: hidden; color:#333; width: 240px;
 margin-top: 1.25rem; margin-bottom: 1.25rem; border-left: 4px #eee solid; border-radius: 4px;
 box-shadow: 2px 3px 7px rgba(0, 0, 0, 0.5); }
.u-callout h4 { margin-top: 0; margin-bottom: .25rem; font-size:14px; }
.u-callout p:last-child { margin-bottom: 0 }
.u-callout .close{margin-left: auto !important;font-size: 1.5rem; position: relative; top: -3px;
    font-weight: 700;line-height: 1rem;color: #000;text-shadow: 0 1px 0 #fff;opacity: .5;
  }
.u-callout h4 .nickname { padding:0 0 0 10px; font-size: 13px !important}

.u-callout .avatar {width: 26px;height: 26px;border-radius: 13px;border: 1px solid #dedede; overflow: hidden;margin-top: -4px}
.u-callout .avatar img{margin-top: 3px;}
.u-callout-info .avatar{border-color: #5bc0de;}
.u-callout-warning .avatar{border-color: #f0ad4e;}
.u-callout-danger .avatar{border-color: #d9534f;}

.u-callout-inner{padding: 10px;border-top-right-radius: 3px;border-bottom-right-radius: 3px;  }
.u-callout-info{ border-left-color: #5bc0de;left: 5%;top:10% }
.u-callout-info h4 { color: #5bc0de }
.u-callout-warning{ border-left-color: #f0ad4e; left: 15%;top:45% }
.u-callout-warning h4 { color: #f0ad4e }
.u-callout-danger{ border-left-color: #d9534f ;left: 20%;top:27%}
.u-callout-danger h4 { color: #d9534f }

.u-body{font-size: 12px !important; color:#666 !important}


@media (max-width: 576px) {
    .hero-section {
        padding-top: 100px;
    }
    
    .hero-title {
        font-size: 2rem;
    }
    
    .hero-btn, .hero-section .btn-danger {
        padding: 0.8rem 1.5rem;
        font-size: var(--font_lg);
    }
    
    .feature-card {
        padding: 1.5rem;
    }
    
    .feature-icon {
        font-size: 1.5rem;
    }
    
    .feature-header h3 {
        font-size: var(--font_lg);
    }
}

/* 自定义滚动条 */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: var(--bg);
}

::-webkit-scrollbar-thumb {
    background: var(--border-color);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--orange1);
}

/* 平滑滚动 */
html {
    scroll-behavior: smooth;
}

/* u-callout 样式 */
.close {
    cursor: pointer;
}