body {
    font-family: "Microsoft JhengHei", "Microsoft YaHei", -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    background: #F2E8D7;
    height: 100vh;
    overflow: hidden;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
}
.navbar-custom {
    background: linear-gradient(to bottom, rgba(0,0,0,.3), rgba(0,0,0,0));
    z-index: 1000;
}

.navbar-custom .navbar-brand,
.navbar-custom .navbar-nav .nav-link {
    color: rgba(255,255,255,.8) !important;
}

.navbar-custom .navbar-nav .nav-link:hover {
    color: #fff !important;
}

.main-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    text-align: center;
}

/* 分类链接样式 */
.category-links a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    font-size: 1.1rem;
    margin: 0 15px;
    padding: 5px 10px;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
}

.category-links a:hover {
    color: white;
}

.category-links a.active {
    color: white;
    border-bottom-color: white;
}

.search-section {
    margin-top: 20px;
    width: 100%;
    max-width: 600px;
}

.search-input-group {
    width: 100%;
}

/* 搜索框样式 */
.search-input-group input {
    border: none;
    border-radius: 50px;
    padding: 25px 20px;
    font-size: 1rem;
    background-color: rgba(255, 255, 255, 0.9);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
.search-input-group input::placeholder {
    color: rgba(0, 0, 0, 0.5);
}

.copyright {
    z-index: 2;
    margin-top: auto;
    width: 100%;
    text-align: center;
    padding: 10px 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.3));
    color: rgba(255,255,255,.8);
}
.copyright a {
    color: rgba(255,255,255,.8);
}
.copyright a:hover {
    color: #fff;
}

/*详细*/
.poetry-box {
    z-index: 3;
    color: #5A4F3D;
    width: 1200px;
    height: 730px;
    padding-left: 80px;
    padding-right: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    overflow-y: auto;
    position: relative;
    /*
        backdrop-filter: blur(10px);
        background-color: rgba(218, 201, 175, 0.35);
        backdrop-filter: blur(10px);
        border-top-right-radius: 5px;
        border-bottom-right-radius: 5px;
        box-shadow: 0px 0px 5px rgba(145, 138, 129, .5);
    */
}
.inner-poetry {
    margin-right: 60px;
    height: 100%;
}
.poetry-title {
    text-align: center;
    font-size: 2.5rem;
}
.poetry-small {
    text-align: center;
    font-size: 14px;
    margin-top: 15px;
    margin-bottom: 35px;
}
.poetry-small a {
    color: #5A4F3D;
}
.poetry-content {
    font-size: 21px;
}
.analysis-content {
    font-size: 21px;
}
.poetry-content.vertical-writing {
    writing-mode: vertical-rl;
    text-orientation: upright;
    line-height: 2;
    letter-spacing: 5px;
    margin: 0 auto;
    max-height: 80vh;
    overflow-y: auto;
}
.poetry-content.vertical-writing p {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0 5px;
}
.block-title {
    position: relative;
    display: block;
    margin-top: 40px;
    margin-bottom: 40px;
    line-height: 22px;
}
.block-title h2 {
    position: relative;
    display: inline;
    padding-right: 16px;
    font-size: 26px;
    z-index: 1;
    margin: 0px;
}
.block-title-line {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    color: rgba(255,255,255,.25);
    /*color: #D2CAB3;*/
    background: currentColor;
    margin-left: 60px;
}
.text-indent-36 {
    text-indent: 36px;
}
.navbar-toggler:focus {
    outline: none;
}



/** ----------------------------------
 * 滚动条插件样式
 -------------------------------------- */
.ps {
    overflow: hidden !important;
    overflow-anchor: none;
    -ms-overflow-style: none;
    touch-action: auto;
    -ms-touch-action: auto;
}
.ps__rail-x {
    display: none;
    opacity: 0;
    transition: background-color .2s linear, opacity .2s linear;
    -webkit-transition: background-color .2s linear, opacity .2s linear;
    height: 6px;
    bottom: 2px;
    position: absolute;
}

