/* 默认是黑的奥 */
:root {
    /* ==========================================================================
       主题变量定义 (默认浅色模式)
       ========================================================================== */
    
    /* 背景色 - 白天不一定是纯白，可在此处自定义 */
    --theme-bg-primary: #FFFFFF;
    --theme-bg-secondary: #F9FAFB;
    --theme-bg-tertiary: #F3F4F6;
    --theme-bg-quaternary: #E5E7EB;
    --theme-bg-elevated: #FFFFFF;
    --theme-bg-overlay: rgba(255, 255, 255, 0.8);
    --theme-bg-shallow: #f2f2f2;

    /* 边框色 */
    --theme-border-primary: #D1D5DB;
    --theme-border-secondary: #E5E7EB;
    --theme-border-light: #F3F4F6;
    
    /* 文本色 */
    --theme-text-primary: #000000;
    --theme-text-secondary: #374151;
    --theme-text-muted: #6B7280;
    --theme-text-disabled: #9CA3AF;
    --theme-text-inverse: #FFFFFF;

    /* 固定颜色 */
    --theme-text-white: #fff;
    --theme-text-black: #000;
    --theme-tag-text: #fff;

    /* 功能色 (蓝色系) */
    --theme-primary: #2563EB;
    --theme-tag-bg: #2563EB;
    --theme-primary-light: #3B82F6;
    --theme-primary-dark: #1D4ED8;
    --theme-border-focus: #2563EB;
    
    /* 状态色 */
    --theme-success: #2563EB; /* 目前与主色相同 */
    --theme-success-light: #3B82F6;
    --theme-success-dark: #1D4ED8;
    
    --theme-warning: #FFA726;
    --theme-warning-light: #FFB74D;
    --theme-warning-dark: #F57C00;
    
    --theme-error: #FF4444;
    --theme-error-light: #FF6B6B;
    --theme-error-dark: #E53E3E;
    --theme-border-error: #FF4444;
    --theme-border-warning: #FFA726;

    --theme-info: #5EBCFF;
    --theme-info-light: #7ECAFF;
    --theme-info-dark: #3FA8FF; 

    /* 阴影系统 - 保持原有定义或添加 */
 

        --theme-shadow-xs:0 1px 2px 0 rgba(0, 0, 0, 0.05);
        --theme-shadow-sm:0 1px 3px 0 rgba(0, 0, 0, 0.075);
        --theme-shadow-md:0 4px 6px -1px rgba(0, 0, 0, 0.1);
        --theme-shadow-lg:0 10px 15px -3px rgba(0, 0, 0, 0.15);
        --theme-shadow-xl:0 20px 25px -5px rgba(0, 0, 0, 0.2);
        --theme-shadow-2xl:0 25px 50px -12px rgba(0, 0, 0, 0.25);
        --theme-shadow-inner:inset 0 2px 4px 0 rgba(0, 0, 0, 0.06);

    /* 渐变系统 */
    --theme-gradient-primary: var(--theme-primary);
    --theme-gradient-success: linear-gradient(135deg, var(--theme-success), var(--theme-success-dark));
    --theme-gradient-warning: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-dark));
    --theme-gradient-error: linear-gradient(135deg, var(--theme-error), var(--theme-error-dark));
    --theme-gradient-soft: linear-gradient(135deg, rgba(42, 219, 92, 0.1), rgba(94, 188, 255, 0.1));
    
    /* 圆角系统 */
    --theme-radius-none: 0;
    --theme-radius-xs: 0.125rem;
    --theme-radius-sm: 0.25rem;
    --theme-radius-md: 0.375rem;
    --theme-radius-lg: 0.5rem;
    --theme-radius-xl: 0.75rem;
    --theme-radius-2xl: 1rem;
    --theme-radius-3xl: 1.5rem;
    --theme-radius-full: 9999px;
    
    /* 间距系统 */
    --theme-spacing-0: 0;
    --theme-spacing-px: 1px;
    --theme-spacing-0-5: 0.125rem;
    --theme-spacing-1: 0.25rem;
    --theme-spacing-1-5: 0.375rem;
    --theme-spacing-2: 0.5rem;
    --theme-spacing-2-5: 0.625rem;
    --theme-spacing-3: 0.75rem;
    --theme-spacing-3-5: 0.875rem;
    --theme-spacing-4: 1rem;
    --theme-spacing-5: 1.25rem;
    --theme-spacing-6: 1.5rem;
    --theme-spacing-7: 1.75rem;
    --theme-spacing-8: 2rem;
    --theme-spacing-9: 2.25rem;
    --theme-spacing-10: 2.5rem;
    --theme-spacing-12: 3rem;
    --theme-spacing-16: 4rem;
    --theme-spacing-20: 5rem;
    --theme-spacing-24: 6rem;
    
    /* 字体系统 */
    --theme-font-size-xs: 0.75rem;
    --theme-font-size-sm: 0.875rem;
    --theme-font-size-base: 1rem;
    --theme-font-size-lg: 1.125rem;
    --theme-font-size-xl: 1.25rem;
    --theme-font-size-2xl: 1.5rem;
    --theme-font-size-3xl: 1.875rem;
    --theme-font-size-4xl: 2.25rem;
    
    /* 行高系统 */
    --theme-line-height-none: 1;
    --theme-line-height-tight: 1.25;
    --theme-line-height-snug: 1.375;
    --theme-line-height-normal: 1.5;
    --theme-line-height-relaxed: 1.625;
    --theme-line-height-loose: 2;
    
    /* 过渡动画系统 */
    --theme-transition-fast: 0.15s ease;
    --theme-transition-normal: 0.3s ease;
    --theme-transition-slow: 0.5s ease;
    --theme-transition-all: all var(--theme-transition-normal);
    
    /* 响应式断点 */
    --theme-breakpoint-sm: 640px;
    --theme-breakpoint-md: 768px;
    --theme-breakpoint-lg: 1024px;
    --theme-breakpoint-xl: 1280px;
    --theme-breakpoint-2xl: 1536px;
    
    /* Z-index 系统 */
    --theme-z-dropdown: 1000;
    --theme-z-sticky: 1020;
    --theme-z-fixed: 1030;
    --theme-z-modal-backdrop: 1040;
    --theme-z-modal: 1050;
    --theme-z-popover: 1060;
    --theme-z-tooltip: 1070;
    --theme-z-toast: 1080;
  }

/* 深色模式变量 */
[data-theme='dark'], .dark-theme {
    --theme-bg-primary: #030100;
    --theme-bg-secondary: #090A0B;
    --theme-bg-tertiary: #111113;
    --theme-bg-quaternary: #1A1D21;
    --theme-bg-elevated: #2A2F35;
    --theme-bg-overlay: rgba(0, 0, 0, 0.8);
    --theme-bg-shallow: #000;

    --theme-border-primary: #40484F;
    --theme-border-secondary: #2A2F35;
    --theme-border-light: #545B62;
    
    --theme-text-primary: #FFFFFF;
    --theme-text-secondary: #E7EAED;
    --theme-text-muted: #9CA3AF;
    --theme-text-disabled: #6B7280;
    --theme-text-inverse: #000000;
}

/* 浅色模式显式定义 (与 :root 相同) */
[data-theme='light'], .light-theme {
    --theme-bg-primary: #FFFFFF;
    --theme-bg-secondary: #F9FAFB;
    --theme-bg-tertiary: #F3F4F6;
    --theme-bg-quaternary: #E5E7EB;
    --theme-bg-elevated: #FFFFFF;
    --theme-bg-overlay: rgba(255, 255, 255, 0.8);
    --theme-bg-shallow: #f2f2f2;

    --theme-border-primary: #D1D5DB;
    --theme-border-secondary: #E5E7EB;
    --theme-border-light: #F3F4F6;
    
    --theme-text-primary: #000000;
    --theme-text-secondary: #374151;
    --theme-text-muted: #6B7280;
    --theme-text-disabled: #9CA3AF;
    --theme-text-inverse: #FFFFFF;
}

.tm-bg-overlay {
    background-color: var(--theme-bg-overlay);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}


 
/* 简单的按钮,黑白 */
.tm_btn_simple{
    background-color: var(--theme-bg-primary);
    color: var(--theme-text-primary);
    border: 1px solid var(--theme-border-primary);
}
/*  */  


/* ==========================================================================
   基础样式重置和全局设置
   ========================================================================== */

/* 主题基础样式 */
.tm-body {
    background-color: var(--theme-bg-primary);
    color: var(--theme-text-primary);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}


/* 通用文字颜色类 */
.tm-text-primary { color: var(--theme-text-primary);}
.tm-text-secondary { color: var(--theme-text-secondary);}
.tm-text-muted { color: var(--theme-text-muted);}
.tm-text-info { color: var(--theme-info);}
.tm-text-black { color: var(--theme-text-black);}
.tm-text-white { color: var(--theme-text-white);}
.tm-text-success { color: var(--theme-success); }
.tm-text-warning { color: var(--theme-warning); }
.tm-text-accent {
    background: var(--theme-gradient-primary);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 600;
}
.tm-text-hight{
    color:var(--theme-primary);
}
/* 通用背景色类 */

.tm-bg-primary {
    background-color: var(--theme-bg-primary);
}

.tm-bg-secondary {
    background-color: var(--theme-bg-secondary);
}

/* //浅色 */
.tm-bg-shallow {
    background-color: var(--theme-bg-shallow);
}

