/* ========== 全局布局 ========== */
.portal{max-width:1200px;margin:20px 0;display:flex;}
.portal .left{width:13.5%;}
.portal .center{flex:1;margin:0 10px;min-width:0;}
.portal .right{width:22%;}
.portal-container{max-width:1200px;padding:15px;background:var(--comiis-bgf);border-radius:6px;overflow-x:hidden;}

/* ========== 帖子列表样式 ========== */
.threads-list{margin-bottom:20px;}
.thread-item{padding:10px 8px;margin:0;background:var(--comiis-bgf);transition:all .2s ease;position:relative;border:none;border-bottom:1px solid #eeeeee;}
.thread-item:hover{background:#8383830d;box-shadow:none;}
.thread-item{opacity:0;transform:translateY(30px);transition:all .2s ease;}
.thread-item.visible{opacity:1;transform:translateY(0);}

.thread-header{display:flex;align-items:flex-start;gap:8px;}
.thread-avatar .avatar-link img{width:38px!important;height:38px!important;border-radius:20%!important;object-fit:cover!important;border:1px solid #f0f0f0!important;}
.thread-avatar:hover img{border-color:var(--comiis-fa)!important;}
.avatar-placeholder{width:32px;height:32px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:10px;color:#999;border:1px solid #e0e0e0;}

.thread-content{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between;}
.thread-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px;min-height:22px;}
.title-left{display:flex;align-items:center;gap:6px;flex:1;min-width:0;overflow:hidden;}

.thread-title{font-size:16px;font-weight:400;line-height:1.2;min-width:0;flex:1;display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:nowrap;}
.thread-title a{text-decoration:none;display:inline-block;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-weight:400;}
.highlight-wrapper{display:inline-block;flex:1;min-width:0;line-height:14px;}
.highlight-wrapper a{display:inline-block;padding:0 4px;border-radius:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}

/* 状态标签 */
.status-container{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:8px;}
.thread-status{display:flex;align-items:center;gap:4px;}
.status-badge{display:inline-block;padding:2px 10px;border-radius:30px;font-size:11px;font-weight:500;line-height:1.4;background:transparent;border:none;}

/* 置顶标签配色 */
.status-sticky{color:#ff6b35;background:rgba(255,107,53,0.12);}
.status-sticky-category{color:#e68a2e;background:rgba(230,138,46,0.12);}
.status-sticky-global{color:#d43f1a;background:rgba(212,63,26,0.12);}
.status-digest{color:#e6a800;background:rgba(230,168,0,0.12);}
.status-highlight{color:#007bff;background:rgba(0,123,255,0.12);}

/* 抽奖状态标签 */
.luckydraw-status-tag{display:inline-block;padding:2px 10px;border-radius:30px;font-size:11px;font-weight:500;line-height:1.4;border:none;vertical-align:middle;}
.luckydraw-running{color:#e6a800;background:rgba(230,168,0,0.12);}
.luckydraw-drawn{color:#c62828;background:rgba(198,40,40,0.12);}
.luckydraw-ended{color:#9e9e9e;background:rgba(158,158,158,0.12);}
.luckydraw-failed{color:#757575;background:rgba(117,117,117,0.12);}

/* 悬赏样式 */
.reward-amount{display:inline-flex!important;align-items:center;background:none!important;color:#F17802!important;font-size:11px!important;font-weight:400!important;padding:0!important;border:none!important;margin-left:2px!important;gap:0!important;}
.reward-amount::after{content:"碎银";font-size:11px!important;color:#F17802!important;}
.reward-amount .reward-value{font-size:11px!important;color:#F17802!important;background:none!important;}

/* 回帖奖励样式 */
.replycredit-amount{display:inline-flex!important;align-items:center;background:none!important;color:#94a657!important;font-size:11px!important;font-weight:400!important;padding:0!important;border:none!important;margin-left:2px!important;gap:0!important;}
.replycredit-amount .replycredit-value{font-size:11px!important;color:#94a657!important;background:none!important;}

.thread-stats{display:flex;gap:12px;flex-shrink:0;margin-left:auto;}
.thread-meta-row{font-size:12px;display:flex;align-items:center;flex-wrap:wrap;gap:4px;line-height:1.2;min-height:15px;opacity:0.5;}
.thread-item:hover .thread-meta-row{opacity:1;}

.forum-link{text-decoration:none;padding:1px 6px;border-radius:3px;transition:all .2s ease;display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700;}
.forum-link:hover{background:#95959536;}
.forum-icon-img{width:14px;height:14px;vertical-align:middle;object-fit:contain;}
.forum-icon-img[src=""],.forum-icon-img:not([src]){display:none;}

.thread-author a{text-decoration:none;font-size:12px;}
.meta-separator,.thread-time{font-size:12px;}

.stat-item{display:flex;align-items:center;gap:3px;font-size:10px;}
.stat-svg-icon{width:14px;height:14px;vertical-align:middle;}
.status-icons{display:flex;align-items:center;gap:4px;margin-left:8px;}
.status-icon{font-size:12px;}

/* ========== 分页样式 ========== */
.pagination{text-align:right;overflow:auto;}
.pg a.prev, .pg a.nxt {border-radius: 20px;}
.pg a, .pg strong, .pgb a, .pg label {border-radius: 50%;}

/* ========== 顶部标签按钮 ========== */
.sort-tabs{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px;}
.sort-tabs-left,.sort-tabs-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.sort-tabs a{font-size:14px;display:inline-flex;align-items:center;gap:6px;padding:6px 18px;border-radius:30px;text-decoration:none;color:var(--comiis-fa,#5a5a5a);background:rgba(0,0,0,0.02);border:1px solid rgba(0,0,0,0.06);transition:all .2s ease;}
.sort-tabs a:hover{background:rgba(0,0,0,0.05);border-color:rgba(0,0,0,0.1);transform:translateY(-1px);}
.sort-tabs a.active{background:#f0f5fa;color:#2c7da0;border-color:rgba(44,125,160,0.2);}

/* ========== 分类胶囊按钮样式 ========== */
.thread-class-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,0.06);}
.class-tab{display:inline-flex;align-items:center;padding:4px 16px;font-size:13px;border-radius:30px;text-decoration:none;color:var(--comiis-fa,#5a5a5a);background:rgba(0,0,0,0.02);border:1px solid rgba(0,0,0,0.06);transition:all .2s ease;cursor:pointer;}
.class-tab:hover{background:rgba(0,0,0,0.05);border-color:rgba(0,0,0,0.1);transform:translateY(-1px);}
.class-tab.active{background:#f0f5fa;color:#2c7da0;border-color:rgba(44,125,160,0.2);}

/* ========== 左栏板块导航 ========== */
.portal-forum-tree{background:var(--comiis-bgf);border-radius:6px;border:1px solid rgba(0,0,0,0.08);margin-bottom:15px;overflow:hidden;}
.portal-tree-header{display:flex;align-items:center;gap:8px;padding:12px 15px;background:var(--comiis-bgf);border:1px solid rgba(0,0,0,0.06);border-radius:6px;margin-bottom:10px;color:var(--comiis-fa);transition:all .2s ease;}
.portal-tree-header:hover{background:rgba(0,0,0,0.02);border-color:rgba(0,0,0,0.1);}
.portal-tree-icon{flex-shrink:0;}
.portal-tree-title{font-size:16px;font-weight:600;}
.portal-tree-content{padding:5px 0;}
.portal-forum-tree-list{list-style:none;margin:0;padding:0;}
.portal-tree-category{border-bottom:1px solid rgba(0,0,0,0.05);}
.portal-tree-category:last-child{border-bottom:none;}
.portal-category-header{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;cursor:pointer;transition:background .2s ease;}
.portal-category-header:hover{background:rgba(0,0,0,0.03);}
.portal-category-left{display:flex;align-items:center;gap:10px;flex:1;}
.portal-category-icon{width:20px;height:20px;flex-shrink:0;}
.portal-category-icon.portal-default-icon{color:#667eea;}
.portal-category-name{font-size:15px;font-weight:600;color:var(--comiis-fa);}
.portal-toggle-icon{flex-shrink:0;transition:transform .2s ease;color:#999;width:16px;height:16px;}
.portal-tree-category.collapsed .portal-toggle-icon{transform:rotate(-90deg);}
.portal-tree-category.collapsed .portal-forum-sublist{display:none;}
.portal-forum-sublist{list-style:none;margin:0;padding:0;background:rgba(0,0,0,0.01);}
.portal-forum-item{display:flex;align-items:center;gap:10px;padding:10px 15px 10px 38px;transition:background .2s ease;cursor:pointer;}
.portal-forum-item:hover{background:rgba(102,126,234,0.08);}
.portal-forum-icon{width:18px;height:18px;flex-shrink:0;object-fit:contain;}
.portal-forum-icon.portal-default-icon{color:#999;}
.portal-forum-name{flex:1;font-size:14px;color:var(--comiis-font,#666);transition:color .2s ease;}
.portal-forum-item:hover .portal-forum-name{color:#667eea;}

/* ========== 板块信息栏（点击板块后显示） ========== */
.forum-info-bar{display:none;align-items:center;justify-content:space-between;margin-bottom:20px;padding:12px 16px;background:var(--comiis-bgf);border-radius:12px;border:1px solid rgba(0,0,0,0.06);}
.forum-info-left{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;}
.forum-info-name{font-size:18px;font-weight:600;color:var(--comiis-fa);margin:0;line-height:1.3;}
.forum-info-stats{font-size:14px;color:var(--comiis-font,#666);display:flex;align-items:center;gap:8px;}
.forum-info-stats .stats-separator{color:#ddd;}
.forum-info-stats .stats-today{color:#ff6b35;}
.forum-info-right{display:flex;align-items:center;gap:10px;}

/* 排序下拉菜单 */
.sort-dropdown{position:relative;display:inline-block;margin-right:10px;}
.sort-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:#f0f5fa;color:#2c7da0;border-radius:30px;font-size:14px;font-weight:500;border:1px solid rgba(44,125,160,0.2);cursor:pointer;transition:all .2s ease;}
.sort-btn:hover{background:#e8f0f6;border-color:rgba(44,125,160,0.35);transform:translateY(-1px);}
.sort-icon{transition:transform .2s ease;}
.sort-dropdown.open .sort-icon{transform:rotate(180deg);}
.dropdown-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--comiis-bgf);border:1px solid rgba(0,0,0,0.06);border-radius:12px;padding:8px 0;min-width:100px;list-style:none;box-shadow:0 4px 12px rgba(0,0,0,0.1);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;z-index:100;}
.sort-dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0);}
.dropdown-menu li{padding:8px 20px;font-size:14px;cursor:pointer;transition:background .2s ease;color:var(--comiis-font,#666);text-align:center;}
.dropdown-menu li:hover{background:rgba(0,0,0,0.03);}
.dropdown-menu li.active{background:#f0f5fa;color:#2c7da0;}

/* 发帖按钮 */
.forum-info-right .post-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 20px;background:#f0f5fa;color:#2c7da0;border-radius:30px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease;border:1px solid rgba(44,125,160,0.2);cursor:pointer;}
.forum-info-right .post-btn:hover{background:#e8f0f6;border-color:rgba(44,125,160,0.35);transform:translateY(-1px);}
.forum-info-right .post-icon{width:18px;height:18px;}

/* ========== 右侧用户面板 ========== */
.user-quick-panel{margin-bottom:10px;background:var(--comiis-bodybg);border-radius:6px;border:1px solid #b4b4b463;overflow:hidden;}
.quick-panel-guest{padding:20px;text-align:center;}
.panel-welcome{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:8px;}
.welcome-icon{color:#3945F9;font-size:12px;}
.welcome-text{font-size:14px;color:#333;font-weight:500;}
.panel-desc{font-size:12px;color:#888;margin-bottom:16px;}
.panel-actions{display:flex;gap:10px;justify-content:center;}
.panel-btn{padding:8px 20px;border-radius:6px;font-size:13px;text-decoration:none;transition:all .2s ease;}
.panel-btn.btn-primary{background:#3945F9;color:#fff;}
.panel-btn.btn-primary:hover{background:#2f38d4;}
.panel-btn.btn-secondary{background:#fff;color:#666;border:1px solid #ddd;}
.panel-btn.btn-secondary:hover{border-color:#3945F9;color:#3945F9;}
.quick-panel-user{padding:16px;}
.panel-header{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e8eaed;}
.user-avatar-mini img{width:32px;height:32px;border-radius:50%;border:1px solid #e8eaed;}
.user-greeting{font-size:13px;}
.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.quick-item{display:flex;align-items:center;gap:8px;padding:12px;background:var(--comiis-bodybg);border-radius:6px;text-decoration:none;transition:all .2s ease;border:1px solid #9f9f9f2b;}
.quick-item:hover{background:#f5f6f8;border-color:#e8eaed;transform:translateY(-1px);}
.quick-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:14px;}
.quick-icon.icon-profile::before{content:'👤';filter:grayscale(100%);opacity:0.6;}
.quick-icon.icon-fav::before{content:'★';color:#f5a623;font-size:16px;}
.quick-icon.icon-msg::before{content:'✉';color:#3945F9;font-size:16px;}
.quick-icon.icon-setting::before{content:'⚙';filter:grayscale(100%);opacity:0.6;}
.quick-label{font-size:12px;}
.quick-item:hover .quick-label{color:#333;}

/* ========== 热门板块网格 ========== */
.forum-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:15px;}
.forum-card{background:var(--comiis-bgf);border:1px solid var(--comiis-border,#eee);border-radius:8px;padding:15px;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease;box-shadow:0 1px 3px rgba(0,0,0,0.05);}
.forum-card:hover{box-shadow:0 2px 8px rgba(0,0,0,0.1);border-color:var(--comiis-border-hover,#ddd);}
.forum-left{display:flex;align-items:center;gap:12px;}
.forum-icon-wrap{width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.forum-info{display:flex;flex-direction:column;gap:4px;}
.forum-name{font-size:14px;font-weight:500;color:var(--comiis-fa);text-decoration:none;}
.forum-name:hover{opacity:0.8;}
.forum-posts{font-size:12px;display:flex;gap:6px;align-items:center;}
.total-posts{color:var(--comiis-font,#999);}
.today-posts{color:#00acc1;font-weight:500;background:rgba(0,172,193,0.1);padding:2px 6px;border-radius:12px;}
.forum-arrow{color:var(--comiis-font-light,#ccc);font-size:16px;}
.forum-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.forum-header h3{font-size:16px;font-weight:600;color:var(--comiis-fa);margin:0;display:flex;align-items:center;gap:6px;}
.forum-header h3::before{content:"🔥";}
.forum-count{font-size:12px;color:var(--comiis-font,#999);}

/* ========== 加载动画 ========== */
.loading-placeholder{height:60px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px;margin-bottom:5px;}
@keyframes loading{0%{background-position:200% 0;}100%{background-position:-200% 0;}}

/* ========== 暗黑模式适配 ========== */
@media (prefers-color-scheme: dark) {
    .status-sticky{background:rgba(255,107,53,0.25);}
    .status-sticky-category{background:rgba(230,138,46,0.25);}
    .status-sticky-global{background:rgba(212,63,26,0.25);}
    .status-digest{background:rgba(230,168,0,0.25);}
    .status-highlight{background:rgba(0,123,255,0.25);}
    .luckydraw-running{background:rgba(230,168,0,0.25);}
    .luckydraw-drawn{background:rgba(198,40,40,0.25);}
    .luckydraw-ended{background:rgba(158,158,158,0.25);}
    .luckydraw-failed{background:rgba(117,117,117,0.25);}
    .today-posts{background:rgba(0,172,193,0.2);}
    .portal-forum-tree{border-color:rgba(255,255,255,0.1);}
    .portal-category-header:hover{background:rgba(255,255,255,0.03);}
    .portal-forum-sublist{background:rgba(255,255,255,0.01);}
    .sort-tabs a{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.08);color:#aaa;}
    .sort-tabs a:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.15);}
    .sort-tabs a.active{background:rgba(44,125,160,0.2);color:#6ab0d6;border-color:rgba(68,148,186,0.3);}
    .forum-info-bar{border-color:rgba(255,255,255,0.1);}
    .forum-info-stats .stats-separator{color:#444;}
    .sort-btn{background:rgba(44,125,160,0.2);color:#6ab0d6;border-color:rgba(68,148,186,0.3);}
    .sort-btn:hover{background:rgba(44,125,160,0.28);border-color:rgba(68,148,186,0.45);}
    .dropdown-menu{background:#2a2a2a;border-color:rgba(255,255,255,0.1);}
    .dropdown-menu li:hover{background:rgba(255,255,255,0.05);}
    .dropdown-menu li.active{background:rgba(44,125,160,0.2);color:#6ab0d6;}
    .forum-info-right .post-btn{background:rgba(44,125,160,0.2);color:#6ab0d6;border-color:rgba(68,148,186,0.3);}
    .forum-info-right .post-btn:hover{background:rgba(44,125,160,0.28);border-color:rgba(68,148,186,0.45);}
    .thread-class-tabs{border-bottom-color:rgba(255,255,255,0.08);}
    .class-tab{background:rgba(255,255,255,0.03);border-color:rgba(255,255,255,0.08);color:#aaa;}
    .class-tab:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.15);}
    .class-tab.active{background:rgba(44,125,160,0.2);color:#6ab0d6;border-color:rgba(68,148,186,0.3);}
}