

/* 移除所有元素的焦点轮廓 不然chrome会有个很丑的方框 */
*:focus {
    outline: none !important;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    color: #e3e3e3;
}

input:-moz-placeholder, textarea:-moz-placeholder {
    color: #e3e3e3;
}

input::-moz-placeholder, textarea::-moz-placeholder {
    color: #e3e3e3;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: #e3e3e3;
}

/* Custom Styles */

#map {
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: block;
}

/* 透明参考
 public static final float HTalpha_Primary = 0.87f;
 public static final float HTalpha_Secondary = 0.54f;
 public static final float HTalpha_Hint = 0.38f;
 public static final float HTalpha_Weak_m = 0.28f;
 public static final float HTalpha_Weak = 0.18f;
    */

/* █████████████████████ 全局 基本字体 */

body {
    /*height: 100%;*/
    font-size: 14px;
    color: #212121;
    background-color: #F5F5F6;
}

html,
body,
button,
input,
select,
textarea {
    color: #3e4548;
    font: 14px/1.5 "Helvetica Neue", Helvetica, Arial, "Microsoft Yahei", "Hiragino Sans GB", "Heiti SC", "WenQuanYi Micro Hei", sans-serif;
    font-size: 100%;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

/*覆盖顶部菜单栏的底部25dp*/
.navbar{
    margin-bottom: 0 !important;
    border: none;
}




pre {
    color: #212121;
}



.index-head {
    padding: 25px 25px 10px 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    color: rgb(18 18 18 / 0.23);
}

.home-book-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
}

.home-book-classify-tag {
    border: none;
    border-radius: 9px;
    background: transparent;
    color: rgba(18, 18, 18, 0.29);
    font-size: 14px;
    line-height: 1;
    padding: 9px 13px;
    cursor: pointer;
    transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.home-book-classify-tag:hover {
    color: rgba(18, 18, 18, 0.82);
}

.home-book-classify-tag.is-active {
    background: rgb(18 18 18 / 0.80);
    color: white;
    box-shadow: 0 4px 10px rgba(33, 33, 33, 0.1);
}

.home-book-cover {
    transform-origin: left center;
    transition: box-shadow 0.24s ease, transform 0.24s ease, filter 0.24s ease;
    will-change: transform;
}

.home-book-cover:hover {
    transform: perspective(900px) rotateY(-9deg) scale(1.02);
    filter: brightness(1.03);
    box-shadow: 9px 12px 28px rgba(33, 33, 33, 0.16),
    0 0 0 8px rgb(255 255 255 / 0.36),
    0 0 50px rgb(255 255 255 / 0.26);
}

.index-check-box-1{
    display: inline-flex;
    align-items: center;
    flex-direction: row-reverse;
    font-size: 14px;
    font-weight: normal;
    color: rgb(18 18 18 / 0.23);
    gap: 11px;
    padding-bottom: 25px;
}

.index-check-box-2 {
    margin: 0; /* 清除默认margin */
    position: relative;
    top: -2px; /* 微调垂直位置，根据需要调整这个值 */
    opacity: 0.56;
    accent-color: #474747;
}
/* █████████████████████ 连接 */


a {

    color: black;

}

a:hover {

}

text {
    color: red;
}

/* █████████████████████ 书籍详情 home_book_detail.blade.php */
.dropdown-menu {

    background-color: white;
    border-radius: 10px;
    border: none;
}

/*圆角 书籍整体页面左右两边使用*/
.panel-radius {

    background-color: white;
    border-radius: 15px;
    margin-bottom: 10px;
}

/* bookDetail*/

.bookDetailTitle {
    color: #212121;
    font-size: 40px;
    opacity: 0.87;
}

.bookDetailBrief {
    /**/
    color: #212121;
    opacity: 0.54;
    font-size: 18px;
    border: none;
    background-color: transparent;

}

/* article */
.articleTitle {
    color: #212121;
    opacity: 0.87;
    display: block;
    min-height: 40px;
    line-height: 25px;
    font-size: 20px;
    padding-left: 10px;
    padding-bottom: 15px;
}

.articleBrief {
    color: #212121;
    opacity: 0.28;
    font-size: 18px;
    border: none;
    background-color: transparent;

}

.articleInfo {
    font-size: 13px;
    color: #212121;
    opacity: 0.28;
    padding-left: 11px;
    line-height: 2px;
}

/* volume */

.volumeTitle {

    font-size: 30px;
    color: #212121;
    opacity: 0.87;
    padding-top: 10px;
    padding-left: 10px;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.book-detail-volume-title-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.book-detail-volume-title-link {
    flex: 0 1 auto;
    min-width: 0;
    color: inherit;
    text-decoration: none !important;
    word-break: break-word;
}

.book-detail-volume-actions {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 80px;
    padding-right: 10px;
}

.book-detail-volume-actions:hover .role-tree-editor__spacer {
    background-color: rgba(33, 33, 33, 0.06);
    box-shadow: inset 0 0 0 1px rgba(33, 33, 33, 0.04);
    opacity: 1;
}

.book-detail-volume-actions .volumeAddItemNewBtn {
    flex-shrink: 0;
}

.book-detail-volume-fold-btn {
    margin-right: 10px;
}


.volumeInfo {
    font-size: 12px;
    color: #212121;
    opacity: 0.28;
    padding-left: 11px;
    line-height: 5px;
    padding-bottom: 10px;
}

/* role */

.roleTag {

    color: #3e3e3e;
    height: 40px;
    line-height: 20px;
    padding: 10px 15px 10px 15px;
    display: block;
    background-color: #f6f6f6;
    margin: 10px 0px 10px 10px;
    border-radius: 10px;
    font-size: 16px;

}

.roleTypeTitle {
    color: #212121;
    opacity: 0.87;
    font-size: 30px;
    padding: 10px;
    border-radius: 10px;
    background-color: white;
    margin: 30px 0 0 8px
}

.deleteBtn {
    display: none;
    width: 20px;
    height: 20px;
    position: absolute;
    right: -10px;
    top: -10px;
    font-size: 20px;
    background-color: yellow
}

.center-vertical {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.tip {
    padding-top: 10px;
    color: #bfbfbf;
}

.book-detail-article-item {
    position: relative;
}

.book-detail-article-main {
    width: 100%;
}

.book-detail-article-main > .articleTitle,
.book-detail-article-main > .articleInfo {
    padding-right: 120px;
}

.book-detail-article-actions {
    position: absolute;
    top: 0;
    right: 5px;
    float: none !important;
    visibility: hidden;
    white-space: nowrap;
    z-index: 2;
}

.book-detail-article-item.is-last-clicked:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 7px;
    border-radius: 0;
    background-color: rgb(255 67 68 / 0.89);
}

.book-detail-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 4px;
}

.book-detail-cover-thumb {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    border: 2px solid rgb(255 255 255 / 0.89);
    object-fit: cover;
    display: block;
}
.book-detail-role-list.block__list_tags {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 20px 10px;
}

.book-detail-role-list.block__list_tags:after {
    display: none;
}

.book-detail-role-list.block__list_tags > li {
    float: none;
    margin: 0;
    text-align: left;
}

.book-detail-role-list.block__list_tags > li.book-detail-role-item {
    display: inline-flex;
    align-items: center;
    box-sizing: border-box;
}

.book-detail-role-list.block__list_tags > li.book-detail-role-item.is-brief {
    display: block;
    flex: 0 0 100%;
    width: 100%;
    box-sizing: border-box;
    background-color: #e8f6ea !important;
    text-align: left;
}

.book-detail-role-item {
    cursor: pointer;
    position: relative;
}

.book-detail-role-item.is-brief .book-detail-role-content {
    background-color: transparent !important;
    align-items: flex-start;
}

.book-detail-role-item.is-brief .book-detail-role-thumb-wrap,
.book-detail-role-item.is-brief .book-detail-role-thumb-btn {

}

.book-detail-role-content {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
}

.book-detail-role-text {
    color: #3e3e3e;
    cursor: pointer;
    text-decoration: none !important;
    line-height: 20px;
    white-space: pre-wrap;
    word-break: break-word;
}

.book-detail-role-item.is-brief .book-detail-role-text {
    display: inline-block;
    min-width: 120px;
    max-width: 100%;
    line-height: 20px;
    color: #2f5d3a;
    font-weight: bolder;
}

.book-detail-role-expanded-title {
    color: #223b27;
    font-weight: bolder;
}

.book-detail-role-expanded-body {
    display: none;
    width: 100%;
}

.book-detail-role-brief-source {
    display: none;
}

.book-detail-role-item.is-brief .book-detail-role-expanded-body {
    display: block;
}

.book-detail-role-expanded-divider {
    margin: 6px 0 15px 0;
    border: 0;
    border-top: 1px solid rgba(47, 93, 58, 0.22);
}

.book-detail-role-expanded-brief {
    color: #2f5d3a;
    white-space: pre-wrap;
    word-break: break-word;
}

.book-detail-role-edit-wrap {
    display: none;
    padding-left: 26px;
    box-sizing: border-box;
    text-align: right;
    width: 100%;
}

.book-detail-role-item.is-brief .book-detail-role-edit-wrap {
    display: block;
}

.book-detail-role-edit-btn {
    background-color: rgb(129 181 155 / 0.87);
    display: inline-block;
    font-size: 13px;
    line-height: 1.4;
    text-decoration: none !important;
    margin-top: 5px;
     margin-bottom: 5px;
    color: #ffffff;
}

.book-detail-role-edit-btn:hover,
.book-detail-role-edit-btn:focus {
     font-weight: bold;
    color: #ffffff;
}

.book-detail-role-thumb-wrap,
.book-detail-role-thumb-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    border-radius: 7px;
    background: transparent;
    overflow: hidden;
    cursor: pointer;
    line-height: 0;
    vertical-align: middle;
}

