/* ============ PC 端听书：单行工具栏播放器 ============ */
.tingplaybox {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	width: 98%;
	margin: 6px 1%;
	padding: 8px 14px 12px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background: #fff;
	border: 1px solid #ebebeb;
	border-radius: 8px;
	box-shadow: 0 1px 4px rgba(0,0,0,.06);
	font-family: '微软雅黑', sans-serif;
	font-size: 12px;
	color: #333
}

.tingbox {
	display: none;
	width: 0;
	height: 0;
	overflow: hidden
}

/* 深色圆形播放按钮 */
.ting-img {
	position: relative;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #2f3542;
	overflow: hidden
}

.ting-img img {
	display: none
}

.ting-play {
	position: absolute;
	top: 4px;
	left: 4px;
	width: 30px;
	height: 30px;
	background: url('../images/play.png') no-repeat center;
	background-size: 30px;
	border-radius: 50%;
	cursor: pointer;
	overflow: hidden
}

.ting-pause {
	display: none;
	position: absolute;
	top: 4px;
	left: 4px;
	width: 30px;
	height: 30px;
	background: url('../images/pause.png') no-repeat center;
	background-size: 30px;
	border-radius: 50%;
	cursor: pointer;
	overflow: hidden
}

.play .ting-pause,.play-ready .ting-play {
	display: block
}

.play .ting-play {
	display: none
}

.play-ready .ting-play {
	background: url('../images/loading.gif') no-repeat center #2f3542;
	background-size: 18px;
	opacity: .75
}

/* .ting-con 仅作分组：子元素直接参与工具栏 flex 排版 */
.ting-con {
	display: contents
}

/* 书名 */
.ting-title {
	order: 1;
	flex: 0 1 auto;
	min-width: 40px;
	max-width: 240px;
	height: 24px;
	line-height: 24px;
	text-indent: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis
}

.ting-s01 {
	display: none
}

.ting-s02 {
	font-size: 15px;
	color: #222;
	font-weight: 500
}

/* 贴底细进度条 */
.ting-play-cur {
	position: absolute;
	left: 16px;
	right: 16px;
	bottom: 3px;
	height: 3px;
	background: #eee;
	border-radius: 2px
}

.ting-cur {
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background: #1E9FFF;
	border-radius: 2px
}

.ting-ico {
	position: absolute;
	top: 50%;
	right: -5px;
	margin-top: -5px;
	width: 8px;
	height: 8px;
	border: 1px solid #1E9FFF;
	border-radius: 50%;
	background: #fff;
	cursor: pointer
}

/* 时间 */
.ting-time {
	order: 6;
	flex: 0 0 auto;
	margin-left: auto;
	height: 24px;
	line-height: 24px;
	font-size: 12px;
	color: #888;
	font-family: Arial, Helvetica, sans-serif;
	white-space: nowrap;
	overflow: hidden
}

/* 音量 - 🔊 + */
.ting-vol {
	order: 4;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 4px
}

.ting-vol p {
	width: 20px;
	height: 20px;
	line-height: 18px;
	margin: 0;
	font-size: 14px;
	color: #555;
	text-align: center;
	font-family: Arial, Helvetica, sans-serif;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: #fff;
	cursor: pointer;
	overflow: hidden
}

.ting-vol .ting-jian,
.ting-vol .ting-jia {
	font-size: 15px
}

.ting-vol .ting-muted {
	position: relative;
	width: 24px;
	border: none;
	background: url('../images/vol.png') no-repeat 5px 4px;
	background-size: 70px
}

.ting-vol .ting-muted.cur {
	background-position: -52px 4px
}

.ting-vol .ting-v-01,
.ting-vol .ting-v-02 {
	display: none
}

/* 自动播放开关（保留功能，弱化展示） */
.ting-autoplay {
	order: 5;
	flex: 0 0 auto;
	height: 24px;
	line-height: 24px;
	font-size: 11px;
	color: #999;
	cursor: pointer;
	white-space: nowrap;
	overflow: hidden
}

