/*
file_name: s.css
file_version: v1.0
from: Static Resource Version Controller
from_url: 
author: https://github.com/laiyuqiang/
update_time: 2026-01-14 23:27:08
User-Agent: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
*/
*{
	margin:0;
	padding:0;
	outline: none;
}
body{
	margin:0;
	padding:0;
	/*min-width: 330px;*/
	overflow-x: auto;
}
text,
image,
button,
input,
textarea {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: #00000000; 
}
textarea:focus,
select:focus {
  background-color: #00000000;
  box-shadow: none;
}
ul{
    list-style: none;
}
select,option{
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    outline: 0;
    cursor: pointer;
}
/*-------------------------------------------------------------*/
.b{
    font-weight: bold;
}
.cno{
    pointer-events: none;
}
.no-hh{
	white-space:nowrap;
	flex-flow: row nowrap !important;
}
.hh{
    flex-wrap: wrap;
}
.cur-p{
    cursor: pointer;
}
.cur-no{
	cursor: not-allowed;
}
.block{
	display: block;
}
.inblock{
	display: inline-block;
}
.no-wrap {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.no-hh{
    white-space: nowrap;
}
.huanhang,.hh{
	flex-flow: row wrap;
	word-break: break-all;
}
.wrap-pre {
    white-space: pre-wrap; /* 保留空格和换行，但允许自动换行 */
    word-break: break-all; /* 强制长单词或URL换行 */
    overflow-wrap: break-word; /* 更优雅的换行方式 */
}
/*-------------------------------------------------------------*/
.por{
	position:relative;
}
.poa{
	position:absolute;
}
.Tpor{
	position: relative!important;
}
.Tpoa{
	position: absolute!important;
}
.pof{
	position: fixed;
}
.dis-f{
	display:flex;
}
.dis-f-c{
	justify-content:center;
	align-items:center;
}
.dis-f-cl,.alc,.dis-l-c{
	align-items:center;
}
.dis-l-c0{
    align-items: start!important;
}
.dis-f-b{
	justify-content: space-between;
}
.dis-no,.hidden{
	display:none;
}
.vno{
    visibility: hidden;
}
.ov-no{
	overflow:hidden;
}
.ovx{
    overflow-x: auto;
}
.ovx-no{
    overflow-x: hidden;
}
.ovy{
    overflow-y: auto;
}
.ovy-no{
    overflow-y: hidden;
}
.w{
	width:100%;
}
.h{
	height:100%;
}
.Tw{
	width: 100% !important;
}
.TVw{
	width: 100vw !important;
}
.Th{
	height: 100% !important;
}
.TVh{
	height: 100vh !important;
}
.Twauto{
    width: auto!important;
}
.hover_op_7:hover{
    opacity: 0.7;
}
/*-------------------------------------------------------------*/
._r4{
	border-radius: 4px;
}
._r8{
	border-radius: 8px;
}
._r12{
	border-radius:12px;
}
._r20{
	border-radius:20px;
}
._r50{
	border-radius: 50%;
}
/*-------------------------------------------------------------*/
.yy{
    box-shadow: #aaa 0px 0px 10px;
}
.yy2{
    box-shadow: #555 0px 0px 10px;
}
.yy3{
	box-shadow:
	  0px 0px 0.4px rgba(0, 0, 0, 0.007),
	  0px 0px 0.9px rgba(0, 0, 0, 0.01),
	  0px 0px 1.6px rgba(0, 0, 0, 0.013),
	  0px 0px 2.5px rgba(0, 0, 0, 0.015),
	  0px 0px 3.9px rgba(0, 0, 0, 0.017),
	  0px 0px 6px rgba(0, 0, 0, 0.02),
	  0px 0px 10px rgba(0, 0, 0, 0.023),
	  0px 0px 20px rgba(0, 0, 0, 0.03);
}
.yy4{
    box-shadow: 0 4px 20px rgba(0, 0, 0, .08);
}
/*-------------------------------------------------------------*/
.flex{
	flex: 1;
}
.lr_auto{
    margin-left:auto;
    margin-right:auto;
}
.mt5{
	margin-top:5px;
}
.mt10{
	margin-top:10px;
}
.mt15{
	margin-top:15px;
}
.mt20{
	margin-top:20px;
}
.mt30{
	margin-top:30px;
}
.mt40{
	margin-top:40px;
}
.mt50{
	margin-top:50px;
}
.mt60{
	margin-top:60px;
}
.ml0{
	margin-left: 0px!important;
}
.ml5{
	margin-left: 5px;
}
.ml10{
	margin-left: 10px;
}
.ml15{
	margin-left:15px;
}
.ml20{
	margin-left: 20px;
}
.ml30{
	margin-left: 30px;
}
.mr0{
	margin-right: 0!important;
}
.mr5{
	margin-right: 5px;
}
.mr15{
	margin-right: 15px;
}
.mr20{
	margin-right: 20px;
}
.mr30{
	margin-right: 30px;
}
.mr10{
	margin-right: 10px;
}
.Tmb0{
	margin-bottom: 0!important;
}
.mb5{
	margin-bottom: 5px;
}
.mb10{
	margin-bottom: 10px;
}
.mb15{
	margin-bottom: 15px;
}
.mb50{
    margin-bottom: 50px;
}
.Tmb30{
    margin-bottom: 30px!important;
}
.t0{
	top:0;
}
.t5{
	top:5px;
}
.t10{
	top:10px;
}
.t20{
	top:20px;
}
.Tl0{
	left: 0 !important;
}
.l0{
	left:0;
}
.l5{
	left:5px;
}
.l10{
	left:10px;
}
.l15{
	left:15px;
}
.l20{
	left:20px;
}
.l30{
	left:30px;
}
.b0{
	bottom: 0;
}
.b5{
	bottom:5px;
}
.b20{
	bottom:20px;
}
.r0{
	right:0;
}
.r5{
	right:5px;
}
.r10{
	right:10px;
}
.r15{
	right:15px;
}
.r20{
	right:20px;
}
/*-------------------------------------------------------------*/
.ano{
    text-decoration: none;
    color: inherit;
}
.a-act:hover{
    color: #fff;
}
._tc{
	text-align: center;
}
._tr{
	text-align: right;
}
._tl{
	text-align: left;
}
._tr{
	text-align: right;
}
._t_last_l{
	text-align-last: left;
}
.blue{
	color: blue;
}
.E00{
	color:#E00;
}
.t999{
	color: #999;
}
._t1{
	color:#06F;
}
._t2{
	color:#d56464;
}
.tf{
	color:#ffffff;
}
.tf0{
	color:#000000;
}
.Ttf0{
	color:#000000 !important;
}
.tf3{
	color: #333;
}
.tf5{
	color: #555;
}
.tf6{
	color:#666;
}
.tf7{
	color:#777;
}
.tf9{
	color:#999;
}
.tfD{
    color: #DDD;
}
.Ttf9{
	color:#999 !important;
}
.Ttf{
	color: #ffffff !important;
}
.ts10{
    font-size: 10px;
}
.ts11{
    font-size: 11px;
}
.ts12{
    font-size: 12px;
}
.ts13{
    font-size: 13px;
}
.ts14{
    font-size: 14px;
}
.ts15{
    font-size: 15px;
}
.ts16{
    font-size: 16px;
}
.ts17{
    font-size: 17px;
}
.ts18{
    font-size: 18px;
}
.ts19{
    font-size: 19px;
}
.ts20{
    font-size: 20px;
}
.ts21{
    font-size: 21px;
}
.ts22{
    font-size: 22px;
}
.ts23{
    font-size: 23px;
}
.ts24{
    font-size: 24px;
}
.ts25{
    font-size: 25px;
}
/*-------------------------------------------------------------*/
.pd10{
	padding: 10px;
}
.pd15{
	padding: 15px;
}
.pdt15{
	padding-top: 15px;
}
.pdt20{
	padding-top: 20px;
}
.nbj{
	z-index: 1;
	height: 40%;
	filter: blur(90rpx);
}
.EEE{
	background: #EEE;
}
.fff{
	background: #ffffff;
}
.nbc000{
	background: #000000;
}
.nbc9{
	background: #999;
}
.nbc20{
	background: #202020;
}
.nbc25{
	background: #252525;
}
.nbc30{
	background: #303030;
}
.nbc555{
	background: #555;
}
.nbce0{
	background: #e0e0e0;
}
.nbcf0{
	background: #f0f0f0;
}
.nbc_night{
	background: #202b25;
}
/*-------------------------------------------------------------*/
.dh_x3{
	transition: all 0.3s ease;
}
.dh_x6{
	transition: all 0.6s ease;
}
.dh_1{
	transition: all 1s ease;
}
.dh_2{
	transition: all 2s ease;
}
.dh_3{
	transition: all 3s ease;
}
/*-------------------------------------------------------------*/
._TbrD{
    border:1px solid #DDD !important;
}
/*-------------------------------------------------------------*/
/*-------------------------------------------------------------*/
/*.hr{
    max-width: 300px;
    background: #ddd;
    color: #ddd;
    clear: both;
    float: none;
    width: 100%;
    height: 1px;
}*/
.hr {
  background: #ddd;
  color: #ddd;
  clear: both;
  float: none;
  width: 100%;
  height: 1px;
  border: none;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.b_E0{
	background: #E0E0E0;
}
.btn-href{
	text-decoration: none;
	color:blue;
}
.c_music{
    width:100%;
    height:45px;
}
.group{
    width:72px;
    line-height: 45px;
    text-align: center;
}
.group > a{
    text-decoration: none;
}
.group > a:nth-child(2),.group > a:nth-child(3){
    display: none;
}
.waveform{
    width:calc(100% - 72px);
}
.showMessage {
    padding: 10px 20px;
    border-radius: 5px;
    position: fixed;
    top: calc(50% - 30px);
    left: 50%;
    color: #ffffff;
    z-index: 100000;
    transform: translate(-50%, 0);
}
 
.showMessageSuccess {
    background-color: #f0f9eb;
    border: 1px solid #E1F3D8;
    color: #67c23a;
}
 
.showMessageError {
    background-color: #fef0f0;
    border: 1px solid #fde2e2;
    color: #F76C6C;
}
.context-menu {
    display: none;
    position: absolute;
    background-color: #fff;
    border: 1px solid #ccc;
    min-width: 100px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    z-index: 999;
}
.context-menu-item {
    padding: 5px 10px;
    cursor: pointer;
}
.context-menu-item:hover {
    background-color: #24d0d6;
}
.btn{
    padding: 6px 12px;
    color: #fff;
    border-radius: 4px;
    cursor: pointer;
}
.btn-suc{
    background: #4c7ab6;
}
.btn-err{
    background: #F56C6C;
}
/*-------------------------------------------------------------*/
/*开关
<div class="toggle-container">
    <label class="toggle-switch">
        <input type="checkbox" id="toggleBtn" checked>
        <span class="slider"></span>
    </label>
</div>
*/
.toggle-container {
  --toggle-width: 60px;  /* 开关宽度 */
  --toggle-height: 30px; /* 开关高度 */
}
/* 开关容器 */
.toggle-switch {
  position: relative;
  display: inline-block;
  width: var(--toggle-width);
  height: var(--toggle-height);
  -webkit-tap-highlight-color: transparent; /* 移除移动端点击高亮（类似波纹的默认效果） */
}
.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
/* 开关背景 */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: var(--toggle-height);
}
/* 滑块（无波纹效果） */
.slider:before {
  position: absolute;
  content: "OFF";
  height: calc(var(--toggle-height) - 8px);
  width: calc(var(--toggle-height) - 8px);
  left: 4px;
  bottom: 4px;
  background-color: white;
  transition: .4s; /* 仅保留滑动动画，无波纹 */
  border-radius: 50%;
  text-align: center;
  line-height: calc(var(--toggle-height) - 8px);
  font-size: calc(var(--toggle-height) * 0.3);
  font-weight: bold;
  color: #666;
}
/* 选中状态 */
input:checked + .slider {
  background-color: #2196F3;
}
input:checked + .slider:before {
  transform: translateX(calc(var(--toggle-width) - var(--toggle-height)));
  content: "ON";
  color: #2196F3;
}
/*加载动画*/
.loading_i{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.loading_i::before{
  content: '';
  position: absolute;
  inset: 0; /* 上右下左全 0 */
  background: rgba(255, 255, 255, .85); /* 遮罩色 */
  z-index: 999;
}
.loading_i::after{
  content: '';
  position: absolute;
  /*left: 50%;*/
  /*top: 50%;*/
  min-width: 40px;
  min-height: 40px;
  /*margin: -20px 0 0 -20px;*/
  border: 4px solid #f3f3f3;
  border-top: 4px solid #00d9ff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  z-index: 1000;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}
.hide::before,.hide::after{
    display: none;
}
/*-------------------------------------------------------------*/