.book-detail-role-thumb-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.book-detail-nav > li > a {
    position: relative;
    border-radius: 15px;
    margin: 8px 0;
    padding: 6px 14px !important;
    line-height: 1.2;
}

.book-detail-nav__item.is-active > a {
    font-weight: bolder;
    font-size: 19px !important;
    transform: translateY(-1px);
    color: #0e0e0e !important;

    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.12);
}

.book-detail-nav__item.is-active > a:after {
    display: none;

}

.book-detail-nav__draft-menu.open > a,
.book-detail-nav__draft-menu.open > a:focus,
.book-detail-nav__draft-menu.open > a:hover,
.book-detail-nav__draft-menu > a:focus,
.book-detail-nav__draft-menu > a:hover {
    background-color: transparent !important;
}

.book-detail-nav__draft-menu .dropdown-menu > li > a {
    font-size: 17px;
    line-height: 1.5;
    padding: 10px 22px;
}

.book-detail-draft-tooltip {
    max-width: 280px;
    margin-left: 8px;
    z-index: 2000;
}

.inputTitle {
    width: 100%; /*自动适应父布局宽度*/
    overflow: auto;
    word-break: break-all;
    font-size: 30px;
    padding: 10px 10px 10px 10px;
    margin-bottom: 20px;
    border: none;
    border-radius: 10px;
}

.inputTextarea {
    width: 100%; /*自动适应父布局宽度*/
    overflow: hidden;

    min-width: 100%;
    max-width: 100%;

    word-break: break-all;
    font-size: 18px;
    line-height: 1.5;
    padding: 20px 10px 20px 10px;
    letter-spacing: 2px;
    border: none;
    box-shadow: none;
    outline: none;
    border-radius: 10px;

}

.book-detail-card__delete {
    display: none;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(calc(-50% - 3px));
    width: 24px;
    height: 24px;
    padding: 0;
    border: none;
    background: transparent;
    color: rgba(33, 33, 33, 0.28);
    font-size: 18px;
    line-height: 1;
    text-align: center;
    cursor: pointer;
}

.book-detail-card:hover:not(.is-editing) .book-detail-card__delete {
    display: flex;
    align-items: center;
    justify-content: center;
}

.book-detail-card__delete:hover {
    color: rgba(33, 33, 33, 0.88);
}

.book-detail-role-item .book-detail-card__delete {
    right: -12px;
    top: -12px;
    transform: none;
    width: 28px;
    height: 28px;
    z-index: 2;
    color: #a7a7a7;
    font-size: 14px;
    line-height: 28px;
    text-decoration: none;
}

.book-detail-role-item:hover .book-detail-card__delete,
.book-detail-role-item .book-detail-card__delete:focus {
    display: flex;
    align-items: center;
    justify-content: center;
}

.book-detail-role-item .book-detail-card__delete:hover {
    color: rgba(33, 33, 33, 0.88);
    text-decoration: none;
}


/* █████████████████████ 编辑页面 home_edit_model.blade.php  ---------------------*/

.edit-model-shell-header{
    max-width: 1180px;
    margin: 25px auto 0 auto;
    flex: 1;
}

.edit-model-shell-header.full-width{
    max-width: none;
    width: 100%;
}

.edit-model-shell {
    max-width: 1180px;
    margin: 0 auto 50px auto;
    flex: 1;
}
/* 取消最大宽度的状态 */
.edit-model-shell.full-width {
    max-width: none;
    width: 100%;
}

/* 弹出的删除确认框  */
#toast-container .toast {
    margin-top: 15px;
    border-radius: 15px !important;
    opacity: 0.95 !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12) !important;

}

#toast-container .toast:hover {
    opacity: 0.95 !important;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.32) !important;
}

.ui-tooltip {
    opacity: 0.89 !important;
    filter: alpha(opacity=89) !important;
}

.modal-content{
    border-radius: 15px !important;
    border: none;
}

/* █████████████████████ ----------------- 文档页面  ---------------------*/

.draft-note-page {
    margin-top: 25px;
    padding: 0 20px 25px 20px;
}

.draft-note-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.draft-note-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 22px 18px;
}

.draft-note-card {
    position: relative;
    display: flex;
    flex-direction: column;
    aspect-ratio: 1 / 1;
    min-height: 0;
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.draft-note-card:hover {
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06);
}

.draft-note-link {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-height: 0;
    background:
            linear-gradient(90deg, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, 0) 82%, rgba(255, 255, 255, 0.44)),
            linear-gradient(135deg, #fafafa 0%, #f5f5f4 58%, #f0f0ee 100%);
    color: inherit;
    text-decoration: none !important;
}