.ting-autoplay .f01 {
	text-decoration: none
}

.ting-autoplay .f02 {
	color: #1E9FFF
}

/* 关闭按钮 */
.ting-close {
	order: 7;
	flex: 0 0 auto;
	width: 20px;
	height: 24px;
	line-height: 24px;
	font-size: 18px;
	color: #c0c4cc;
	text-align: center;
	cursor: pointer
}

.ting-close:hover {
	color: #666
}

.tingmark {
	display: none;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-color: #d3d3d3;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	-khtml-opacity: 0.5;
	opacity: 0.5;
	z-index: 9995;
	overflow: hidden
}

.tingtip {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 298px;
	height: 198px;
	margin-top: -100px;
	margin-left: -150px;
	background-color: #FFF;
	border: 1px solid #bcbcbc;
	z-index: 9999;
	overflow: hidden
}

.tingtip .tingh {
	float: left;
	width: 100%;
	height: 29px;
	line-height: 29px;
	text-indent: 5px;
	border-bottom: 1px solid #cccccc;
	background-color: #ede7da;/*#ece9d8;*/
	font-size: 14px
}

.tingtip .tingc {
	float: left;
	width: 100%;
	height: 120px;
	line-height: 120px;
	font-size: 14px;
	background: url(../images/ting_tip.gif) no-repeat 45px center;
	background-size: 30px;
	text-align: center;
	text-indent: 40px
}

.tingtip .tingb {
	float: left;
	width: 100%;
	height: 48px;
	overflow: hidden
}

.tingtip .tingb div {
	float: left;
	height: 28px;
	line-height: 28px;
	margin: 0px 5px 0;
	padding: 0 15px;
	border: 1px solid #1E9FFF;
	background-color: #1E9FFF;
	color: #fff;
	border-radius: 2px;
	font-weight: 400;
	cursor: pointer
}

.tingtip .tingb .tingyes {
	margin-left: 140px
}

.tingtip .tingb .tingno {
	background: #fff;
	border-color: #dedede;
	color: #333
}

/* 音色下拉（悬停展开） */
.ting-control {
	order: 3;
	position: relative;
	flex: 0 0 auto;
	display: flex;
	align-items: center
}

.ting-per-cur {
	position: relative;
	display: block;
	height: 24px;
	line-height: 22px;
	padding: 0 20px 0 8px;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: #fff;
	font-size: 12px;
	color: #333;
	cursor: pointer;
	white-space: nowrap
}

.ting-per-cur::after {
	content: '御姐音'
}

.ting-control.per0 .ting-per-cur::after { content: '御姐音' }
.ting-control.per2 .ting-per-cur::after { content: '大叔音' }
.ting-control.per3 .ting-per-cur::after { content: '型男音' }
.ting-control.per102 .ting-per-cur::after { content: '萝莉音' }

.ting-per-cur::before {
	content: '';
	position: absolute;
	right: 7px;
	top: 9px;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid #999;
	overflow: hidden
}

.ting-control p {
	display: none;
	position: absolute;
	left: 0;
	width: 92px;
	height: 28px;
	line-height: 28px;
	margin: 0;
	padding: 0;
	font-size: 12px;
	color: #333;
	text-align: center;
	background: #fff;
	border: 1px solid #e5e5e5;
	border-top: none;
	cursor: pointer;
	z-index: 9999;
	overflow: hidden
}

.ting-control p:nth-of-type(1) {
	top: 24px;
	border-top: 1px solid #e5e5e5;
	border-radius: 6px 6px 0 0
}

.ting-control p:nth-of-type(2) { top: 52px }
.ting-control p:nth-of-type(3) { top: 80px }

.ting-control p:nth-of-type(4) {
	top: 108px;
	border-radius: 0 0 6px 6px
}