/* 通用按钮类 */
.tm-btn-primary {
    background: var(--theme-primary-dark);
    color: var(--theme-text-white);
    padding: var(--theme-spacing-2) var(--theme-spacing-6);
}
.tm-btn-primary:hover {
    /* background: var(--theme-primary-dark); */
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
    color: var(--theme-text-white);
}
/* 相反的通用 */
.tm-btn-white {
    background: var(--theme-bg-primary);
    color: var(--theme-text-primary);
}
.tm-btn-white:hover {
    /* background: var(--theme-bg-primary); */
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
    color: var(--theme-text-primary);
}
.tm-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-6);
    border-radius: var(--theme-radius-md);
    font-weight: 500;
    text-decoration: none;
    transition: var(--theme-transition-all);
    cursor: pointer;
    border: none;
    font-size: var(--theme-font-size-sm);
}

.tm-btn-secondary {
    background: var(--theme-bg-secondary);
    color: var(--theme-text-primary);
    border: 1px solid var(--theme-border-primary);
    padding: var(--theme-spacing-2) var(--theme-spacing-6);
}

.tm-btn-secondary:hover {
    background: var(--theme-bg-elevated);
    border-color: var(--theme-border-light);
}

.tm-btn-outline {
    background: transparent;
    color: var(--theme-primary);
    border: 1px solid var(--theme-primary);
}

.tm-btn-outline:hover {
    background: var(--theme-primary);
    color: var(--theme-text-primary);
}

.tm-btn-active{
    color: var(--theme-primary);
    background: var(--theme-bg-quaternary);
    /* display: flex; */
    /* align-items: center; */
    /* padding: var(--theme-spacing-2) var(--theme-spacing-4); */
    /* text-decoration: none; */
    /* border-radius: var(--theme-radius-md); */
    /* transition: var(--theme-transition-all); */
}

/* 输入框组件 */
.tm-input {
    width: 100%;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background: var(--theme-bg-secondary);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-sm);
    transition: var(--theme-transition-all);
}

.tm-input:focus {
    outline: none;
    border-color: var(--theme-border-focus);
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.1);
}

.tm-input::placeholder {
    color: var(--theme-text-muted);
}

.tm-select {
    width: 100%;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background: var(--theme-bg-secondary);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-sm);
    cursor: pointer;
    transition: var(--theme-transition-all);
}

.tm-select:focus {
    outline: none;
    border-color: var(--theme-border-focus);
}

/* 标签组件 */
/* --theme-primary-light */
.tm-tag {
    display: inline-flex;
    align-items: center;
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    background: var(--theme-tag-bg);
    color: var(--theme-text-white);
    border-radius: var(--theme-radius-sm);
    font-size: var(--theme-font-size-xs);
    font-weight: 500;
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.tm-tag:hover {
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

.tm-badge {
    display: inline-flex;
    align-items: center;
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    background: var(--theme-primary);
    color: var(--theme-text-white);
    border-radius: var(--theme-radius-sm);
    font-size: var(--theme-font-size-xs);
    font-weight: 500;
}


/* 表格组件 */
.tm-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--theme-bg-elevated);
    border-radius: var(--theme-radius-lg);
    overflow: hidden;
}

.tm-table th,
.tm-table td {
    padding: var(--theme-spacing-4);
    text-align: left;
    border-bottom: 1px solid var(--theme-border-primary);
}

.tm-table th {
    background: var(--theme-bg-secondary);
    color: var(--theme-text-primary);
    font-weight: 600;
}

.tm-table td {
    color: var(--theme-text-secondary);
}


/* 边框 */
.tm-border {
    border: 1px solid var(--theme-border-primary);
}

/* 链接 */
.tm-link {
    color: var(--theme-primary);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.tm-link:hover {
    color: var(--theme-primary);
    text-decoration: underline;
}







/* ==========================================================================
   TM评论组件样式 (TM Comment Component Styles)
   ========================================================================== */

/* 评论容器 */
.tm-comment-container {
    background: var(--theme-bg-tertiary);
    /* border: 1px solid var(--theme-border-primary); */
    margin-bottom: var(--theme-spacing-4);
    padding: var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    box-shadow: var(--theme-shadow-sm);
    transition: var(--theme-transition-all);
}

.tm-comment-container:hover {
    border-color: var(--theme-primary);
    box-shadow: var(--theme-shadow-md);
}

/* 评论框 */
.tm-comment-box {
    background: var(--theme-bg-tertiary);
    /* border: 1px solid var(--theme-border-primary); */
    margin-bottom: var(--theme-spacing-4);
    padding: var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    box-shadow: var(--theme-shadow-sm);
    transition: var(--theme-transition-all);
}

.tm-comment-box:hover {
    border-color: var(--theme-primary);
    box-shadow: var(--theme-shadow-md);
}

/* Turnstile验证 */
.tm-turnstile {
    margin-bottom: var(--theme-spacing-4);
}

/* 评论输入框 */
.tm-comment-input {
    width: 100%;
    padding: var(--theme-spacing-3);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    resize: vertical;
    background-color: var(--theme-bg-secondary);
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-sm);
    line-height: var(--theme-line-height-relaxed);
    transition: var(--theme-transition-all);
    min-height: 100px;
}

.tm-comment-input:focus {
    border-color: var(--theme-border-focus);
    outline: none;
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}

.tm-comment-input::placeholder {
    color: var(--theme-text-muted);
}

/* 字符计数 */
.tm-char-count {
    text-align: right;
    margin-top: var(--theme-spacing-2);
    font-size: var(--theme-font-size-xs);
    color: var(--theme-text-muted);
}

.tm-char-count.warning {
    color: var(--theme-error);
    font-weight: 500;
}

/* 提交容器 */
.tm-submit-container {
    margin-top: var(--theme-spacing-3);
    text-align: right;
}

/* 回复表单 */
.tm-reply-form {
    background: var(--theme-bg-secondary);
    padding: var(--theme-spacing-3);
    margin-top: var(--theme-spacing-3);
    border-radius: var(--theme-radius-md);
    display: none;
    border: 1px solid var(--theme-border-primary);
    box-shadow: var(--theme-shadow-sm);
}

.tm-reply-form textarea {
    width: 100%;
    padding: var(--theme-spacing-2);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    resize: vertical;
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-sm);
    min-height: 80px;
    transition: var(--theme-transition-all);
}

.tm-reply-form textarea:focus {
    border-color: var(--theme-border-focus);
    outline: none;
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}

.tm-reply-form textarea::placeholder {
    color: var(--theme-text-muted);
}

/* 回复操作 */
.tm-reply-actions {
    margin-top: var(--theme-spacing-2);
    text-align: right;
    display: flex;
    justify-content: flex-end;
    gap: var(--theme-spacing-2);
}

/* 回复容器 */
.tm-replies-container {
    margin-left: var(--theme-spacing-8);
    margin-top: var(--theme-spacing-3);
    padding-left: var(--theme-spacing-4);
    position: relative;
}

.tm-replies-container::before {
    content: '';
    position: absolute;
    left: -2px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--theme-gradient-primary);
    opacity: 0.3;
}

/* 加载更多容器 */
.tm-load-more-container {
    text-align: center;
    margin-top: var(--theme-spacing-5);
    display: none;
}

/* 评论用户 */
.tm-comment-user {
    display: flex;
    align-items: flex-start;
    gap: var(--theme-spacing-3);
}

/* 评论头像 */
.tm-comment-avatar {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: var(--theme-radius-full);
    border: 2px solid var(--theme-border-primary);
    object-fit: cover;
    transition: var(--theme-transition-all);
}

.tm-comment-avatar:hover {
    border-color: var(--theme-primary);
}

/* 评论内容 */
.tm-comment-content {
    flex: 1;
    min-width: 0;
}

/* 评论元信息 */
.tm-comment-meta {
    margin-bottom: var(--theme-spacing-2);
    display: flex;
    align-items: center;
    gap: var(--theme-spacing-3);
}

/* 评论用户名 */
.tm-comment-username {
    color: var(--theme-text-primary);
    font-weight: 600;
    font-size: var(--theme-font-size-sm);
}

/* 评论时间 */
.tm-comment-time {
    color: var(--theme-text-muted);
    font-size: var(--theme-font-size-xs);
}

/* 评论文本 */
.tm-comment-text {
    margin-bottom: var(--theme-spacing-3);
    line-height: var(--theme-line-height-relaxed);
    color: var(--theme-text-secondary);
    word-wrap: break-word;
}

/* 评论操作 */
.tm-comment-actions {
    margin-top: var(--theme-spacing-3);
    display: flex;
    gap: var(--theme-spacing-2);
}

/* 空评论状态 */
.tm-empty-comments {
    text-align: center;
    padding: var(--theme-spacing-10);
    color: var(--theme-text-muted);
    font-size: var(--theme-font-size-lg);
}

/* 评论链接 */

.tm-comment-link:hover {
    border-bottom-color: var(--theme-primary);
}

/* 评论响应式设计 */
@media (max-width: 767px) {
    .tm-comment-container {
        padding: var(--theme-spacing-3);
    }

    .tm-replies-container {
        margin-left: var(--theme-spacing-4);
        padding-left: var(--theme-spacing-3);
    }

    .tm-comment-avatar {
        width: 2rem;
        height: 2rem;
    }

    .tm-comment-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--theme-spacing-1);
    }

    .tm-comment-actions {
        flex-wrap: wrap;
    }
}


/* ==========================================================================
   用户菜单样式 (User Menu Styles)
   ========================================================================== */

.theme-user-menu {
    background-color: var(--theme-bg-secondary);
    padding: var(--theme-spacing-6);
    /* z-index: var(--theme-z-fixed); */
}

.theme-user-menu-border {
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-xl);
}

.theme-user-menu-shadow {
    box-shadow: var(--theme-shadow-lg);
}

.theme-user-menu-header {
    padding-bottom: var(--theme-spacing-2);
}

.theme-user-menu-title {
    font-size: var(--theme-font-size-xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-6);
}

.theme-user-menu-divider {
    border-bottom: 1px solid var(--theme-border-secondary);
    margin-bottom: var(--theme-spacing-2);
}