.draft-note-body {
    display: flex;
    flex: none;
    flex-direction: column;
    justify-content: flex-end;
    min-height: 75px;
    margin-top: 10px;
    padding: 15px 15px  15px 15px;
    background: rgba(255, 255, 255, 0.98);
}

.draft-note-paper-text {
    flex: 1;
    min-height: 0;
    padding: 12px 17px 20px;
    font-size: 13px;
    line-height: 24px;
    color: rgb(47 52 65 / 0.39);
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-word;
}

.draft-note-title {
    font-size: 18px;
    line-height: 1.16;
    margin: 0 0 7px 0;
    color: #2f3441;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-word;
}

.draft-note-meta {
    font-size: 12px;
    color: rgba(47, 52, 65, 0.36);
}

.draft-note-delete {
    position: absolute;
    top: 5px;
    right: 5px;
    width: 30px;
    height: 30px;
    border: none;
    background: transparent;
    color: rgba(47, 52, 65, 0.26);
    font-size: 22px;
    font-weight: 700;
    line-height: 32px;
    text-shadow:
            0 2px 0 rgba(255, 255, 255, 0.88),
            2px 0 0 rgba(255, 255, 255, 0.88),
            0 -2px 0 rgba(255, 255, 255, 0.88),
            -2px 0 0 rgba(255, 255, 255, 0.88);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.1s ease, transform 0.1s ease, color 0.1s ease;
    transform: translateY(-2px);
    z-index: 3;
}

.draft-note-card:hover .draft-note-delete,
.draft-note-delete:focus {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.draft-note-delete:hover {
    color: #d14343;
}




.page-scroll-buttons {
    position: fixed;
    bottom: 50px;
    z-index: 100;
    display: flex;
    flex-direction: column;
    border: none;
    gap: 10px;
    background-color: transparent ;
}

.page-scroll-btn {
    width: 32px;
    height: 32px;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background-color: transparent ;
    border-radius: 50%;
    transition: box-shadow 0.18s ease, transform 0.18s ease;

}

.page-scroll-btn:hover {
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}

.page-scroll-btn:hover img {
    filter:
            brightness(0.85)      /* 稍微变暗 */
            saturate(1.5)        /* 增加饱和度 */
            hue-rotate(15deg);   /* 色相旋转（改变颜色） */
}

.page-scroll-btn img {
    width: 100%;
    height: 100%;
    display: block;
}

.page-scroll-btn--up img {
    transform: rotate(180deg);
}

.draft-note-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: 22px;
}

.draft-note-pagination .pagination {
    margin: 0;
}

/* █████████████████████ ----------------- 本机草稿箱页面  ---------------------*/

.history-list-shell {
    padding-top: 25px;
    padding-bottom: 30px;
    max-width: 1180px;
    margin: 0 auto;
    flex: 1;
}

.history_list {
    transition: background-color 0.0s ease;
}
.history_list:hover {
    background-color: #fcfcfc !important;
}
.history-list-delete {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    background: none;
    opacity: 0;
    border: none;
    color: rgba(33, 33, 33, 0.46);
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    pointer-events: none;
    transition: opacity 0.12s ease, color 0.12s ease;
}
.history_list:hover .history-list-delete,
.history-list-delete:focus {
    opacity: 1;
    pointer-events: auto;
}
.history-list-delete:hover {
    color: rgba(33, 33, 33, 0.88);
}
.history-list-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-right: 42px;
}
.history-list-type {
    flex: none;
    width: 50px;
    color: rgb(33 33 33 / 0.37);
    font-size: 22px;
    line-height: 1;
    text-align: center;

}

.history-list-main {
    min-width: 0;
    flex: 1;
}
.history-list-title {
    display: inline-block;
    max-width: 100%;
    color: #212121;
    font-size: 20px;
    text-decoration: none !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
}

.history_list {
    color: #212121;
    font-size: 20px;
    background-color: white;
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 20px;
    opacity: 0.87;
    border-radius: 10px
}

.history_list p {
    padding: 0px;
    margin: 0px;
    font-size: 14px;
    color: #212121;
    opacity: 0.32;
}

.history_list pre {
    margin: 0px;
    padding: 0px;
    border: none;
    background: transparent;
}

.local-draft-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 22px;
    text-align: center;
}

.local-draft-pagination .pagination {
    margin: 12px 0 0 0;
}

/* █████████████████████ ----------------- 废纸篓页面  ---------------------*/

.trash-type-title {
    display: inline-flex !important;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 12px;
    color: rgba(33, 33, 33, 0.42);
    font-size: 18px;
}

.trash-type-title a {
    color: rgba(33, 33, 33, 0.42);
    text-decoration: none !important;
}

.trash-type-title-active {
    background-color: rgba(33, 33, 33, 0.06);
    color: rgba(33, 33, 33, 0.82);
    font-weight: 700;
    font-size: 20px;
}

.trash-list-page {
    margin-top: 25px;
    padding: 0 18px;
    margin-bottom: 25px;
}

.trash-list-filter {
    display: flex;
    gap: 8px;
    align-items: center;
    padding:  0;
    margin: 0;
    background: transparent;
}

.trash-list-item {
    position: relative;
    padding: 15px;
    transition: background-color 0.12s ease;
}

.trash-list-item:hover {
    background-color: #fcfcfc;
}

.trash-list-title {
    display: inline-block;
    max-width: 100%;
    color: #212121;
    font-size: 16px;
    text-decoration: none !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: top;
}

.trash-list-date {
    margin: 4px 0 0 0;
    color: #666666;
    font-size: 12px;
}

.trash-list-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.trash-list-pagination .pagination {
    margin: 12px 0 0 0;
}


/* █████████████████████ ----------------- 灵感页面  ---------------------*/


.inspiration-page {
    max-width: 1180px;
    margin: 0 auto;
    padding: 25px 20px 25px 20px;
}

.inspiration-head {
    display: grid;
    grid-template-columns: var(--inspiration-time-column-width, 120px) minmax(0, 1fr);
    column-gap: 22px;
    align-items: center;
    margin-bottom: 14px;
}