.ps__rail-y {
    display: none;
    opacity: 0;
    transition: background-color .2s linear, opacity .2s linear;
    -webkit-transition: background-color .2s linear, opacity .2s linear;
    width: 6px;
    right: 2px;
    position: absolute;
}
.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
    display: block;
    background-color: transparent;
}
.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
    opacity: 0.6;
}
.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
    background-color: #E6E1D5;
    opacity: 0.9;
}
.ps__thumb-x {
    background-color: #DED8C7;
    border-radius: 6px;
    transition: background-color .2s linear, height .2s ease-in-out;
    -webkit-transition: background-color .2s linear, height .2s ease-in-out;
    height: 3px;
    bottom: 0px;
    position: absolute;
}
.ps__thumb-y {
    background-color: #DED8C7;
    border-radius: 6px;
    transition: background-color .2s linear, width .2s ease-in-out;
    -webkit-transition: background-color .2s linear, width .2s ease-in-out;
    width: 3px;
    right: 0px;
    position: absolute;
}
.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
    background-color: #D3CAB3;
    height: 6px;
}
.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
    background-color: #D3CAB3;
    width: 6px;
}
@supports (-ms-overflow-style: none) {
    .ps {
        overflow: auto !important;
    }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .ps {
        overflow: auto !important;
    }
}

/* ----------------------------------
 * Webkit 浏览器滚动条样式
 ---------------------------------- */

/* 整个滚动条 */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

/* 滚动条轨道 */
::-webkit-scrollbar-track {
    background-color: transparent;
}

/* 滚动条滑块 */
::-webkit-scrollbar-thumb {
    background-color: #DED8C7;
    border-radius: 6px;
    transition: background-color 0.2s linear;
    -webkit-transition: background-color 0.2s linear;
}

/* 滚动条滑块悬停状态 */
::-webkit-scrollbar-thumb:hover {
    background-color: #D3CAB3;
}

/* 滚动条轨道两端按钮 (很少用到) */
::-webkit-scrollbar-button {
    display: none;
}

/* 滚动条角落 (两个滚动条交汇处) */
::-webkit-scrollbar-corner {
    background-color: transparent;
}

/*诗词 * 国色*/
.guose-body {
    height: 100vh;
    overflow: hidden;
    background-color: #f8f9fa;
}
.full-height {
    height: 100vh;
    overflow: hidden;
}

/* 右侧竖排颜色名区域 (微调以适应便签风格) */
.color-name-vertical {
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-size: 5rem;
    position: absolute;
    right: 0px;
    top: 25%;
    color: rgba(0, 0, 0, 0.1);
}

.color-name-vertical span {
    display: block;
    margin: 0.2rem 0;
    transition: all 0.2s;
}

.poem-text {
    font-size: 2rem;
    line-height: 3rem;
}

.poem-details {
    font-size: 1.2rem;
    color: #6f5a3e;
    margin-top: 1rem;
    padding-top: 0.9rem;
    display: block;
    text-align: right;
}
.poem-author {
    background: rgb(194, 0, 0);
    color: #fff;
    border-radius: 3px;
    padding: 0px 10px;
}
.poem-card {
    height: 700px;
    overflow: auto;
}

@media (max-width: 768px) {
    .poem-text {
        font-size: 1rem;
        line-height: 1.6rem;
    }
    .color-name-vertical {
        font-size: 3.2rem;
        padding: 0.5rem 0.3rem;
    }
    .poem-card {
        padding: 1.2rem 1.2rem;
    }
}

.refresh-btn {
    position: fixed;
    top: 1.5rem;
    right: 1.5rem;
    z-index: 1030;
    background: rgba(45, 35, 25, 0.7);
    backdrop-filter: blur(8px);
    border-radius: 3rem;
    padding: 0.5rem 1.2rem;
    font-weight: 500;
    border: none;
    color: #fff9e8;
    transition: all 0.2s;
    font-size: 0.9rem;
    letter-spacing: 1px;
}
.refresh-btn:hover {
    text-decoration: none;
    background: rgba(30, 22, 15, 0.9);
    color: white;
}
.refresh-btn:focus {
    outline: none;
}

.wave-container {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50vh;
    pointer-events: none;
    z-index: 10;
}

#waveCanvas {
    width: 100%;
    height: 100%;
    display: block;
}

@media (max-width: 768px) {
    .wave-container {
        height: 40vh;
    }
}