.ting-control:hover p {
	display: block
}

.ting-control p:hover {
	background: #f2f9ff;
	color: #1E9FFF
}

.ting-control.per0 .p0,.ting-control.per2 .p2,.ting-control.per3 .p3,.ting-control.per102 .p4 {
	color: #1E9FFF;
	font-weight: 600;
	background: #f2f9ff
}

/* 速率：慢速/默认/快速 + 步进 */
.ting-spd {
	order: 2;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 12px;
	overflow: visible
}

.ting-spd div {
	display: flex;
	align-items: center;
	gap: 4px;
	width: auto;
	overflow: visible
}

.ting-spd span {
	float: none;
	margin-left: 0;
	height: 24px;
	line-height: 22px;
	padding: 0 9px;
	font-size: 12px;
	color: #333;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: #fff;
	cursor: pointer;
	white-space: nowrap;
	overflow: visible
}

.ting-spd span:hover {
	color: #1E9FFF;
	border-color: #b5d8ff
}

.ting-spd .sno {
	padding: 0;
	border: none;
	background: none;
	color: #888;
	cursor: default
}

.ting-spd .sno:hover {
	color: #888;
	border: none
}

.ting-spd span.cur,
.ting-spd span.cur:hover {
	background: #1E9FFF;
	border-color: #1E9FFF;
	color: #fff
}

.ting-spd .spd-btn span {
	min-width: 20px;
	padding: 0 6px;
	text-align: center
}

.ting-spd .spd-btn .spdjian,
.ting-spd .spd-btn .spdjia {
	font-size: 14px
}

.tingspan {
	position: relative;
	top: -1px;
	text-indent: 0px;
	display: inline-block;
	margin: 0px 10px;
	padding-left: 10px;
	height: 18px;
	line-height: 18px;
	font-size: 12px;
	font-family: '宋体';
	background: url('../images/ting.png') no-repeat 0px 2px;
	background-size: 10px
}

.tingfont {
	display: inline-block;
	cursor: pointer
}

.tingspan i {
	cursor: pointer;
	float: none;
	position: relative;
	display: inline-block;
	padding: 0px 5px;
	height: 10px;
	line-height: 10px;
	border: 1px solid red;
	border-radius: 10px;
	opacity: 0.3;
	color: red;
	text-align: center;
	font-style: normal;
	font-family: '微软雅黑';
	font-size: 12px
}

.tingfont:hover {
	color: red
}

.tingmore {
	display: none;
	position: absolute;
	padding-left: 28px;
	top: -34px;
	left: -10px;
	width: 152px;
	height: 25px;
	border: 1px solid #f0f0f0;
	border-radius: 3px;
	background: url('../images/ting.png') no-repeat 9px 5px #fff;
	background-size: 10px;
	box-shadow: 0 0 10px #AAA;
	z-index: 999999
}

.tingmore s {
	position: absolute;
	left: 10px;
	bottom: -12px;
	opacity: 0.4;
	width: 0;
	height: 0;
	border: 5px solid transparent;
	border-top-color: #999;
	overflow: hidden
}

.tingmore i {
	float: left;
	margin-top: 7px;
	margin-right: 8px;
	border-color: #000;
	color: #000
}

.tingmore .cur {
	border-color: red;
	color: red
}

.tingmore .c {
	position: absolute;
	right: 0;
	width: 25px;
	height: 25px;
	line-height: 25px;
	font-size: 14px;
	margin: 0px;
	padding: 0px;
	border-radius: 0px;
	border: none;
	overflow: hidden
}

.tingmore .c:hover {
	color: red;
	opacity: 1
}

.tingmore.r {
	left: auto;
	right: -10px
}

.tingmore.r s {
	left: auto;
	right: 10px
}

.tingspan.cur .tingmore {
	display: block
}

.tingmore.c s {
	left: 50%
}