.inspiration-head__main {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.inspiration-count {
    padding: 4px 10px;
    margin: 0;
    border-radius: 12px;
}

.inspiration-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.inspiration-item {
    --inspiration-time-column-width: 120px;
    --inspiration-time-text-width: 5.2em;
    display: grid;
    grid-template-columns: var(--inspiration-time-column-width) minmax(0, 1fr);
    column-gap: 22px;
    align-items: stretch;
    position: relative;
}

.inspiration-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.inspiration-pagination .pagination {
    margin: 12px 0 0 0;
}

.pagination-keyboard-tip {

    font-size: 12px;
    text-align: center;
}

.inspiration-item:after {
    content: '';
    position: absolute;
    left: calc((var(--inspiration-time-column-width) + var(--inspiration-time-text-width)) / 2);
    top: 8px;
    bottom: -22px;
    border-left: 1px solid #d9dde7;
    opacity: 0.56;
}

.inspiration-time {
    min-height: 86px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: right;
    color: #111111;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.1;
    z-index: 1;
    position: relative;
    padding: 25px 0;
}

.inspiration-time:before,
.inspiration-time:after {
    display: none;
}

.inspiration-time__text {
    display: inline-block;
    min-width: var(--inspiration-time-text-width);
    padding: 10px 0;
    background: #f5f5f5;
    color: rgb(18 18 18 / 0.28);
    position: relative;
    z-index: 1;
}

.inspiration-card {
    position: relative;
    min-height: 86px;
    padding: 18px 48px 20px 20px;
    border: 2px solid transparent;
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: none;
    transition: border-color 0.18s ease, background 0.18s ease;
}

.inspiration-card:hover:not(.is-editing) {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgb(100 172 103 / 0.32);

    transition: border-color 0.3s ease;
}

.inspiration-card__date {
    margin-bottom: 6px;
    color: rgba(33, 33, 33, 0.22);
    font-size: 13px;
    line-height: 1.2;
}

.inspiration-card__content {
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    color: rgba(33, 33, 33, 0.78);
    font-family: inherit;
    font-size: 16px;
    line-height: 1.75;
    white-space: pre-wrap;
    word-break: break-word;
    cursor: text;
}

.inspiration-card__editor {
    display: none;
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    color: rgba(33, 33, 33, 0.82);
    font-size: 16px;
    line-height: 1.75;
    resize: none;
    outline: none;
    box-shadow: none;
}

.inspiration-card.is-editing .inspiration-card__content {
    display: none;
}

.inspiration-card.is-editing {
    border-color: rgba(255, 67, 68, 0.58);
}

.inspiration-card.is-editing .inspiration-card__editor {
    display: block;
}

.inspiration-card__delete {
    display: none;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(calc(-50% - 3px));
    width: 24px;
    height: 24px;
    padding: 0;
    border: none;
    background: transparent;
    color: rgba(33, 33, 33, 0.28);
    font-size: 18px;
    line-height: 1;
    text-align: center;
    cursor: pointer;
}

.inspiration-card:hover:not(.is-editing) .inspiration-card__delete {
    display: flex;
    align-items: center;
    justify-content: center;
}

.inspiration-card__delete:hover {
    color: rgba(33, 33, 33, 0.88);
}

/* █████████████████████ -----------------  分享页面CSS  ---------------------*/

/*   分享文章页      */

.shareArticle_bodyText {
    overflow: auto;
    word-break: break-all;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 2px;

    border: none;
    padding: 0px;
    white-space: pre-wrap; /*css-3*/
    white-space: -moz-pre-wrap; /*Mozilla,since1999*/
    white-space: -pre-wrap; /*Opera4-6*/
    white-space: -o-pre-wrap; /*Opera7*/
    word-wrap: break-word; /*InternetExplorer5.5+*/

}

.share_TextSecondary {
    color: #bebebf;
    font-size: 14px;
}

.share_bodyBG {
    background-color: #f5f5f6;
}

.share_bottom {
    padding: 10px;
    background-color: #5b5b5b;
    font-size: 14px;
    color: #bebebf;
    line-height: 20px;
    overflow: hidden;
}

.share_bottom a {
    color: #bebebf;
}

.share_bottom a:hover {
    color: #bebebf;
}

/*   分享书本阅读页      */

.pageBtnDiv {
    text-align: center;
}

.pageBtnDiv a {
    text-decoration: none
}

/*   分享书本目录页      */

.booklistDiv {
    cursor: pointer;
    margin: 0px;
    padding: 5px 0px 0px 0px;
}

.booklistTitle {
    font-size: 17px;
    margin: 0px;
    padding: 0px;
}

.divAsLine {
    height: 1px;
    background-color: #e8e8e8;
    margin: 5px 20px 0px 20px;
    padding: 0px;

}

/*内容的左右间隙*/
.shareContentPaddingLR {
    padding-left: 10px;
    padding-right: 10px;
}

.shareContentPaddingTop {
    padding-top: 20px;

}

.shareContentPaddingBottom {
    padding-bottom: 100px;
}


/* --------------- 分享设定页 -------------- */

ul.share_role_tree,

    /*简介*/
ul.share_role_tree pre {

    border: none;
    white-space: pre-wrap;
    word-wrap: break-word;
    padding: 5px 0px 5px 0px;
    margin: 0px;
    font-size: 14px;
    color: #9b9b9b;

}

/*标题*/
ul.share_role_tree ul {

    list-style-type: none;
    color: #212121;
    margin: 0;
    padding-left: 25px;
    font-size: 16px;
    display: block;
}

ul.share_role_tree li {

    color: #212121;
    font-size: 18px;
/ list-style: none;
    position: relative;
}

ul.share_role_tree > li:first-child:before {
    border-style: none none solid none;
}

/*直角线*/
ul.share_role_tree li:before {
    position: absolute;
    content: '';
    top: 0.20em;
    left: -0.85em;
    width: 0.5em;
    /*竖线高度*/
    height: 0.9em;
    border-style: none none solid solid;
    border-width: 0.05em;
    border-color: #cecece;
}

/*竖线*/
ul.share_role_tree li:not(:last-child):after {
    position: absolute;
    content: '';
    top: 0.7em;
    left: -0.85em;
    bottom: -0.5em;
    border-style: none none none solid;
    border-width: 0.05em;
    border-color: #cecece;

}


/*点击图标的样式*/
ul.share_role_tree a {
    padding-left: 20px;
    text-decoration: none;
    background: url("../images/ic_node_default.png") left no-repeat;
    background-size: 20px;

}

ul.share_role_tree a:focus {
    color: #ff4344;
}

/*书籍简介*/
.share_role_book_brief {
    color: #9b9b9b;
    font-size: 12px;
    padding: 0;
    margin: 0;
}

/*显示brief按钮*/

.share_role_toggle_brief_btn {

    width: 40px;
    color: #cecece;
    float: right;
    text-align: right;
    padding-top: 0px;
    margin-top: 0px;
    font-size: 16px;
    display: block;
    cursor: pointer;
    /*background-color: #ebebeb;*/
}


/*显示图片按钮*/
.share_role_img_btn {

    color: #9b9b9b;
    font-size: 14px;
    cursor: pointer;
}


.share_role_div {
    position: absolute;
    content: '';
    top: 0.7em;
    left: -0.7em;
    bottom: -1.0em;
    border-style: none none none solid;
    border-width: 0.05em;
    border-color: #aaa;
}


/*全屏显示*/
.share_role_fullScreen {
    display: none;
    background-color: rgba(0, 0, 0, 0.75);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 111;
    transition: all .3s;
}

.share_role_fullScreen div {
    position: relative;
    width: 100%;
    height: 100%;
}

.share_role_fullScreen div img {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/*------------------------ 树形编辑 ------------------------*/


.role-tree-editor-page {
    padding: 25px 18px 50px 18px;
    display: flex;
    align-items: flex-end;
}

.role-tree-editor-shell {
    max-width: 1180px;
    margin:0 auto;
    flex: 1;
}


.role-tree-editor-head {
    border: none;
    border-radius: 15px;
    padding: 10px 24px;
    margin-bottom: 10px;
    background: transparent;
    box-shadow: 0 4px 20px rgba(33, 33, 33, 0.06);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    position: sticky;
    top: 0;
    z-index: 60;
    transition: background-color 0.18s ease;
}

.role-tree-editor-head.is-stuck {
    background: rgb(255 255 255 / 0.98);
}

.role-tree-editor-head__title {
    display: flex;
    align-items: center;
    min-height: 34px;
}

#roleTreeSummaryText {
    display: inline-flex;
    align-items: center;
    font-size: 14px;
    line-height: 1;
    margin: 0;
    padding-top: 0;
}

.role-tree-editor-image-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 111;
    background-color: rgba(0, 0, 0, 0.72);
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.role-tree-editor-image-modal__dialog {
    position: relative;
    width: min(100%, 500px);
    max-width: 500px;
}

.role-tree-editor-image-modal__dialog img {
    display: block;
    width: 100%;
    max-width: 500px;
    height: auto;
    max-height: calc(100vh - 48px);
    margin: 0 auto;
    border-radius: 15px;
    background-color: #ffffff;
}

.role-tree-editor-image-modal__close {
    position: absolute;
    top: -12px;
    right: -12px;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 999px;
    background-color: rgba(33, 33, 33, 0.88);
    color: #ffffff;
    font-size: 22px;
    line-height: 32px;
    text-align: center;
    cursor: pointer;
    padding: 0;
}

.role-tree-editor-image-hover {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 300px;
    height: 300px;
    padding: 12px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 14px 36px rgba(33, 33, 33, 0.18);
    z-index: 140;
}

.role-tree-editor-image-hover.is-visible {
    display: block;
}

.role-tree-editor-image-hover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 10px;
    background: #ffffff;
}