.theme-user-menu-nav {
    display: flex;
    flex-direction: column;
    gap: var(--theme-spacing-3);
}

.theme-user-menu-item {
    display: flex;
    align-items: center;
    color: var(--theme-text-secondary);
    text-decoration: none;
    padding: var(--theme-spacing-2) var(--theme-spacing-3);
    border-radius: var(--theme-radius-lg);
    transition: var(--theme-transition-all);
    background-color: transparent;
    border: 1px solid transparent;
}

.theme-user-menu-item:hover {
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-primary);
    transform: translateX(var(--theme-spacing-1));
    border-color: var(--theme-border-primary);
}

.theme-user-menu-item:active,
.theme-user-menu-item.active {
    background-color: var(--theme-bg-elevated);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.theme-user-menu-icon {
    margin-right: var(--theme-spacing-3);
    font-size: var(--theme-font-size-lg);
    width: 1.25rem;
    text-align: center;
    color: inherit;
}

.theme-user-menu-text {
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    color: inherit;
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-user-menu {
        padding: var(--theme-spacing-4);
        border-radius: 0;
        border-left: none;
        border-top: none;
        border-bottom: none;
    }

    .theme-user-menu-title {
        font-size: var(--theme-font-size-lg);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-user-menu-item {
        padding: var(--theme-spacing-3);
    }
}

/* 移动端菜单按钮增强样式 */
@media (max-width: 767px) {
    .theme-menu-toggle {
        backdrop-filter: blur(10px);
        box-shadow: var(--theme-shadow-md);
    }

    .theme-menu-toggle:active {
        transform: scale(0.95);
    }
}

/* ==========================================================================
   主题切换按钮样式
   ========================================================================== */

.theme-toggle-container {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.theme-toggle-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    /* border: 1px solid var(--theme-border-primary); */
    border-radius: var(--theme-radius-full);
    background-color: var(--theme-bg-primary);
    color: var(--theme-text-primary);
    cursor: pointer;
    transition: var(--theme-transition-all);
    overflow: hidden;
}

.theme-toggle-btn:hover {
    /* background-color: var(--theme-primary); */
    /* color: var(--theme-text-inverse); */
    border-color: var(--theme-primary);
    transform: scale(1.05);
}

.theme-toggle-btn:active {
    transform: scale(0.95);
}

.theme-toggle-icon {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

/* .theme-icon-sun {
  opacity: 0;
  transform: rotate(0deg) scale(1);
}

.theme-icon-moon {
  opacity: 1;
  transform: rotate(180deg) scale(0.8);
} */




/* 卡片组件 */
.tm-card {
    background: var(--theme-bg-elevated);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    box-shadow: var(--theme-shadow-md);
    transition: var(--theme-transition-all);
}

.tm-card:hover {
    border-color: var(--theme-border-light);
    box-shadow: var(--theme-shadow-lg);
    transform: translateY(-2px);
}

.tm-card-bg {
    background: var(--theme-bg-secondary);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-8);
}

.tm-card-title {
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-xl);
    font-weight: 600;
    margin-bottom: var(--theme-spacing-2);
    line-height: var(--theme-line-height-tight);
}

.tm-card-summary {
    color: var(--theme-text-secondary);
    font-size: var(--theme-font-size-sm);
    line-height: var(--theme-line-height-relaxed);
    margin-bottom: var(--theme-spacing-4);
}

.tm-card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.8) 100%);
    border-radius: var(--theme-radius-lg);
    display: flex;
    align-items: flex-end;
    padding: var(--theme-spacing-6);
}

.tm-card-overlay-text {
    color: var(--theme-text-primary);
    font-weight: 500;
}





/* 导航组件 */
.tm-nav-link-active {
    color: var(--theme-primary);
    background: var(--theme-bg-quaternary);
    display: flex;
    align-items: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    text-decoration: none;
    border-radius: var(--theme-radius-md);
    transition: var(--theme-transition-all);

}

/* .tm-nav-link:hover {
  color: var(--theme-text-primary);
  background: var(--theme-bg-elevated);
} */

.tm-nav-link-primary {
    display: flex;
    align-items: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    color: var(--theme-text-secondary);
    text-decoration: none;
    border-radius: var(--theme-radius-md);
    transition: var(--theme-transition-all);
}

.tm-nav-link-primary:hover {
    color: var(--theme-text-primary);
    background: var(--theme-bg-elevated);
}

.tm-dropdown {
    background: var(--theme-bg-elevated);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-lg);
    box-shadow: var(--theme-shadow-lg);
    z-index: var(--theme-z-dropdown);
}

/* PC 顶部导航 hover 显示二级菜单（兼容无 Tailwind 环境） */
#pc-nav .group:hover > .tm-dropdown {
    opacity: 1 !important;
    visibility: visible !important;
}

.tm-dropdown-item {
    display: block;
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    color: var(--theme-text-secondary);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.tm-dropdown-item:hover {
    background: var(--theme-bg-quaternary);
    color: var(--theme-text-primary);
}

.tm-mobile-menu {
    background: var(--theme-bg-primary);
    z-index: var(--theme-z-modal);
    transform: translateX(-100%);
    transition: transform 0.3s ease;
}

.tm-mobile-menu.show {
    transform: translateX(0);
}

/* 移动端菜单遮罩 */
.tm-mobile-menu::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background: rgba(0, 0, 0, 0.5); */
    z-index: -1;
}

/* 移动端菜单内容区域 */
.tm-mobile-menu > div {
    background: var(--theme-bg-primary);
    width: 280px;
    height: 100vh;
    overflow-y: auto;
    box-shadow: var(--theme-shadow-xl);
}

.tm-mobile-border {
    border-color: var(--theme-border-primary);
}

.tm-menu-toggle {
    background: none;
    border: none;
    color: var(--theme-text-primary);
    cursor: pointer;
    transition: var(--theme-transition-all);
}

.tm-menu-toggle:hover {
    background: var(--theme-bg-elevated);
}

.tm-header {
    background: var(--theme-bg-overlay);
    border-bottom: 1px solid var(--theme-border-primary);
}

.tm-avatar-border {
    border: 2px solid var(--theme-border-primary);
}

.tm-language-icon {
    color: var(--theme-text-muted);
}

.tm-search-cancel {
    background: var(--theme-bg-secondary);
    color: var(--theme-text-secondary);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    transition: var(--theme-transition-all);
}

.tm-search-cancel:hover {
    background: var(--theme-bg-elevated);
    color: var(--theme-text-primary);
}

.tm-search-submit {
    background: var(--theme-gradient-primary);
    color: var(--theme-text-white);
    border: none;
    transition: var(--theme-transition-all);
}

.tm-search-submit:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}


/* 分页组件 */

.tm-pagination a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    background: var(--theme-bg-secondary);
    color: var(--theme-text-secondary);
    text-decoration: none;
    border-radius: var(--theme-radius-md);
    transition: var(--theme-transition-all);
}

.tm-pagination a:hover {
    background: var(--theme-bg-elevated);
    color: var(--theme-text-primary);
}

.tm-pagination .active {
    background: var(--theme-primary);
    color: var(--theme-text-primary);
}

/* FAQ 组件 */
.tm-faq-item {
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-lg);
    margin-bottom: var(--theme-spacing-4);
    overflow: hidden;
}

.tm-faq-toggle {
    width: 100%;
    padding: var(--theme-spacing-6);
    background: var(--theme-bg-secondary);
    border: none;
    color: var(--theme-text-primary);
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: var(--theme-transition-all);
}

.tm-faq-toggle:hover {
    background: var(--theme-bg-elevated);
}

.tm-faq-content {
    padding: var(--theme-spacing-6);
    background: var(--theme-bg-elevated);
    color: var(--theme-text-secondary);
    line-height: var(--theme-line-height-relaxed);
}

/* 面包屑导航 */
.tm-breadcrumb {
    display: flex;
    align-items: center;
    gap: var(--theme-spacing-2);
    margin-bottom: var(--theme-spacing-6);
    font-size: var(--theme-font-size-sm);
}

.tm-breadcrumb a {
    color: var(--theme-text-muted);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.tm-breadcrumb a:hover {
    color: var(--theme-text-primary);
}

/* 文章内容 */
.tm-article-content {
    background: var(--theme-bg-elevated);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-8);
    line-height: var(--theme-line-height-relaxed);
}

.tm-article-content h1,
.tm-article-content h2,
.tm-article-content h3 {
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-4);
}

.tm-article-content p {
    color: var(--theme-text-secondary);
    margin-bottom: var(--theme-spacing-4);
}

/* 章节标题 */
.tm-section-title {
    font-size: var(--theme-font-size-3xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-6);
    text-align: center;
}

/* Banner 渐变 */
.tm-banner-gradient {
    /* background: var(--theme-gradient-primary); */
    padding: var(--theme-spacing-2) 0;
    text-align: center;
}



/* 主体样式 */

/* 响应式设计 */
@media (max-width: 768px) {
    .tm-card {
        padding: var(--theme-spacing-4);
    }

    .tm-card-bg {
        padding: var(--theme-spacing-6);
    }

    .tm-section-title {
        font-size: var(--theme-font-size-2xl);
    }

    .tm-pagination a {
        width: 2rem;
        height: 2rem;
        font-size: var(--theme-font-size-sm);
    }

    .tm-mobile-menu {
        display: block;
    }

    .tm-mobile-menu.hidden {
        display: none;
    }
}

/* 移动端菜单优化样式 */
.tm-mobile-menu {
    transition: opacity 0.3s ease-in-out;
}

.tm-mobile-menu.show {
    opacity: 1;
}

.tm-mobile-menu:not(.show) {
    opacity: 0;
}

/* 菜单内容滑动动画 */
.tm-mobile-menu #mobile-menu-content {
    transition: transform 0.3s ease-in-out;
}

