/* ==================== 专业FitChallenge LOGO系统 ==================== */
/* 基于UI设计预览的完整LOGO设计 */

/* Google Fonts for Logo - 已禁用以提升加载速度 */
/* @import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Montserrat:wght@400;600;700;800&display=swap'); */

/* ==================== 主LOGO样式 ==================== */
.fitchallenge-logo {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, sans-serif;
    text-decoration: none;
    transition: all var(--duration-normal) var(--ease-out);
}

.fitchallenge-logo:hover {
    transform: scale(1.05);
}

.logo-icon {
    position: relative;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fist-infinity-icon {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 拳头图标 */
.fist-icon {
    font-size: 24px;
    color: #FF6B35;
    filter: drop-shadow(0 2px 4px rgba(255, 107, 53, 0.3));
    z-index: 2;
    position: relative;
}

/* 无限符号背景 */
.infinity-bg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(10deg);
    font-size: 32px;
    color: #FF6B35;
    opacity: 0.6;
    z-index: 1;
}

.logo-text {
    font-size: 24px;
    font-weight: 700;
    color: #2D3748;
    letter-spacing: 1px;
    line-height: 1;
}

.logo-text .fit {
    color: #FF6B35;
}

.logo-text .challenge {
    color: #2D3748;
}

/* ==================== LOGO变体 ==================== */

/* 白色版本 - 用于深色背景 */
.fitchallenge-logo.white .logo-text {
    color: white;
}

.fitchallenge-logo.white .logo-text .fit {
    color: #FFD700;
}

.fitchallenge-logo.white .logo-text .challenge {
    color: white;
}

.fitchallenge-logo.white .fist-icon {
    color: #FFD700;
    filter: drop-shadow(0 2px 4px rgba(255, 215, 0, 0.4));
}

.fitchallenge-logo.white .infinity-bg {
    color: #FFD700;
}

/* 大尺寸版本 */
.fitchallenge-logo.large .logo-icon {
    width: 64px;
    height: 64px;
}

.fitchallenge-logo.large .fist-icon {
    font-size: 32px;
}

.fitchallenge-logo.large .infinity-bg {
    font-size: 42px;
}

.fitchallenge-logo.large .logo-text {
    font-size: 32px;
}

/* 小尺寸版本 */
.fitchallenge-logo.small .logo-icon {
    width: 32px;
    height: 32px;
}

.fitchallenge-logo.small .fist-icon {
    font-size: 16px;
}

.fitchallenge-logo.small .infinity-bg {
    font-size: 22px;
}

.fitchallenge-logo.small .logo-text {
    font-size: 18px;
}

.fitchallenge-logo.small {
    gap: 8px;
}

/* 紧凑版本 - 只显示图标 */
.fitchallenge-logo.compact .logo-text {
    display: none;
}

.fitchallenge-logo.compact .logo-icon {
    width: 40px;
    height: 40px;
}

/* ==================== 渐变版本 ==================== */
.fitchallenge-logo.gradient .logo-text .fit {
    background: linear-gradient(135deg, #FF6B35 0%, #F7931E 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.fitchallenge-logo.gradient .logo-text .challenge {
    background: linear-gradient(135deg, #2D3748 0%, #4A5568 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ==================== 动画效果 ==================== */
.fitchallenge-logo.animated .fist-icon {
    animation: pulse 2s ease-in-out infinite;
}

.fitchallenge-logo.animated .infinity-bg {
    animation: rotate 8s linear infinite;
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

@keyframes rotate {
    0% {
        transform: translate(-50%, -50%) rotate(10deg);
    }
    100% {
        transform: translate(-50%, -50%) rotate(370deg);
    }
}

/* ==================== 页面头部集成 ==================== */
.header .fitchallenge-logo,
.navigation .fitchallenge-logo {
    margin: 0;
}

.header .fitchallenge-logo .logo-text,
.navigation .fitchallenge-logo .logo-text {
    font-size: 20px;
}

.header .fitchallenge-logo .logo-icon,
.navigation .fitchallenge-logo .logo-icon {
    width: 36px;
    height: 36px;
}

.header .fitchallenge-logo .fist-icon,
.navigation .fitchallenge-logo .fist-icon {
    font-size: 18px;
}

.header .fitchallenge-logo .infinity-bg,
.navigation .fitchallenge-logo .infinity-bg {
    font-size: 24px;
}

/* ==================== 响应式适配 ==================== */
@media (max-width: 768px) {
    .fitchallenge-logo .logo-text {
        font-size: 20px;
    }
    
    .fitchallenge-logo .logo-icon {
        width: 40px;
        height: 40px;
    }
    
    .fitchallenge-logo .fist-icon {
        font-size: 20px;
    }
    
    .fitchallenge-logo .infinity-bg {
        font-size: 26px;
    }
    
    .fitchallenge-logo {
        gap: 8px;
    }
}

@media (max-width: 480px) {
    .fitchallenge-logo .logo-text {
        font-size: 18px;
    }
    
    .fitchallenge-logo .logo-icon {
        width: 32px;
        height: 32px;
    }
    
    .fitchallenge-logo .fist-icon {
        font-size: 16px;
    }
    
    .fitchallenge-logo .infinity-bg {
        font-size: 22px;
    }
    
    /* 在很小的屏幕上可以选择只显示图标 */
    .fitchallenge-logo.mobile-compact .logo-text {
        display: none;
    }
}

/* ==================== 特殊场景适配 ==================== */

/* 加载页面LOGO */
.loading-logo {
    text-align: center;
    margin-bottom: var(--space-8);
}

.loading-logo .fitchallenge-logo {
    justify-content: center;
}

.loading-logo .fitchallenge-logo .fist-icon {
    animation: pulse 1.5s ease-in-out infinite;
}

/* 登录页面LOGO */
.login-logo {
    text-align: center;
    margin-bottom: var(--space-10);
}

.login-logo .fitchallenge-logo {
    justify-content: center;
}

.login-logo .fitchallenge-logo .logo-text {
    font-size: 28px;
}

.login-logo .fitchallenge-logo .logo-icon {
    width: 56px;
    height: 56px;
}

.login-logo .fitchallenge-logo .fist-icon {
    font-size: 28px;
}

.login-logo .fitchallenge-logo .infinity-bg {
    font-size: 36px;
}

/* 404页面LOGO */
.error-logo {
    text-align: center;
    opacity: 0.6;
    margin-bottom: var(--space-8);
}

.error-logo .fitchallenge-logo {
    justify-content: center;
    filter: grayscale(0.5);
}

/* ==================== 兼容性处理 ==================== */

/* 如果不支持backdrop-filter，使用纯色背景 */
@supports not (backdrop-filter: blur(20px)) {
    .fitchallenge-logo.white {
        background: rgba(0, 0, 0, 0.1);
        padding: var(--space-2) var(--space-4);
        border-radius: var(--radius-lg);
    }
}

/* 确保在高对比度模式下可读 */
@media (prefers-contrast: high) {
    .fitchallenge-logo .logo-text .fit {
        color: #CC5522;
    }
    
    .fitchallenge-logo .logo-text .challenge {
        color: #000000;
    }
    
    .fitchallenge-logo.white .logo-text .fit {
        color: #FFDD00;
    }
    
    .fitchallenge-logo.white .logo-text .challenge {
        color: #FFFFFF;
    }
}

/* 减少动画效果（如果用户偏好） */
@media (prefers-reduced-motion: reduce) {
    .fitchallenge-logo.animated .fist-icon,
    .fitchallenge-logo.animated .infinity-bg {
        animation: none;
    }
    
    .fitchallenge-logo {
        transition: none;
    }
    
    .fitchallenge-logo:hover {
        transform: none;
    }
}
