/**
 * dianzishu.net 笔趣阁式布局（参考 52xbq 结构，独立样式与品牌）
 */
.theme-biquge {
    --bq-red: #df4343;
    --bq-red2: #e70012;
    --bq-nav: #494a4e;
    --bq-nav-hover: #000;
    --bq-muted: #9fa0a0;
    --bq-ink: #313334;
    --bq-width: 1200px;
    --accent: #df4343;
    --accent-soft: #fff5f5;
    --main: #df4343;
    --bg: #fff;
    --border: #e4e4e4;
}

.theme-biquge,
.theme-biquge body {
    margin: 0;
    padding: 0;
    font-family: "宋体", SimSun, "PingFang SC", serif;
    font-size: 14px;
    color: #000;
    background: #fff;
}

.theme-biquge a {
    color: #000;
    text-decoration: none;
}

.theme-biquge a:hover {
    color: var(--bq-red);
}

/* 顶栏导航：不受全站 a:hover 影响，悬停整块纯黑 */
.theme-biquge .bq-nav-one li:hover,
.theme-biquge .bq-nav-one li:focus-within,
.theme-biquge .bq-nav-two:hover {
    background-color: #000;
}

.theme-biquge .bq-nav-one a,
.theme-biquge .bq-nav-one a:hover,
.theme-biquge .bq-nav-one a:focus,
.theme-biquge .bq-nav-two-a,
.theme-biquge .bq-nav-two-a:hover,
.theme-biquge .bq-nav-two-a:focus {
    color: #fff;
    background: transparent;
}

.theme-biquge ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.theme-biquge .skip-link {
    position: absolute;
    left: -9999px;
}

.theme-biquge .skip-link:focus {
    left: 8px;
    top: 8px;
    z-index: 999;
    background: #000;
    color: #fff;
    padding: 6px 10px;
}

.theme-biquge .header,
.theme-biquge .main-nav,
.theme-biquge .mag-header,
.theme-biquge .mag-nav {
    display: none !important;
}

/* 顶栏 */
.bq-head {
    width: var(--bq-width);
    max-width: 100%;
    margin: 0 auto;
}

.bq-logo-find {
    width: 100%;
    margin: 0 auto;
    min-height: 68px;
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    box-sizing: border-box;
}

.bq-head-logo {
    flex: 0 0 auto;
    height: auto;
    float: none;
}

.bq-logo {
    display: block;
    text-decoration: none;
    line-height: 1.1;
    white-space: nowrap;
}

.bq-logo-cn {
    display: block;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: 0.08em;
    color: var(--bq-ink, #111);
    font-family: "Microsoft YaHei", "SimHei", sans-serif;
}

.bq-logo-cn span {
    color: var(--bq-red);
}

.bq-logo-pinyin {
    display: block;
    margin-top: 3px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--bq-muted);
    font-family: Georgia, "Times New Roman", "Songti SC", serif;
    text-transform: none;
}

.bq-logo-pinyin span {
    color: var(--bq-red);
}

.bq-head-right {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: auto;
    flex: 0 0 auto;
}

.bq-find {
    flex: 0 0 auto;
    height: auto;
    float: none;
    display: block;
    min-width: 0;
}

.bq-find form {
    display: flex;
    align-items: stretch;
    height: 34px;
    width: 220px;
    max-width: 100%;
    border: 1px solid #4b4b4b;
    margin: 0;
    box-sizing: border-box;
    background: #fff;
}

.bq-searchinput {
    border: 0;
    flex: 1 1 auto;
    min-width: 0;
    height: auto;
    padding: 0 8px;
    color: var(--bq-muted);
    font-size: 13px;
    outline: none;
    box-sizing: border-box;
    background: transparent;
}

.bq-searchgo {
    width: 34px;
    height: auto;
    flex-shrink: 0;
    border: 0;
    border-left: 1px solid #4b4b4b;
    background: #333 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3-3'/%3E%3C/svg%3E") center/16px no-repeat;
    cursor: pointer;
}

.bq-logo-mark {
    flex: 0 0 auto;
    height: auto;
    float: none;
    width: auto;
}

.bq-logo-mark a {
    border: 1px solid #e6e6e6;
    width: 100px;
    height: 34px;
    display: inline-block;
    margin: 0;
    float: none;
    text-align: center;
    line-height: 34px;
    font-family: "Microsoft YaHei", sans-serif;
    box-sizing: border-box;
}

.bq-logo-mark i {
    font-style: normal;
    font-size: 15px;
}

