/*
 * 签到排行榜样式
 * 本插件由 CSWL官方博客http://bbs.cswl.top 重铸开发
 * 功能：自适应列表、固定表头、自动滚动、响应式布局
 */
.rank-page{width:100%;max-width:1200px;margin:0 auto;padding:20px;min-height:100vh;background:linear-gradient(to bottom,#fef2f8 0%,#fff9f0 100%);position:relative}
@media (max-width:768px){.rank-page{width:100vw;padding:0;max-width:100%}}
.rank-list-container{background:#fff;border-radius:16px;box-shadow:0 2px 12px rgba(0,0,0,0.04);max-height:500px;overflow-y:auto}
.rank-list-container::-webkit-scrollbar{display:none}
.rank-list-container{-ms-overflow-style:none;scrollbar-width:none}
.rank-list-header{position:sticky;top:0;background:#fff;z-index:1}
.rank-list-container::-webkit-scrollbar{display:none}
.rank-list-container{-ms-overflow-style:none;scrollbar-width:none}
.rank-header-bg{height:100px;background:linear-gradient(90deg,#ffccd5 0%,#ffe4c4 100%);border-radius:12px 12px 0 0;margin-bottom:-50px}
.rank-sidebar{width:220px;float:left;position:relative;z-index:2}
.rank-logo-box{text-align:center;margin-bottom:30px}
.rank-logo-icon{width:80px;height:80px;background:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 15px rgba(0,0,0,0.05)}
.rank-logo-icon i{font-size:32px;color:#ff4d6d}
.rank-title{font-size:24px;font-weight:bold;margin:10px 0 8px;color:#222}
.rank-tag{background:#222;color:#ffd700;padding:4px 12px;border-radius:20px;font-size:12px;display:inline-block}
.sidebar-card{background:#fff;border-radius:12px;padding:16px;margin-bottom:15px;box-shadow:0 2px 12px rgba(0,0,0,0.04)}
.sidebar-card-title{font-size:14px;font-weight:bold;margin-bottom:10px;color:#333}
.sidebar-card p{font-size:13px;color:#666;line-height:1.6;margin:0}
.reward-list{font-size:13px}
.reward-item{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f2f2f2}
.reward-item:last-child{border-bottom:none}
.reward-place{color:#555}
.reward-val.first{color:#ff4d4f;font-weight:bold}
.reward-val.second{color:#ff7a45;font-weight:bold}
.reward-val.third{color:#faad14;font-weight:bold}
.rank-main{margin-left:240px;position:relative;z-index:2}
.rank-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:nowrap!important;overflow-x:auto;padding-bottom:4px}
.rank-tabs::-webkit-scrollbar{height:0}
.rank-tab{padding:8px 14px;border-radius:20px;background:#fff;color:#666;font-size:13px;font-weight:500;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,0.04);transition:all .2s;white-space:nowrap}
.rank-tab.active{background:#222;color:#fff}
.top3-container{background:#f9f9f9;border-radius:16px;padding:20px 10px;display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:20px}
.top3-item{text-align:center;width:33%;transform:translateY(0)!important}
.avatar-wrap{position:relative;margin-bottom:8px;display:inline-block}
.avatar-wrap img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.top3-item:nth-child(1) .avatar-wrap::before{content:'👑';position:absolute;top:-6px;left:50%;transform:translateX(-50%);font-size:18px}
.top3-item:nth-child(1) .avatar-wrap img{border:2px solid #ffd700}
.top3-item:nth-child(2) .avatar-wrap::before{content:'🥈';position:absolute;top:-4px;left:50%;transform:translateX(-50%);font-size:14px}
.top3-item:nth-child(2) .avatar-wrap img{border:2px solid #c0c0c0}
.top3-item:nth-child(3) .avatar-wrap::before{content:'🥉';position:absolute;top:-4px;left:50%;transform:translateX(-50%);font-size:14px}
.top3-item:nth-child(3) .avatar-wrap img{border:2px solid #cd7f32}
.top3-name{font-size:14px;font-weight:500;margin-bottom:2px;max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:auto;margin-right:auto;text-align:center}
.top3-desc{font-size:12px;color:#666}
.rank-list-header{display:flex;justify-content:space-between;padding:12px 15px;border-bottom:1px solid #f2f2f2;font-size:13px;color:#666}
.rank-list-header .right{display:flex;align-items:center;gap:10px}
.rank-list-item{display:flex;align-items:center;padding:10px 15px;border-bottom:1px solid #f2f2f2;transition:background .2s}
.rank-list-item:last-child{border-bottom:none}
.rank-list-item:hover{background:#f9f9f9}
.rank-num{width:40px;font-size:13px;font-weight:bold;color:#999}
.rank-avatar{width:26px;height:26px;border-radius:50%;object-fit:cover;margin-right:8px}
.rank-user-info{flex:1;display:flex;align-items:center;gap:6px}
.rank-username{font-size:14px;font-weight:500;color:#222}
.rank-value{font-size:14px;font-weight:bold;color:#ff7800}
.gift-icon{font-size:14px;cursor:pointer;position:relative;margin-left:4px}
.gift-icon:hover::after{content:attr(data-tip);position:absolute;bottom:120%;left:50%;transform:translateX(-50%);background:#222;color:#fff;padding:3px 6px;border-radius:3px;font-size:12px;white-space:nowrap;z-index:999;opacity:.9}
.rewarded-text{font-size:11px;margin-left:4px;font-weight:bold}
.rewarded-text.sent{color:#28a745}
.rewarded-text.wait{color:#999}
.empty-tip{text-align:center;padding:30px 0;color:#999}
.clearfix::after{content:"";display:table;clear:both}
@media (max-width:768px){.rank-page{padding:15px 10px}.rank-sidebar{width:100%;float:none;margin-bottom:20px}.rank-main{margin-left:0}.top3-container{gap:10px;padding:15px 5px 20px}.avatar-wrap img{width:42px;height:42px}.rank-tag-pc{display:none!important}.rank-tag-mobile{display:inline-block!important}}
@media (min-width:769px){.rank-tag-pc{display:inline-block!important}.rank-tag-mobile{display:none!important}}
@media (max-width:768px){.sidebar-card:nth-child(3){display:none!important}}
.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.4);display:none;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(3px)}
.modal-content{background:rgba(255,255,255,0.95);border-radius:12px;width:90%;max-width:330px;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,0.1)}
.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.modal-header h3{margin:0;font-size:16px;color:#222}
.modal-close{font-size:20px;cursor:pointer;color:#666}
.reward-group{margin-bottom:16px}
.group-title{font-weight:bold;margin-bottom:8px;font-size:14px;color:#333}
.reward-item{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #eee}
.reward{color:#ff5722;font-weight:bold}
.notice{text-align:center;margin-top:10px;font-size:12px;color:#666}