/* 移动端二级菜单样式优化 */
.mobile-submenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
}

.mobile-submenu:not(.hidden) {
    max-height: 500px; /* 足够大的值 */
}

.submenu-arrow {
    transition: transform 0.2s ease-in-out;
}

.submenu-arrow.rotate-180 {
    transform: rotate(180deg);
}

/* 二级菜单项悬停效果 */
.mobile-submenu a:hover {
    background-color: var(--tm-dropdown-hover-bg, rgba(0, 0, 0, 0.05));
}

/* 菜单项悬停效果 */
.mobile-menu-toggle:hover {
    background-color: var(--tm-bg-hover, rgba(0, 0, 0, 0.05));
}

/* 确保菜单在移动端正确显示 */
@media (max-width: 768px) {
    .tm-mobile-menu {
        display: flex !important;
    }

    .tm-mobile-menu.hidden {
        display: none !important;
    }
}



.theme-text-accent { @extend .tm-text-accent; }

/* 背景样式向后兼容 */
.theme-bg-primary { @extend .tm-bg-primary; }

/* 标签组件向后兼容 */

/* 导航组件向后兼容 */

.theme-menu-toggle { @extend .tm-menu-toggle; }





/* 按钮尺寸 */

/* 按钮状态 */
.theme-btn:disabled,
.theme-btn.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none;
}

.theme-btn:active {
    transform: translateY(0);
    box-shadow: var(--theme-shadow-sm);
}

/* ==========================================================================
   表单组件系统
   ========================================================================== */

/* 表单控件基础样式 */

.theme-form-control:focus {
    outline: none;
    border-color: var(--theme-border-focus);
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}

.theme-form-control::placeholder {
    color: var(--theme-text-muted);
}



/* 复选框和单选框 */
.theme-checkbox,

.theme-checkbox:checked,
.theme-radio:checked {
    background-color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.theme-checkbox:focus,
.theme-radio:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}


/* ==========================================================================
   卡片组件系统
   ========================================================================== */

.theme-card:hover {
    box-shadow: var(--theme-shadow-md);
    transform: translateY(-2px);
    border-color: var(--theme-primary);
}

/* 卡片变体 */


/* ==========================================================================
   导航组件系统
   ========================================================================== */

.theme-nav-link:hover {
    color: var(--theme-primary);
    background: rgba(42, 219, 92, 0.1);
}

.theme-nav-link.active {
    color: var(--theme-text-primary);
    background: var(--theme-gradient-primary);
    box-shadow: var(--theme-shadow-sm);
}

/* 面包屑导航 */

.theme-breadcrumb-item:hover {
    color: var(--theme-primary);
}

.theme-breadcrumb-item.active {
    color: var(--theme-text-primary);
    font-weight: 500;
}

/* ==========================================================================
   状态和通知组件
   ========================================================================== */

/* 徽章 */

/* ==========================================================================
   表格组件
   ========================================================================== */

.theme-table th,
.theme-table td {
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    text-align: left;
    border-bottom: 1px solid var(--theme-border-primary);
}

.theme-table th {
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-text-primary);
    font-weight: 600;
    font-size: var(--theme-font-size-sm);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.theme-table td {
    color: var(--theme-text-secondary);
}

.theme-table tbody tr:hover {
    background-color: var(--theme-bg-tertiary);
}

.theme-table-striped tbody tr:nth-child(even) {
    background-color: var(--theme-bg-tertiary);
}

/* ==========================================================================
   模态框和弹出层
   ========================================================================== */

/* ==========================================================================
   加载和进度组件
   ========================================================================== */

@keyframes theme-spin {
    to {
        transform: rotate(360deg);
    }
}

/* ==========================================================================
   工具类
   ========================================================================== */

/* 间距工具类 */

.theme-p-6 { padding: var(--theme-spacing-6); }
.theme-p-8 { padding: var(--theme-spacing-8); }

/* 圆角工具类 */

.theme-rounded-lg { border-radius: var(--theme-radius-lg); }
.theme-rounded-xl { border-radius: var(--theme-radius-xl); }

/* 阴影工具类 */

.theme-shadow { box-shadow: var(--theme-shadow-md); }
.theme-shadow-lg { box-shadow: var(--theme-shadow-lg); }

/* 过渡动画工具类 */

/* 悬浮效果工具类 */
.theme-hover-lift:hover {
    transform: translateY(-2px);
    box-shadow: var(--theme-shadow-lg);
}

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

.theme-hover-glow:hover {
    box-shadow: 0 0 20px rgba(42, 219, 92, 0.3);
}

/* 显示/隐藏工具类 */

/* Flexbox 工具类 */

/* Grid 工具类 */

/* ==========================================================================
   响应式设计
   ========================================================================== */

/* 小屏幕 (手机) */
@media (max-width: 639px) {

}

/* 中等屏幕 (平板) */
@media (min-width: 640px) and (max-width: 767px) {

}

/* 大屏幕 (桌面) */
@media (min-width: 768px) {

}

/* 超大屏幕 */
@media (min-width: 1024px) {

}

/* ==========================================================================
   深色模式支持
   ========================================================================== */

@media (prefers-color-scheme: dark) {
    :root {
        color-scheme: dark;
    }
}

/* ==========================================================================
   打印样式
   ========================================================================== */

@media print {

    .theme-btn,

    .theme-bg-primary,
    .theme-bg-secondary,

}

/* ==========================================================================
   Header 导航样式
   ========================================================================== */

.theme-menu-toggle {
    color: var(--theme-text-primary);
    background-color: var(--theme-bg-tertiary);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    padding: var(--theme-spacing-2);
    transition: var(--theme-transition-all);
}

.theme-menu-toggle:hover {
    background-color: var(--theme-bg-elevated);
    border-color: var(--theme-primary);
}

.theme-nav-link-primary:hover {
    color: var(--theme-primary);
}

.theme-dropdown-item:hover {
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-primary);
}

.theme-avatar-border:hover {
    border-color: var(--theme-primary);
}

.theme-search-btn:hover {
    background-color: var(--theme-bg-elevated);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.theme-language-select:hover {
    border-color: var(--theme-primary);
}

.theme-search-input:focus {
    border-color: var(--theme-border-focus);
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}

.theme-search-cancel:hover {
    color: var(--theme-text-primary);
}

.theme-search-submit:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* ==========================================================================
   Footer 页脚样式
   ========================================================================== */

.tm-footer {
    border-top: 1px solid var(--theme-border-primary);
}

.tm-footer-brand {
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-xl);
    font-weight: 700;
}

.tm-footer-description {
    color: var(--theme-text-secondary);
    line-height: var(--theme-line-height-relaxed);
}

.tm-footer-title {
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-lg);
    font-weight: 600;
    margin-bottom: var(--theme-spacing-4);
}

.tm-footer-link {
    color: var(--theme-text-secondary);
    text-decoration: none;
    transition: var(--theme-transition-all);
    display: block;
    padding: var(--theme-spacing-1) 0;
}

.tm-footer-link:hover {
    color: var(--theme-primary);
    transform: translateX(4px);
}

.tm-social-icon {
    color: var(--theme-text-secondary);
    font-size: var(--theme-font-size-xl);
    transition: var(--theme-transition-all);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: var(--theme-radius-full);
    background-color: var(--theme-bg-tertiary);
}

.tm-social-icon:hover {
    color: var(--theme-primary);
    background-color: var(--theme-bg-elevated);
    transform: translateY(-2px);
    box-shadow: var(--theme-shadow-md);
}

.tm-footer-text {
    color: var(--theme-text-secondary);
    font-size: var(--theme-font-size-sm);
}

.tm-footer-emphasis {
    color: var(--theme-text-primary);
    font-weight: 500;
}

.tm-footer-divider {
    border-color: var(--theme-border-primary);
    margin: var(--theme-spacing-8) 0;
}

.tm-zfcms-badge {
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-text-secondary);
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    border-radius: var(--theme-radius-full);
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    transition: var(--theme-transition-all);
    display: inline-flex;
    align-items: center;
    gap: var(--theme-spacing-2);
    border: 1px solid var(--theme-border-primary);
}

.tm-zfcms-badge:hover {
    background-color: var(--theme-bg-elevated);
    color: var(--theme-text-primary);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-sm);
    border-color: var(--theme-primary);
}

.tm-back-to-top:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--theme-shadow-xl);
}



.text-renderer-viewdetail::after {
    content: "View Details";
    /* 样式继承，让 Tailwind 的类和 .tm-text-primary 生效 */
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
}

/* ==========================================================================
   Comment 评论样式
   ========================================================================== */

/* .theme-comment-box:hover {
  border-color: var(--theme-primary);
  box-shadow: var(--theme-shadow-md);
}

.theme-comment-input:focus {
  border-color: var(--theme-border-focus);
  outline: none;
  box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}

.theme-comment-input::placeholder {
  color: var(--theme-text-muted);
}

.theme-char-count.warning {
  color: var(--theme-error);
  font-weight: 500;
}

.theme-replies-container::before {
  content: '';
  position: absolute;
  left: -2px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: var(--theme-gradient-primary);
  opacity: 0.3;
}

.theme-comment-avatar:hover {
  border-color: var(--theme-primary);
}

.theme-comment-content {
  flex: 1;
  min-width: 0;
}

.theme-reply-form textarea {
  width: 100%;
  padding: var(--theme-spacing-2);
  border: 1px solid var(--theme-border-primary);
  border-radius: var(--theme-radius-md);
  resize: vertical;
  background-color: var(--theme-bg-tertiary);
  color: var(--theme-text-primary);
  font-size: var(--theme-font-size-sm);
  min-height: 80px;
  transition: var(--theme-transition-all);
}

.theme-reply-form textarea:focus {
  border-color: var(--theme-border-focus);
  outline: none;
  box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
}

.theme-reply-form textarea::placeholder {
  color: var(--theme-text-muted);
}

.theme-comment-link:hover {
  border-bottom-color: var(--theme-primary);
}

/* 评论响应式设计 */
@media (max-width: 767px) {

} */





