/* ============================================================
   MCRES · 通用页脚
   四栏 + 社交账号 + 底部法律声明
   背景透明，与页面融为一体
   ============================================================ */

.site-footer {
    margin-top: 60px;
    padding: 48px 48px 28px;
    border-top: 1px solid rgba(255, 255, 255, .06);
    background: transparent;
    color: rgba(255, 255, 255, .5);
    font-size: 13px;
    line-height: 1.7;
    font-family: "Inter", "Microsoft YaHei", "PingFang SC", -apple-system, sans-serif;
}

/* ========== 四栏 ========== */
.footer-inner {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 40px;
    max-width: 1280px;
    margin: 0 auto 32px;
}

/* ---- 品牌列 ---- */
.footer-col-brand {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.footer-logo {
    display: flex;
    align-items: baseline;
    gap: 4px;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.2;
}
.footer-logo .brand-mcres {
    color: var(--module-color, #55d88b);
    text-shadow: 0 0 24px rgba(85, 216, 139, .3);
    letter-spacing: 1.5px;
}
.footer-logo .brand-title {
    background: linear-gradient(135deg, #f6f8ff, #d0d9f0);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.footer-slogan {
    color: rgba(255, 255, 255, .35);
    font-size: 13px;
    line-height: 1.7;
    max-width: 240px;
    margin: 0;
}

/* ---- 链接列 ---- */
.footer-col h4 {
    font-size: 13px;
    font-weight: 600;
    color: rgba(255, 255, 255, .85);
    margin: 0 0 14px 0;
    letter-spacing: .3px;
}
.footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.footer-col ul li a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    font-size: 13px;
    transition: color .2s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.footer-col ul li a:hover {
    color: var(--module-color, #55d88b);
}

/* ---- 社交列 ---- */
.footer-social {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.footer-social li a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 14px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .06);
    transition: all .2s;
    color: rgba(255, 255, 255, .6);
    font-size: 13px;
    text-decoration: none;
}
.footer-social li a i,
.footer-social li a svg {
    font-size: 16px;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    display: block;
}
.footer-social li a:hover {
    transform: translateX(3px);
    color: #fff;
}

/* B 站 hover：粉色 */
.footer-social .social-bilibili:hover {
    color: #fb7299;
    border-color: rgba(251, 114, 153, .35);
    background: rgba(251, 114, 153, .1);
}

/* 抖音 hover：红黑撞色 */
.footer-social .social-douyin:hover {
    color: #fff;
    border-color: rgba(254, 44, 85, .35);
    background: rgba(254, 44, 85, .1);
}

/* ========== 底部法律声明 ========== */
.footer-bottom {
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, .02);
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 12px;
    color: rgba(255, 255, 255, .35);
    line-height: 1.7;
    text-align: center;
}
.footer-bottom p {
    margin: 0;
}
.footer-bottom a {
    color: rgba(255, 255, 255, .5);
    text-decoration: none;
    border-bottom: 1px dotted rgba(255, 255, 255, .15);
    transition: all .2s;
}
.footer-bottom a:hover {
    color: var(--module-color, #55d88b);
    border-bottom-color: rgba(85, 216, 139, .4);
}

/* ========== 响应式 ========== */
@media (max-width: 900px) {
    .site-footer { padding: 36px 24px 20px; margin-top: 40px; }
    .footer-inner {
        grid-template-columns: 1fr 1fr;
        gap: 32px 24px;
    }
}
@media (max-width: 560px) {
    .site-footer { padding: 28px 16px 16px; margin-top: 32px; }
    .footer-inner {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .footer-logo { font-size: 18px; }
    .footer-slogan { max-width: none; }
    .footer-bottom { font-size: 11px; }
}
/* ---- 品牌列 · Logo ---- */
.footer-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    /* 覆盖原有的 font-size/baseline 设置 */
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1.2;
}
.footer-logo-img {
    width: 40px;
    height: 40px;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
    /* 若 logo 是深色底白字，可加微弱光晕让它更融合 */
    filter: drop-shadow(0 0 8px rgba(85, 216, 139, .15));
}
.footer-logo-text {
    display: flex;
    align-items: baseline;
    gap: 4px;
}

/* 子域 logo 小图标 */
.footer-sub-logos {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 6px;
}
.footer-sub-logos a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .06);
    transition: all .2s;
    opacity: .6;
}
.footer-sub-logos a:hover {
    opacity: 1;
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .15);
    transform: translateY(-2px);
}
.footer-sub-logos a img {
    width: 18px;
    height: 18px;
    object-fit: contain;
    display: block;
}