/* 诗词日历 */
.daily-body {
    position: relative;
    overflow: auto;
}
.poetry-calendar {
    width: 820px;
    height: auto;
    background: #FFFDF7;
    box-shadow: 0 12px 24px -12px rgba(0, 0, 0, 0.25), 0 2px 6px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 240, 0.8);
}
.poetry-mark {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    right: 0px;
    background-color: rgba(0, 0, 0, .15);
    z-index: 11;
}
.poetry-image {
    position: relative;
    height: 400px;
    background-repeat: no-repeat;
    background-size: cover;
}
.calendar-box {
    z-index: 22;
    color: #fff;
    padding-right: 1rem;
}
.calendar-day {
    font-size: 5rem;
    margin-right: 15px;
    padding-right: 15px;
    border-right: 5px solid #FFFDF7;
}
.calendar-year,
.calendar-month,
.calendar-week {
    font-size: 1.5rem;
}
.calendar-month {
    margin: 4px 0px;
}
.poetry-image-info {
    padding: 15px;
    color: #666666;
}
.poetry-calendar-title {
    font-size: 2rem;
    color: #5A4F3D;
}
.poetry-calendar-author {
    color: #5A4F3D;
}
.poetry-calendar-content {
    font-size: 21px;
    color: #5A4F3D;
}
.poetry-calendar-tool {
    position: fixed;
    right: 10px;
    bottom: 10px;
    font-size: 1.5rem;
    color: #5A4F3D;
    cursor: pointer;
}

/*搜索页面*/
.poetry-search-body {
    overflow: inherit;
}
.poetry-search {
    padding: 200px 0;
    background-repeat: no-repeat;
    background-size: cover;
    backdrop-filter: blur(10px);
}
.poetry-search-mask {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: rgba(0, 0, 0, .25);
}
.search-box {
    z-index: 2;
}
.search-bg-info {
    position: absolute;
    right: 10px;
    bottom: 10px;
    cursor: pointer;
    z-index: 2;
    color: rgba(255, 255, 255, .8);
}
.card-poetry {
    background-color: #EDDFC8;
    color: #5A4F3D;
    margin-bottom: 2rem;
    -webkit-transition: .3s linear;
    transition: .3s linear;
}
.card-poetry:hover {
    background-color: #E6D3B4;
}
.poetry-card-body {
    height: 230px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}
.search-content {
    position: relative;
    max-height: 100%;
}

/* 分页 */
.pagination {
    border-radius: 5px;
}
.page-link {
    color: #8D5529;
    margin: 0 3px;
    line-height: 1.3;
    border-radius: 5px!important;
    border-color: transparent;
    background-color: rgba(255,255,255, .3);
    white-space: nowrap!important;
}
.page-link:hover {
    color: #8D5529;
    border-color: transparent;
    background-color: rgba(255,255,255, .5);
}
.page-item:first-child .page-link {
    margin-left: 0px;
}
.page-item:last-child .page-link {
    margin-right: 0px;
}
.page-item:first-child .page-link,
.page-item:last-child .page-link,
.pagination-lg .page-item:first-child .page-link,
.pagination-sm .page-item:first-child .page-link,
.pagination-lg .page-item:last-child .page-link,
.pagination-sm .page-item:last-child .page-link {
    border-radius: 2px;
}
.page-item.disabled .page-link {
    color: #6c757d;
    opacity: 0.6;
    border-color: transparent;
}
.page-item.active .page-link {
    background-color: rgba(255,255,255, .9);
    border-color: transparent;
    color: #8D5529;
}
.page-link:focus {
    background-color: #f9fafb;
    color: #4d5259;
    box-shadow: none;
}
.pagination-lg .page-link {
    padding: .5rem 1.5rem;
}
.pagination.no-border > li a,
.pagination.no-border > li span {
    border: none;
}
.pagination.no-gutters > li a,
.pagination.no-gutters > li span {
    margin: 0;
    margin-left: -1px;
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
}

/*诗词节气*/
.season-card {
    background: #fff;
    border: none;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.3s ease;
}
.season-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}
.season-card .card-img-top {
    height: 450px;
    object-fit: cover;
}
.season-info {
    padding: 1rem;
    background: linear-gradient(to bottom, #fff 0%, #f9f5ed 100%);
}
.season-name {
    font-size: 1.4rem;
    color: #b8865c;
    font-weight: 500;
    text-align: center;
    margin-bottom: 0.3rem;
}
.season-desc {
    font-size: 0.95rem;
    color: #888;
    text-align: center;
    margin-bottom: 0.3rem;
}
.season-date {
    font-size: 0.85rem;
    color: #aaa;
    text-align: center;
}
.poetry-banner-title {
    z-index: 2;
    font-size: 3rem;
    color: #fff;
}
/*背景作品信息*/
.bg-opus-info {
    z-index: 3;
    position: absolute;
    bottom: 10px;
    right: 8px;
    color: rgba(255, 255, 255, .8);
    cursor: pointer;
}

/*loading*/
#lyear-preloader {
    background: #F2E8D7;
    height: 100%;
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

#lyear-preloader .ctn-preloader {
    padding-left: 15px;
    padding-right: 15px;
}