.bq-nav {
    height: 48px;
    background: var(--bq-nav);
    font-family: "Microsoft YaHei", sans-serif;
    margin-top: 0;
    text-align: center;
    clear: both;
}

.bq-nav-all {
    width: var(--bq-width);
    height: 48px;
    margin: 0 auto;
    overflow: hidden;
}

.bq-nav-one {
    display: flex;
    width: 100%;
    height: 100%;
    float: none;
    margin: 0;
    padding: 0;
    list-style: none;
}

.bq-nav-one li {
    flex: 1 1 0;
    float: none;
    width: auto;
    min-width: 0;
    height: 100%;
    padding: 0;
    margin: 0;
    text-align: center;
    box-sizing: border-box;
}

.bq-nav-one li:hover,
.bq-nav-two:hover {
    background-color: #000;
}

.bq-nav-one a,
.bq-nav-two-a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 15px;
    white-space: nowrap;
    text-decoration: none;
}

.bq-nav-two {
    width: 109px;
    float: left;
    height: 35px;
    padding-top: 13px;
}

/* 区块标题 */
.bq-border-head,
.bq-border-head1 {
    border-bottom: 1px solid var(--bq-ink);
    overflow: hidden;
    margin-bottom: 8px;
}

.bq-border-head strong,
.bq-border-head1 strong {
    font-size: 18px;
    font-weight: bold;
    display: inline-flex;
    align-items: center;
    margin: 0 0 5px;
    font-family: "Microsoft YaHei", sans-serif;
}

/* 首页区块标题 — 金色小图标 */
.bq-tou-right .bq-border-head strong::before,
.bq-tou-left .bq-border-head1 strong::before,
.bq-shoucang .bq-border-head strong::before,
.bq-update .bq-border-head strong::before,
.bq-fenlei .bq-list h2::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 7px;
    flex-shrink: 0;
    background: center / contain no-repeat;
}

.bq-tou-right .bq-border-head strong::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M8 1.2l1.8 3.6 4 0.6-2.9 2.8 0.7 4L8 10.8 4.4 12.2l0.7-4L2.2 5.4l4-0.6z'/%3E%3C/svg%3E");
}

.bq-tou-left .bq-border-head1 strong::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M8 1.5c0.2 2.8 2.5 5.1 5.3 5.3-2.8 0.2-5.1 2.5-5.3 5.3-0.2-2.8-2.5-5.1-5.3-5.3 2.8-0.2 5.1-2.5 5.3-5.3z'/%3E%3C/svg%3E");
}

.bq-shoucang .bq-border-head strong::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M3 2h10v12l-5-3.2L3 14V2z'/%3E%3C/svg%3E");
}

.bq-update .bq-border-head strong::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M8 2a6 6 0 1 1-4.2 10.2l0.8-0.8A4.8 4.8 0 1 0 8 3.2V6l3.5-3.5L8 0v2z'/%3E%3C/svg%3E");
}

.bq-fenlei .bq-list h2 {
    display: inline-flex;
    align-items: center;
}

.bq-fenlei .bq-list h2::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23d4af37' d='M2 2h5v5H2V2zm7 0h5v5H9V2zM2 9h5v5H2V9zm7 3.5a2.5 2.5 0 1 1 5 0a2.5 2.5 0 0 1-5 0z'/%3E%3C/svg%3E");
}

.bq-border-head1 {
    width: 74%;
    float: left;
}

