#containerarticle, #containerarticle-part {
    min-height: 600px;
}


#containerarticle section, #containerarticle-part section {
    width: 100% !important; 
    box-sizing: border-box;
    padding: 30px!important;
}

#containerarticle article, #containerarticle-part article {
    max-width: 100%;  
    box-sizing: border-box;
    padding: 10px!important;
}

#containerarticle article p, #containerarticle-part article p{
    min-height: 28pt !important; 
    line-height: 28pt !important;
}

/* #containerarticle .docx-wrapper, #containerarticle-part .docx-wrapper{
    padding: 10px !important;
} */

/* PDF预览 */
#viewerContainer-part {
    width: 100%;
   max-width: 100%;
    margin: 0 auto;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 20px 0;
    -webkit-overflow-scrolling: touch;
    user-select: none;
    cursor: grab;
    scrollbar-width: none; 
    -ms-overflow-style: none;
}

#viewerContainer-part::-webkit-scrollbar {
    display: none;
}

#viewerContainer {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 20px 0;
    -webkit-overflow-scrolling: touch;
    user-select: none;
    cursor: grab;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

#viewerContainer::-webkit-scrollbar {
    display: none;
}
    
#viewer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
    width: auto;
    gap: 12px;
}
 
#viewer canvas {
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    border-left: none;
    border-right: none;
    /* border-radius: 8px; */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    background: #f8f9fa;
    transition: transform 0.2s ease;
    flex-shrink: 0;
    max-width: 120%;
}
 

 
/* 移动端适配优化 */
@media (max-width: 768px) {
    #viewerContainer {
        padding: 10px 0;
        margin: 0 10px;
    }
    
    #viewer {
        padding: 0;
        gap: 10px;
    }
 
    #viewer canvas {
        /* border-radius: 6px; */
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
        border-top: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0;
        border-left: none;
        border-right: none;
        max-width: 250%;
        
    }
}
 
@media (max-width: 485px) {
    #viewerContainer {
        margin: 0 5px;
    }
    
    #viewer canvas {
        border-radius: 4px;
    }
}
 
/* 加载状态指示器 */
.loadingIndicator {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 15px 30px;
    background: rgba(0,0,0,0.8);
    color: white;
    border-radius: 20px;
    z-index: 9999;
    display: none;
}
 
/* 错误提示样式 */
.errorWrapper {
    background: #ffe6e6;
    border: 1px solid #ffb3b3;
    padding: 20px;
    margin: 20px auto;
    max-width: 800px;
    border-radius: 8px;
    text-align: center;
}

/* 新的 */
.viewtop {
	background: #fff;
	position: relative;
	z-index: 1;
	height: 228px;
	box-shadow: 0 3px 5px rgba(0, 0, 0, .02);
	margin: 0 0 20px
}

.viewtop .docinfobox {
	padding: 30px 20px 20px 205px;
	box-sizing: border-box
}

.viewtop .docinfobox h2 {
	font-size: 24px;
	font-weight: 800;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap
}

.viewtop .docinfobox .docsummary {
	margin-top: 10px;
	color: #666;
	font-size: 13px
}

span.divider {
	content: "";
	display: inline-block;
	margin: 2px 10px 0;
	width: 1px;
	height: 14px;
	background: #ececec
}

.viewtop .left_cover {
	padding: 5px;
	position: absolute;
	left: 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 126px;
	height: 170px;
	border: 1px solid #e8e8e8
} 

.viewtop .left_cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.viewtop .price {
	font-size: 14px;
	color: #666
}

.mt10 { margin-top:15px !important;}
.f12 { font-size: 12px !important}

.viewtop .f-num {
	font-size: 20px;
	font-style: normal;
    color: #009688!important;
    white-space: nowrap; /* 阻止换行 */  
    overflow: hidden; /* 隐藏溢出内容 */  
    text-overflow: ellipsis; /* 在溢出时显示省略号 */
}

.downbtnbox .downbtn {
	color: #fff;
	padding: 2px 30px;
	margin-right: 15px;
	height: 35px;
	line-height: 35px;
	font-size: 16px;
	border-radius: 30px;
	background: #009688!important;
	display: inline-block;
	text-align: center;
	border: 0 solid #eee; 
    cursor: pointer
}