#lyear-preloader .spinner {
    animation: logo-spinner 3s infinite linear;
    border-radius: 50%;
    border: 3px solid #f1f6f8;
    border-left-color: #D2CAB3;
    border-top-color: #D2CAB3;
    margin: 0 auto 0em auto;
    position: absolute;
    left: -40px;
    right: -40px;
    bottom: -40px;
    top: -40px;
}

#lyear-preloader .spinner:before {
    content: "";
    width: 20px;
    height: 20px;
    border: 6px solid #fff;
    box-shadow: 0 0 20px 0 rgba(4,46,56,0.2);
    background: #D2CAB3;
    position: absolute;
    right: 9px;
    top: 20px;
    border-radius: 50%;
}

#lyear-preloader .round_spinner {
    border-width: 1px;
    border-color: rgb(238,243,244);
    border-style: solid;
    border-radius: 50%;
    background-color: rgb(253,253,253);
    box-shadow: 0 0 100px 0 rgba(4,46,56,0.14);
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 40px auto 40px;
}

@keyframes logo-spinner {
    to {
        transform: rotateZ(360deg);
    }
}
.info-mask {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0px;
    right: 0px;
    background-color: rgba(0, 0, 0,.25);
}

/*书籍*/
.book-cover {
    padding: 10px;
    height: calc(100% - 4.75rem);
}
.book-cover img {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.book-a-box {
    display: block;
    height: calc(100% - 2rem);
}

.in-book-cover {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 10px;
    font-size: 18px;
    min-height: 250px;
    color: #666;
    background-color: rgba(0, 0, 0, .05);
}
.book-card {
    height: 100%;
}

.book-title {
    font-weight: 600;
    margin-bottom: 10px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.book-card-content {
    padding-top: 0px!important;
}

.book-author {
    color: #6c757d;
    font-size: 0.9rem;
    margin-bottom: 5px;
}

.book-meta {
    color: #6c757d;
}
.book-info,
.book-info a {
    color: #5A4F3D;
}
.book-desc {
    font-size: 18px;
    line-height: 2;
}
.book-catalog {
    line-height: 2.5;
    font-size: 18px;
}
.book-info .block-title-line {
    color: #D2CAB3;
}
.img-thumbnail {
    background-color: #EDDFC8;
    border-color: rgba(77, 82, 89, 0.07);
    border-radius: 0px;
}
.btn:focus,
.btn.focus,
.btn:active,
.btn.active {
    -webkit-box-shadow: none !important;
    box-shadow: none !important
}
.btn-primary {
    color: #fff!important;
    background-color: #BF935D;
    border-color: #BF935D;
}
.btn-primary:hover {
    background-color: #A97440;
    border-color: #A97440;
}

.btn-primary:focus,
.btn-primary.focus {
    background-color: #A97440!important;
    border-color: #A97440!important;
}
.btn-primary.disabled,
.btn-primary:disabled {
    background-color: #BF935D;
    border-color: #BF935D;
    opacity: 0.5
}
.btn-primary:not([disabled]):not(.disabled).active,
.btn-primary:not([disabled]):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
    background-color: #BF935D!important;
    border-color: #BF935D!important;
    -webkit-box-shadow: none;
    box-shadow: none
}
.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
    box-shadow: none;
}

/*书籍*/
.manual-header {
    display: block;
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    height: 62px;
    color: #fff;
    background-color: #BF935D;
    z-index: 9;
}
.manual-header a {
    color: #fff;
}
.manual-header a:hover,
.manual-menus li a:hover {
    text-decoration: none;
}
.manual-header,
.manual-content {
    padding-left: 400px;
    -webkit-transition: padding 0.3s;
    transition: padding 0.3s;
}
.manual-header .navbar {
    padding: 16px 15px;
}
.manual-header-left {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
}
.manual-header-toggler {
    margin-right: .25rem;
    padding: .25rem .95rem .25rem .25rem;
    line-height: 1.5;
    cursor: pointer;
}
.manual-header-toggler .manual-toggler-bar {
    display: block;
    height: 2px;
    width: 20px;
    background-color: #fff;
    margin: 4px 0px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}