.ting-flow {
	display: none;
	position: fixed;
	bottom: 60px;
	width: 150px;
	height: 38px;
	box-shadow: 0 0 5px #f0f0f0;
	border-radius: 38px;
	border: 1px solid #ddd;
	background: #fff;
	z-index: 999999999
}

.ting-flow.play,.ting-flow.pause {
	display: block
}

.ting-flow.red {
	border-color: red
}

.tf-btn {
	float: left;
	width: calc((100% - 40px)/3 - 1px);
	height: 14px;
	margin: 12px 0px;
	border-left: 1px solid #f0f0f0;
	text-indent: -999px;
	background: url('../images/ting-flow.png') no-repeat 7px 0px;
	background-size: 110px;
	cursor: pointer;
	overflow: hidden
}

.tf-btn.i {
	float: left;
	margin: 4px 5px;
	width: 30px;
	height: 30px;
	border-radius: 30px;
	border: none;
	text-indent: 0px;
	background: none;
	overflow: hidden
}

.tf-btn img {
	width: 100%;
	height: 100%
}

.tf-btn.n {
	background-position: -54px 0px
}

.tf-btn.c {
	background-position: -84px 0px
}

.ting-flow.pause .tf-btn.p {
	background-position: -22px 0px
}

.tf-cur {
	position: absolute;
	left: 18px;
	bottom: -1px;
	height: 1px;
	background: red;
	overflow: hidden
}

.jindu {
	float: left;
	margin: -1px 1% 0px 1%;
	width: 98%;
	height: 50px;
	padding-bottom: 3px;
	background: #f9f9f9;
	text-indent: 0px;
	text-align: left;
	border: 1px solid #d9d9d9;
	border-top: none;
	border-radius: 3px;
	overflow: hidden
}

.jindu .jd-t {
	float: left;
	margin-top: 11px;
	width: 80px;
	height: 28px;
	line-height: 1.2em;
	font-size: 12px;
	text-align: center;
	overflow: hidden
}

.jindu .jd-t a,.jindu .jd-t a:hover {
	color: #000;
	text-decoration: none
}

.jindu .jd-box {
	position: relative;
	top: 50%;
	margin-top: -1px;
	float: left;
	width: calc(100% - 115px);
	height: 2px;
	background: #ccc
}

.jindu .jd-line {
	position: relative;
	float: left;
	width: 0px;
	height: 100%;
	background: red
}

.jindu .jd-ico {
	position: absolute;
	top: -5px;
	right: -5px;
	width: 8px;
	height: 8px;
	background: #fff;
	border: 1px solid red;
	border-radius: 50%
}

.jindu .jd-ico span {
	position: relative;
	top: -20px;
	margin-left: -20px;
	float: left;
	width: 52px;
	height: 18px;
	line-height: 18px;
	text-align: center;
	font-weight: bold;
	font-size: 12px;
	color: red;
	overflow: hidden
}

.jindu .jd-pre {
	position: absolute;
	margin-top: 10px;
	width: 50px;
	height: 18px;
	line-height: 18px;
	text-align: center;
	font-size: 12px;
	color: #999
}

.jindu .jd-pre a {
	float: left;
	margin-left: -26px;
	width: 100%;
	height: 100%;
	opacity: 0.6;
	overflow: hidden
}

.jindu .jd-pre a:hover {
	color: red;
	text-decoration: none
}

.jindu .jd-pre font {
	float: left;
	opacity: 0.4;
	margin-top: -3px;
	margin-left: -5px;
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid #999;
	overflow: hidden
}

.jindu .p01 {
	left: 5%
}

.jindu .p02 {
	left: 50%
}

.jindu .p03 {
	left: 80%
}

.jindu .p04 {
	left: 100%
}

.share4xx {
	position: relative;
	padding: 5px 0px;
	float: left;
	width: 100%;
	height: 32px;
	line-height: 32px
}

.share4xx strong {
	font-size: 12px
}

