﻿/* live layer — smallest possible additions on top of the archived 2016 css */
/* 运势 / 签到 提示弹窗（沿用站点原版的 modal 结构）
   弹窗尺寸固定 420px，只调里面的字号 */
#ptu-dialog { width: 520px; margin-left: -260px; }
#ptu-dialog .modal-header { padding: 12px 16px; }
#ptu-dialog .modal-header h3 { font-size: 13px; line-height: 20px; }
#ptu-dialog .modal-body { font-size: 12px; line-height: 20px; padding: 16px 20px; }
#ptu-dialog .modal-body p { margin: 0; }
#ptu-dialog .modal-body .ptu-fortune {
  font-size: 12px;
  line-height: 20px;
  text-align: center;
  color: #ff5500;
}
#ptu-dialog .modal-footer { padding: 8px 14px; }
#ptu-dialog .modal-footer .btn { padding: 2px 10px; font-size: 12px; }
/* 发帖页：各板块多出来的字段（类名沿用站点 content.css 的那套） */
.add-content .add-row .row-right .add-free { width: 100px; }
.add-content .add-row .row-right .add-deadline { width: 100px; }
.add-content .add-row .row-right .add-works ol { margin: 0; padding-left: 20px; }
.add-content .add-row .row-right .vote-day .vote-day-input {
  width: 100px;
  height: 25px;
  line-height: 25px;
}
.add-content .add-row .row-right .vote-day .vote-day-tips { margin-left: 8px; color: #555; }
.add-content .add-row .row-right .vote-tips { color: #3300cc; cursor: pointer; }
.add-content .add-row .row-right .add-emo-box { width: 330px; }

/* 详情页投票块（结构照存档 vote.css / detail 142845，交互样式在这里补）
   —— 进行中的投票：选项行可点，选中高亮；提交按钮是原版 #voteBtn */
.detail-content .vote-tips { margin: 6px 0; }
.detail-content .voteContent { clear: both; }
.detail-content .vote-opt {
  cursor: pointer;
}
.detail-content .vote-opt:hover { color: #3300cc; }
.detail-content .vote-opt.on {
  color: #ff6600;
  font-weight: bold;
  background: none;
}
.detail-content #voteBtn {
  clear: both;
  float: left;
  margin: 10px 0 4px 20px;
}

/* 换装页：上传键上方的素材声明（红字） */
.du-warn {
  color: #e02222;
  font-size: 12px;
  line-height: 18px;
}

.detail-content .btn-list .materialAudit,
.detail-content .btn-list .materialRefuse { background: none; border: 0; padding-left: 10px; }
.detail-content .btn-list .materialAudit { background: url(/static/images/content/collect-btn-bg.png) no-repeat; }
.detail-content .btn-list .materialRefuse { background: url(/static/images/content/reply-btn-bg.png) no-repeat; }

/* 换背景浮层（原版 .works-float 结构）：浮层里的按钮沿用原版提交按钮的底图 */
.works-float .float-list .sub-btn {
  width: 90px;
  height: 38px;
  background: url(/static/images/content/publish-comment-btn.png) no-repeat;
  border: 0;
  color: #fff;
  cursor: pointer;
}
.works-float .float-list .sub-btn:hover {
  background: url(/static/images/content/publish-comment-btn-hover.png) no-repeat;
}

/* 发帖页：插入图片 / 表情 的小工具条（kindeditor 的 image 插件没抓到） */
.add-content .add-row .row-right .add-toolbar { margin-bottom: 6px; }
.add-content .add-row .row-right .add-toolbar .ke-btn {
  width: auto;
  height: 24px;
  padding: 0 10px;
  border: 1px solid #ccc;
  background: #f7f7f7;
  color: #333;
  font-size: 12px;
  cursor: pointer;
}
.add-content .add-row .row-right .add-toolbar .ke-btn:hover { background: #e9e9e9; }
.add-content .add-row .row-right .add-emo-box {
  width: 330px;
  padding: 6px;
  border: 1px solid #ccc;
  background: #fff;
  margin-bottom: 6px;
}
.add-content .add-row .row-right .add-emo-box img {
  width: 24px;
  height: 24px;
  margin: 1px;
  cursor: pointer;
}
.add-content .add-row .row-right .add-emo-box img:hover { background: #ddeeff; }

/* the logged-in topbar is rebuilt by live.js with the original
   classes; the archived rules assume the wrapper floats, so give it that back */
div.topbar div.account div.logged div.userinfo { float: left; }
div.topbar div.account div.logged div.userinfo div.face { float: left; }
div.topbar div.account div.logged div.userinfo div.face img {
  display: block;
  width: 36px;
  height: 36px;
}
div.topbar div.account div.logged div.userinfo div.name { float: left; }

/* 顶栏昵称改白色（站主要求）。
   原因：存档 common.css 第 16 行用 `a,a:link,a:visited{color:#111111}` 统管全站链接，
   而顶栏只有 `div.topbar div.item a{color:#ddd}` 这一条例外——昵称的 <a> 在 .name 里、
   不属于 .item，于是落到 #111，在 #48484a 的深色顶栏上几乎看不见。
   这里连 :link/:visited/:hover 一起写，特异性 (0,5,5) 才压得住那条 `a:link`。 */
div.topbar div.account div.logged div.userinfo div.name,
div.topbar div.account div.logged div.userinfo div.name a,
div.topbar div.account div.logged div.userinfo div.name a:link,
div.topbar div.account div.logged div.userinfo div.name a:visited,
div.topbar div.account div.logged div.userinfo div.name a:hover {
  color: #ffffff;
}
/* 帖子点赞按钮交给原版 content.css（praise-btn-bg.png 红胶囊+白爱心）。
   早期图片还没找回来时这里垫过一块蓝色 (#2d64b3)，会盖掉原版背景图，已删。 */
/* the live home page carries 12 tabs; the archived rule assumed fewer and
   wrapped "皮卡堂3D" onto a second row */
.list-title .title { width: 80px; }
.list-title .title a { letter-spacing: 2px; }
/* 称号 lives in the floor card, styled by the archived verify.css
   (.user-nick-badge span -> 100x30 white box, blue text) */
.live-new {
  font-style: normal;
  color: #fff;
  background: #f60;
  font-size: 10px;
  line-height: 12px;
  padding: 0 3px;
  margin-left: 4px;
  border-radius: 2px;
  vertical-align: 1px;
}

/* 帖子里的回复框 —— 用回原版 content.css 的 .publish-comment 结构
   （表情 / 图片 + 815x220 输入框 + 橙色版规条 + 提交按钮）
   橙色 #f89406 是 bootstrap 2 的 orange，和原站 2019 版一致 */
.detail-content .publish-comment .publish-warn {
  margin-top: 10px;
  padding: 6px 10px;
  background: #f89406;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  line-height: 18px;
}
.detail-content .publish-comment .publish-btn-list { position: relative; }
.detail-content .publish-comment .publish-btn-list #facebox:not(.hide) {
  display: block;
  width: 390px;
  padding: 4px;
  margin-top: 6px;
  background: #fff;
  border: 1px solid #ccc;
}
.detail-content .publish-comment .publish-btn-list #facebox img {
  width: 24px;
  height: 24px;
  margin: 1px;
  cursor: pointer;
}
.detail-content .publish-comment .publish-btn-list #facebox img:hover {
  background: #ddeeff;
}

/* 原版回复框 = 站点的 kindeditor，工具栏和状态栏都关掉，
   只留 .ke-edit 那个 1px #ccc 的框（和站主截图一致） */
.detail-content .publish-comment .ke-toolbar,
.detail-content .publish-comment .ke-statusbar { display: none !important; }
.detail-content .publish-comment .ke-container { width: 815px; }
.detail-content .publish-comment .ke-edit { width: 815px; }

/* 楼中楼的回复框同样是 kindeditor */
.comment-list .comment-text .ke-container { width: 645px; }
.comment-list .comment-text .ke-toolbar,
.comment-list .comment-text .ke-statusbar { display: none !important; }

/* 楼中楼回复框里的表情面板 —— 原版是 .comment-sub 里的 #facebox
   （原 CSS 的 position:inherit/top:0/left:238px 在现在的楼层宽度下会溢出，
   这里改成浮在“回复”按钮上方，位置按视觉还原） */
.comment-list .comment-sub .facebox {
  width: 390px;
  height: 130px;
  position: absolute;
  z-index: 1000000;
  top: -134px;
  left: 0;
  padding: 4px;
  background: #fff;
  border: 1px solid #ccc;
}
.comment-list .comment-sub .facebox.hide { display: none; }
.comment-list .comment-sub .facebox img {
  width: 24px;
  height: 24px;
  margin: 1px;
  cursor: pointer;
}
.comment-list .comment-sub .facebox img:hover { background: #ddeeff; }

/* P钻价格标签（其余标签用原站的 icon-list.png 精灵图） */
.ptu-badge { display: inline-block; margin-left: 4px; padding: 0 5px; line-height: 17px; font-size: 12px; font-weight: normal; color: #fff; border-radius: 3px; vertical-align: middle; }
.ptu-badge.b-pay { background: #999; }

/* 列表里昵称后面的身份图标（管理员 管 / 小版主） */
.role-badge { vertical-align: middle; margin-left: 4px; }

/* 楼层形象卡（原站 content.css 的 .info-list）：原站默认 display:none，
   显隐由原站那段没抓到的 JS 控制。热区收窄：只有悬停楼层头像（.head-hover）
   才出现——原来挂在整栏 .list-left:hover 上，形象卡下方/右侧的空白也会唤起
   （站主截图圈的非区域）。:has 覆盖现代浏览器，live.js 再补 ptu-card-on 兜底。
   卡片里的 关注Ta / 取消关注 / 私信 / 表白 / 点赞 由 live.js 接管。 */
.detail-content .detail-list .list-left:has(.head-hover:hover) ~ .info-list,
.detail-content .detail-list .info-list.ptu-card-on,
.detail-content .detail-list .info-list:hover { display: block; }
/* 卡片左半边是原站恒定显示的半透明黑罩（.praise-block）+ 点赞按钮 */
.detail-content .detail-list .info-list .praise-block .praise-top img { vertical-align: middle; }
.detail-content .detail-list .info-list .praise-block .praise-bottom img { cursor: pointer; }

/* 消息页（原站 /home/message）：四个分类 + 消息条目 */
.message-list { padding: 10px 0 20px; }
.message-item { padding: 12px 10px; border-bottom: 1px solid #e5e5e5; }
.message-item .message-time { color: #999; font-size: 12px; }
.message-item .message-from { margin-top: 4px; font-weight: bold; }
.message-item .message-from a { color: #2d64b3; }
.message-item .message-body { margin-top: 4px; color: #d33; line-height: 22px; word-wrap: break-word; }
.message-item .message-link { margin-top: 6px; font-size: 12px; }
.message-item .message-link a { color: #2d64b3; }
/* 消息列表的已读/未读：未读保持 .message-body 原有的红色，
   打开过该分类（后端把这些消息标为 read）之后整条转灰 */
.message-item.read .message-from,
.message-item.read .message-from a,
.message-item.read .message-body,
.message-item.read .message-link a { color: #999; }
.message-empty { color: #999; text-align: center; padding: 40px 0; }
.list-title .title .num { color: #f00; font-weight: bold; margin-left: 3px; }

/* 每周任务按钮（签到区左边，红点是未完成的任务数） */
.mark-bg .week-task { float: right; margin: 12px 10px 0 0; }
.mark-bg .week-task-btn { display: block; width: 52px; height: 52px; line-height: 26px;
	text-align: center; border-radius: 6px; color: #fff; font-weight: bold; font-size: 14px;
	background: #1a9bd6; position: relative; overflow: visible; }
.mark-bg .week-task-btn:hover { background: #1689c0; }
.mark-bg .week-task-btn .task-num { position: absolute; right: -6px; top: -6px;
	min-width: 18px; height: 18px; line-height: 18px; padding: 0 4px; border-radius: 9px;
	background: #f00; color: #fff; font-size: 12px; text-align: center; }

/* 每周任务页 */
.task-list { padding: 10px 0 20px; }
.task-row { padding: 10px; border-bottom: 1px solid #e5e5e5; }
.task-row .task-name { margin-left: 8px; }
.task-row .task-progress { float: right; color: #999; }

/* P钻：主页统计区下面的那一行 */
.home-top .top-right .top-right-bottom .pdiamond { clear: both; text-align: right;
	padding-top: 6px; padding-right: 21px; color: #333; font-size: 14px; }
.home-top .top-right .top-right-bottom .pdiamond a { color: #2d64b3; text-decoration: underline; }

/* 作品集（发帖页）：原站样式的相片堆叠入口——3 张拍立得扇形叠放 +
   下方黑色小字标签，点开是独立管理浮层 */
.add-works .works-stack { position: relative; width: 104px; height: 104px;
	display: inline-block; vertical-align: top; cursor: pointer; }
.add-works .works-stack .stack-photo { position: absolute; width: 74px; height: 58px;
	background: #fff; border: 1px solid #d8d8d8; padding: 3px 3px 10px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.28); }
.add-works .works-stack .stack-photo.a { left: 2px; top: 10px; transform: rotate(-9deg); }
.add-works .works-stack .stack-photo.b { right: 2px; top: 10px; transform: rotate(7deg); }
.add-works .works-stack .stack-photo.front { left: 50%; top: 0; margin-left: -40px;
	z-index: 2; width: 80px; height: 62px; transform: rotate(-2deg); background: #fafafa; }
.add-works .works-stack .stack-photo.front img { width: 100%; height: 100%;
	object-fit: cover; display: block; }
.add-works .works-stack .works-stack-label { position: absolute; left: 0; right: 0;
	top: 86px; text-align: center; font-size: 12px; color: #000; }
/* 提示放堆叠旁边（原版 .works-tips 是 150px 绝对定位小框，长句必被截断，弃用） */
.add-works .works-stack-tips { display: inline-block; vertical-align: top;
	margin: 28px 0 0 24px; color: #555; font-size: 13px; line-height: 22px; }
.add-works .works-sel-count { color: #e34ba9; font-weight: bold; }
/* 作品集快捷上传：行内的「上传图片」按钮 + 已选页缩略条（与管理浮层同构，小一号） */
.add-works .works-quick { margin-bottom: 10px; }
.add-works .works-quick .blue { margin-left: 8px; font-size: 12px; }
.add-works .works-row-pages { clear: both; padding-top: 4px; overflow: hidden; }
.add-works .works-row-pages .works-page { position: relative; float: left; width: 92px;
	height: 60px; margin: 0 8px 8px 0; border: 1px solid #ccc; background: #fff; }
.add-works .works-row-pages .works-page img { width: 100%; height: 100%;
	object-fit: cover; display: block; }
.add-works .works-row-pages .works-page a.works-page-del { position: absolute; right: 0;
	top: 0; width: 16px; height: 16px; line-height: 14px; text-align: center;
	background: rgba(0,0,0,0.55); color: #fff; font-size: 12px; text-decoration: none; }
.add-works .works-row-pages .works-page b { position: absolute; left: 0; bottom: 0;
	min-width: 14px; height: 14px; line-height: 14px; text-align: center;
	background: #e34ba9; color: #fff; font-size: 11px; font-weight: normal; }
.add-works .works-row-pages .works-page.wpage-over { outline: 2px dashed #e34ba9; outline-offset: -2px; }
.add-works .works-row-pages i { color: #999; font-size: 12px; }

/* 作品集管理浮层（原站样式：共N张洋红数字 + 绿色按钮 + 相片格子） */
.works-mgr .works-mgr-body { height: 470px; overflow: auto; background: #f5f5f5; }
.works-mgr .works-grid { list-style: none; margin: 0; padding: 12px; overflow: hidden; }
.works-mgr .works-item { position: relative; float: left; width: 118px; height: 118px;
	margin: 0 14px 14px 0; background: #fff; border: 1px solid #ddd; padding: 4px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.15); cursor: pointer; }
.works-mgr .works-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.works-mgr .works-item .works-num { display: none; position: absolute; left: 4px; top: 4px;
	min-width: 20px; height: 20px; line-height: 20px; text-align: center;
	background: #1a9bff; color: #fff; font-size: 12px; border-radius: 10px; padding: 0 4px; }
.works-mgr .works-item.choose .works-num { display: block; }
.works-mgr .works-item .works-check { display: none; position: absolute; right: 6px; top: 6px;
	width: 18px; height: 18px; line-height: 18px; text-align: center; color: #fff;
	background: #1a9bff; border-radius: 50%; font-size: 12px; }
.works-mgr .works-item.choose .works-check { display: block; }
.works-mgr .works-item .works-ops { display: none; position: absolute; left: 0; right: 0;
	bottom: 0; background: rgba(0,0,0,0.55); text-align: center; padding: 3px 0; }
.works-mgr .works-item:hover .works-ops { display: block; }
.works-mgr .works-item .works-ops a { color: #fff; font-size: 12px; margin: 0 8px;
	text-decoration: none; }
.works-mgr .works-item .works-ops a.works-del { color: #ff8080; }
.works-mgr .works-item.marked { outline: 3px solid #e34ba9; outline-offset: -3px; }
.works-mgr .works-item-empty { float: left; color: #999; font-size: 13px; padding: 20px; }
.works-mgr .works-green-btn { height: 32px; padding: 0 18px; border: 0;
	background: #37b34a; color: #fff; font-size: 14px; cursor: pointer; }
.works-mgr .works-green-btn:hover { background: #2f9e40; }
.works-mgr .works-green-btn.works-batch-on { background: #e34ba9; }
.works-mgr .works-count-num { color: #e34ba9; font-weight: bold; }
.works-mgr .works-total { font-size: 13px; color: #333; font-weight: normal; margin-left: 6px; }

/* 本帖作品页条（管理界面顶部）：拼好的页在这里，× 移出本帖 */
.works-mgr .works-pages { padding: 8px 14px; background: #fff;
	border-bottom: 1px solid #eee; min-height: 24px; overflow: hidden; }
.works-mgr .works-pages-title { float: left; font-size: 13px; color: #333;
	line-height: 46px; margin-right: 8px; }
.works-mgr .works-pages-title .works-sel-count { color: #e34ba9; font-weight: bold; }
.works-mgr .works-pages-list i { font-style: normal; color: #999; font-size: 12px;
	line-height: 46px; }
.works-mgr .works-page { position: relative; display: inline-block; width: 60px;
	height: 46px; margin: 0 8px 4px 0; background: #eaeaea; vertical-align: top;
	cursor: move; }
.works-mgr .works-page.wpage-drag { opacity: 0.35; }
.works-mgr .works-page.wpage-over { outline: 2px dashed #e34ba9; outline-offset: 1px; }
.works-mgr .works-page img { width: 100%; height: 100%; object-fit: cover; display: block; }
.works-mgr .works-page b { position: absolute; left: 2px; top: 2px; min-width: 16px;
	height: 16px; line-height: 16px; text-align: center; background: #e34ba9;
	color: #fff; font-size: 11px; font-weight: normal; border-radius: 8px; padding: 0 3px; }
.works-mgr .works-page .works-page-del { position: absolute; right: 0; top: 0;
	width: 16px; height: 16px; line-height: 16px; text-align: center;
	background: rgba(0,0,0,0.55); color: #fff; font-size: 12px;
	text-decoration: none; display: none; }
.works-mgr .works-page:hover .works-page-del { display: block; }

/* 图册排版浮层 v2：照客户端【图册】对话框的布局重排。
   整层铺原站灰花纹背景（common.css body 同款 /static/images/public/bg.jpg），
   顶部放原站顶部栏，中间一个白色窗口（模板列表 + 格子预览 + 底部控制条）。 */
.album-float { display: none; position: fixed; left: 0; right: 0; top: 0; bottom: 0;
	z-index: 100000; overflow: auto;
	background: url(/static/images/public/bg.jpg) repeat; }
.album-float.open { display: block; }
/* 原站 topbar 是 position:fixed（盖住窗口顶部），浮层里改回文档流 */
.album-float .row.topbar { position: static !important; margin-left: 0; margin-right: 0; }
.album-float .album-window { width: 960px; margin: 12px auto 30px; background: #fff;
	border: 1px solid #c9c9c9; }
.album-float .album-titlebar { height: 36px; padding: 0 12px;
	background: #f2f2f2; border-bottom: 1px solid #ddd; overflow: hidden; }
.album-float .album-titlebar .album-title { float: left; font-size: 14px;
	font-weight: bold; color: #333; line-height: 36px; }
.album-float .album-titlebar .album-close { float: right; margin: 6px 0;
	padding: 0 16px; line-height: 22px; font-size: 13px; color: #666;
	text-decoration: none; border: 1px solid #ccc; background: #fff; }
.album-float .album-titlebar .album-close:hover { color: #333; background: #f5f5f5; }
.album-float .album-titlebar .album-titlebar-tips { float: right; margin-right: 14px;
	font-size: 12px; color: #999; line-height: 36px; }
.album-float .album-body { display: flex; height: 470px; }
.album-float .album-tpls { flex: none; width: 200px; height: 100%; overflow: auto;
	list-style: none; margin: 0; padding: 0; background: #fafafa;
	border-right: 1px solid #e5e5e5; }
.album-float .album-tpls li { padding: 11px 20px; cursor: pointer; font-size: 14px;
	color: #333; }
.album-float .album-tpls li:hover { background: #e8f0fe; }
.album-float .album-tpls li.on { background: #cfe3ff; color: #1a66cc; }
.album-float .album-stage { flex: 1; overflow: auto; background: #fff; }
.album-float .album-cells { margin: 15px auto; padding: 5px; overflow: hidden;
	box-sizing: border-box; }
.album-float .album-cell { float: left; position: relative; box-sizing: border-box;
	margin: 5px; border: 1px solid #ccc; background: #fff center/cover no-repeat;
	cursor: pointer; }
/* 拼页空隙：cell margin 5px ×2 + 容器 padding 5px = 格间/页边各 10px，
   与合成 canvas 的 GAP=10 一致（站主给的原站截图里图与图之间有白缝） */
.album-float .album-cell span { position: absolute; left: 0; right: 0; top: 50%;
	transform: translateY(-50%); text-align: center; color: #1a9bff;
	font-weight: bold; font-size: 14px; }
.album-float .album-cell.has span { display: none; }
/* 悬停已放的图：加一层白色半透明遮罩，标出当前指的是哪张图 */
.album-float .album-cell.has:hover::after { content: ''; position: absolute;
	left: 0; top: 0; right: 0; bottom: 0; background: rgba(255,255,255,0.55); }
/* 拖拽互换：拖起半透明、目标格蓝色虚线框 */
.album-float .album-cell.has { cursor: move; }
.album-float .album-cell.album-drag { opacity: 0.35; }
.album-float .album-cell.album-over { outline: 2px dashed #1a9bff; outline-offset: -2px; }
/* 添加边框：勾一下，所有已放图的格子四边立即显示 1px 黑框（合成时同样描 1px 黑边） */
.album-float.album-borders .album-cell.has { box-shadow: inset 0 0 0 1px #000; }
.album-float .album-bar { display: flex; align-items: center; gap: 18px;
	padding: 10px 15px; border-top: 1px solid #e5e5e5; background: #fafafa; }
.album-float .album-bar-item { font-size: 13px; color: #333; white-space: nowrap; }
.album-float .album-bar input[type="range"] { width: 130px; vertical-align: middle;
	margin: 0 6px; }
.album-float .album-bar input[type="text"] { width: 52px; height: 24px;
	text-align: center; }
.album-float .album-bar .album-border-label input { vertical-align: -2px; }
.album-float .album-upload-btn { margin-left: auto; width: 110px; height: 32px;
	border: 0; background: #1a9bff; color: #fff; font-size: 14px; cursor: pointer; }
.album-float .album-upload-btn:hover { background: #0f8ce8; }
.album-float .album-bar #album-msg { font-size: 13px; }

/* 签到区：福袋（累计签到满 8 天送一个，开出 0~2 P钻） */
.mark-bg .sign-bag { position: absolute; right: 210px; top: 12px; }
.mark-bg .sign-bag img { width: 40px; height: 40px; vertical-align: middle; }
.mark-bg .sign-bag .bag-num { margin-left: 4px; color: #ff5500; font-weight: bold; }
.mark-bg .sign-bag .bag-open-btn { margin-left: 6px; padding: 3px 10px; border: 0;
	border-radius: 3px; background: #f5a623; color: #fff; cursor: pointer; font-size: 12px; }
.mark-bg .sign-bag .bag-open-btn:hover { background: #e09512; }

/* 点击聚焦框：原版 bootstrap 给 a:focus / .btn:focus / input:focus 写了
   explicit outline——当年 IE/老浏览器只在键盘 Tab 时画框，现代浏览器
   鼠标点击也会画（这就是站主说的聚焦框）。这里对鼠标点击（:focus 但不是
   :focus-visible）一律去轮廓；键盘 Tab 的轮廓保留。
   下划线恢复原站版：common.css 的 a:hover,a:active（红字 + 下划线），
   这里不再给 :focus 加下划线。 */
a:focus:not(:focus-visible), button:focus:not(:focus-visible),
input:focus:not(:focus-visible), select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible), [tabindex]:focus:not(:focus-visible) {
	outline: none;
}


/* ============================================================
   手机端适配
   原站是 960/985px 固定宽的桌面版（另有一套手机版页面，存档里没有）。
   这里把固定宽的块改成自适应，并让「发表新帖」「发帖模块」在窄屏下
   依然可见、可用。
   ============================================================ */
/* 断点说明：真机没有 viewport meta 时布局视口是 980px，
   这个断点必须小于 980，否则手机会把桌面版改乱（挤成一团）。
   手机端 = 桌面端等比例缩小，不单独画。 */
@media screen and (max-width: 700px) {
  /* 存档的 bootstrap.css 没有 @media（时光机重写时删掉了响应式规则），
     所以容器要自己改成自适应，否则整个站是 960px 固定宽 */
  .container, .container-fluid {
    width: auto !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .row { margin-left: 0 !important; margin-right: 0 !important; }
  html, body { overflow-x: hidden; }

  /* 固定宽的大块 -> 跟随窗口 */
  .content, .content-top, .content-list-top, .thread-detail-content,
  .thread-list-content, .thread-list-title, .thread-notice, .list-title,
  .mark-content, .home-top, .home-top-k, .home-top .picView,
  .home-top .picView li, .detail-content, .list-content {
    width: auto !important;
    max-width: 100%;
  }
  .home-top .top-right, .home-top .wd-820 {
    width: auto !important;
    float: none !important;
  }
  .home-top .top-left { float: none; display: block; text-align: center; }
  .home-top .top-left img { display: inline-block; }

  /* 公告条：文字可换行，发布按钮回到流内（原来浮在右侧，手机上看不到） */
  .content-top { height: auto !important; overflow: visible !important; }
  /* 公告条：<li> 上有内联的 width/height（vTicker 滚动用的尺寸），
     保持原样，只把容器裁切 —— 之前改成 auto 会出现 26x715 的空盒子 */
  .content-top .notice { width: auto !important; max-width: 100%; }
  .content-top .notice ul { width: 100% !important; height: 55px !important;
    overflow: hidden; }
  .content-top .notice ul li { display: block; }
  .content-top .publish-btn {
    float: none !important;
    display: block;
    margin: 8px 0 4px !important;
    width: 94px;
    height: 35px;
  }

  /* 签到区：星座运势、每周任务、签到按钮竖排 */
  .mark-content { height: auto !important; padding-bottom: 6px; }
  .mark-bg { width: 100% !important; height: auto !important;
    background-position: center top; }
  .mark-bg .mark-left { float: none; width: auto !important; text-align: center; }
  .mark-bg .mark-left .left-content { width: auto !important; text-align: left; }
  .mark-bg .mark-right { float: none !important; width: auto !important;
    text-align: center; margin-top: 4px; }
  .mark-bg .week-task { float: none !important; display: inline-block;
    margin: 6px 8px 0 0; }
  .mark-bg .sign-bag { position: static; display: inline-block; margin: 6px 0 0; }

  /* 列表：帖子标题不再固定 680px */
  .content-list .list-middle .middle-name,
  .content-list .list-middle .thread-middle-name,
  .content-list .list-middle .middle-images-list { width: auto !important; }
  .content-list { height: auto !important; }
  .content-list .list-right { float: none !important; text-align: right; }

/* 帖子详情：左边的形象卡和右边正文竖排。
     原站给 .list-left/.list-right 用了 padding-bottom:3000px + margin-bottom:-3000px
     的等高补丁（content.css L198 / L227）：取消浮动后若不把 margin-bottom 一并归零，
     每个 .detail-list 会塌回 min-height:50px，被 overflow:hidden 裁掉整层正文。 */
  .detail-content .detail-list .list-left,
  .detail-content .detail-list .list-right { float: none !important; width: auto !important;
    padding: 0 !important; margin-bottom: 0 !important; }
  .detail-list .list-right .content-text { width: auto !important; }
  .detail-list .list-right .praise-btn { width: auto !important; }
  .comment-list { width: auto !important; margin-left: 0 !important;
    margin-top: 10px !important; }
  .publish-comment { padding: 10px !important; }
  .publish-comment .publish-comment-content { width: 100% !important; }

  /* 发帖表单 */
  .add-content { width: auto !important; }
  .add-content .add-row .row-right { margin-left: 0 !important; }
  .add-content .add-row .row-right input[type=text],
  .add-content .add-row .row-right textarea,
  .add-content .add-row .row-right select { width: 100% !important;
    box-sizing: border-box; }
  .set-content { width: auto !important; padding-left: 10px !important; }
  .privately-reply .privately-text .privately-content { width: 100% !important; }
  .privately-reply .privately-sub { width: auto !important; }
  .privately-list .privately-content-list .left { float: none !important; width: auto !important; }
  .privately-list .privately-content-list .right { float: none !important; width: auto !important; }
  .contact-list { width: auto !important; }
  .message-list .message-item { word-wrap: break-word; }


  /* 回复框 / 发帖框：原站是 815px / 774px / 645px 固定宽，
     手机上会跑到屏幕外，打字看不见换行 —— 这里改成自适应 */
  .detail-content .publish-comment .ke-container,
  .detail-content .publish-comment .ke-edit,
  .detail-content .publish-comment .ke-edit-iframe,
  .detail-content .publish-comment .publish-comment-content,
  .comment-list .comment-text .comment-content,
  .add-content .add-row .row-right .add-intro,
  .add-content .add-row .row-right textarea {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .detail-content .publish-comment .ke-edit-iframe { height: 160px !important; }
  .comment-list .comment-text .comment-content { height: auto !important;
    min-height: 60px; }
  .add-content .add-row .row-right .add-intro { height: auto !important;
    min-height: 150px; }



  /* 皮卡堂3D 横幅在桌面是 margin: 68px 0 -55px（负边距让内容上移），
     手机上会压住下面的「发表新帖」按钮 */
  #threed-banner { margin-bottom: 10px !important; }

  /* 内容里的图片自适应（皮卡堂3D 横幅是 985x301，手机上会溢出压住按钮） */
  .content img, .content-top img, .list-content img, .mark-content img,
  .content-top div img, .home-top img, #threed-banner img, .row img {
    max-width: 100% !important;
    height: auto !important;
  }


  /* 选图按钮本身要点得到（手机浏览器） */
  .ke-toolbar, .ke-statusbar { display: none !important; }

  /* 顶栏：菜单横向滚动，别把页面撑宽 */
  div.topbar { overflow-x: auto; white-space: nowrap; }
  div.topbar div.menu { float: none; display: inline-block; }
  div.topbar div.account { float: none; display: inline-block; }
  div.topbar div.menu div.item { display: inline-block; }
  div.topbar .container { width: auto !important; }


  /* 板块页搜索栏：原站是浮在标签行右边的 200px 盒子，
     手机上放不下，改成标签行下面独占一行 */
  .list-title .search {
    width: auto !important;
    max-width: 100% !important;
    float: none !important;
    display: block;
    margin: 6px 0 0 !important;
    padding-top: 0 !important;
    height: auto !important;
  }
  .list-title .search .search-input {
    width: 100% !important;
    box-sizing: border-box;
    height: 30px !important;
    line-height: 30px !important;
  }
  .list-title .search span { right: 3px; top: 0; }
  .list-title .search .search-btn { width: 30px; height: 30px; }
  .list-title .pull-right {
    float: none !important;
    text-align: right;
    margin-top: 4px;
  }
  #search-target-selector { height: 28px !important; margin-top: 0 !important; }

  /* 账号页（登录 / 注册 / 找回密码）：原站是 960px 桌面版，
     手机上要竖排 —— 左边那张 620px 的图直接不显示 */
.content-left { display: none !important; }
  /* 上面那条是给账号页的；楼层形象卡里的 .content-left 是形象位，不能被一起隐藏 */
  .detail-content .detail-list .info-list .content-left { display: block !important; }
  .content-right {
    float: none !important;
    width: auto !important;
    padding-left: 0 !important;
  }
  .login-title, .forget-title, .forget-form, .form-input,
  .backtype-right .check-title, .backtype-right .check-input,
  .check-right .check-title, .check-right .check-input {
    width: auto !important;
    max-width: 100% !important;
  }
  .backtype-left, .check-left {
    float: none !important;
    width: auto !important;
    height: auto !important;
    padding: 10px 0 0 !important;
    text-align: left !important;
  }
  .backtype-right, .check-right {
    float: none !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
  }
  .backtype-right .check-input input, .check-right .check-input input {
    width: 100% !important;
    box-sizing: border-box;
  }
  .reset-title {
    width: auto !important;
    height: auto !important;
    padding: 20px 0 10px !important;
  }
  .reset-title span { margin-left: 0 !important; }
  .reset-content {
    width: auto !important;
    min-height: 0 !important;
    padding-left: 0 !important;
  }
  .reset-content .rest-line {
    width: auto !important;
    height: auto !important;
    margin: 10px 0 !important;
  }
  .reset-left {
    float: none !important;
    width: auto !important;
    height: auto !important;
    text-align: left !important;
    padding-right: 0 !important;
    line-height: 28px !important;
  }
  .reset-middle { width: 100% !important; }
  .reset-middle input, .reset-middle select {
    width: 100% !important;
    box-sizing: border-box;
  }
  .reset-right {
    float: none !important;
    margin-left: 0 !important;
    line-height: 24px !important;
  }
  .prompt-title { margin-left: 0 !important; padding-top: 30px !important; }
}

/* 选图：原站 CSS 把 file input 设成 display:none，
   手机浏览器（iOS/安卓）就点不出图片选择器了 —— 改成"1px 透明但可点击"。
   这条不能放在 @media 里：手机现在走的是桌面版等比例缩放，宽度是 980px。 */
.detail-content .publish-comment .publish-btn-list #fileupload,
.works-mgr .album-bar #fileupload,
.add-content .add-row .row-right #live-cover,
.add-content .add-row .row-right #live-img {
  display: block !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  z-index: -1;
}

/* ---------------------------------------------------------------------------
   账号页（找回密码 / 注册 / 账号设置）
   原站 login.css 里已经有 .forget-form / .backtype-* / .check-* / .reset-* /
   .prompt-* 的样式，这里只补原站没覆盖到的地方：select、a.sub-btn、
   .reset-middle 里的提交按钮。
   --------------------------------------------------------------------------- */
.register-middle select {
  width: 285px;
  height: 40px;
}
/* Keep the archived settings form classes, but lay out each label/control
   pair as columns and let rows grow for wrapped help text. */
.set-content .form-row {
  display: flex;
  align-items: flex-start;
  width: 100%;
  min-height: 60px;
  height: auto;
  line-height: 35px;
  padding: 8px 0;
  box-sizing: border-box;
}
.set-content .form-row .form-row-left {
  flex: 0 0 90px;
  box-sizing: border-box;
}
.set-content .form-row .form-row-right {
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  align-items: center;
  min-width: 0;
  margin-left: 0;
  line-height: 35px;
}
.set-content .form-row .form-row-right input,
.set-content .form-row .form-row-right select {
  max-width: 100%;
  box-sizing: border-box;
}
.set-content .form-row .form-row-right .tips { margin-left: 12px; }
.set-content .form-row .form-row-right select.set-question {
  width: 285px;
  height: 35px;
}
/* 原站 .forget-form .sub-btn 有 60px 上边距（给错误提示留的位置），
   我们把提示单独放一行了，按钮贴着上面 */
.forget-form .sub-btn { margin-top: 0 !important; }
/* 原站 .sub-btn 是 input，账号页里也有用 a 包着的按钮 */
.forget-form a.sub-btn, .backtype-right a.sub-btn, .check-right a.sub-btn,
.reset-content a.sub-btn, .prompt-btn a.sub-btn {
  display: inline-block;
  width: 106px;
  height: 38px;
  line-height: 38px;
  text-align: center;
  background: url(/static/images/login/login-btn.png) no-repeat;
  color: #fff;
  border: 0;
  text-decoration: none;
}
/* .reset-middle 里的提交按钮：原站 login.css 只写了 .register-middle .sub-btn */
.reset-middle .sub-btn {
  width: 106px;
  height: 38px;
  background: url(/static/images/login/login-btn.png) no-repeat;
  color: #fff;
  border: 0;
  cursor: pointer;
}

/* ---------------------------------------------------------------------------
   关闭安卓 Chromium 的「文字自动放大」（font boosting / text autosizing）。
   本站没有 viewport（手机 = 980px 布局视口等比缩放整页），而无 viewport 的
   宽页面上 Chromium 会按文字块自行放大字号：楼层用户卡里 等级|关注|粉丝
   三个定宽块被撑到放不下折行（粉丝 掉到第二行）、右侧楼层信息被挤出容器。
   Chromium 对设了 max-height 的块不做放大，给全部元素一个远大于内容的
   上限即可整体关闭；对桌面 / 布局无影响（只是把 none 变成超大值）。
   --------------------------------------------------------------------------- */
html * {
  max-height: 999999px;
}

/* ---------------------------------------------------------------------------
   窄视口（手机 = 980px 布局视口等比例缩放到屏幕宽）
   桌面版的小按钮缩到 40% 之后点不到，这里按比例放大。
   --------------------------------------------------------------------------- */
@media screen and (max-width: 1000px) {
  /* 「发表新帖」：原站 94x35 */
  .content-top .publish-btn {
    width: 94px !important;
    height: 35px !important;
    padding-left: 26px !important;
    font-size: 14px !important;
    line-height: normal !important;
    text-align: left !important;
    background-size: auto !important;
    margin-top: 15px !important;
    margin-right: 5px !important;
  }
  /* 详情页右上角的操作按钮（收藏 / 回复 / 编辑 / 神作 / 取消顶 / 删帖）：
     原版 67x25（collect-btn-bg.png / reply-btn-bg.png 本身就是 67x25）。
     之前在窄视口下被放大到 150x56，手机端比其它控件大出一圈、很突兀，
     按站主要求缩回原版，与「回复」完全一致。
     字号/内边距不覆盖，沿用原站 bootstrap 的 13px 与 reply-btn 的 padding-left。 */
  .btn-list input,
  .btn-list .collect-btn,
  .btn-list .reply-btn,
  .btn-list .edit-btn {
    width: 67px !important;
    height: 25px !important;
    text-align: center;
    background-size: auto !important;
    margin-right: 0 !important;
  }
  /* 楼层操作区：原版 content-info 预留了 210px 固定上边距，
     手机缩放后会把只看TA/楼层信息与楼中楼评论拉开。 */
  .detail-list.reply-list .list-right {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .detail-list.reply-list .list-right > .content-text {
    flex: 0 0 100%;
    box-sizing: border-box;
  }
  .detail-list.reply-list .list-right > .content-info {
    float: none !important;
    clear: none !important;
    margin: 8px 0 !important;
    box-sizing: border-box;
  }
  .detail-list.reply-list .list-right > .only-look {
    flex: 0 0 auto;
    margin-left: 0 !important;
  }
  .detail-list.reply-list .list-right > .content-info.pull-right {
    flex: 1 1 auto;
    text-align: right;
  }
  .detail-list.reply-list .list-right > .comment-list {
    flex: 0 0 100%;
    box-sizing: border-box;
  }
  /* 「只看TA」：原版 67x25，与「收藏」同一张 collect-btn-bg.png 底图。
     之前放大到 210x70，手机端显得过大，按站主要求缩回原版。 */
  .detail-list.reply-list .only-look .only-btn {
    width: 67px !important;
    height: 25px !important;
    padding: 0 !important;
    background-size: auto !important;
  }
  /* 楼层里的「删除」：原版是纯文字链接（.content-info .deleteReply），
     之前跟着放大到 22px/48px 高，现在跟同排的楼层信息（12px）一致。 */
  .detail-list.reply-list .content-info .deleteReply a {
    display: inline-block;
    min-width: 0;
    min-height: 0;
    padding: 0;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
  }
  /* 右侧浮动栏（回到顶部 / 刷新 / 上下篇）：原站 45x45，
     980px 下 left:50%+475 会跑出屏幕，拉回右边缘 */
  .float-right {
    left: auto !important;
    right: 2px !important;
    margin-left: 0 !important;
  }
  .float-right li {
    width: 45px !important;
    height: 45px !important;
    margin: 5px 0 !important;
  }
  .float-right .reLease,
  .float-right .reRefresh,
  .float-right .reTop {
    background-size: auto !important;
  }
  .float-right .page-list .page-next,
  .float-right .page-list .page-prev {
    width: 45px !important;
    height: 45px !important;
    background-size: auto !important;
    margin: 5px 0 !important;
  }
  .float-right .page-list .page-next a,
  .float-right .page-list .page-prev a {
    width: 45px !important;
    height: 45px !important;
  }
}

/* ===========================================================================
   顶楼 / 回复正文里的「大字号文字被截断」
   ---------------------------------------------------------------------------
   bootstrap.css 给 body 写死了 line-height:18px，用的是固定像素值，不会随字号放大。
   用户在编辑器里把字调到 32px 以上时，行盒仍然是 18px，于是：
     1. 行与行互相叠在一起（视觉上糊成一团）；
     2. 首行字形向上溢出容器上沿，被 .content-text / .list-right / .detail-list
        三者任意一个的 overflow:hidden 裁掉 —— 这就是「显示不完全」。
   下面只对「带内联 font-size 的元素」按自身字号给比例行高：
   普通正文（没有内联字号）完全不受影响，保持原站的 18px 行距。
   =========================================================================== */
.detail-list .list-right .content-text [style*="font-size"] {
  line-height: 1.4;
}
/* 编辑器有时把字号放在块级元素上（<div style="font-size:32px">），
   块级行高同时要照顾它自己的 strut */
.detail-list .list-right .content-text div[style*="font-size"],
.detail-list .list-right .content-text p[style*="font-size"] {
  line-height: 1.4;
}
/* 老编辑器还会输出 <font size="7">，一并兜住 */
.detail-list .list-right .content-text font[size] {
  line-height: 1.4;
}

/* === SKIN-LOCAL-BEGIN ====================================================
   ★ 本地皮肤预览（2026-10-26）—— 只在本地生效，**没有**同步到服务器 ★
   ---------------------------------------------------------------------------
   覆盖的是存档 common.css 第 3-12 行给 body 铺的白色花纹底图：
       body { background-image: url(/static/images/public/bg.jpg); repeat; }
   换成站主提供的万圣节房间图。/img/ 是 live/img/ 的静态路由（ptu_live.py
   的 IMG_DIR），所以图片放 live/img/ptu_skin.png 即可。
   live.css 是在 <body> 开头注入的，位于 head 里所有 CSS 之后，
   同特异性下后者胜出，不需要 !important。

   ⚠️ 部署注意：整段（SKIN-LOCAL-BEGIN 到 SKIN-LOCAL-END）是**本地试色用**的。
   如果想保留服务器原皮肤，部署前请把这一段连同下面的 body 规则一起删掉；
   否则生产会引用一个不存在的 /img/ptu_skin.png，只剩深紫兜底色。
   ============================================================================ */
/* 画布底色 = 壁纸底边的橙色（窗口比页面高时才会露） */
html {
  background-color: #fda15b;
}

/* ===== 壁纸：拼好的长图 1280×2395（场景在上、星空在下，接缝已做颜色过渡）=====
   这条规则解决你提的每一条：
     · 100% auto          → 按宽度等比，绝不裁切、绝不拉伸
     · no-repeat          → 绝不拼接
     · scroll             → 跟着页面滚，不钉在视口（钉住才会裁）
     · aspect-ratio 1280/2395 + padding-bottom:58px
                          → 页面高度 = 图高 + 顶栏高，两者恒等，
                            所以"能滚到的范围"正好是这张图从顶到底，图下面不多一块
   */
body {
  background-image: url('/img/ptu_skin.png?v=349d6dde');
  background-color: #fda15b;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-position: center 58px;

  width: 100%;
  aspect-ratio: 1280 / 2395;   /* 与图片真实比例一致 */
  box-sizing: content-box;
  padding-bottom: 58px;        /* 抵消上面那 58px 的下移 */
}

/* ===== 壁纸 pic_5 上的骷髅月亮 → 透明可点热区（点它开 B 站视频）=====
   月亮在 pic_5（1000×900）里：圆心 (897, 384)，直径约 64（连光晕取 72）。
   v4 壁纸是等比铺满窗口宽 + --wp-y 滚动联动，热区的屏幕位置随缩放和滚动变，
   所以 left/top/宽高由 live.js 的壁纸 tick 逐帧用像素写（这里是静态样式部分）。 */
body { position: relative; }

a.ptu-moon {
  position: fixed;
  z-index: 30;                  /* 盖在壁纸和内容之上，可点 */
  border-radius: 50%;
  cursor: pointer;
  background: transparent;      /* 平时完全不可见 */
  text-decoration: none;
  /* 调试时可临时打开下面这行看热区范围 */
  /* outline: 1px dashed rgba(255,0,0,.8); */
}

/* ===== 顶栏必须是 fixed（一直贴在窗口顶部）=====
   月亮热区需要 body 做定位祖先（body{position:relative}），
   会让顶栏的定位上下文变复杂，这里直接钉死，保证滚动时不动。 */
div.topbar,
.row.topbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
}

/* ===== 本地皮肤壁纸 pic_5 v4（站主 2026-10-30，10-31 已上线服务器）=====
   等比铺满窗口宽（保比例，不变形/不裁剪/不平铺），两侧也有壁纸装饰；
   固定层 + 滚动联动：live.js 按滚动进度写 --wp-y，图窗从图顶（星空）
   一路走到图底（黑猫和女巫），全程整幅壁纸。 */
html { background: #3c4390 !important; }
body { background: transparent !important; min-height: 900px; }
body::before {
	content: '';
	position: fixed;
	left: 0; right: 0; top: 0; bottom: 0;
	z-index: -1;
	pointer-events: none;
	background-color: #3c4390;
	background-image: url(/live/up/ptu_wallpaper.png);
	background-repeat: no-repeat;
	background-position: center var(--wp-y, 0px);
	background-size: 100% auto;
}

/* ===== 板块侧边栏万圣节配色（站主 2026-10-31 指定五色）=====
   #FF7518 发帖 / #000000 刷新 / #5D3FD3 上一页 / #720e9e 下一页 / #D3D3D3 回顶。
   原版按钮是「白盒+灰图标」的整张 PNG，改配色用 background-blend-mode: multiply
   ——白盒染成主题色、灰图标变成该色的深色版（形状不变，只换配色）；
   黑色那颗 multiply 会连图标一起变黑，改用 invert(1) 反色（白盒→黑、图标→浅灰）。 */
.float-right li,
.float-right .page-list .page-next,
.float-right .page-list .page-prev {
	background-blend-mode: multiply !important;
	border-radius: 6px;
}
.float-right .reLease { background-color: #FF7518 !important; }
.float-right .reFresh { filter: invert(1); }
.float-right .page-list .page-prev { background-color: #5D3FD3 !important; }
.float-right .page-list .page-next { background-color: #720e9e !important; }
.float-right .reTop { background-color: #D3D3D3 !important; }
/* 悬停反馈：提亮一档 */
.float-right .reLease:hover,
.float-right .page-list .page-prev:hover,
.float-right .page-list .page-next:hover,
.float-right .reTop:hover { filter: brightness(1.12); }
.float-right .reFresh:hover { filter: invert(1) brightness(1.6); }

/* ===== 徽章栏：图约束在 31x31 格内（原站徽章图天生 31px 没写约束；
   站主上传的徽章多大都行，超了就等比缩进格子，间隔保持原版的 5px）===== */
.home-top .badge-list ul li { overflow: hidden; }
.home-top .badge-list ul li img { width: 31px; height: 31px; object-fit: cover; }