.manual-header-toggler .manual-toggler-bar:nth-child(2) {
    width: 15px;
}
.manual-header-toggler:hover .manual-toggler-bar:nth-child(2) {
    width: 20px;
}
.manual-sidebar-close .manual-header-toggler .manual-toggler-bar {
    width: 20px;
}
.manual-copyright {
    text-align: center;
    line-height: 1.5;
    padding: 0 10px;
}
.manual-sidebar {
    display: block;
    position: fixed;
    height: 100%;
    left: 0px;
    top: 0px;
    bottom: 0px;
    width: 400px;
    background-color: #F2E8D7;
    -webkit-transition: 0.3s transform;
    transition: 0.3s transform;
    transform: translateX(0);
    z-index: 10;
    -webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.08);
    -moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.08);
    box-shadow: 0px 0px 5px rgba(0,0,0,0.08);
}
.manual-sidebar-close .manual-sidebar {
    transform: translateX(-100%);
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
.manual-sidebar-close .manual-header,
.manual-sidebar-close .manual-content {
    padding-left: 0px;
}
.manual-sidebar-logo {
    background-color: #BF935D;
}
.manual-sidebar-logo a {
    display: block;
    height: auto;
    text-align: center;
}
.manual-sidebar-logo a img {
    max-width: 100%;
    margin: 8px 0px;
}
.manual-scroll {
    height: -moz-calc(100% - 70px);
    height: -webkit-calc(100% - 70px);
    height: calc(100% - 70px);
    overflow-y: auto;
}
.manual-menus {
    margin: 0px;
    padding: 0px;
    list-style: noone;
}
.manual-menus li {
    position: relative;
}
.manual-menus li a {
    display: block;
    color: #5A4F3D;
    width: 100%;
    font-size: 16px;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 20px;
    padding-left: 30px;
}
.manual-menus li .nav-subnav li a {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 14px;
}
.manual-menus > .active > a {
    background-color: rgba(0,0,0,.0325);
}
.manual-menus > li.active > a {
    background-color: rgba(0,0,0,.0325)!important;
}
.manual-menus > .active > a:hover,
.manual-menus > .active > a:focus,
.manual-menus > .active > a:active {
    background-color: rgba(0,0,0,.0325);
    border-color: #33cabb;
}
.manual-menus .nav-subnav > li.active > a,
.manual-menus .nav-subnav > li > a:hover {
    color: #33cabb;
    background-color: transparent;
}
.manual-menus li ul,
.manual-menus li ul li ul
.manual-menus li ul li ul li ul {
    padding-left: 15px;
}
.nav-item-has-subnav ul li .caret {
    height: 23px;
}
.nav-item-has-subnav ul li .caret:after {
    vertical-align: 0px;
}
.nav-item-has-subnav .caret {
    display: inline-block;
    position: absolute;
    width: 30px;
    height: 41px;
    left: 0;
    top: 0;
    cursor: pointer;
    z-index: 222;
}
.nav-item-has-subnav .caret:after {
    display: inline-block;
    font-size: 12px;
    width: 0;
    height: 0;
    margin-left: 12px;
    vertical-align: -9px;
    content: "";
    border-top: .3em solid transparent;
    border-right: 0;
    border-bottom: .3em solid transparent;
    border-left: .3em solid;

    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
}
.nav-item-has-subnav .caret.down:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.nav-item-has-subnav.open > .nav-subnav {
    display: block;
}
.nav-subnav {
    display: none;
    margin-top: 8px;
    margin-bottom: 8px;
}
.manual-content {
    display: block;
    position: absolute;
    padding-top: 62px;
    width: 100%;
    height: 100%;
    -webkit-transition: padding 0.3s;
    transition: padding 0.3s;
}
#manual-main {
    padding: 65px 100px;
    line-height: 2;
    background-color: #F7F2E9;
}
.manual-prev-next{
    display: flex;
    font-size: 16px;
    border-top: 1px solid #f5f5f5;
    margin: 0px 65px 65px;
    padding: 30px 0px 30px 0px;
}
.manual-prev-next a {
    color: #5A4F3D;
}
.manual-sidebar-footer {
    bottom: 0;
    width: 100%;
    height: 96px;
    border-top: 1px solid rgba(77,82,89,0.05);
    margin-top: 24px;
    padding: 24px;
    font-size: 13px;
    line-height: 24px;
}
.editormd-preview-container,
.editormd-html-preview {
    font-size: 16px;
}
.markdown-body {
    color: #4d5259;
}
@media screen and (max-width: 960px) {
    #lyear-main-content {
        margin-left: 0;
    }
    #lyear-aside {
        width: 100%;
        position: relative;
        z-index: 999;
        height: 380px;
    }
}
@media (max-width: 1024px) {
    .manual-sidebar {
        transform: translateX(-100%);
    }
    .manual-header,
    .manual-content {
        padding-left: 0;
    }
    .manual-sidebar.manual-open {
        transform: translateX(0);
    }
    .manual-sidebar {
        -webkit-box-shadow: none;
        -moz-webkit-box-shadow: none;
        box-shadow: none;
    }
    /* 遮罩层 */
    .manual-mask-modal {
        position: fixed;
        height: 100%;
        width: 100%;
        opacity: 1;
        left: 0;
        top: 0;
        visibility: visible;
        background-color: rgba(0, 0, 0, 0.5);
        -webkit-transition: visibility 0 linear 0.4s, opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        transition: visibility 0 linear 0.4s, opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        z-index: 5;
    }
}
.markdown-body h1 {
    border-color: #F2E8D7;
}