.share4xx strong,.share4xx a {
	float: left;
	height: 100%;
	overflow: hidden
}

.share4xx a {
	width: 32px;
	margin-right: 8px;
	border-radius: 3px;
	cursor: pointer
}

.share4xx .a1 {
	background: url(../images/share.png) no-repeat #7BD172
}

.share4xx .a2 {
	background: url(../images/share.png) no-repeat -44px 0 #FBC440
}

.share4xx .a3 {
	background: url(../images/share.png) no-repeat -88px 0 #FF8D8D
}

.share4xx .a4 {
	background: url(../images/share.png) no-repeat -132px 0 #5FB2D7
}

.share4xx .a5 {
	background: url(../images/share.png) no-repeat -176px 0 #F68575
}

.share4xx .a6 {
	background: url(../images/share.png) no-repeat -220px 0 #95B4EC
}

.share4xx .a7 {
	background: url(../images/share.png) no-repeat -264px 0 #67CE9B
}

.share4xx .ma-img-box {
	display: none;
	position: absolute;
	top: 18px;
	margin-left: 20px;
	width: 80px;
	background: #fff;
	font-size: 12px;
	z-index: 9999999;
	text-align: center;
	line-height: 14px;
	overflow: hidden;
	box-shadow: 0 0 5px rgba(0,0,0,.2)
}

.share4xx .ma-img-box img {
	width: 80px;
	height: 80px
}

.share4xx .ma-close {
	float: left;
	margin-top: 5px;
	width: 100%;
	height: 18px;
	line-height: 18px;
	background: #f0f0f0;
	cursor: pointer;
	overflow-y: hidden
}

.share4xx.cen {
	width: 160px;
	left: 50%;
	margin: 0px 0px 0px -76px;
	padding: 0px 0px 15px 0px
}

.share4xx.cen strong {
	display: none
}

.share4xx.cen .ma-img-box {
	margin-left: -24px
}

#bodybox {

	padding: 20px 0px;
	width: 100%;
	overflow: hidden
}

#bodybox p {
	line-height: 2em;
	padding: 0px;
	padding: 5px 10px;
	text-indent: 2em;
	font-size: 16px
}

#bodybox .cur {
	background: #f0f0f0
}


/* ============ 手机端(wap)适配 ============ */
/* wap 模板无 #bodybox，当前朗读段落高亮作用于正文 <section> 内的 <p> */
#chapterContent p.cur, .jsChapterWrapper p.cur {
	background: #f0f0f0
}

@media (max-width: 768px) {
	.tingplaybox {
		display: none
	}
	.ting-flow {
		display: none !important
	}
}

/* ============ 手机端(wap)听书：悬浮球 + 全屏页 ============ */
.ting-float-wap {
	display: block;
	position: fixed;
	right: 16px;
	bottom: 80px;
	width: 52px;
	height: 52px;
	line-height: 52px;
	text-align: center;
	border-radius: 50%;
	background: rgba(0,0,0,0.55);
	color: #fff;
	font-size: 18px;
	font-family: '微软雅黑', sans-serif;
	z-index: 99999999;
	box-shadow: 0 2px 10px rgba(0,0,0,0.25);
	-webkit-tap-highlight-color: transparent;
	cursor: pointer
}

.ting-page-wap {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #f7f7f7;
	z-index: 100000000;
	overflow: hidden;
	font-family: '微软雅黑', -apple-system, BlinkMacSystemFont, sans-serif
}

.ting-page-wap.show {
	display: block
}

.tpw-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 48px;
	padding: 0 15px;
	background: #fff;
	border-bottom: 1px solid #eee;
	box-sizing: border-box
}