.role-tree-editor-head__title h3 {
    margin: 6px 0 8px 0;
    color: #212121;
}

.role-tree-editor-head__title p {
    margin: 0;
    color: #8a8a8a;
    font-size: 13px;
    line-height: 1.7;
}

.role-tree-editor-back {
    color: #d08c69;
    font-size: 13px;
    text-decoration: none;
}

.role-tree-editor-head__actions {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.role-tree-editor-toolbar-btn {
    min-width: 52px;
}

.role-tree-editor-toolbar-btn--staged {
    background-color: #178200;
    border-color: #178200;
    color: #ffffff;
}

.role-tree-editor-save-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background-color: #f6f7fb;
    color: #6d6d6d;
    font-size: 13px;
}

.role-tree-editor-board {
    margin-top: 16px;
    background-color: #ffffff;
    border-radius: 14px;
    padding: 18px 20px 26px 20px;

    overflow-x: auto;
}

.role-tree-editor-empty {
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #9a9a9a;
    font-size: 15px;
}

.role-tree-editor__list {
    list-style: none;
    margin: 0;
    padding-left: 38px;
}

.role-tree-editor__list--root {
    padding-left: 0;
}

.role-tree-editor__item {
    position: relative;
    margin: 0;
}

.role-tree-editor__item:before {
    display: none;
}

.role-tree-editor__item:after {
    content: '';
    position: absolute;
    left: 25px;
    top: 55px;
    bottom: 2px;
    border-left: 1px solid #d9dde7;
    opacity: 0.56;
}

.role-tree-editor__item:last-child:after {
    height: 0;
}

.role-tree-editor__list--root > .role-tree-editor__item:before {
    display: none;
}

.role-tree-editor__item.has-count:after {
    top: 61px;
}

.role-tree-editor__row {

    position: relative;
    display: flex;
    align-items: flex-start;
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;

    border: 2px solid transparent;
    border-radius: 15px;
    box-sizing: border-box;
    transition: border-color .18s ease;
}

.role-tree-editor__item.is-active > .role-tree-editor__row {

    border-color: rgba(255, 67, 68, 0.58);
}

.role-tree-editor__drag {
    width: 28px;
    min-width: 28px;
    padding: 0;
    margin-top: 13px;
    border: none;
    background: transparent;
    cursor: grab;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.role-tree-editor__drag:focus {
    outline: none;
}

.role-tree-editor__drag-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: rgba(33, 33, 33, 0.89);
}

.role-tree-editor__drag.is-staged .role-tree-editor__drag-dot {
    background-color: #178200;
}

.role-tree-editor__drag.is-folded .role-tree-editor__drag-dot {
    box-shadow: 0 0 0 4px rgba(33, 33, 33, 0.12);
}

.role-tree-editor__drag-count {
    min-width: 20px;
    height: auto;
    background-color: transparent;
    color: rgba(33, 33, 33, 0.7);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    padding: 0;
}

.role-tree-editor__drag-count--hidden {
    visibility: hidden;
}

.role-tree-editor__main {
    position: relative;
    flex: 1;
    min-width: 240px;
    border: 2px solid transparent;
    border-radius: 15px;
    background-color: #ffffff;
    padding: 0px 12px;
    transition: all .18s ease;
}

.role-tree-editor__title-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
}

.role-tree-editor__actions {
    flex: 1;
    min-width: 72px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.role-tree-editor__title-btn {
    max-width: 70%;
    border: none;
    background: transparent;
    padding: 0;
    color: #212121;
    font-size: 16px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    white-space: normal;
    word-break: break-word;
}

.role-tree-editor__title-input {
    max-width: 70%;
    border: none;
    border-bottom: 1px solid #d08c69;
    background-color: transparent;
    color: #212121;
    font-size: 16px;
    font-weight: 600;
    padding: 2px 0;
    box-shadow: none;
    outline: none;
}

.role-tree-editor__list--root > .role-tree-editor__item > .role-tree-editor__row .role-tree-editor__title-btn,
.role-tree-editor__list--root > .role-tree-editor__item > .role-tree-editor__row .role-tree-editor__title-input {
    font-size: 26px;
}

.role-tree-editor__list--root > .role-tree-editor__item > .role-tree-editor__row .role-tree-editor__title-row {
    min-height: 36px;
}

.role-tree-editor__list--root > .role-tree-editor__item > .role-tree-editor__row .role-tree-editor__drag {
    margin-top: 19px;
}

.role-tree-editor__spacer {
    flex: 1;
    min-height: 28px;
    border: none;
    background-color: transparent;
    cursor: pointer;
    border-radius: 8px;
    opacity: 0;
    transition: opacity .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.role-tree-editor__actions:hover .role-tree-editor__spacer {
    background-color: rgba(33, 33, 33, 0.06);
    box-shadow: inset 0 0 0 1px rgba(33, 33, 33, 0.04);
    opacity: 1;
}

.role-tree-editor__spacer:active {
    background-color: rgba(33, 33, 33, 0.10);
}

.role-tree-editor__delete-btn {
    width: 28px;
    height: 28px;
    border: none;
    background-color: transparent;
    color: rgba(33, 33, 33, 0.42);
    font-size: 16px;
    line-height: 28px;
    text-align: center;
    border-radius: 8px;
    cursor: pointer;
    padding: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity .15s ease, color .15s ease, background-color .15s ease;
}

.role-tree-editor__upload-btn {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    background-color: transparent;
    border-radius: 8px;
    cursor: pointer;
    padding: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity .15s ease, background-color .15s ease;
}

.role-tree-editor__actions:hover .role-tree-editor__upload-btn {
    opacity: 1;
    pointer-events: auto;
}

.role-tree-editor__upload-btn:hover {
    background-color: #f5f7fb;
}

.role-tree-editor__upload-btn--delete:hover {
    background-color: #fff1f1;
}

.role-tree-editor__upload-icon {
    display: block;
    width: 18px;
    height: 18px;
    object-fit: contain;
    opacity: 0.78;
}

.role-tree-editor__actions:hover .role-tree-editor__delete-btn {
    opacity: 1;
    pointer-events: auto;
}

.role-tree-editor__delete-btn:hover {
    color: rgba(33, 33, 33, 0.78);
    background-color: #f5f7fb;
}

.role-tree-editor__img-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-right: 4px;
    padding: 0;
    border: none;
    background-color: transparent;
    border-radius: 6px;
    cursor: pointer;
}

.role-tree-editor__img-btn:hover {
    opacity: 1;
}

.role-tree-editor__img-icon {
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 6px;
    object-fit: cover;
}

.role-tree-editor__icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-right: 4px;
}