/* ==========================================================================
   用户中心页面样式 (User Dashboard Styles)
   ========================================================================== */

/* 欢迎横幅样式 */

/* 状态卡片样式 */

.theme-status-card:hover {
    box-shadow: var(--theme-shadow-xl);
    border-color: var(--theme-primary);
}

/* 按钮变体 */

.theme-btn-secondary:hover {
    background: var(--theme-secondary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

.theme-btn-invite:hover {
    background: linear-gradient(135deg, var(--theme-secondary-dark), var(--theme-primary-dark));
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* 链接样式 */

.theme-link-primary:hover {
    color: var(--theme-primary-light);
}

.theme-link-secondary:hover {
    color: var(--theme-primary);
}

/* 区域标题样式 */

/* 快捷操作样式 */

.theme-quick-action:hover {
    background-color: var(--theme-bg-elevated);
    border-color: var(--theme-primary);
    box-shadow: var(--theme-shadow-md);
    transform: translateY(-2px);
}

.theme-quick-action:hover

.theme-quick-action:hover

    /* 邀请卡片样式 */

.theme-invite-title {
    font-weight: 600;
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-2);
    font-size: var(--theme-font-size-base);
}

/* 响应式设计 */
@media (max-width: 767px) {

}

/* ==========================================================================
   兼容性和向后兼容
   ========================================================================== */

/* 保持原有的简单类名以确保向后兼容 */

.theme-color { color: var(--theme-primary); }
.theme-color:hover { color: var(--theme-primary); }
.theme-btn:hover { background: var(--theme-primary); color: var(--theme-text-primary); border: none; }
.theme-input:focus { border-color: var(--theme-primary); }
.theme-bg-50:hover { transform: translateX(1px); background-color: var(--theme-bg-tertiary); }

.theme-a { color: var(--theme-text-secondary); }
.theme-a:hover { color: var(--theme-primary); }

/* ==========================================================================
   订单页面样式 (Order Page Styles)
   ========================================================================== */

/* 订单主容器 */
.theme-order-main {
    background-color: var(--theme-bg-primary);
    min-height: 100vh;
    padding: var(--theme-spacing-6);
}

/* 订单页面头部 */

/* 订单内容区域 */
.theme-order-content {
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-xl);
    border: 1px solid var(--theme-border-primary);
    box-shadow: var(--theme-shadow-sm);
    overflow: hidden;
}

/* 订单筛选样式 */
.theme-order-filter-link {
    color: var(--theme-text-secondary);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.theme-order-filter-link:hover {
    color: var(--theme-primary);
}

.theme-order-filter-tag {
    display: inline-block;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    border-radius: var(--theme-radius-full);
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    transition: var(--theme-transition-all);
    border: 1px solid transparent;
    margin-right: var(--theme-spacing-2);
}

.theme-order-filter-inactive:hover {
    background-color: var(--theme-bg-elevated);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

/* 表格样式 */

.theme-order-table {
    background-color: transparent;
}

.theme-table-header {
    background-color: var(--theme-bg-tertiary);
    border-bottom: 2px solid var(--theme-border-primary);
}

.theme-table-th {
    padding: var(--theme-spacing-4) var(--theme-spacing-3);
    text-align: left;
    font-weight: 600;
    color: var(--theme-text-primary);
    font-size: var(--theme-font-size-sm);
    border-bottom: 1px solid var(--theme-border-secondary);
}

.theme-table-body {
    background-color: var(--theme-bg-secondary);
}

.theme-table-row {
    border-bottom: 1px solid var(--theme-border-secondary);
    transition: var(--theme-transition-all);
}

.theme-table-row:hover {
    background-color: var(--theme-bg-tertiary);
}

.theme-table-td {
    padding: var(--theme-spacing-4) var(--theme-spacing-3);
    color: var(--theme-text-secondary);
    font-size: var(--theme-font-size-sm);
    vertical-align: middle;
}

/* 响应式表格设计 */
@media (max-width: 767px) {
    .theme-order-main {
        padding: var(--theme-spacing-4);
    }

    .theme-table-th,
    .theme-table-td {
        padding: var(--theme-spacing-2);
        font-size: var(--theme-font-size-xs);
    }

    .theme-order-filter-tag {
        padding: var(--theme-spacing-1) var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-2);
    }
}

/* ==========================================================================
   设置页面样式 (Setting Page Styles)
   ========================================================================== */

/* 设置页面主容器 */
.theme-setting-main {
    width: 100%;
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-setting-main {
        width: 75%;
    }
}

/* 设置页面头部 */
.theme-setting-header {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--theme-border-secondary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

.theme-setting-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
}

/* 设置页面内容区域 */
.theme-setting-content {
    background-color: var(--theme-bg-tertiary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-secondary);
}

.theme-setting-description {
    color: var(--theme-text-secondary);
    line-height: var(--theme-line-height-relaxed);
    margin-bottom: var(--theme-spacing-4);
    font-size: var(--theme-font-size-base);
}

/* 设置页面操作按钮区域 */
.theme-setting-actions {
    margin-top: var(--theme-spacing-4);
    display: flex;
    flex-wrap: wrap;
    gap: var(--theme-spacing-3);
}

.theme-setting-btn-primary {
    display: inline-flex;
    align-items: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background-color: var(--theme-primary);
    color: var(--theme-text-primary);
    border-radius: var(--theme-radius-lg);
    text-decoration: none;
    transition: var(--theme-transition-all);
    font-weight: 500;
    border: 1px solid var(--theme-primary);
}

.theme-setting-btn-primary:hover {
    background-color: var(--theme-primary-dark);
    border-color: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

.theme-setting-btn-secondary {
    display: inline-flex;
    align-items: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background-color: var(--theme-bg-elevated);
    color: var(--theme-text-secondary);
    border-radius: var(--theme-radius-lg);
    text-decoration: none;
    transition: var(--theme-transition-all);
    font-weight: 500;
    border: 1px solid var(--theme-border-primary);
}

.theme-setting-btn-secondary:hover {
    background-color: var(--theme-bg-secondary);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-setting-main {
        padding: var(--theme-spacing-6);
    }

    .theme-setting-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-setting-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-setting-content {
        padding: var(--theme-spacing-4);
    }

    .theme-setting-actions {
        flex-direction: column;
    }

    .theme-setting-btn-primary,
    .theme-setting-btn-secondary {
        justify-content: center;
        width: 100%;
    }
}

/* ==========================================================================
   用户信息编辑页面样式 (User Info Edit Page Styles)
   ========================================================================== */

/* 用户信息编辑页面主容器 */
.theme-userinfo-main {
    width: 100%;
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-userinfo-main {
        width: 75%;
    }
}

/* 用户信息编辑页面头部 */
.theme-userinfo-header {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--theme-border-secondary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

.theme-userinfo-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin: 0;
}

/* 用户信息编辑内容区域 */
.theme-userinfo-content {
    background-color: var(--theme-bg-tertiary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-secondary);
}

.theme-userinfo-field {
    margin-bottom: var(--theme-spacing-4);
}

.theme-userinfo-label {
    display: block;
    color: var(--theme-text-secondary);
    font-weight: 500;
    margin-bottom: var(--theme-spacing-2);
    font-size: var(--theme-font-size-sm);
}

.theme-userinfo-input {
    margin-top: var(--theme-spacing-1);
    display: block;
    width: 100%;
    padding: var(--theme-spacing-2);
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-md);
    background-color: var(--theme-bg-primary);
    color: var(--theme-text-primary);
    transition: var(--theme-transition-all);
    font-size: var(--theme-font-size-base);
}

.theme-userinfo-input:focus {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* 用户信息编辑操作按钮区域 */
.theme-userinfo-actions {
    margin-top: var(--theme-spacing-4);
    display: flex;
    flex-wrap: wrap;
    gap: var(--theme-spacing-3);
}

.theme-userinfo-btn-primary {
    display: inline-flex;
    align-items: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background-color: var(--theme-primary);
    color: white;
    border-radius: var(--theme-radius-lg);
    border: none;
    cursor: pointer;
    transition: var(--theme-transition-all);
    font-weight: 500;
    font-size: var(--theme-font-size-base);
}

.theme-userinfo-btn-primary:hover {
    background-color: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

.theme-userinfo-btn-secondary {
    display: inline-flex;
    align-items: center;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background-color: var(--theme-bg-elevated);
    color: var(--theme-text-secondary);
    border-radius: var(--theme-radius-lg);
    text-decoration: none;
    transition: var(--theme-transition-all);
    font-weight: 500;
    border: 1px solid var(--theme-border-primary);
    font-size: var(--theme-font-size-base);
}

.theme-userinfo-btn-secondary:hover {
    background-color: var(--theme-bg-secondary);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-userinfo-main {
        padding: var(--theme-spacing-4);
    }

    .theme-userinfo-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-userinfo-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-userinfo-content {
        padding: var(--theme-spacing-4);
    }

    .theme-userinfo-actions {
        flex-direction: column;
    }

    .theme-userinfo-btn-primary,
    .theme-userinfo-btn-secondary {
        width: 100%;
        justify-content: center;
    }
}

/* ==========================================================================
   AI绘画作品列表页面样式 (AI Picture List Page Styles)
   ========================================================================== */

/* AI绘画作品列表页面主容器 */
.theme-aipic-main {
    width: 100%;
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-aipic-main {
        width: 75%;
    }
}

/* AI绘画作品列表页面头部 */
.theme-aipic-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--theme-border-secondary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

@media (min-width: 768px) {
    .theme-aipic-header {
        flex-direction: row;
    }
}

.theme-aipic-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin: 0;
}

/* 筛选按钮区域 */
.theme-aipic-filters {
    display: flex;
    align-items: center;
    gap: var(--theme-spacing-2);
    flex-wrap: wrap;
    margin-top: var(--theme-spacing-4);
}

@media (min-width: 768px) {
    .theme-aipic-filters {
        margin-top: 0;
    }
}

.theme-aipic-filter-btn {
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    font-size: var(--theme-font-size-sm);
    border-radius: var(--theme-radius-lg);
    transition: var(--theme-transition-all);
    text-decoration: none;
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-aipic-filter-btn {
        font-size: var(--theme-font-size-base);
    }
}

.theme-aipic-filter-inactive:hover {
    background-color: var(--theme-bg-secondary);
    color: var(--theme-text-primary);
}

.theme-aipic-filter-active {
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

/* 作品卡片样式 */
.theme-aipic-card {
    background-color: var(--theme-bg-primary);
    padding: var(--theme-spacing-4);
    border-radius: var(--theme-radius-xl);
    border: 1px solid var(--theme-border-primary);
    transition: var(--theme-transition-all);
}

.theme-aipic-card:hover {
    box-shadow: var(--theme-shadow-md);
    transform: translateY(-1px);
}

.theme-aipic-order-sn {
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    color: var(--theme-text-primary);
}

.theme-aipic-order-sn a {
    color: var(--theme-primary);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.theme-aipic-order-sn a:hover {
    text-decoration: underline;
    color: var(--theme-primary-dark);
}

/* 状态标签样式 */
.theme-aipic-status-success {
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    font-size: var(--theme-font-size-xs);
    border-radius: var(--theme-radius-full);
    background-color: rgba(34, 197, 94, 0.1);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

.theme-aipic-status-warning {
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    font-size: var(--theme-font-size-xs);
    border-radius: var(--theme-radius-full);
    background-color: rgba(251, 191, 36, 0.1);
    color: #fbbf24;
    border: 1px solid rgba(251, 191, 36, 0.3);
}

.theme-aipic-status-danger {
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    font-size: var(--theme-font-size-xs);
    border-radius: var(--theme-radius-full);
    background-color: rgba(239, 68, 68, 0.1);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* 作品信息样式 */
.theme-aipic-style-name {
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    color: var(--theme-text-primary);
}

.theme-aipic-ratio {
    font-size: var(--theme-font-size-xs);
    color: var(--theme-text-secondary);
}

.theme-aipic-desc {
    font-size: var(--theme-font-size-xs);
    color: var(--theme-text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
}

.theme-aipic-time {
    font-size: var(--theme-font-size-xs);
    color: var(--theme-text-muted);
}

.theme-aipic-error-msg {
    font-size: var(--theme-font-size-sm);
    color: #ef4444;
    font-weight: 500;
}

.theme-aipic-processing {
    font-size: var(--theme-font-size-sm);
    color: var(--theme-text-secondary);
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-aipic-main {
        padding: var(--theme-spacing-4);
    }

    .theme-aipic-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-aipic-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-aipic-filter-btn {
        padding: var(--theme-spacing-2) var(--theme-spacing-3);
        font-size: var(--theme-font-size-sm);
    }
}

/* 评论列表页面样式 */
.theme-comment-main {
    width: 100%;
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-comment-main {
        width: 75%;
    }
}

.theme-comment-header {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--theme-border-primary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

.theme-comment-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin: 0;
}

.theme-comment-content {
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-primary);
}

.theme-comment-filters {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-bottom: var(--theme-spacing-4);
}

.theme-comment-filter-btn {
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    color: var(--theme-text-secondary);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.theme-comment-filter-btn:hover {
    color: var(--theme-text-primary);
}

.theme-comment-filter-active {
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    border-radius: var(--theme-radius-full);
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-primary);
    border: 1px solid var(--theme-border-primary);
}

.theme-comment-table-wrapper {
    margin-top: var(--theme-spacing-4);
    overflow-x: auto;
}

.theme-comment-table {
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.theme-comment-table-header {
    background-color: var(--theme-bg-secondary);
}

.theme-comment-table-th {
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    text-align: left;
    font-size: var(--theme-font-size-xs);
    font-weight: 500;
    color: var(--theme-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid var(--theme-border-primary);
}

.theme-comment-table-body {
    background-color: var(--theme-bg-primary);
}

.theme-comment-table-row {
    transition: var(--theme-transition-all);
}

.theme-comment-table-row:hover {
    background-color: var(--theme-bg-secondary);
}

.theme-comment-table-td {
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    font-size: var(--theme-font-size-sm);
    color: var(--theme-text-primary);
    border-bottom: 1px solid var(--theme-border-primary);
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-comment-main {
        padding: var(--theme-spacing-4);
    }

    .theme-comment-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-comment-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-comment-filters {
        justify-content: center;
    }

    .theme-comment-table-wrapper {
        font-size: var(--theme-font-size-xs);
    }

    .theme-comment-table-th,
    .theme-comment-table-td {
        padding: var(--theme-spacing-2);
    }
}

/* 积分列表页面样式 */
.theme-integral-main {
    width: 100%;
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    /* border: 1px solid var(--theme-border-primary); */
}

@media (min-width: 768px) {
    .theme-integral-main {
        width: 75%;
    }
}

.theme-integral-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--theme-border-primary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

@media (min-width: 768px) {
    .theme-integral-header {
        flex-direction: row;
    }
}

.theme-integral-info {
    display: flex;
    align-items: center;
    margin-bottom: var(--theme-spacing-4);
}

@media (min-width: 768px) {
    .theme-integral-info {
        margin-bottom: 0;
    }
}

.theme-integral-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin: 0;
}

.theme-integral-current {
    color: var(--theme-text-secondary);
    margin-top: var(--theme-spacing-1);
    margin-bottom: var(--theme-spacing-1);
}

.theme-integral-notice {
    color: var(--theme-text-muted);
    font-size: var(--theme-font-size-sm);
    margin: 0;
}

.theme-integral-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--theme-spacing-4);
}

@media (min-width: 768px) {
    .theme-integral-actions {
        flex-direction: row;
        width: auto;
    }
}

.theme-integral-exchange {
    display: flex;
    align-items: center;
    width: 100%;
}

@media (min-width: 768px) {
    .theme-integral-exchange {
        width: auto;
    }
}

.theme-integral-input {
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    background-color: var(--theme-bg-primary);
    color: var(--theme-text-primary);
    flex: 1;
    margin-right: var(--theme-spacing-2);
    transition: var(--theme-transition-all);
}

.theme-integral-input:focus {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--theme-bg-tertiary);
}

.theme-integral-btn-success {
    background-color: #10b981;
    color: white;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    border: none;
    cursor: pointer;
    transition: var(--theme-transition-all);
    font-weight: 500;
}

.theme-integral-btn-success:hover {
    background-color: #059669;
}

.theme-integral-btn-primary {
    background-color: var(--theme-primary);
    color: white;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    text-decoration: none;
    text-align: center;
    transition: var(--theme-transition-all);
    width: 100%;
    font-weight: 500;
}
.theme-integral-btn-primary:hover{
    color: var(--theme-text-white);
}

@media (min-width: 768px) {
    .theme-integral-btn-primary {
        width: auto;
    }
}


.theme-integral-content {
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-primary);
}

.theme-integral-table-wrapper {
    margin-top: var(--theme-spacing-4);
    overflow-x: auto;
}

.theme-integral-table {
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.theme-integral-table-header {
    background-color: var(--theme-bg-secondary);
}

.theme-integral-table-th {
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    text-align: left;
    font-size: var(--theme-font-size-xs);
    font-weight: 500;
    color: var(--theme-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid var(--theme-border-primary);
}

.theme-integral-table-body {
    background-color: var(--theme-bg-primary);
}

.theme-integral-table-row {
    transition: var(--theme-transition-all);
}

.theme-integral-table-row:hover {
    background-color: var(--theme-bg-secondary);
}

.theme-integral-table-td {
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    font-size: var(--theme-font-size-sm);
    color: var(--theme-text-primary);
    border-bottom: 1px solid var(--theme-border-primary);
}

.theme-integral-order-info {
    white-space: nowrap;
}

.theme-integral-trade-no {
    font-size: var(--theme-font-size-xs);
    color: var(--theme-text-muted);
}

.theme-integral-status {
    padding: var(--theme-spacing-1) var(--theme-spacing-2);
    font-size: var(--theme-font-size-xs);
    border-radius: var(--theme-radius-full);
    font-weight: 500;
}

.theme-integral-time-info {
    white-space: nowrap;
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-integral-main {
        padding: var(--theme-spacing-4);
    }

    .theme-integral-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-integral-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-integral-table-wrapper {
        overflow-x: auto;
    }

    .theme-integral-table {
        min-width: 600px;
    }

    .theme-integral-table-th,
    .theme-integral-table-td {
        padding: var(--theme-spacing-2);
        font-size: var(--theme-font-size-xs);
    }
}

/* Integral Recharge 页面样式 */
.theme-recharge-main {
    width: 100%;
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-recharge-main {
        width: 75%;
    }
}

.theme-recharge-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--theme-border-primary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

.theme-recharge-info {
    display: flex;
    align-items: center;
}

.theme-recharge-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
}

.theme-recharge-content {
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-primary);
    box-shadow: var(--theme-shadow-lg);
}

.theme-recharge-section {
    margin-top: var(--theme-spacing-4);
}

.theme-recharge-packages {
    background-color: var(--theme-bg-primary);
}

.theme-recharge-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--theme-spacing-4);
}

.theme-recharge-intro {
    text-align: center;
    margin-bottom: var(--theme-spacing-12);
}

.theme-recharge-subtitle {
    font-size: var(--theme-font-size-3xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-4);
}

.theme-recharge-description {
    color: var(--theme-text-secondary);
    max-width: 42rem;
    margin: 0 auto;
}

.theme-recharge-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--theme-spacing-8);
}