.bq-seo-h1 {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* 首页上部 */
.bq-tou {
    width: var(--bq-width);
    margin: 20px auto 0;
    overflow: hidden;
}

.bq-tou-right {
    width: 24%;
    float: right;
}

.bq-tou-left {
    width: 74%;
    float: left;
}

.bq-tuijian-one {
    margin-top: 25px;
    overflow: hidden;
}

.bq-xuhao1 {
    display: inline-block;
    width: 16px;
    height: 17px;
    background: var(--bq-red);
    border-radius: 8px;
    color: #fff;
    text-align: center;
    font-size: 12px;
    float: left;
}

.bq-xuhao {
    display: inline-block;
    width: 16px;
    height: 17px;
    background: #4b4b4b;
    border-radius: 8px;
    color: #fff;
    text-align: center;
    font-size: 12px;
    float: left;
}

.bq-xuhao1-name {
    width: calc(100% - 22px);
    font-size: 14px;
    font-weight: bold;
    float: left;
    margin-left: 4px;
}

.bq-tuijian-one img {
    float: left;
    margin: 7px 5px;
    object-fit: cover;
}

.bq-zuozhe {
    margin: 10px 5px 3px;
    font-size: 12px;
    clear: both;
}

.bq-tuijian-intro {
    font-size: 12px;
    color: var(--bq-muted);
    line-height: 150%;
    margin: 0 5px;
}

.bq-rank-list li {
    width: 100%;
    margin-top: 15px;
    overflow: hidden;
    font-family: "Microsoft YaHei", sans-serif;
}

.bq-rank-list a {
    font-size: 13px;
    width: 70%;
    float: left;
}

.bq-rank-list span {
    font-size: 12px;
    color: var(--bq-muted);
    float: right;
    width: 28%;
    text-align: right;
}

.bq-tou-left-head {
    float: left;
    width: 100%;
    margin-top: 25px;
    overflow: hidden;
}

.bq-tou-left-head li {
    width: 25%;
    float: left;
    text-align: center;
}

.bq-tou-left-head img {
    display: block;
    margin: 0 auto 10px;
    object-fit: cover;
}

.bq-tou-left-head-name {
    font-size: 14px;
    font-weight: bold;
    color: #333;
    display: block;
}

.bq-tou-left-head-author {
    font-size: 12px;
    color: var(--bq-muted);
    display: block;
}

.bq-tou-left-down {
    width: 100%;
    margin-top: 30px;
    overflow: hidden;
    font-family: "Microsoft YaHei", sans-serif;
}

.bq-tou-left-down li {
    width: calc(33.3% - 10px);
    float: left;
    height: 35px;
    margin-left: 10px;
}

.bq-shortname {
    color: var(--bq-red);
}

.bq-tou-left-down span {
    font-size: 12px;
    color: var(--bq-muted);
}

/* 分类区 */
.bq-fenlei,
.bq-shoucang {
    width: var(--bq-width);
    margin: 10px auto 0;
    overflow: hidden;
}

.bq-fenlei-body {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 16px;
    clear: both;
}

.bq-genre-grid {
    flex: 1 1 0;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px 20px;
}

.bq-genre-grid .bq-list {
    width: auto;
    float: none;
    margin-top: 0;
    min-width: 0;
}

.bq-genre-grid .bq-list h2 {
    width: auto;
    float: none;
    max-width: calc(100% - 3.5em);
}

.bq-genre-grid .bq-gengduo {
    width: auto;
    float: right;
}

.bq-danben {
    width: calc(20% - 8px);
    flex: 0 0 calc(20% - 8px);
    float: none;
    background: #efefef;
    margin: 20px 0 0;
    min-height: 400px;
    padding-bottom: 15px;
    box-sizing: border-box;
}

.bq-danben-right {
    float: right;
}

.bq-danben-img {
    display: block;
    text-align: center;
}

.bq-danben img {
    display: inline-block;
    margin: 30px auto 10px;
    object-fit: cover;
}

.bq-danben h2 {
    margin: 0;
    text-align: center;
    font-size: 16px;
}

.bq-danben h2 a {
    color: var(--bq-muted);
}

.bq-danben-p1 {
    width: 100%;
    text-align: center;
    color: var(--bq-muted);
    font-size: 12px;
}

.bq-danben-p2 {
    margin: 10px 15px;
    line-height: 200%;
    color: var(--bq-muted);
    font-size: 12px;
}

.bq-danben-p3 {
    display: block;
    width: 72px;
    background: var(--bq-red);
    color: #fff !important;
    padding: 4px;
    font-size: 14px;
    font-weight: bold;
    margin: 10px auto 20px;
    text-align: center;
}

.bq-list {
    width: 20%;
    float: right;
    margin-top: 20px;
    font-family: "Microsoft YaHei", sans-serif;
}

.bq-list-wide {
    width: calc(80% - 30px);
    float: left;
    margin-left: 20px;
}

.bq-list h2 {
    font-size: 16px;
    font-weight: bold;
    width: 70%;
    float: left;
    margin: 0;
}

.bq-gengduo {
    display: inline-block;
    width: 30%;
    text-align: center;
    font-size: 12px;
    color: #636668;
}

.bq-list ul {
    margin-top: 20px;
    clear: both;
}

.bq-list li {
    width: 100%;
    line-height: 30px;
}

.bq-list-1 a {
    color: #bf2c24;
    font-size: 14px;
}

.bq-list-1 span {
    color: #bf2c24;
    font-size: 12px;
}

.bq-list-2 a {
    color: #333;
    font-size: 14px;
}

.bq-list-2 span {
    color: var(--bq-muted);
    font-size: 12px;
}

.bq-shoucang {
    margin-top: 17px;
}

/* 最近更新 */
.bq-update {
    width: var(--bq-width);
    margin: 15px auto 20px;
}

.bq-lastupdate {
    border-bottom: 1px solid var(--bq-ink);
    margin-bottom: 5px;
    overflow: hidden;
}

.bq-lastupdate li {
    width: 100%;
    float: left;
    font-size: 14px;
    overflow: hidden;
}

.bq-fen {
    font-weight: bold;
    margin-top: 10px;
}

.bq-lastupdate span {
    line-height: 40px;
    float: left;
}

.bq-lei {
    width: calc(13% - 5px);
    margin-left: 5px;
}

.bq-name {
    width: 27%;
}

.bq-jie {
    width: 35%;
}

.bq-zuo {
    width: 15%;
}

.bq-time {
    width: 10%;
    text-align: center;
}

/* 页脚 */
.bq-footer {
    background: #e5e5e5;
    text-align: center;
    padding: 40px 0;
    line-height: 200%;
    color: var(--bq-ink);
    font-size: 12px;
    margin-top: 25px;
    font-family: "Microsoft YaHei", sans-serif;
}

.bq-friend {
    width: var(--bq-width);
    margin: 0 auto 20px;
    text-align: left;
}

.bq-urls {
    border: 1px solid #e8e8e8;
    padding: 16px;
    background: #fff;
}

.bq-urls a {
    margin-right: 15px;
    font-size: 12px;
    color: #666;
}

.theme-biquge .site-footer {
    background: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    color: inherit;
}

.theme-biquge .site-footer-nav a {
    color: #444;
    padding: 4px 8px;
}

.theme-biquge .site-footer-nav a:hover {
    color: var(--bq-red);
    background: transparent;
}

.theme-biquge .site-footer-copy {
    color: var(--bq-ink);
    font-size: 12px;
}

/* 内页：列表/详情/阅读 笔趣阁化 */
.theme-biquge .main-container,
.theme-biquge .site-wrap,
.theme-biquge #page-main.site-wrap {
    max-width: var(--bq-width);
    margin: 15px auto;
    padding: 0 10px;
    font-family: "Microsoft YaHei", sans-serif;
}

