/* 全局重置与基础 */
* { margin:0; padding:0; box-sizing:border-box; }
body { background:#f5f5f5; font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif; color:#333; padding-bottom:70px; animation: fadeIn 0.3s ease; -webkit-tap-highlight-color: transparent; }
@keyframes fadeIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }

/* 顶部导航栏 */
.nav { position:fixed; top:0; left:0; width:100%; height:44px; background:linear-gradient(135deg, #6C5CE7, #A29BFE); display:flex; align-items:center; justify-content:center; font-weight:600; color:white; font-size:1.1rem; z-index:100; box-shadow:0 2px 10px rgba(0,0,0,0.1); }
.content { padding:60px 12px 20px; }

/* 卡片 */
.card { background:white; border-radius:16px; padding:20px; box-shadow:0 4px 20px rgba(0,0,0,0.05); margin-bottom:16px; transition:transform 0.2s; }
.card:active { transform:scale(0.98); }

/* 按钮 */
.btn { display:inline-block; padding:12px 24px; border-radius:25px; border:none; font-size:1rem; font-weight:500; text-align:center; text-decoration:none; color:white; background:#6C5CE7; transition:all 0.2s; box-shadow:0 4px 12px rgba(108,92,231,0.3); cursor:pointer; }
.btn:active { transform:scale(0.96); opacity:0.9; }
.btn-outline { background:white; color:#6C5CE7; border:2px solid #6C5CE7; box-shadow:none; }
.btn-danger { background:#ff4d4f; box-shadow:0 4px 12px rgba(255,77,79,0.3); }
.btn-success { background:#07C160; box-shadow:0 4px 12px rgba(7,193,96,0.3); }

/* 输入框 */
.input-field { width:100%; height:48px; border:1px solid #e0e0e0; border-radius:12px; padding:0 16px; font-size:1rem; background:#fafafa; margin-bottom:12px; transition:border 0.2s; -webkit-appearance:none; }
.input-field:focus { border-color:#6C5CE7; background:white; outline:none; }
textarea.input-field { height:auto; padding:12px 16px; resize:vertical; }

/* 底部导航栏 */
.tabbar { position:fixed; bottom:0; left:0; width:100%; height:60px; background:white; display:flex; border-top:1px solid #eee; padding-bottom:env(safe-area-inset-bottom); z-index:100; }
.tab-item { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#999; font-size:0.75rem; text-decoration:none; transition:color 0.2s; position:relative; }
.tab-item.active { color:#6C5CE7; }
.tab-item i { font-size:1.4rem; margin-bottom:2px; }

/* 未读角标 */
.badge { position:absolute; top:0; right:8px; background:#ff4d4f; color:white; border-radius:10px; padding:2px 6px; font-size:0.7rem; min-width:18px; text-align:center; }

/* 辅助工具 */
.text-center { text-align:center; }
a { color:#6C5CE7; text-decoration:none; }
img { max-width:100%; height:auto; border-radius:8px; }

/* 滑动箭头 */
.scroll-arrows {
    position: fixed;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.scroll-arrow {
    width: 36px;
    height: 36px;
    background: rgba(108, 92, 231, 0.7);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    cursor: pointer;
    transition: 0.2s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.scroll-arrow:active {
    background: rgba(108, 92, 231, 1);
    transform: scale(0.9);
}