@media (min-width: 768px) {
    .theme-recharge-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .theme-recharge-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.theme-recharge-card {
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-2xl);
    overflow: hidden;
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
    transition: var(--theme-transition-all);
}

.theme-recharge-card:hover {
    box-shadow: var(--theme-shadow-2xl);
    transform: translateY(-0.5rem);
}

.theme-recharge-card-header {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-hover));
    padding: var(--theme-spacing-6);
    /*height: 8rem;*/
}

.theme-recharge-card-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-2);
}

.theme-recharge-card-summary {
    color: var(--theme-text-muted);
}

.theme-recharge-card-body {
    padding: var(--theme-spacing-6);
    height: 12rem;
}

.theme-recharge-price {
    display: flex;
    align-items: baseline;
    margin-bottom: var(--theme-spacing-2);
}

.theme-recharge-price-amount {
    font-size: var(--theme-font-size-4xl);
    font-weight: 700;
    color: var(--theme-text-primary);
}

.theme-recharge-price-currency {
    font-size: var(--theme-font-size-xl);
    color: var(--theme-text-muted);
    margin-left: var(--theme-spacing-2);
}

.theme-recharge-features {
    display: flex;
    flex-direction: column;
    gap: var(--theme-spacing-4);
}

.theme-recharge-feature {
    display: flex;
    align-items: center;
}