.theme-biquge .site-mini-hero,
.theme-biquge .novel-info-hero {
    border: 1px solid var(--border);
    padding: 16px 20px;
    margin-bottom: 16px;
    background: #fafafa;
}

.theme-biquge .site-mini-hero-title,
.theme-biquge .novel-info-hero-title {
    font-size: 20px;
    color: var(--bq-ink);
    font-weight: bold;
}

.theme-biquge .novel-info-hero-btn,
.theme-biquge .site-panel {
    border-color: var(--border);
}

.theme-biquge .novel-info-hero-btn {
    border: 1px solid var(--bq-red2);
    color: var(--bq-red2);
    background: #fff;
}

.theme-biquge .novel-row-title a:hover,
.theme-biquge .site-mini-hero-bread a:hover {
    color: var(--bq-red);
}

.theme-biquge .read-page {
    background: #fff;
}

.theme-biquge .read-hero {
    border-bottom: 1px solid var(--bq-ink);
    background: #fafafa;
}

.theme-biquge .read-hero-title {
    font-size: 22px;
    font-weight: bold;
    color: var(--bq-ink);
}

.theme-biquge .read-content {
    font-size: 18px;
    line-height: 1.9;
    padding: 24px 16px;
    max-width: 900px;
    margin: 0 auto;
    font-family: "宋体", SimSun, serif;
}

.theme-biquge .read-actions a {
    border: 1px solid var(--bq-red2);
    color: var(--bq-red2);
    padding: 8px 20px;
    margin: 0 6px;
}

@media (max-width: 1240px) {
    .bq-head,
    .bq-logo-find,
    .bq-nav-all,
    .bq-tou,
    .bq-fenlei,
    .bq-shoucang,
    .bq-update,
    .bq-friend {
        width: 96%;
    }

    .bq-list {
        width: 48%;
        margin-bottom: 16px;
    }

    .bq-danben {
        width: 100%;
        flex: 1 1 100%;
        float: none;
        min-height: 0;
    }

    .bq-genre-grid {
        flex: 1 1 100%;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px 16px;
    }

    .bq-tou-left,
    .bq-tou-right {
        width: 100%;
        float: none;
    }

    .bq-border-head1 {
        width: 100%;
    }

    .bq-logo-find {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 12px;
        padding: 12px 0;
    }

    .bq-head-right {
        order: 2;
        width: 100%;
        justify-content: stretch;
        margin-left: 0;
        gap: 8px;
    }

    .bq-find {
        flex: 1 1 auto;
        min-width: 0;
    }

    .bq-find form {
        width: 100%;
        max-width: none;
    }

    .bq-head-logo {
        order: 1;
        width: 100%;
        text-align: center;
    }

    .bq-head-logo .bq-logo {
        display: inline-block;
        text-align: center;
    }

    .bq-logo-cn,
    .bq-logo-pinyin {
        text-align: center;
    }
}