.icomarker {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	padding: 0 4px;
	background-color: #009688!important;
	border-radius: 5px 0 5px 0;
	font-size: 12px;
	line-height: 18px;
	color: #fff
}

/* @media (min-width: 1024px) 
 {
    #containerarticle article{
        width: 100%;
    } 
} */

/* 响应式设计调整 */  
@media (max-width: 768px) {  
    .viewtop .docinfobox {  
        padding: 20px;  
        padding-left: 140px; /* 减少左内边距以适应小屏幕 */  
    }  
  
    .viewtop .left_cover {  
        left: 20px; /* 调整位置以适应小屏幕 */  
        width: 100px; /* 减小宽度 */  
        height: 130px; /* 减小高度 */  
    }  
  
    .downbtnbox .downbtn {  
        font-size: 14px; /* 减小字体大小 */  
        padding: 5px 20px; /* 减小内边距 */  
        height: 30px; /* 减小高度 */  
        line-height: 30px; /* 调整行高 */  
    }

    #containerarticle section, #containerarticle-part section {
        width: 100% !important; 
        box-sizing: border-box;
        padding: 5px !important;
    }
    
    #containerarticle article, #containerarticle-part article {
        max-width: 100%;  
        box-sizing: border-box;
        padding: 5px !important;
    }
    
    #containerarticle article p, #containerarticle-part article p{
        min-height: 28pt !important; 
        line-height: 28pt !important;
    }
}  
  
@media (max-width: 485px) {  
    .viewtop .docinfobox {  
        padding: 15px;  
        padding-left: 110px; /* 进一步减少左内边距 */  
    }  
  
    .viewtop .left_cover {  
        left: 10px; /* 进一步调整位置 */  
        width: 80px; /* 进一步减小宽度 */  
        height: 100px; /* 进一步减小高度 */  
    }  
  
    .downbtnbox .downbtn {  
        font-size: 12px; /* 进一步减小字体大小 */  
        padding: 5px 5px; /* 进一步减小内边距 */  
        height: 25px; /* 进一步减小高度 */  
        line-height: 25px; /* 进一步调整行高 */  
    }

    .viewtop .f-num {
        font-size: 15px;
        font-style: normal;
        color: #009688!important;
        white-space: nowrap; /* 阻止换行 */  
        overflow: hidden; /* 隐藏溢出内容 */  
        text-overflow: ellipsis; /* 在溢出时显示省略号 */
    }

    #containerarticle section, #containerarticle-part section {
        width: 100% !important; 
        box-sizing: border-box;
        padding: 5px!important;
    }
    
    #containerarticle article, #containerarticle-part article {
        max-width: 100%;  
        box-sizing: border-box;
        padding: 5px!important;
    }
    
    #containerarticle article p, #containerarticle-part article p{
        min-height: 28pt !important; 
        line-height: 28pt !important;
    }
}


/* 旧的 */
/* .ybspaidreading-frames{
    display: block; 
    overflow: hidden;  
    align-items: center;
    justify-content: space-between;
    padding: 10px !important;  
    margin: 10px 0 !important;  
    background-color: #f8fafc;  
    border: 1px solid #e6ecf2;  
    border-radius: 5px;  
    line-height: 100% !important;  
    box-shadow: 0 0 1px #ddd;  
    clear: both; 
}

.download-info {  
    text-align: left; 
    margin: 0 0 10px 0;
    font-size: 13px;
}

.ybspaidreading-frames::after {
    clear: both;  
    display: table;  
    content: " ";
} */