.role-tree-editor__icon-img {
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 6px;
    object-fit: cover;
}

.role-tree-editor__brief-wrap {
    margin-top: 10px;
}

.role-tree-editor__brief-input {
    width: 100%;
    min-height: 78px;
    border: none;
    border-top: 1px dashed #ebeef4;
    padding: 10px 0 0 0;
    resize: none;
    overflow: hidden;
    color: #666666;
    font-size: 14px;
    line-height: 1.7;
    background-color: transparent;
    outline: none;
}

.role-tree-editor-finish-btn {
    display: block;
    width: 100%;
    margin-top: 12px;
    margin-bottom: 10px;
    padding: 5px 0;
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    background-color: #f5f5f5;
    color: #333;
    font-size: 14px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.role-tree-editor-finish-btn:hover {
    background-color: #e8e8e8;
}

.role-tree-editor-finish-btn:active {
    background-color: #ddd;
}
/*上下级的左间距*/
.role-tree-editor__children {
    margin-left: 0;
}

.role-tree-editor__children.is-collapsed {
    display: none;
}

.role-tree-editor__children--empty {
    min-height: 0;
}

.role-tree-editor__ghost .role-tree-editor__main {
    border-style: dashed;
    border-color: #d08c69;
    background-color: #fff8f4;
}

.role-tree-editor__item.is-dragging > .role-tree-editor__children {
    display: none !important;
}

.role-tree-editor__item.is-fold-preview > .role-tree-editor__children {
    display: none !important;
}

@media (max-width: 768px) {
    .role-tree-editor-page {
        padding: 16px 10px 48px 10px;
    }

    .role-tree-editor-head,
    .role-tree-editor-board {
        border-radius: 10px;
    }

    .role-tree-editor-head {
        padding: 16px;
        top: 0;
    }

    .role-tree-editor-head__actions {
        width: 100%;
    }

    .role-tree-editor-toolbar-btn {
        flex: 1;
    }

    .role-tree-editor__list {
        padding-left: 28px;
    }

    .role-tree-editor__title-btn,
    .role-tree-editor__title-input {
        max-width: 58%;
        font-size: 15px;
    }
}

/*------------------------ 其他通用------------------------*/



/*大圆圈,返回按钮*/
.backBtn {
    font-size: 21px;
    color: #212121;
    opacity: 0.87;
    text-decoration: none

}
/*返回按钮*/
.backBtnText {
transform: translateY(-4px);
    padding-left: 5px;
    font-size: 28px;
    color: #212121;
    opacity: 0.87;
    text-decoration: none
}

/* ---- 画布查找右侧栏: 时间线 / 手稿详情共用 ---- */

.find-child-right-sidebar_root {
    display: flex;
    width: 100%;
    height: calc(100vh - 52px);
}

.find-child-right-sidebar_canvas-wrap {
    flex: 1;
    min-width: 0;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.find-child-right-sidebar_canvas-wrap--dark {
    background: #1a1a1a;
}

.find-child-right-sidebar_canvas {
    width: 100%;
    height: 100%;
    display: block;
}

.find-child-right-sidebar_toolbar {
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 100;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 5px;
}

.find-child-right-sidebar_btn {
    width: 35px;
    height: 35px;
    border: none;
    border-radius: 12px;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    transition: background 0.15s;
    color: rgb(18 18 18 / 0.89);
}

.find-child-right-sidebar_btn:hover {
    background: rgba(255,255,255,1);
}

.find-child-right-sidebar_btn:active {
    background: #e0e0e0;
}

.find-child-right-sidebar_btn-find {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 100;
}

.find-child-right-sidebar_panel {
    width: 280px;
    height: 100%;
    background: rgb(28 11 11 / 0.95);
    border-left: 1px solid #444;
    display: none;
    flex-direction: column;
    overflow: hidden;
    flex-shrink: 0;
}

.find-child-right-sidebar_panel.is-visible {
    display: flex;
}

.find-child-right-sidebar_search {
    width: 100%;
    padding: 10px 38px 10px 12px;
    border: none;
    border-bottom: 1px solid #444;
    background: rgba(255,255,255,0.08);
    color: #ddd;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;
    flex-shrink: 0;
}

.find-child-right-sidebar-search-wrap {
    position: relative;
    flex-shrink: 0;
}

.find-child-right-sidebar-search-clear {
    display: none;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 18px;
    height: 18px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    transform: translateY(-50%);
}

.find-child-right-sidebar-search-wrap.has-value .find-child-right-sidebar-search-clear {
    display: block;
}

.find-child-right-sidebar-search-clear svg {
    display: block;
    width: 18px;
    height: 18px;
}

.find-child-right-sidebar_search::placeholder {
    color: #777;
}

.find-child-right-sidebar_list {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
}

.find-child-right-sidebar_list::-webkit-scrollbar {
    width: 4px;
}

.find-child-right-sidebar_list::-webkit-scrollbar-thumb {
    background: #555;
    border-radius: 2px;
}

.find-child-right-sidebar_item {
    padding: 6px 12px;
    cursor: pointer;
    color: rgb(255 255 255 / 0.95);
    font-size: 16px;
    border-bottom: 1px solid rgba(255,255,255,0.04);
    transition: background 0.1s;
}

.find-child-right-sidebar_item:hover {
    background: rgba(255,255,255,0.08);
}

.find-child-right-sidebar_item.is-selected {
    background: rgba(255,255,255,0.12);
    color: #fff;
}

.find-child-right-sidebar_row {
    display: flex;
    align-items: center;
}

.find-child-right-sidebar_type {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    margin-right: 10px;
    background: #757575;
    color: rgb(255 255 255 / 0.95);
    font-weight: bold;
}

.find-child-right-sidebar_type_inspirations {
    background: #EAB306;
}

.find-child-right-sidebar_type_roles {
    background: #03B6D4;
}

.find-child-right-sidebar_type_book_drafts {
    background: #F97216;
}

.find-child-right-sidebar_type_articles {
    background: #23C55D;
}

.find-child-right-sidebar_type_book_volumes {
    background: #A855F7;
}

.find-child-right-sidebar_type_book_maps {
    background: #EF4444;
}

.find-child-right-sidebar_type_Mark,
.find-child-right-sidebar_type_mark {
    background: #000000;
}

.find-child-right-sidebar_type_map_mark {
    background: #D946EF;
}

.find-child-right-sidebar_type_missing {
    background: #9c9c9c;
}

.find-child-right-sidebar_title {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.find-child-right-sidebar_highlight {
    background: rgba(212, 175, 55, 0.42);
    border-radius: 2px;
    color: #fff;
}

.find-child-right-sidebar_meta {
    margin-top: 2px;
    padding-left: 34px;
    font-size: 11px;
    color: #888;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.find-child-right-sidebar_info {
    color: rgb(44 44 44 / 0.34);
    font-size: 12px;
    pointer-events: none;
    transform: translateY(-4px);
}

.find-child-right-sidebar_loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 200;
    background: rgba(0,0,0,0.7);
    color: #fff;
    padding: 12px 24px;
    border-radius: 6px;
    font-size: 14px;
}

.find-child-right-sidebar_bottom-left {
    position: absolute;
    bottom: 10px;
    left: 10px;
    z-index: 100;
    display: flex;
    align-items: baseline;
    gap: 5px;
    margin-left: 8px;
}

.timeline_custom_cb {
    display: flex;
    align-items: center;
    gap: 6px;
    color: rgb(44 44 44 / 0.39);
    font-size: 12px;
    font-weight: normal;
    cursor: pointer;
    user-select: none;
}

.timeline_custom_cb_2 {
    margin: 0;
    position: relative;
    top: -2px;
    opacity: 0.56;
    accent-color: #474747;
}

.timeline_custom_cb input {
    cursor: pointer;
}

/* █████████████████████ ----------------- 时间线节点修改面板  ---------------------*/

.timeline-relation-pick-banner {
    display: none;
    position: absolute;
    top: 18px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 230;
    border-radius: 18px;
    padding: 8px 14px;
    color: #fff;
    font-size: 14px;
    line-height: 1;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
    align-items: center;
    gap: 10px;
    pointer-events: auto;
}

.timeline-relation-pick-banner-prev {
    background: #5a5a5a;
}

.timeline-relation-pick-banner-next {
    background: #F44327;
}

.timeline-relation-pick-cancel {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.22);
    color: #fff;
    line-height: 1;
    cursor: pointer;
}

.timeline-relation-pick-cancel-line {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 9px;
    height: 1.5px;
    background: #fff;
    border-radius: 1px;
}

.timeline-relation-pick-cancel-line-a {
    transform: translate(-50%, -50%) rotate(45deg);
}

.timeline-relation-pick-cancel-line-b {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.timeline-node-edit-mask {
    display: none;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 205;
    background: rgba(0, 0, 0, 0.36) ;
}


.timeline-node-edit-panel {
    display: none;
    position: absolute;
    z-index: 220;
    width: 350px;
    max-height: calc(100% - 16px);
    overflow: visible;
    box-sizing: border-box;
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 6px 22px rgba(0, 0, 0, 0.26);
    color: #333;
    font-size: 12px;
}

.timeline-node-edit-content {
    max-height: calc(100vh - 16px);
    overflow: auto;
    box-sizing: border-box;
    padding: 12px;
}

.timeline-node-edit-arrow {
    position: absolute;
    width: 0;
    height: 0;
    z-index: 221;
    margin-top: -8px;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.timeline-node-edit-arrow-right {
    left: -8px;
    right: auto;
    border-right: 8px solid #fff;
    border-left: 0;
}

.timeline-node-edit-arrow-left {
    right: -8px;
    left: auto;
    border-left: 8px solid #fff;
    border-right: 0;
}

.timeline-node-edit-title-row {
    display: flex;
    align-items: flex-start;
    gap: 6px;
}

.timeline-node-edit-title {
    flex: 0 1 auto;
    min-width: 0;
    max-width: calc(100% - 36px);
    padding: 8px 0 20px 0;
    font-size: 25px;
    font-weight: bold;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: rgb(18 18 18 / 0.89);
}

.timeline-node-edit-open-btn {
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    margin-top: 4px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.timeline-node-edit-open-btn img {
    width: 22px;
    height: 22px;
    opacity: 0.18;
    vertical-align: middle;
    transform: translateY(2px);
    margin-left: 2px;
}

.timeline-node-edit-open-btn:hover img {
    opacity: 0.87;
}

.timeline-node-color-board {
    display: grid;
    grid-template-columns: repeat(9, 28px);
    grid-auto-rows: 28px;
    justify-content: space-between;
    row-gap: 8px;
    column-gap: 0;
    margin-bottom: 12px;
}

.timeline-node-color-dot {
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #333;
    box-sizing: border-box;
    cursor: pointer;
    font-size: 8px;
    line-height: 28px;
}

.timeline-node-color-dot-selected {
    box-shadow: inset 0 0 0 3px #111;
}

.timeline-axis-hover-marker {
    filter: brightness(0) saturate(100%) invert(51%) sepia(68%) saturate(1635%) hue-rotate(321deg) brightness(101%) contrast(102%);
}

.timeline-node-field-label {
    margin-bottom: 5px;
    color: #777;
    font-size: 12px;
}

.timeline-node-text-input {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 7px 9px;
    font-size: 13px;
}

.timeline-node-text-input-start {
    margin-bottom: 10px;
}

.timeline-node-text-input-end {
    margin-bottom: 12px;
}

.timeline-node-date-title {
    margin-bottom: 2px;
    color: #777;
    font-size: 12px;
}

.timeline-node-date-title-end {
    margin-top: 10px;
}

.timeline-node-date-row {
    display: flex;
    align-items: center;
    gap: 3px;
    margin-top: 6px;
}

.timeline-node-date-input {
    width: 34px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 5px 3px;
    text-align: center;
    font-size: 12px;
    color: #333;
    background: #fff;
}

.timeline-node-date-input-year {
    width: 52px;
}

.timeline-node-date-label {
    color: #888;
    font-size: 11px;
}

.timeline-relation-row {
    margin-top: 8px;
}

.timeline-relation-label {
    margin-bottom: 5px;
    color: #777;
    font-size: 12px;
}

.timeline-relation-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    min-height: 25px;
}

.timeline-relation-empty {
    color: #e1e1e1;
    font-size: 12px;
}

.timeline-relation-tag {
    position: relative;
    display: inline-flex;
    align-items: center;
    max-width: 188px;
    border-radius: 8px;
    background: #f0f0f0;
    color: #555;
    padding: 4px 22px 4px 7px;
    font-size: 12px;
    line-height: 1;
}

.timeline-relation-tag-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.timeline-relation-tag-delete {
    position: absolute;
    right: 3px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #999;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
}

.timeline-relation-tag:hover .timeline-relation-tag-delete {
    opacity: 1;
}

.timeline-relation-tag-delete:hover {
    color: #F44327;
}

.timeline-relation-tag-delete-line {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 1.4px;
    background: currentColor;
    border-radius: 1px;
}

.timeline-relation-tag-delete-line-a {
    transform: translate(-50%, -50%) rotate(45deg);
}

.timeline-relation-tag-delete-line-b {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.timeline-relation-add {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    color: #a7a7a7;
    text-decoration: none;
    cursor: pointer;
    font-size: 14px;
    transform: translateY(-1px);
}

.timeline-relation-add:hover,
.timeline-relation-add:focus {
    color: #a7a7a7;
    text-decoration: none;
}

.timeline-relation-divider {
    border-top: 1px solid rgb(238 238 238 / 0.56);
    margin-top: 15px;
    margin-bottom: 5px;
}

.bottom_submit_btn_group {
    display: flex;
    gap: 8px;
    margin-top: 14px;
}

.bottom_submit_btn {
    border: none;
    border-radius: 10px;
    padding: 7px 0;
    cursor: pointer;
    font-size: 14px;
    font-weight: bold !important;
    transition: background 0.15s ease;
}

.bottom_submit_btn_group .bottom_submit_btn {
    flex: 1;
}

.bottom_submit_btn_cancel {
    background: #e0e0e0;
    color: #333;
}

.bottom_submit_btn_cancel:hover {
    background: #bdbdbd;
}

.bottom_submit_btn_confirm {
    background: #F44327;
    color: #fff;
}

.bottom_submit_btn_confirm:hover {
    background: #D32F2F;
}

.bottom_submit_btn_delete {
    background: #e0e0e0;
    color: #333;
}

.bottom_submit_btn_delete:hover {
    background: #bdbdbd;
}

/* ████████ 底部保存/取消按钮条 ████████ */

.bottom_submit_bar {
    display: none;
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%) translateY(calc(100% + 28px));
    opacity: 0;
    transition: transform 0.24s ease-out, opacity 0.18s ease-out;
    pointer-events: none;
    z-index: 200;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
    padding: 8px 8px 8px 12px;
    align-items: center;
    gap: 10px;
    font-size: 25px;
}

.bottom_submit_bar > span {
    color: #666;
}

.bottom_submit_bar .bottom_submit_btn {
    border-radius: 8px;
    padding: 6px 20px;
    font-size: 14px;
}

/*系统的按钮*/

.btn{
 border-radius: 12px;!important;

 }

/* █████████████████████ ----------------- 数据选择面板  ---------------------*/

.pick-up-item-data-mask {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3000;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(0, 0, 0, 0.22);
    box-sizing: border-box;
}

.pick-up-item-data-mask-show {
    display: flex;
}

.pick-up-item-data-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 500px;
    height: 700px;
    max-width: calc(100vw - 36px);
    max-height: calc(100vh - 36px);
    overflow: hidden;
    background: #fff;
    border-radius: 15px;
    box-shadow: 0 6px 22px rgba(0, 0, 0, 0.26);
    color: #333;
    font-size: 12px;
}

.pick-up-item-data-tabs {

    display: flex;
    align-items: center;
    gap: 4px;
    min-height: 45px;
    padding: 15px 12px 5px 12px;
    overflow-x: auto;
    box-sizing: border-box;
}

.pick-up-item-data-tab {
    flex: 0 0 auto;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: rgb(18 18 18 / 0.89);
    padding: 7px 10px;
    line-height: 1;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    margin-right: 10px;
}

.pick-up-item-data-tab:hover {
    background: #f5f5f6;
    color: #333;
}

.pick-up-item-data-tab-active {
    background: rgb(18 18 18 / 0.89);
    color: #fff;
}

.pick-up-item-data-tab-active:hover {
    background: #656565;
    color: #fff;
}

.pick-up-item-data-close {
    position: absolute;
    right: 9px;
    top: 8px;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #999;
    font-size: 22px;
    line-height: 28px;
    cursor: pointer;
}

.pick-up-item-data-close:hover {

    color: #191919;
    font-weight: bold;
}

.pick-up-item-data-search-wrap {
}

.pick-up-item-data-search {
    width: 100%;
    height: 40px;
    padding: 0 15px;
    color: #333;
    border: none;

}

.pick-up-item-data-search:focus {
    border-color: #F44327;
    background: #fff;
}
.pick-up-item-data-search::placeholder {
    color: #999; /* 设置占位文字颜色 */
    opacity: 1;  /* 确保完全不透明 */
}

.pick-up-item-data-list {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-left: 5px;
    padding-right: 5px;
}
/* Chrome, Safari, Edge等Webkit内核浏览器 */
.pick-up-item-data-list::-webkit-scrollbar {
    width: 6px; /* 可以设置得更细 */
}

.pick-up-item-data-list::-webkit-scrollbar-track {
    background: transparent; /* 完全透明轨道背景 */
    border: none; /* 无边框 */
}

.pick-up-item-data-list::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.1); /* 半透明滑块 */
    border-radius: 0px; /* 较小的圆角 */
    border: none; /* 无边框 */
}

