/* ============ 二级页面（原站分类栏目） ============ */
.p2-page { background: #f5f5f5; min-height: 100vh; padding-bottom: .6rem; }
.p2-head { position: sticky; top: 0; z-index: 30; display: flex; align-items: center; height: .86rem; background: #fff; border-bottom: 1px solid #eee; padding: 0 .24rem; }
.p2-back { width: .5rem; display: flex; align-items: center; cursor: pointer; }
.p2-back svg { width: .32rem; height: .32rem; fill: #333; }
.p2-title { flex: 1; text-align: center; font-size: .32rem; font-weight: 600; color: #333; }
.p2-right { min-width: .5rem; display: flex; justify-content: flex-end; }
.p2-hd-ico { color: var(--green); font-size: .26rem; cursor: pointer; }
.p2-empty { text-align: center; padding: .8rem 0; color: #999; font-size: .26rem; }
.p2-loading { text-align: center; padding: 1.4rem 0; color: #999; font-size: .26rem; }
.p2-loading::before {
  content: ""; display: block; width: .52rem; height: .52rem; margin: 0 auto .24rem;
  border: .04rem solid #e5e5e5; border-top-color: var(--green); border-radius: 50%;
  animation: p2spin .8s linear infinite;
}
@keyframes p2spin { to { transform: rotate(360deg); } }

/* 彩种 tab */
.p2-types { display: flex; background: #fff; border-bottom: 1px solid #eee; }
.p2-type { flex: 1; text-align: center; padding: .2rem .04rem; font-size: .26rem; color: #333; white-space: nowrap; }
.p2-type.on { color: #fff; background: var(--green); }
.p2-types-sm { flex-wrap: nowrap; }
.p2-types-sm .p2-type { border-right: 1px solid #e5e5e5; font-size: .24rem; }
.p2-types-sm .p2-type:last-child { border-right: none; }
.p2-types-sm .p2-type.on { background: var(--green); color: #fff; }

/* 搜索框 */
.p2-search { display: flex; gap: .16rem; padding: .2rem .24rem; background: #fff; align-items: center; }
.p2-search input { flex: 1; min-width: 0; height: .64rem; border: none; background: #f2f2f2; border-radius: .32rem; padding: 0 .28rem; font-size: .26rem; outline: none; }
.p2-search button { background: var(--green); color: #fff; border: none; border-radius: .32rem; padding: 0 .3rem; height: .64rem; font-size: .26rem; flex: none; }
.p2-search select { border: none; background: #f2f2f2; border-radius: .32rem; padding: 0 .16rem; height: .64rem; font-size: .24rem; outline: none; flex: none; }

/* 开奖现场 */
.p2-draw { margin: .2rem .24rem; }
.p2-sec-hd { display: flex; justify-content: space-between; align-items: center; padding: .2rem .24rem .12rem; font-size: .28rem; }
.p2-sec-hd span { color: var(--green); font-size: .24rem; cursor: pointer; }
.p2-videos { display: grid; grid-template-columns: repeat(2, 1fr); gap: .16rem; padding: 0 .24rem .2rem; }
.p2-video { background: #fff; border: 1px solid #e8e8e8; border-radius: .08rem; overflow: hidden; cursor: pointer; }
.p2-video-thumb { position: relative; aspect-ratio: 16 / 10; background: #f2f2f2 url(/assets/icon-49.png) center / 1.1rem no-repeat; }
.p2-video-thumb img { width: 100%; height: 100%; object-fit: cover; }
.p2-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: .6rem; height: .6rem; border-radius: 50%; background: rgba(0,0,0,.35); border: .03rem solid #fff; }
.p2-play::after { content: ""; position: absolute; left: 54%; top: 50%; transform: translate(-50%, -50%); border-left: .18rem solid #fff; border-top: .12rem solid transparent; border-bottom: .12rem solid transparent; }
.p2-video-name { text-align: center; font-size: .24rem; padding: .14rem .1rem; color: #333; }
.p2-rec { margin: .2rem 0 .1rem; background: #fff; padding-bottom: .16rem; }
.p2-rec-hd { background: #e8f2ff; color: #1a5fb4; font-size: .26rem; padding: .14rem .24rem; font-weight: 600; }
.p2-rec-row { display: flex; gap: .14rem; padding: .12rem .24rem 0; font-size: .26rem; color: #333; }
.p2-rec-row span { color: #666; flex: none; }
.p2-rec-row em { font-style: normal; letter-spacing: .02rem; }
.p2-rec-row em.num { color: var(--green); font-weight: 600; }

/* 资料大全 */
.p2-cats { display: grid; grid-template-columns: repeat(3, 1fr); gap: .2rem; padding: .24rem; }
.p2-cat { border: 1px solid #d8d8d8; border-radius: .08rem; text-align: center; padding: .2rem .06rem; font-size: .26rem; color: #555; background: #fff; cursor: pointer; }
.p2-art-banner img { width: 100%; display: block; }

/* 文章卡片 */
.p2-art-list { background: #f5f5f5; }
.p2-art { background: #fff; padding: .24rem; border-bottom: .16rem solid #f5f5f5; }
.p2-art-hd { display: flex; align-items: center; gap: .16rem; }
.p2-art-hd img { width: .6rem; height: .6rem; border-radius: 50%; object-fit: cover; }
.p2-art-who { flex: 1; display: flex; flex-direction: column; gap: .06rem; min-width: 0; }
.p2-art-who b { font-size: .26rem; color: #333; }
.p2-art-who span { font-size: .22rem; color: #999; }
.p2-follow { border: 1px solid #ddd; border-radius: .06rem; padding: .08rem .16rem; font-size: .22rem; color: #333; flex: none; cursor: pointer; }
.p2-badges { margin-top: .16rem; }
.p2-badges i { font-style: normal; font-size: .2rem; color: #fff; padding: .02rem .08rem; border-radius: .04rem; margin-right: .08rem; }
.bd-top { background: #07c160; }
.bd-jing { background: #f0483e; }
.p2-art-title { font-size: .3rem; font-weight: 600; margin: .16rem 0 .1rem; line-height: 1.4; }
.p2-art-desc { font-size: .26rem; color: #555; line-height: 1.5; }
.p2-art-ft { display: flex; gap: .4rem; margin-top: .2rem; font-size: .24rem; color: #999; }

/* 年份 / 期数 / 详情 */
.p2-years { display: flex; gap: .16rem; padding: .2rem .24rem .1rem; background: #fff; overflow-x: auto; }
.p2-years span { flex: none; border: 1px solid #ccc; border-radius: .4rem; padding: .1rem .28rem; font-size: .24rem; color: #555; cursor: pointer; }
.p2-years span.on { border-color: var(--green); background: var(--green); color: #fff; }
.p2-periods { display: flex; gap: .2rem; padding: .16rem .24rem; background: #fff; overflow-x: auto; white-space: nowrap; border-bottom: 1px solid #eee; }
.p2-periods span { flex: none; font-size: .26rem; color: #555; cursor: pointer; }
.p2-periods span.on { color: var(--green); font-weight: 600; }
.p2-subtabs { display: flex; background: #fff; border-bottom: 1px solid #eee; }
.p2-subtabs div { flex: 1; text-align: center; padding: .2rem 0; font-size: .28rem; color: #666; cursor: pointer; }
.p2-subtabs div.on { color: var(--green); font-weight: 600; border-bottom: .04rem solid var(--green); }
.p2-sorttabs { display: flex; background: #fff; }
.p2-sorttabs div { flex: 1; text-align: center; padding: .16rem 0; font-size: .26rem; color: #666; cursor: pointer; }
.p2-sorttabs div.on { color: var(--green); font-weight: 600; }
.p2-detail { background: #fff; padding: .24rem; margin-bottom: .2rem; }
.p2-detail-title { font-size: .3rem; font-weight: 600; line-height: 1.4; margin-bottom: .2rem; }
.p2-media { background: #f0f0f0; border-radius: .08rem; overflow: hidden; }
.p2-media video { width: 100%; display: block; max-height: 4.4rem; background: #000; }
.p2-media-pics img { width: 100%; display: block; cursor: zoom-in; }
.p2-media-empty { text-align: center; padding: 1rem 0; color: #999; font-size: .26rem; }
.p2-detail-body { font-size: .26rem; line-height: 1.6; color: #444; margin-top: .2rem; white-space: pre-wrap; }
.p2-detail-ft { display: flex; gap: .4rem; margin-top: .2rem; font-size: .24rem; color: #999; }
.p2-sites-hd { font-size: .3rem; font-weight: 700; padding: .24rem; }
.p2-sites { background: #fff; padding: 0 .24rem .3rem; }
.p2-sites-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .14rem; margin-top: .2rem; }
.p2-site { border: 1px solid var(--green); color: var(--green); text-align: center; border-radius: .08rem; padding: .16rem .06rem; font-size: .24rem; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* 六合图库 */
.p2-tk-body { background: #fff; }
.p2-letter { background: #f7f7f7; color: var(--green); font-size: .32rem; font-weight: 700; padding: .12rem .24rem; }
.p2-tk-row { display: flex; justify-content: space-between; align-items: center; gap: .2rem; padding: .24rem; border-bottom: 1px solid #f2f2f2; font-size: .28rem; cursor: pointer; }
.p2-tk-row em { font-style: normal; background: #f2f2f2; color: var(--green); font-size: .24rem; padding: .06rem .2rem; border-radius: .06rem; flex: none; }
.p2-letters { position: fixed; right: .02rem; top: 2.4rem; z-index: 25; display: flex; flex-direction: column; gap: .01rem; padding: .1rem .06rem; }
.p2-letters span { font-size: .2rem; color: #666; text-align: center; cursor: pointer; }

/* 论坛 */
.p2-ad-bar { display: flex; align-items: center; gap: .16rem; background: #fff; padding: .16rem .24rem; font-size: .26rem; border-bottom: 1px solid #f2f2f2; }
.p2-ad-bar b { color: #999; font-weight: 400; flex: none; }
.p2-rank-bar { display: flex; justify-content: space-between; align-items: center; gap: .16rem; background: #fff; padding: .16rem .24rem; font-size: .24rem; color: #333; }
.p2-rank-bar span { background: #ff5a6a; color: #fff; border-radius: .3rem; padding: .08rem .2rem; flex: none; cursor: pointer; }

/* 美女图库 */
.p2-btabs { display: flex; gap: .28rem; overflow-x: auto; white-space: nowrap; padding: .2rem .24rem; background: #fff; font-size: .26rem; }
.p2-btabs span { flex: none; color: #555; cursor: pointer; }
.p2-btabs span.on { color: var(--green); font-weight: 600; }
.p2-beauty-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .16rem; padding: 0 .24rem .4rem; }
.p2-beauty { background: #fff; border-radius: .08rem; overflow: hidden; cursor: zoom-in; }
.p2-beauty img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.p2-beauty-name { font-size: .26rem; padding: .16rem; }

/* 工具宝箱 */
.p2-tools { display: grid; grid-template-columns: repeat(3, 1fr); background: #fff; border-top: 1px solid #eee; }
.p2-tool { text-align: center; padding: .4rem 0; border-right: 1px solid #eee; border-bottom: 1px solid #eee; font-size: .26rem; color: #333; cursor: pointer; }
.p2-tool:nth-child(3n) { border-right: none; }
.p2-tool-ico { font-size: .6rem; line-height: 1; margin-bottom: .2rem; font-weight: 700; }

/* 号码球 */
.p2-nball { display: flex; flex-direction: column; align-items: center; width: .8rem; flex: none; }
.p2-nball b { width: .72rem; height: .72rem; border-radius: 0; display: flex; align-items: center; justify-content: center; font-size: .3rem; border: none; font-weight: 700; background: transparent center / 100% 100% no-repeat; color: #666; }
.p2-nball span { font-size: .2rem; color: #555; margin-top: .04rem; white-space: nowrap; }
.p2-nball.red b { background-image: url(/img/ball/red.png); }
.p2-nball.blue b { background-image: url(/img/ball/blue.png); }
.p2-nball.green b { background-image: url(/img/ball/green.png); }

/* 历史开奖 / 回放 */
.p2-lot-bar { display: flex; align-items: center; gap: .2rem; background: #fff; padding: .2rem .24rem; font-size: .26rem; color: #555; flex-wrap: wrap; }
.p2-year-sel, .p2-period-sel { border: 1px solid #ddd; border-radius: .06rem; padding: .06rem .1rem; font-size: .24rem; background: #fff; }
.p2-toggle { border: 1px solid #ddd; border-radius: .3rem; padding: .06rem .2rem; font-size: .22rem; }
.p2-toggle.on { background: var(--green); color: #fff; border-color: var(--green); }
.p2-lot-list { padding: 0 .24rem; }
.p2-lot-card { background: #fff; border: 1px solid var(--green); border-radius: .08rem; padding: .16rem; margin-bottom: .2rem; }
.p2-lot-hd { display: flex; justify-content: space-between; align-items: center; font-size: .26rem; margin-bottom: .16rem; }
.p2-lot-hd span { color: #999; font-size: .22rem; }
.p2-balls { display: flex; align-items: center; justify-content: space-between; gap: .04rem; }
.p2-plus { font-style: normal; font-size: .34rem; color: #999; flex: none; }
.p2-more { padding: .1rem .24rem .5rem; text-align: center; }
.p2-more-btn { display: inline-block; border: 1px solid var(--green); color: var(--green); background: #fff; border-radius: .3rem; padding: .14rem .5rem; font-size: .26rem; }
.p2-more-btn.off { border-color: #e2e2e2; color: #aaa; }

/* 六合统计 */
.p2-stat-sec { background: #fff; border-bottom: 1px solid #eee; padding: .2rem .24rem; }
.p2-stat-hd { font-size: .26rem; color: #333; margin-bottom: .16rem; }
.p2-stat-body { display: flex; flex-wrap: wrap; gap: .14rem; align-items: center; }
.p2-stat-body .p2-nball { width: .72rem; }
.p2-stat-body .p2-nball span { display: none; }
.p2-stat-ani { font-size: .3rem; color: #333; margin-right: .2rem; font-weight: 500; }
.p2-stat-col { font-size: .3rem; margin-right: .2rem; }
.p2-stat-col.red { color: #f0483e; }
.p2-stat-col.blue { color: #2d8cf0; }
.p2-stat-col.green { color: #07c160; }
.p2-stat-nav { display: flex; background: #fff; margin-top: .2rem; border-top: 1px solid #eee; }
.p2-stat-nav div { flex: 1; text-align: center; padding: .2rem 0; font-size: .24rem; color: #666; cursor: pointer; }
.p2-stat-nav div.on { color: var(--green); }

/* 聊天室 */
.p2-chat { text-align: center; padding: 1.6rem .6rem; }
.p2-chat-ico { font-size: 1.2rem; }
.p2-chat-t { font-size: .36rem; font-weight: 600; margin: .3rem 0; }
.p2-chat-d { font-size: .26rem; color: #888; line-height: 1.6; }
.p2-chat-btn { margin: .6rem auto 0; background: var(--green); color: #fff; border-radius: .4rem; padding: .2rem 0; width: 3.6rem; font-size: .28rem; cursor: pointer; }

/* 弹层 */
.p2-lightbox { position: fixed; inset: 0; background: rgba(0,0,0,.88); z-index: 9999; display: flex; align-items: center; justify-content: center; padding: .3rem; }
.p2-lb-inner { max-width: 100%; max-height: 100%; display: flex; flex-direction: column; align-items: center; }
.p2-lb-inner img { max-width: 100%; max-height: 80vh; object-fit: contain; }
.p2-lb-cap { color: #fff; font-size: .26rem; padding: .2rem 0; display: flex; gap: .4rem; align-items: center; }
.p2-lb-close { cursor: pointer; font-size: .36rem; }
.p2-vwrap { width: 100%; background: #000; border-radius: .1rem; overflow: hidden; }
.p2-vtitle { display: flex; justify-content: space-between; color: #fff; font-size: .28rem; padding: .2rem .24rem; }
.p2-vwrap video { width: 100%; max-height: 70vh; display: block; }
.p2-vtip { color: #aaa; font-size: .22rem; padding: .16rem .24rem; }
.p2-vtip a { color: var(--green); }
.p2-htmlbox { width: 100%; max-width: 6.8rem; max-height: 86vh; background: #fff; border-radius: .12rem; overflow: hidden; display: flex; flex-direction: column; }
.p2-html-hd { display: flex; justify-content: space-between; padding: .24rem; font-size: .3rem; font-weight: 600; border-bottom: 1px solid #eee; }
.p2-html-body { overflow: auto; padding: .24rem; font-size: .26rem; line-height: 1.6; }
.p2-toolbox-result { width: 6.2rem; max-width: 90vw; background: #fff; border-radius: .16rem; overflow: hidden; }
.p2-tool-balls { display: flex; flex-wrap: wrap; gap: .16rem; padding: .4rem; justify-content: center; }
.p2-tool-tip { text-align: center; font-size: .24rem; color: #999; padding: 0 .3rem .4rem; }

/* 文章 / 帖子详情 */
.p2-adetail { background: #fff; padding: .24rem; }
.p2-ad-hd { display: flex; align-items: center; gap: .16rem; }
.p2-ad-hd img { width: .6rem; height: .6rem; border-radius: 50%; object-fit: cover; }
.p2-ad-who { flex: 1; display: flex; flex-direction: column; gap: .06rem; min-width: 0; }
.p2-ad-who b { font-size: .26rem; color: #333; }
.p2-ad-who span { font-size: .22rem; color: #999; }
.p2-ad-title { font-size: .32rem; font-weight: 700; margin: .24rem 0 .16rem; line-height: 1.4; }
.p2-ad-ft { display: flex; gap: .36rem; font-size: .24rem; color: #999; padding-bottom: .18rem; border-bottom: 1px solid #f2f2f2; }
.p2-ad-body { font-size: .28rem; line-height: 1.7; color: #333; padding-top: .2rem; overflow-x: auto; word-break: break-word; }
.p2-ad-body img { max-width: 100%; height: auto; cursor: zoom-in; }
.p2-ad-body table { max-width: 100%; }
.p2-ad-body * { max-width: 100%; }

/* 右侧悬浮快捷菜单（原站 .float-bnt 复刻） */
.float-bnt { position: fixed; right: .24rem; bottom: 3.4rem; width: 1rem; height: 1rem; z-index: 101; }
.float-bnt .icon-btn {
  display: inline-block; width: 1rem; height: 1rem; position: absolute;
  left: 0; bottom: -.3rem; z-index: 10; cursor: pointer;
  background: url(/img/float/push.png) center / 100% 100% no-repeat;
  transition: .4s;
}
.float-bnt .icon-btn.oft0 { transform: rotate(180deg); }
.float-bnt .icon-tool-btn {
  position: absolute; top: 0; right: 0; text-align: center;
  transition: .4s; opacity: 0; pointer-events: none; cursor: pointer;
}
.float-bnt .icon-tool-btn span { width: 1.08rem; height: 1.08rem; display: inline-block; border-radius: 50%; }
.float-bnt .icon-tool-btn span img { width: 1.08rem; height: 1.08rem; display: block; }
.float-bnt .icon-tool-btn label {
  position: absolute; right: 1.2rem; top: .4rem; color: #fff; padding: .06rem;
  white-space: nowrap; font-size: .26rem; text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
.float-bnt .icon-tool-btn.oft1 { right: .06rem; top: -2.6rem; opacity: 1; pointer-events: auto; }
.float-bnt .icon-tool-btn.oft2 { right: 1.8rem; top: -1.7rem; opacity: 1; pointer-events: auto; }
.float-bnt .icon-tool-btn.oft3 { right: 2.6rem; top: -.2rem; opacity: 1; pointer-events: auto; }
.float-bnt .icon-tool-btn.oft4 { right: 2rem; top: 1.2rem; opacity: 1; pointer-events: auto; }
.float-bnt .icon-tool-btn.oft5 { right: .4rem; top: 2.2rem; opacity: 1; pointer-events: auto; }
.float-mask {
  position: fixed; inset: 0; background: rgba(0,0,0,.7); z-index: 100;
  opacity: 0; visibility: hidden; transition: .3s;
}
.float-mask.on { opacity: 1; visibility: visible; }
@media (min-width: 481px) {
  /* 宽屏时内容区固定 480px 居中：浮钮移到内容区右边缘之外，避免压住页面内容 */
  .float-bnt { right: max(.12rem, calc(50% - 240px - 1.12rem)); }
}

/* 视频：封面 + 播放按钮，点击后才加载（与源站一致） */
.p2-media-video { cursor: pointer; }
.p2-video-cover {
  position: relative; width: 100%; aspect-ratio: 392 / 243;
  background: #f7f7f7 url(/assets/icon-49.png) center / 1.8rem no-repeat;
}
.p2-video-play {
  position: absolute; left: .2rem; bottom: .2rem; width: 1.1rem; height: 1.1rem;
  border-radius: 50%; background: rgba(0,0,0,.16);
}
.p2-video-play::after {
  content: ""; position: absolute; left: 54%; top: 50%; transform: translate(-50%, -50%);
  border-left: .28rem solid #fff; border-top: .18rem solid transparent; border-bottom: .18rem solid transparent;
}

/* 历史开奖 · 按日期分组 */
.p2-date-group { margin-bottom: .18rem; }
.p2-date-hd {
  display: flex; align-items: center; justify-content: space-between;
  padding: .16rem .2rem; background: #f6f7f8; border-radius: .1rem .1rem 0 0;
  font-size: .28rem; color: #333;
}
.p2-date-hd b { font-weight: 600; }
.p2-date-hd span { font-size: .24rem; color: #999; }