/* .ybspaidreading-wordimage{
    display: inline-block !important;  
    height: 45px;  
    width: 45px;  
    line-height: 45px !important;  
    margin: 0 10px 0 0 !important;  
    background-repeat: no-repeat;  
    background-position: top center;  
    background-size: contain; 
    background-image: url(./word.png);
    border-radius: 3px;  
    border: 0;  
    padding: 0;
}

.ybspaidreading-prompt{
    display: inline-block !important;  
    overflow: hidden;  
    width: calc(100% - 50px - 150px);  
    margin: 0 !important;
    height: 45px;  
    line-height: 45px !important;
    color: rgb(27, 100, 145);
    font-size: 20px;
}

.download-link {
    display: inline-block !important;  
    border: 0;  
    padding: 0 25px !important;  
    font-size: 13px !important;  
    background-color: #1296db;  
    color: #fff !important;  
    cursor: pointer;  
    height: 35px !important;  
    line-height: 35px !important;  
    border-radius: 5px;  
    margin: 0 !important;  
    user-select: none;
}

.download-links {
    display: inline-block !important;  
    border: 0;  
    padding: 0 25px !important;  
    font-size: 13px !important;  
    background-color: #1296db;  
    color: #fff !important;  
    cursor: pointer;  
    height: 35px !important;  
    line-height: 35px !important;  
    border-radius: 5px;  
    margin: 0 !important;  
    user-select: none;
}


.ybspaidreading-frame{
    
    background:#fefefe;
    border:1px solid #00a0e8;
    border-radius:4px;
    padding:20px 10px;
    text-align:center;
    position:relative;
    margin: 10px;
}

.ybspaidreading-frame .notice {  
    position: absolute;  
    top: 0;  
    left: 0;  
    padding: 2px ; 
    background-color: orange;
    color: white; 
    font-weight: bold;  
    z-index: 10;
    font-size: 0.8em;
}  

.ybspaidreading-frame .payment-notice {
    margin-top: 40px;  
    margin-bottom: 10px;  
}

.ybspaidreading-frame .upgrade-notice {
    margin-top: 10px;
}

.ybspaidreading-frame .price-box {  
    display: inline-block; 
    padding: 2px 20px;
    background-color: white; 
    border: 1px solid orange; 
    border-radius: 20px;
    font-size: 13px;
}  

.ybspaidreading-frame .price-value {  
    color: orange;
    font-size: 13px;
    font-weight: bold; 
    line-height: 1.2; 
}

.ybspaidreading-frame .button-container {  
    display: flex;  
    justify-content: center;  
    align-items: center;  
    gap: 10px;
}  

.ybspaidreading-frame span{
    color:#ffffff;
    font-weight:bold;
}
#ybspaidreading-button{
    background:#00a0e8;  
    color: #fff;  
    padding: 10px;  
    cursor: pointer;  
    font-size: 14px;  
    border-radius: 4px;  
    text-align: center; 
    margin-top: 20px;
    margin-right: 20px;
    margin-left: 20px;
}
#ybspaidreading-button:hover{background:#02aefe} */

/* #ybspaidreading-upgradebutton{
    background:#25b437;  
    color: #fff;  
    padding: 10px;  
    cursor: pointer;  
    font-size: 14px;  
    border-radius: 4px;  
    text-align: center; 
    margin-top: 20px;
    margin-right: 20px;
}

#ybspaidreading-upgradebutton:hover{background:#18cf31} */