.theme-recharge-feature-icon {
    width: 1.25rem;
    height: 1.25rem;
    color: #10b981;
    margin-right: var(--theme-spacing-3);
}

.theme-recharge-feature-text {
    color: var(--theme-text-secondary);
}

.theme-recharge-feature-highlight {
    font-weight: 700;
    color: var(--theme-primary);
}

.theme-recharge-btn-primary {
    margin-top: var(--theme-spacing-4);
    display: block;
    width: 100%;
    background-color: var(--theme-primary);
    color: var(--theme-text-white);
    text-align: center;
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    text-decoration: none;
    transition: var(--theme-transition-all);
}

.theme-recharge-btn-disabled {
    margin-top: var(--theme-spacing-8);
    display: block;
    width: 100%;
    background-color: var(--theme-bg-muted);
    color: var(--theme-text-muted);
    text-align: center;
    padding: var(--theme-spacing-3) var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    text-decoration: none;
    cursor: not-allowed;
}

.theme-recharge-footer {
    text-align: center;
    margin-top: var(--theme-spacing-12);
}

.theme-recharge-contact {
    color: var(--theme-text-muted);
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-recharge-main {
        padding: var(--theme-spacing-4);
    }

    .theme-recharge-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-recharge-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-recharge-content {
        padding: var(--theme-spacing-4);
    }

    .theme-recharge-intro {
        margin-bottom: var(--theme-spacing-8);
    }

    .theme-recharge-subtitle {
        font-size: var(--theme-font-size-2xl);
    }

    .theme-recharge-grid {
        gap: var(--theme-spacing-6);
    }

    .theme-recharge-card-header {
        padding: var(--theme-spacing-4);
        /*height: 6rem;*/
    }

    .theme-recharge-card-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-recharge-card-body {
        padding: var(--theme-spacing-4);
        height: auto;
    }

    .theme-recharge-price-amount {
        font-size: var(--theme-font-size-3xl);
    }
}

/* integral_recharge_pay 页面样式 */
.theme-pay-main {
    width: 100%;
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-pay-main {
        width: 75%;
    }
}

.theme-pay-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--theme-border-primary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

.theme-pay-info {
    display: flex;
    align-items: center;
}

.theme-pay-icon-bg {
    background-color: var(--theme-bg-accent);
    padding: var(--theme-spacing-3);
    border-radius: 50%;
    margin-right: var(--theme-spacing-4);
}

.theme-pay-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
}

.theme-pay-content {
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-primary);
    box-shadow: var(--theme-shadow-lg);
}

.theme-pay-section {
    margin-top: var(--theme-spacing-4);
}

.theme-pay-form {
    background-color: var(--theme-bg-primary);
    padding: var(--theme-spacing-8) 0;
}

.theme-pay-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--theme-spacing-4);
}

.theme-pay-layout {
    display: flex;
    flex-direction: column;
    gap: var(--theme-spacing-8);
}

.theme-pay-product {
    width: 100%;
}

.theme-pay-product-card {
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
}

.theme-pay-product-title {
    font-size: var(--theme-font-size-xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin-bottom: var(--theme-spacing-4);
}

@media (min-width: 640px) {
    .theme-pay-product-title {
        font-size: var(--theme-font-size-2xl);
    }
}

.theme-pay-product-details {
    display: flex;
    flex-direction: column;
    gap: var(--theme-spacing-4);
}

.theme-pay-detail-row {
    display: flex;
    flex-direction: column;
}

@media (min-width: 640px) {
    .theme-pay-detail-row {
        flex-direction: row;
        align-items: center;
    }
}

.theme-pay-detail-label {
    color: var(--theme-text-muted);
    width: 100%;
    margin-bottom: var(--theme-spacing-1);
}

@media (min-width: 640px) {
    .theme-pay-detail-label {
        width: 6rem;
        margin-bottom: 0;
    }
}

.theme-pay-detail-value {
    color: var(--theme-text-secondary);
}

.theme-pay-points-value {
    font-size: var(--theme-font-size-xl);
    font-weight: 700;
    color: var(--theme-primary);
}

@media (min-width: 640px) {
    .theme-pay-points-value {
        font-size: var(--theme-font-size-2xl);
    }
}

.theme-pay-status {
    padding: var(--theme-spacing-1) var(--theme-spacing-3);
    border-radius: 9999px;
    font-size: var(--theme-font-size-sm);
    width: fit-content;
}

.theme-pay-payment {
    width: 100%;
}

.theme-pay-payment-card {
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
}

.theme-pay-amount {
    text-align: center;
    margin-bottom: var(--theme-spacing-6);
}

.theme-pay-amount-label {
    color: var(--theme-text-muted);
}

.theme-pay-amount-value {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
    margin-top: var(--theme-spacing-2);
}

@media (min-width: 640px) {
    .theme-pay-amount-value {
        font-size: var(--theme-font-size-3xl);
    }
}

.theme-pay-form-fields {
    display: flex;
    flex-direction: column;
    gap: var(--theme-spacing-4);
}



.theme-pay-field-label {
    display: block;
    font-size: var(--theme-font-size-sm);
    font-weight: 500;
    color: var(--theme-text-secondary);
    margin-bottom: var(--theme-spacing-2);
}

.theme-pay-select {
    width: 100%;
    border: 1px solid var(--theme-border-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-2) var(--theme-spacing-3);
    background-color: var(--theme-bg-primary);
    color: var(--theme-text-primary);
    transition: var(--theme-transition-all);
}

@media (min-width: 640px) {
    .theme-pay-select {
        padding: var(--theme-spacing-3);
    }
}

.theme-pay-select:focus {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.5);
}

.theme-pay-btn-primary {
    width: 100%;
    background-color: var(--theme-primary);
    color: white;
    padding: var(--theme-spacing-2) var(--theme-spacing-4);
    border-radius: var(--theme-radius-lg);
    border: none;
    cursor: pointer;
    transition: var(--theme-transition-all);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--theme-font-size-sm);
}

@media (min-width: 640px) {
    .theme-pay-btn-primary {
        padding: var(--theme-spacing-3) var(--theme-spacing-4);
        font-size: var(--theme-font-size-base);
    }
}



.theme-pay-btn-icon {
    width: 1rem;
    height: 1rem;
    margin-right: var(--theme-spacing-2);
}

@media (min-width: 640px) {
    .theme-pay-btn-icon {
        width: 1.25rem;
        height: 1.25rem;
    }
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-pay-main {
        padding: var(--theme-spacing-4);
    }

    .theme-pay-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-pay-icon-bg {
        padding: var(--theme-spacing-2);
        margin-right: var(--theme-spacing-3);
    }

    .theme-pay-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-pay-content {
        padding: var(--theme-spacing-4);
    }

    .theme-pay-form {
        padding: var(--theme-spacing-4) 0;
    }

    .theme-pay-product-card,
    .theme-pay-payment-card {
        padding: var(--theme-spacing-4);
    }

    .theme-pay-product-title {
        font-size: var(--theme-font-size-lg);
        margin-bottom: var(--theme-spacing-3);
    }

    .theme-pay-amount {
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-pay-amount-value {
        font-size: var(--theme-font-size-xl);
    }
}

/* invite 页面样式 */
.theme-invite-main {
    width: 100%;
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-xl);
    padding: var(--theme-spacing-8);
    box-shadow: var(--theme-shadow-lg);
    border: 1px solid var(--theme-border-primary);
}

@media (min-width: 768px) {
    .theme-invite-main {
        width: 75%;
    }
}

.theme-invite-header {
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--theme-border-primary);
    padding-bottom: var(--theme-spacing-4);
    margin-bottom: var(--theme-spacing-6);
}

.theme-invite-title {
    font-size: var(--theme-font-size-2xl);
    font-weight: 700;
    color: var(--theme-text-primary);
}

.theme-invite-content {
    background-color: var(--theme-bg-primary);
    border-radius: var(--theme-radius-lg);
    padding: var(--theme-spacing-6);
    border: 1px solid var(--theme-border-primary);
}

.theme-invite-link-section {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: var(--theme-spacing-4);
}

@media (min-width: 768px) {
    .theme-invite-link-section {
        flex-direction: row;
        align-items: center;
    }
}