/* 固定在右下角的设置按钮 */
.reading-settings-btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1000;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #BF935D;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    transition: all 0.3s ease;
}

.reading-settings-btn:hover {
    transform: scale(1.1);
    background: #A97440;
}

.reading-settings-btn i {
    font-size: 20px;
}

/* 设置面板 */
.reading-settings-panel {
    position: fixed;
    bottom: 80px;
    right: 20px;
    z-index: 999;
    background: white;
    border-radius: 8px;
    padding: 15px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    width: 280px;
    max-width: calc(100vw - 40px);
    display: none;
    border: 1px solid #e9ecef;
}

.reading-settings-panel.active {
    display: block;
    animation: slideUp 0.3s ease;
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.reading-settings-title {
    font-weight: bold;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    color: #333;
}

.setting-item {
    margin-bottom: 15px;
}

.setting-item label {
    display: block;
    margin-bottom: 5px;
    font-weight: 500;
    color: #555;
}

.setting-item select {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 14px;
}

.settings-actions {
    display: flex;
    gap: 8px;
    margin-top: 15px;
}

.settings-actions button {
    flex: 1;
}

/* 主题样式 - 针对 manual-main */
#manual-main.theme-light {
    background-color: #f5f5dc !important; /* 护眼色 */
    color: #2c3e50 !important;
}

#manual-main.theme-dark {
    background-color: #2c3e50 !important; /* 深色背景 */
    color: #ecf0f1 !important;
}

#manual-main.theme-sepia {
    background-color: #f4ecd8 !important; /* 羊皮纸色 */
    color: #5b4636 !important;
}

/* 移动端适配 */
@media (max-width: 768px) {
    #manual-main {
        padding: 65px;
    }
    .reading-settings-panel {
        right: 10px;
        left: 10px;
        bottom: 70px;
        width: auto;
    }

    .reading-settings-btn {
        bottom: 15px;
        right: 15px;
        width: 45px;
        height: 45px;
    }
}

@media (max-width: 576px) {
    .category-links a {
        font-size: 16px;
        margin: 0px 5px;
        padding: 5px;
    }
    .poetry-image-author {
        display: none;
    }
    .poem-card {
        height: 60%;
        padding: 0.75rem;
    }
    .poem-title,
    .poem-author {
        font-size: 1rem;
    }
    .copyright {
        display: none;
    }
    .pagination li {
        display: none;
    }
    .pagination li:first-child,
    .pagination li:last-child {
        display: block;
    }
    .book-search .px-5 {
        font-size: 16px;
    }
    .category-ul .nav-item .nav-link {
        padding: 5px 15px!important;
    }
    #manual-main {
        padding: 35px 15px;
    }
    .poetry-box {
        height: 75%;
        padding-left: 30px;
    }
    .inner-poetry {
        margin-right: 0px;
    }
    .poetry-title {
        font-size: 1.5rem;
    }
    .block-title h2 {
        font-size: 1.5rem;
    }
    .poetry-content,
    .analysis-content {
        font-size: 1.25rem;
    }
    .block-title {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}
.theme-dark tr td {
    color: #fff;
}
/*分类*/
.category-ul .nav-item .nav-link {
    border-radius: 20px;
    padding: .5rem 2rem;
    color: #5A4F3D;
}
.category-ul .nav-item .nav-link.active {
    background-color: #EDDFC8;
    border: 1px solid rgba(0,0,0,.125);
    color: #5A4F3D;
}