/* 平板 / 手机 */
@media (max-width: 768px) {
    .bq-head {
        --bq-mobile-gutter: 12px;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        padding: 0 var(--bq-mobile-gutter);
        box-sizing: border-box;
    }

    .bq-logo-find,
    .bq-nav-all {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .bq-logo-find {
        padding: 12px 0 10px;
        gap: 10px;
    }

    .bq-head-right {
        width: 100%;
        align-items: stretch;
    }

    .bq-find form {
        height: 40px;
    }

    .bq-logo-mark a {
        height: 40px;
        line-height: 38px;
        flex-shrink: 0;
    }

    .bq-nav {
        width: 100%;
        height: auto;
        min-height: 44px;
        margin-left: 0;
        margin-right: 0;
        box-sizing: border-box;
    }

    .bq-logo-cn {
        font-size: 22px;
    }

    .bq-logo-pinyin {
        font-size: 12px;
        letter-spacing: 0.12em;
    }

    .bq-nav-all {
        height: auto;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .bq-nav-all::-webkit-scrollbar {
        display: none;
    }

    .bq-nav-one {
        width: max-content;
        min-width: 100%;
        height: 44px;
    }

    .bq-nav-one li {
        flex: 0 0 auto;
        min-width: 4.5em;
        padding: 0 4px;
    }

    .bq-nav-one a,
    .bq-nav-two-a {
        font-size: 13px;
        padding: 0 6px;
    }

    .bq-border-head strong,
    .bq-border-head1 strong,
    .bq-fenlei .bq-list h2 {
        font-size: 16px;
    }

    .bq-tou-right .bq-border-head strong::before,
    .bq-tou-left .bq-border-head1 strong::before,
    .bq-shoucang .bq-border-head strong::before,
    .bq-update .bq-border-head strong::before,
    .bq-fenlei .bq-list h2::before {
        width: 14px;
        height: 14px;
        margin-right: 5px;
    }

    .bq-tou-left-head li {
        width: 50%;
        margin-bottom: 16px;
    }

    .bq-tou-left-down li {
        width: 100%;
        float: none;
        margin-left: 0;
        height: auto;
        min-height: 32px;
        line-height: 32px;
    }

    .bq-list {
        width: 100%;
        float: none;
    }

    .bq-genre-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px 14px;
    }

    .bq-genre-grid .bq-list h2 {
        font-size: 15px;
        max-width: calc(100% - 3em);
    }

    .bq-list-wide {
        width: 100%;
        margin-left: 0;
        float: none;
    }

    .bq-list h2 {
        width: auto;
        float: none;
        max-width: calc(100% - 4em);
    }

    .bq-gengduo {
        width: auto;
        float: right;
        min-height: 44px;
        line-height: 44px;
        padding: 0 4px;
    }

    .bq-lastupdate .bq-jie,
    .bq-lastupdate .bq-zuo {
        display: none;
    }

    .bq-lei {
        width: 22%;
    }

    .bq-name {
        width: 48%;
    }

    .bq-time {
        width: 22%;
    }

    .bq-lastupdate span {
        line-height: 36px;
        font-size: 13px;
    }

    .theme-biquge .read-content {
        font-size: clamp(16px, 4.2vw, 18px);
        padding: 16px 12px;
        line-height: 1.85;
    }

    .theme-biquge .read-actions a {
        display: inline-block;
        min-height: 44px;
        line-height: 28px;
        margin: 4px;
    }
}

/* 小屏手机 */
@media (max-width: 480px) {
    .bq-head {
        --bq-mobile-gutter: 10px;
    }

    .bq-logo-find {
        padding: 10px 0 8px;
    }

    .bq-logo-mark a {
        width: 84px;
        font-size: 13px;
    }

    .bq-genre-grid {
        grid-template-columns: 1fr;
    }

    .bq-tou-left-head li {
        width: 100%;
    }

    .bq-tuijian-one img {
        width: 72px !important;
        height: auto !important;
    }

    .bq-rank-list a {
        width: 62%;
    }

    .bq-rank-list span {
        width: 36%;
    }

    .bq-lei {
        width: 26%;
        font-size: 11px;
    }

    .bq-name {
        width: 46%;
    }

    .bq-time {
        width: 24%;
        font-size: 11px;
    }
}