.pick-up-item-data-list::-webkit-scrollbar-thumb:hover {
    background-color: rgba(0, 0, 0, 0.5); /* 悬停时加深 */
}

.pick-up-item-data-list::-webkit-scrollbar-thumb:active {
    background-color: rgba(0, 0, 0, 0.7); /* 点击时更深 */
}
.pick-up-item-data-row {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 0 12px;
    cursor: pointer;
    box-sizing: border-box;
}

.pick-up-item-data-row:hover {
    background: #fafafa;
}

.pick-up-item-data-row-selected {
    background: #fafafa;
}

.pick-up-item-data-row-selected:hover {
    background: #fafafa;
}

.pick-up-item-data-row-main {
    min-width: 0;
    flex: 1;
}

.pick-up-item-data-row-title {
    color: rgb(18 18 18 / 0.89);
    font-size: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pick-up-item-data-row-title-existing {
    opacity: 0.36;
}

.pick-up-item-data-row-time {
    color: #999;
    font-size: 10px;
    line-height: 1;
}

.pick-up-item-data-confirm {
    display: none;
    flex: 0 0 auto;
    border: 0;
    border-radius: 10px;
    background: rgb(18 18 18 / 0.89);
    color: #fff;
    padding: 7px 13px;
    line-height: 1;
    cursor: pointer;
    font-size: 13px;
}

.pick-up-item-data-row-selected .pick-up-item-data-confirm {
    display: inline-block;
}

.pick-up-item-data-confirm:disabled {
    opacity: 0.68;
    cursor: default;
}

.pick-up-item-data-state {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 180px;
    color: #aaa;
    font-size: 13px;
}

.pick-up-item-data-state-error {
    color: #F44327;
}

.pick-up-item-data-pagination {
    min-height: 48px;
    padding: 18px 18px 10px 18px;
    box-sizing: border-box;
    text-align: right;
}

.pick-up-item-data-pager {

    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 9px;
    width: auto;
    color: #999;
    font-size: 14px;
    line-height: 1;
}

.pick-up-item-data-page-btn,
.pick-up-item-data-page-count {
    flex: 0 0 auto;
    min-width: auto;
    height: auto;
    border-radius: 0;
    font-size: 13px;
    line-height: 1;
    box-sizing: border-box;
}

.pick-up-item-data-page-btn {
    border: 0;
    padding: 0;
    background: transparent;
    color: #999;
    cursor: pointer;
}

.pick-up-item-data-page-btn:hover {
    background: transparent;
    color: #555;
}

.pick-up-item-data-page-btn:disabled {
    background: transparent;
    color: #d0d0d0;
    cursor: default;
}

.pick-up-item-data-page-count {
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #999;
}

@media (max-width: 520px) {
    .pick-up-item-data-mask {
        align-items: flex-end;
        padding: 10px;
    }

    .pick-up-item-data-panel {
        width: 100%;
        height: calc(100vh - 20px);
        max-width: 100%;
        max-height: calc(100vh - 20px);
    }
}