.theme-invite-link-container {
    color: var(--theme-text-secondary);
    margin-bottom: var(--theme-spacing-4);
    line-height: 1.6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

@media (min-width: 768px) {
    .theme-invite-link-container {
        flex-direction: row;
        align-items: center;
    }
}

.theme-invite-link-label {
    margin-bottom: var(--theme-spacing-2);
}

@media (min-width: 768px) {
    .theme-invite-link-label {
        margin-bottom: 0;
    }
}

.theme-invite-link {
    color: var(--theme-primary);
    text-decoration: none;
    margin: 0;
    word-break: break-all;
    transition: var(--theme-transition-all);
}

@media (min-width: 768px) {
    .theme-invite-link {
        margin: 0 var(--theme-spacing-2);
    }
}

.theme-invite-link:hover {
    color: var(--theme-primary-hover);
}

.theme-invite-copy-btn {
    margin-top: var(--theme-spacing-2);
    background-color: var(--theme-bg-accent);
    color: var(--theme-primary);
    padding: var(--theme-spacing-1) var(--theme-spacing-3);
    border-radius: var(--theme-radius-md);
    border: none;
    cursor: pointer;
    transition: var(--theme-transition-all);
}

@media (min-width: 768px) {
    .theme-invite-copy-btn {
        margin-top: 0;
    }
}

.theme-invite-copy-btn:hover {
    background-color: var(--theme-bg-muted);
}

.theme-invite-table-wrapper {
    margin-top: var(--theme-spacing-4);
    overflow-x: auto;
}

.theme-invite-table {
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.theme-invite-table-header {
    background-color: var(--theme-bg-secondary);
}

.theme-invite-table-th {
    padding: var(--theme-spacing-4) var(--theme-spacing-4);
    text-align: left;
    font-size: var(--theme-font-size-xs);
    font-weight: 500;
    color: var(--theme-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid var(--theme-border-primary);
}

.theme-invite-table-body {
    background-color: var(--theme-bg-primary);
}

.theme-invite-table-row {
    transition: var(--theme-transition-all);
    border-bottom: 1px solid var(--theme-border-primary);
}

.theme-invite-table-row:hover {
    background-color: var(--theme-bg-secondary);
}

.theme-invite-table-td {
    padding: var(--theme-spacing-4) var(--theme-spacing-4);
    font-size: var(--theme-font-size-sm);
    color: var(--theme-text-primary);
}

.theme-invite-pagination {
    margin-top: var(--theme-spacing-4);
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-invite-main {
        padding: var(--theme-spacing-4);
    }

    .theme-invite-header {
        padding-bottom: var(--theme-spacing-3);
        margin-bottom: var(--theme-spacing-4);
    }

    .theme-invite-title {
        font-size: var(--theme-font-size-xl);
    }

    .theme-invite-content {
        padding: var(--theme-spacing-4);
    }

    .theme-invite-table-th,
    .theme-invite-table-td {
        padding: var(--theme-spacing-3) var(--theme-spacing-2);
    }

    .theme-invite-table-th {
        font-size: 0.625rem;
    }

    .theme-invite-table-td {
        font-size: 0.75rem;
    }
}

/* ==========================================================================
   补充样式类 - 用于黑色主题适配
   ========================================================================== */

/* 信息提示相关样式 */
.theme-bg-info-light {
    background-color: rgba(94, 188, 255, 0.1);
}

.theme-border-info {
    border-color: var(--theme-info);
}

/* 强调文字颜色 */
.theme-text-accent {
    color: var(--theme-primary);
}

/* 卡片背景 */
.theme-bg-card {
    background-color: var(--theme-bg-secondary);
}

/* 阴影效果 */
.theme-shadow {
    box-shadow: var(--theme-shadow-md);
}

/* 边框样式 */

.theme-border-b {
    border-bottom: 1px solid var(--theme-border-primary);
}

/* 输入框样式 */

.theme-input-focus:focus {
    border-color: var(--theme-border-focus);
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.2);
    outline: none;
}

/* 按钮悬停效果 */
.theme-btn-hover:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-lg);
    color: var(--theme-text-white);
}

/* 成功状态样式 */
.theme-bg-success-light {
    background-color: rgba(42, 219, 92, 0.1);
}

.theme-border-success {
    border-color: var(--theme-success);
}

.theme-btn-success {
    background: var(--theme-gradient-success);
    color: var(--theme-text-white);
    border: none;
}

.theme-btn-success:hover {
    background: var(--theme-success-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* 警告状态样式 */

.theme-btn-warning {
    background: var(--theme-gradient-warning);
    color: var(--theme-text-primary);
    border: none;
}

.theme-btn-warning:hover {
    background: var(--theme-warning-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* 危险状态样式 */

/* 表格样式 */

.theme-table-header {
    background-color: var(--theme-bg-tertiary);
}

.theme-table-body {
    background-color: var(--theme-bg-secondary);
}

.theme-table-row-hover:hover {
    background-color: var(--theme-bg-tertiary);
}

/* 渐变背景 */

/* 主要背景色 */
.theme-bg-primary-light {
    background-color: var(--theme-bg-tertiary);
}

/* ==========================================================================
   分页组件样式 - 黑色主题适配
   ========================================================================== */

/* 分页容器 */
.theme-pagination-container {
    margin-top: var(--theme-spacing-12);
    margin-bottom: var(--theme-spacing-5);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

/* 分页列表 */
.pagination {
    display: flex;
    align-items: center;
    gap: var(--theme-spacing-1);
}

/* 分页项基础样式 */
.pagination > li {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--theme-font-size-sm);
    font-weight: 600;
    font-family: "Arial", sans-serif;
    border: 1px solid var(--theme-border-primary);
    background-color: var(--theme-bg-secondary);
    border-radius: var(--theme-radius-full);
    transition: var(--theme-transition-all);
    cursor: pointer;
    user-select: none;
}

/* 分页项链接样式 */
.pagination > li > a {
    color: var(--theme-text-primary);
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    transition: var(--theme-transition-all);
}

/* 分页项悬停效果 */
.pagination > li:hover {
    background-color: var(--theme-bg-tertiary);
    border-color: var(--theme-border-light);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-sm);
} 

.pagination > li:hover > a {
    color: var(--theme-text-primary);
}

/* 激活状态 */
.pagination > .active {
    background: var(--theme-gradient-primary);
    border-color: var(--theme-primary);
    color: var(--theme-text-white);
    box-shadow: var(--theme-shadow-md);
}

.pagination > .active > a {
    color: var(--theme-text-primary);
}

.pagination > .active:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-lg);
}

/* 禁用状态 */
.pagination > .disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

/* 无边框样式（用于省略号等） */
.pagination > .noBorder {
    border: none;
    background: transparent;
    cursor: default;
}

.pagination > .noBorder:hover {
    background: transparent;
    transform: none;
    box-shadow: none;
}

/* 分页图标样式 */
.pagination > li img {
    display: inline-block;
    width: 20px;
    height: 20px;
    filter: brightness(0) invert(1); /* 将图标转为白色 */
    transition: var(--theme-transition-all);
}

/* 首页和末页按钮样式 */
.pagination > li:first-child,
.pagination > li:last-child {
    width: 40px;
}

/* 响应式设计 */
@media (max-width: 767px) {
    .theme-pagination-container {
        margin-top: var(--theme-spacing-8);
        margin-bottom: var(--theme-spacing-4);
    }

    .pagination > li {
        width: 36px;
        height: 36px;
        font-size: var(--theme-font-size-xs);
    }

    .pagination {
        gap: 2px;
    }

    .pagination > li img {
        width: 16px;
        height: 16px;
    }
}

@media (max-width: 480px) {
    .pagination > li {
        width: 32px;
        height: 32px;
        font-size: 0.75rem;
    }

    .pagination > li img {
        width: 14px;
        height: 14px;
    }
}

/* ==========================================================================
   博客页面样式 - 黑色主题适配
   ========================================================================== */

/* Banner 渐变背景 */

/* 搜索输入框 */

.theme-search-input:focus {
    outline: none;
    border-color: var(--theme-border-focus);
    box-shadow: 0 0 0 3px rgba(42, 219, 92, 0.1);
    background-color: var(--theme-bg-tertiary);
}

.theme-search-input::placeholder {
    color: var(--theme-text-muted);
}

/* 搜索按钮 */

.theme-search-btn:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-md);
}

/* 分类标签 */

.theme-category-tag:hover {
    background-color: var(--theme-bg-tertiary);
    border-color: var(--theme-border-light);
    color: var(--theme-text-primary);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-sm);
}

/* 激活的分类标签 */

.theme-category-tag-active:hover {
    background: var(--theme-primary-dark);
    transform: translateY(-1px);
    box-shadow: var(--theme-shadow-lg);
}

/* 章节标题 */

/* 博客卡片 */

.theme-blog-card:hover {
    background-color: var(--theme-bg-tertiary);
    border-color: var(--theme-border-light);
    transform: translateY(-2px);
    box-shadow: var(--theme-shadow-lg);
}

/* 推荐徽章 */

/* 卡片遮罩层 */

/* 卡片标题 */

.theme-blog-card:hover

    /* 卡片摘要 */

    /* 标签样式 */

.theme-tag:hover {
    background-color: var(--theme-bg-tertiary);
    color: var(--theme-text-primary);
    border-color: var(--theme-border-primary);
}

/* 信息文本颜色 */

.theme-text-info:hover {
    color: var(--theme-info-hover);
}

/* FAQ 样式 */

.theme-faq-item:hover {
    border-color: var(--theme-border-light);
    box-shadow: var(--theme-shadow-sm);
}

.theme-faq-toggle:hover {
    background-color: var(--theme-bg-tertiary);
}

/* 响应式设计 */
@media (max-width: 767px) {


}