.tpw-back, .tpw-extra {
	font-size: 14px;
	color: #333;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

.tpw-title {
	font-size: 16px;
	color: #111;
	font-weight: 500
}

.tpw-body {
	padding: 20px 20px 30px;
	height: calc(100% - 48px);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	box-sizing: border-box
}

.tpw-cover {
	width: 180px;
	height: 240px;
	margin: 10px auto 18px;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 6px 20px rgba(0,0,0,0.18);
	background: #e0e0e0
}

.tpw-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.tpw-book-title {
	text-align: center;
	font-size: 13px;
	color: #999;
	margin-bottom: 6px
}

.tpw-chapter-title {
	text-align: center;
	font-size: 18px;
	color: #222;
	font-weight: 500;
	margin-bottom: 28px
}

.tpw-tools {
	display: flex;
	justify-content: space-around;
	margin-bottom: 28px
}

.tpw-tool {
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

.tpw-icon {
	width: 26px;
	height: 26px;
	margin-bottom: 6px;
	position: relative;
	box-sizing: border-box
}

/* 时钟图标 */
.tpw-icon-clock {
	border: 2px solid #666;
	border-radius: 50%
}
.tpw-icon-clock:before {
	content: '';
	position: absolute;
	top: 5px;
	left: 11px;
	width: 2px;
	height: 7px;
	background: #666
}
.tpw-icon-clock:after {
	content: '';
	position: absolute;
	top: 9px;
	left: 11px;
	width: 5px;
	height: 2px;
	background: #666
}

/* 声波图标 */
.tpw-icon-voice {
	border: 2px solid #666;
	border-radius: 50% 0 50% 50%;
	transform: rotate(-45deg)
}
.tpw-icon-voice:before {
	content: '';
	position: absolute;
	top: 4px;
	left: 4px;
	width: 10px;
	height: 10px;
	border: 2px solid #666;
	border-radius: 50%;
	border-color: transparent #666 transparent transparent;
	transform: rotate(45deg)
}

/* 语速图标（闪电） */
.tpw-icon-speed {
	width: 0;
	height: 0;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	border-top: 10px solid #666;
	transform: rotate(-30deg);
	margin-top: 6px
}
.tpw-icon-speed:before {
	content: '';
	position: absolute;
	top: -18px;
	left: -3px;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-bottom: 10px solid #666;
	transform: rotate(0deg)
}

/* 书架图标 */
.tpw-icon-shelf {
	border: 2px solid #666;
	border-top: none;
	border-radius: 0 0 3px 3px
}
.tpw-icon-shelf:before {
	content: '';
	position: absolute;
	top: 5px;
	left: 3px;
	width: 16px;
	height: 2px;
	background: #666
}
.tpw-icon-shelf:after {
	content: '';
	position: absolute;
	top: 12px;
	left: 3px;
	width: 16px;
	height: 2px;
	background: #666
}

.tpw-tool span {
	font-size: 12px;
	color: #666
}

.tpw-progress {
	display: flex;
	align-items: center;
	margin-bottom: 22px
}

.tpw-time-cur, .tpw-time-all {
	font-size: 12px;
	color: #999;
	font-family: Arial, sans-serif;
	width: 44px;
	text-align: center
}

.tpw-progress-bar {
	flex: 1;
	height: 3px;
	background: #ddd;
	border-radius: 3px;
	overflow: hidden;
	margin: 0 10px
}

.tpw-progress-cur {
	width: 0%;
	height: 100%;
	background: #1E9FFF;
	transition: width 0.2s linear
}

.tpw-main-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 28px;
	padding: 0 10px
}

.tpw-btn-rewind, .tpw-btn-forward {
	width: 36px;
	height: 36px;
	line-height: 36px;
	border-radius: 50%;
	background: #fff;
	border: 1px solid #e0e0e0;
	text-align: center;
	font-size: 11px;
	color: #666;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

.tpw-btn-prev, .tpw-btn-next {
	font-size: 14px;
	color: #444;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

.tpw-btn-play {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #1E9FFF;
	position: relative;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	box-shadow: 0 4px 14px rgba(30,159,255,0.35)
}

.tpw-btn-play:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 54%;
	transform: translate(-50%, -50%);
	width: 0;
	height: 0;
	border-top: 12px solid transparent;
	border-bottom: 12px solid transparent;
	border-left: 20px solid #fff;
	margin-left: 2px
}

.tpw-btn-play.playing:before {
	left: 50%;
	margin-left: 0;
	width: 6px;
	height: 20px;
	border: none;
	background: #fff;
	box-shadow: 10px 0 0 #fff;
	transform: translate(-70%, -50%)
}

.tpw-bottom-tools {
	display: flex;
	justify-content: space-around;
	padding-top: 20px;
	border-top: 1px solid #eee
}

.tpw-bottom-tool {
	font-size: 14px;
	color: #555;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

/* 弹窗 */
.tpw-picker-mask {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
	z-index: 100000001
}

.tpw-picker-mask.show {
	display: block
}

.tpw-picker {
	display: none;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	background: #fff;
	border-radius: 12px 12px 0 0;
	z-index: 100000002;
	overflow: hidden;
	animation: tpwSlideUp 0.25s ease
}

.tpw-picker.show {
	display: block
}

@keyframes tpwSlideUp {
	from { transform: translateY(100%); }
	to { transform: translateY(0); }
}

.tpw-picker-title {
	height: 46px;
	line-height: 46px;
	text-align: center;
	font-size: 15px;
	color: #333;
	border-bottom: 1px solid #f0f0f0
}

.tpw-picker-list {
	max-height: 260px;
	overflow-y: auto
}

.tpw-picker-item {
	padding: 14px 20px;
	font-size: 15px;
	color: #444;
	text-align: center;
	border-bottom: 1px solid #f5f5f5;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

.tpw-picker-item.cur {
	color: #1E9FFF;
	font-weight: 500
}

.tpw-picker-close {
	padding: 14px 20px;
	text-align: center;
	font-size: 15px;
	color: #999;
	border-top: 6px solid #f5f5f5;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent
}

@media (max-width: 768px) {
	.tingplaybox {
		float: none;
		width: 100%;
		margin: 0;
		border-radius: 0;
		position: relative
	}
	.ting-img, .ting-img img {
		width: 54px;
		height: 54px
	}
	.ting-play {
		top: 14px;
		left: 14px
	}
	.ting-con {
		margin-left: 58px;
		padding: 10px 8px 0;
		height: auto;
		min-height: 54px
	}
	.ting-title {
		margin-right: 0
	}
	.ting-spd {
		position: static;
		width: 100%;
		right: auto;
		top: auto;
		margin-top: 6px
	}
	.ting-autoplay {
		position: static;
		right: auto;
		top: auto;
		width: auto;
		height: auto;
		line-height: 24px;
		margin: 6px 0 0
	}
	.ting-vol {
		position: static;
		right: auto;
		bottom: auto;
		width: 100%;
		height: auto;
		line-height: 28px;
		text-align: left
	}
	.ting-time {
		position: static;
		right: auto;
		bottom: auto;
		width: 100%;
		text-align: right
	}
	.ting-control {
		position: static
	}
	.ting-flow {
		display: none !important
	}
}

/* —— 工具栏精简美化（2.0） —— */
/* 只留静音键，去掉 + / - 音量小按钮 */
.ting-vol .ting-jian,
.ting-vol .ting-jia { display: none }

/* 自动播放开关隐藏（功能保留：cookie 逻辑仍生效） */
.ting-autoplay { display: none }

/* 进度圆点：悬停播放器时才出现，平时不干扰 */
.tingplaybox .ting-ico { opacity: 0; transition: opacity .15s }
.tingplaybox:hover .ting-ico { opacity: 1 }

/* 音色下拉浮层加投影、更立体 */
.ting-control p {
	box-shadow: 0 2px 10px rgba(0,0,0,.12)
}