/* 支付宝样式 */
.ybspaidreading-warning{
    display:none;
    position:fixed;
    top:100px;
    left:0;
    right:0;
    z-index:9999;
    width: 180px;
    margin: 0 auto;
    background: rgba(218, 70, 70, 0.8);
    text-align: center;
    padding: 10px;
    border-radius: 4px;
    color: #fff;
    font-size:14px
}
.ybspaidreading-bodybg{
    display:none;
    background:rgb(0 0 0 / 50%);
    width:100%;
    height:100%;
    left:0;
    top:0;
    z-index:9990;
    position:fixed;
}
.ybspaidreading-alipay-wrap{
    display:none;
    width:350px;
    height:420px;
    background:#fff;
    position:fixed;
    z-index:99999;
    top:100px;
    left:0;
    right:0;
    margin:0 auto;
    border-radius:6px;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content{
    position:relative;
    padding:10px;
    height:100%
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-close{
    cursor:pointer;
    position:absolute;
    top:5px;
    right:5px;
    width:26px;
    height:26px;
    background-image: none;
    display: flex;
    justify-content: center; 
    align-items: center;
    color: #050505;
    font-size: 20px;
    line-height: 26px;
    text-align: center;
    border-radius: 50%;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-close::before {
    content:'×';
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-ico{
    width:160px;
    height:40px;
    background:url(alipay.png) no-repeat;
    background-size:cover;
    margin:10px auto 0;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-title{
    font-weight:bold;
    font-size:24px;
    color:#000;
    text-align:center;
    padding:20px 0;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-title span{
    color:#f80303;
    padding:0 tpx;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-qrcode{
    background:#fff;
    width:200px;
    height:200px;
    border:1px solid #ccc;
    border-radius:6px;
    margin:0 auto;
    padding:10px;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-jump{
    display:block;
    width:200px;
    height:48px;
    line-height:48px;
    margin:15px auto 5px;
    background:#00a0e8;
    color:#fff !important;
    text-align:center;
    font-size:17px;
    font-weight:bold;
    border-radius:6px;
    cursor:pointer;
    user-select:none;
    -webkit-user-select:none
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-jump:active{
    opacity:.85
}
/*前台双支付按钮：支付宝蓝/微信绿，两钮并排*/
.downbtnbox .downbtn.downbtn-ali{
    background:#1677ff !important;
    margin-right:8px
}
.downbtnbox .downbtn.downbtn-wx{
    background:#09bb07 !important;
    margin-left:8px
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-qrcode canvas{
    width:100%;
    height:100%;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-tip{
    color:#fff;
    font-size:18px;
    margin:10px auto;
    text-align:center;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-tip a{
    color:#ff0000;
    text-align:center;
    display:block;
    padding:5px 0;
}
.ybspaidreading-alipay-wrap .ybspaidreading-alipay-content .ybspaidreading-alipay-bg{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    width:100%;
    height:160px;
    background:#00a0e8;
    z-index:-1
}

/*PDF预览文本层：透明文字叠加在canvas上方，支持选中复制（文字透明、选中高亮）*/
.ybs-pdf-pagewrap{
    position:relative;
    display:inline-block;
    vertical-align:top
}
.ybs-pdf-pagewrap canvas{
    display:block;
    max-width:none !important;
    width:auto !important;
    height:auto !important
}
.ybs-pdf-pagewrap .textLayer{
    position:absolute;
    left:0;
    top:0;
    overflow:hidden;
    line-height:1;
    text-size-adjust:none;
    forced-color-adjust:none;
    transform-origin:0 0;
    z-index:2
}
.ybs-pdf-pagewrap .textLayer span,
.ybs-pdf-pagewrap .textLayer br{
    color:transparent;
    position:absolute;
    white-space:pre;
    cursor:text;
    transform-origin:0% 0%;
    user-select:text;
    -webkit-user-select:text;
    -moz-user-select:text;
    -ms-user-select:text
}
.ybs-pdf-pagewrap .textLayer span::selection{
    background:rgba(0,120,255,.35)
}
.ybs-pdf-pagewrap .textLayer ::selection{
    background:rgba(0,120,255,.35)
}
/* ===== 内置会员购买框（flex布局：三档按钮稳定一行，窄屏自动等宽） ===== */
.ybs-vipbox{
    margin-top:14px;
    padding:12px 14px;
    border-top:1px dashed #e3e5e8;
    text-align:center;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    gap:6px;
}
.ybs-vipstate{
    flex:1 1 100%;
    font-size:13px;
    color:#8a6d1a;
    background:#fdf6e3;
    border:1px solid #f0dfa8;
    border-radius:6px;
    padding:6px 10px;
}
.ybs-vipbtn{
    flex:1 1 30%;
    max-width:170px;
    padding:9px 8px;
    border-radius:18px;
    font-size:14px;
    cursor:pointer;
    color:#7a4f0b;
    background:linear-gradient(135deg,#ffe7b8,#ffd77e);
    border:1px solid #f2c35c;
    box-sizing:border-box;
    transition:transform .1s, box-shadow .15s;
}
.ybs-vipbtn:hover{
    transform:translateY(-1px);
    box-shadow:0 3px 10px rgba(240,195,92,.5);
}
.ybs-vip-year{
    color:#5b3d00;
    background:linear-gradient(135deg,#ffd28a,#ffb84d);
    border-color:#e8a23c;
}
.ybs-viplogin{
    font-size:13px;
    color:#2f6bff;
    border:1px dashed #b9cbff;
    border-radius:6px;
    padding:6px 12px;
    text-decoration:none;
}
.ybs-viplogin:hover{
    background:#f0f6ff;
}

/* ===== 移动端会员框适配 ===== */
@media (max-width: 700px){
    .ybs-vipbox{
        padding:8px 6px;
        margin-top:10px;
        gap:5px;
    }
    .ybs-vipstate{
        font-size:12px;
        padding:5px 8px;
    }
    .ybs-vipbtn{
        padding:8px 4px;
        font-size:12.5px;
        border-radius:14px;
        max-width:none;
    }
    .ybs-viplogin{
        font-size:12px;
        padding:5px 10px;
    }
}
