@charset "utf-8";

:root {
    --user-books-guest-gutter: 2%;
    --user-books-text: #556070;
    --user-books-muted: #8a94a3;
    --user-books-tag: #98a1ae;
    --user-books-border: #d7dee6;
    --user-books-surface: #ffffff;
    --user-books-surface-soft: #f5f8f6;
    --user-books-surface-hover: #f4fbf7;
    --user-books-accent: #2f9f6d;
    --user-books-accent-strong: #2f8f66;
    --user-books-accent-grad-start: #49bc88;
    --user-books-accent-grad-end: #379f70;
    --user-books-accent-shadow: rgba(53, 146, 102, 0.28);
    --user-books-accent-grad-hover-start: #41af7f;
    --user-books-accent-grad-hover-end: #318e64;
    --user-books-sort-active-bg: #ecf8f1;
    --user-books-sort-active-shadow: rgba(47, 159, 109, 0.16);
    --user-books-primary-border: #3ea775;
    --user-books-secondary-text: #5b6b63;
    --user-books-secondary-border: #d4e1db;
    --user-books-secondary-hover-text: #2b7f57;
    --user-books-secondary-hover-border: #3eaf7c;
    --user-books-secondary-hover-bg: #f3faf7;
    --user-books-focus-ring: #3eaf7c;
    --user-books-guest-table-border: #f0f0f0;
    --user-books-guest-table-bg: #ffffff;
    --user-books-guest-head-bg: #f5f8f6;
    --user-books-guest-head-text: #2b3a33;
}

body.site-dark {
    --user-books-text: #cbd8e6;
    --user-books-muted: #9eb2c6;
    --user-books-tag: #8fa4ba;
    --user-books-border: #324557;
    --user-books-surface: #16212b;
    --user-books-surface-soft: #1a2833;
    --user-books-surface-hover: #203140;
    --user-books-accent: #4eb486;
    --user-books-accent-strong: #67ca9b;
    --user-books-accent-grad-start: #3fa877;
    --user-books-accent-grad-end: #2f875f;
    --user-books-accent-shadow: rgba(47, 135, 95, 0.38);
    --user-books-accent-grad-hover-start: #49b283;
    --user-books-accent-grad-hover-end: #367d5e;
    --user-books-sort-active-bg: #213543;
    --user-books-sort-active-shadow: rgba(78, 180, 134, 0.24);
    --user-books-primary-border: #4eb486;
    --user-books-secondary-text: #bfd0e0;
    --user-books-secondary-border: #3a4f63;
    --user-books-secondary-hover-text: #dceaf8;
    --user-books-secondary-hover-border: #4e677f;
    --user-books-secondary-hover-bg: #223343;
    --user-books-focus-ring: #67ca9b;
    --user-books-guest-table-border: #2d3f4f;
    --user-books-guest-table-bg: #16212b;
    --user-books-guest-head-bg: #1d2b37;
    --user-books-guest-head-text: #d5e2ef;
}

.user-books-list-page .my_bookshelf .title {
    display: flex;
    align-items: center;
    gap: 10px;
}

.user-books-list-page .my_bookshelf .title i {
    display: none;
}

.user-books-list-page .my_bookshelf .title h2 {
    margin: 0;
}

.user-books-list-page .my_bookshelf .title .books-tab-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid var(--user-books-border);
    background: var(--user-books-surface);
    color: var(--user-books-text);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    transition: background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.user-books-list-page .my_bookshelf .title .books-tab-link:hover {
    color: var(--user-books-accent-strong);
    border-color: var(--user-books-accent);
    background: var(--user-books-surface-hover);
}

.user-books-list-page .my_bookshelf .title .books-tab-link.is-active,
.user-books-list-page .my_bookshelf .title .books-tab-link[aria-current="page"] {
    color: #ffffff !important;
    border-color: var(--user-books-accent) !important;
    background: linear-gradient(180deg, var(--user-books-accent-grad-start) 0%, var(--user-books-accent-grad-end) 100%) !important;
    font-weight: 600;
    box-shadow: 0 6px 14px var(--user-books-accent-shadow);
}

.user-books-list-page .my_bookshelf .books-sort-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 4px 0 12px;
    flex-wrap: wrap;
}

.user-books-list-page .my_bookshelf .books-sort-label {
    color: var(--user-books-muted);
    font-size: 13px;
    line-height: 1;
}

.user-books-list-page .my_bookshelf .books-sort-btn {
    border: 1px solid var(--user-books-border);
    background: var(--user-books-surface);
    color: var(--user-books-text);
    border-radius: 999px;
    min-height: 30px;
    padding: 0 10px;
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
    transition: background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.user-books-list-page .my_bookshelf .books-sort-btn::after {
    content: " \2193";
    color: var(--user-books-muted);
}

.user-books-list-page .my_bookshelf .books-sort-btn[data-order="asc"]::after {
    content: " \2191";
}

.user-books-list-page .my_bookshelf .books-sort-btn:hover {
    border-color: var(--user-books-accent);
    color: var(--user-books-accent-strong);
    background: var(--user-books-surface-hover);
}

.user-books-list-page .my_bookshelf .books-sort-btn.is-active {
    border-color: var(--user-books-accent);
    color: var(--user-books-accent);
    background: var(--user-books-sort-active-bg);
    box-shadow: 0 2px 8px var(--user-books-sort-active-shadow);
}

.chapter-meta {
    padding: 5px 0;
    line-height: 1.6;
}

.chapter-line {
    display: flex;
    align-items: center;
    gap: 6px;
}

.chapter-line .tag {
    display: inline-block;
    min-width: 30px;
    color: var(--user-books-tag);
    font-size: 12px;
    line-height: 1.5;
}

.chapter-line a {
    float: none !important;
    height: auto !important;
    line-height: 1.8 !important;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.shelf-action {
    line-height: 1.8;
    padding-bottom: 4px;
    display: flex;
    justify-content: center;
}

.shelf-action a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 14px;
    border: 1px solid var(--user-books-secondary-border);
    background: var(--user-books-surface);
    color: var(--user-books-secondary-text);
    font-size: 12px;
    line-height: 1;
    box-sizing: border-box;
    white-space: nowrap;
    transition: background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.shelf-action.primary a {
    font-weight: 600;
    color: #fff;
    border-color: var(--user-books-primary-border);
    background: linear-gradient(180deg, var(--user-books-accent-grad-start) 0%, var(--user-books-accent-grad-end) 100%);
    box-shadow: 0 4px 10px var(--user-books-accent-shadow);
}

.shelf-action.primary a:hover {
    border-color: var(--user-books-accent-strong);
    background: linear-gradient(180deg, var(--user-books-accent-grad-hover-start) 0%, var(--user-books-accent-grad-hover-end) 100%);
    color: #fff;
}

.shelf-action.secondary a:hover {
    border-color: var(--user-books-secondary-hover-border);
    color: var(--user-books-secondary-hover-text);
    background: var(--user-books-secondary-hover-bg);
}

.shelf-action a:focus-visible {
    outline: 2px solid var(--user-books-focus-ring);
    outline-offset: 2px;
}

.user-books-list-page #shellPage,
.user-books-list-page #historyPage {
    padding: 10px 0 0;
}

.user-books-list-page .my_bookshelf .pageBox {
    margin-top: 14px;
    text-align: center;
}

.user-books-list-page .my_bookshelf .books-page-meta {
    display: none;
    margin-top: 8px;
    color: var(--user-books-muted);
    font-size: 13px;
    line-height: 1.6;
    text-align: center;
}

.books-mobile-card {
    display: none;
}

body.guest-shelf .my_l,
body.guest-read .my_l {
    display: none;
}

body.guest-shelf .my_r,
body.guest-read .my_r {
    width: 100%;
    float: none;
    border-left: none;
    box-sizing: border-box;
    padding: var(--user-books-guest-gutter) var(--user-books-guest-gutter) 24px;
    min-height: 0;
}

body.guest-shelf .my_r .my_bookshelf,
body.guest-read .my_r .my_bookshelf {
    width: 100%;
    max-width: none;
    margin: 0;
}

body.guest-shelf .my_bookshelf .title,
body.guest-read .my_bookshelf .title,
body.guest-shelf .my_bookshelf .updateTable,
body.guest-read .my_bookshelf .updateTable,
body.guest-shelf .my_bookshelf .pageBox,
body.guest-read .my_bookshelf .pageBox {
    width: 100% !important;
    max-width: none;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body.guest-shelf .my_bookshelf .title,
body.guest-read .my_bookshelf .title {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 24px;
}

body.guest-shelf .my_bookshelf .title .fl,
body.guest-read .my_bookshelf .title .fl {
    float: none;
}

body.guest-shelf .my_bookshelf .updateTable,
body.guest-read .my_bookshelf .updateTable {
    border: 1px solid var(--user-books-guest-table-border);
    border-radius: 8px;
    padding: 12px;
    box-sizing: border-box;
    background: var(--user-books-guest-table-bg);
}

body.guest-shelf .my_bookshelf .updateTable table,
body.guest-read .my_bookshelf .updateTable table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed;
    margin-bottom: 0;
}

body.guest-shelf .my_bookshelf .updateTable th,
body.guest-read .my_bookshelf .updateTable th {
    height: 52px;
    line-height: 52px;
    font-size: 16px;
    font-weight: 500;
    border-top: none;
    background: var(--user-books-guest-head-bg);
    color: var(--user-books-guest-head-text);
}

body.guest-shelf .my_bookshelf .pageBox,
body.guest-read .my_bookshelf .pageBox {
    text-align: center;
}


@media all {
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable td {
        height: auto !important;
        line-height: normal !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable td.name {
        line-height: normal !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-cover,
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-cover img {
        line-height: 0 !important;
        min-height: 0 !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-card a {
        height: auto !important;
        max-height: none !important;
        line-height: normal !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-cover {
        height: auto !important;
        line-height: 0 !important;
    }

    body.user-books-list-page:not(.user-books-mobile-layout) .my_bookshelf .updateTable .books-mobile-card {
        display: none !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable {
        margin: 0 2px;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table {
        display: block;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table thead {
        display: none;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tbody {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px 8px;
        margin: 0;
        padding: 4px 0 2px;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list {
        display: block;
        margin: 0;
        background: transparent !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td {
        border: none;
        background: transparent !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td.style,
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td.chapter,
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td.time,
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td.goread {
        display: none !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td.name {
        display: block;
        width: auto !important;
        padding: 0 !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book_list td.name > a {
        display: none;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book-empty-row {
        grid-column: 1 / -1;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tr.book-empty-row td {
        display: block !important;
        border: 1px dashed var(--user-books-border);
        border-radius: 10px;
        background: var(--user-books-surface) !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-card {
        display: flex;
        flex-direction: column;
        gap: 4px;
        width: 100%;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-cover {
        position: relative;
        display: block;
        border-radius: 14px;
        overflow: hidden;
        background: #ecf1ed;
        box-shadow: 0 10px 22px rgba(37, 55, 47, 0.14);
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-cover img {
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 3 / 4;
        object-fit: cover;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-status {
        position: absolute;
        top: 8px;
        right: 8px;
        padding: 0 8px;
        min-height: 22px;
        border-radius: 8px;
        color: #fff;
        font-size: 12px;
        line-height: 22px;
        font-weight: 700;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-status.is-ongoing {
        background: rgba(52, 171, 121, 0.92);
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-status.is-finished {
        background: rgba(84, 102, 124, 0.92);
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-title {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #111827;
        font-size: 14px;
        line-height: 1.32;
        text-decoration: none;
        min-height: 0;
        font-weight: 500;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-title:hover {
        color: #168b5f;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-row {
        display: flex;
        align-items: flex-end;
        justify-content: flex-start;
        gap: 4px;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta {
        flex: 0 1 auto;
        min-width: 0;
        max-width: calc(100% - 24px);
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-read,
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-time {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-read {
        color: #5f6f80;
        font-size: 11px;
        line-height: 1.32;
        font-weight: 500;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-time {
        color: #8f9bab;
        font-size: 10px;
        line-height: 1.2;
        margin-top: 0;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-more {
        flex: 0 0 auto;
        min-width: 24px;
        min-height: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-left: 2px !important;
        margin-right: 0 !important;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-more .shelf-action {
        margin: 0;
        padding: 0;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-more .shelf-action a {
        width: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
        height: 24px;
        border: none !important;
        border-radius: 6px !important;
        padding: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: transparent !important;
        position: relative;
        overflow: hidden;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-more .shelf-action a::before {
        content: "\22EE";
        color: #8f9bac;
        font-size: 22px;
        line-height: 1;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -56%);
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-more .shelf-action a:hover::before {
        color: #2f9f6d;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-more .books-mobile-more-spacer {
        width: 24px;
        height: 24px;
        display: block;
    }

    body.site-dark.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-title {
        color: #e3ecf6;
    }

    body.site-dark.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-read {
        color: #abc0d5;
    }

    body.site-dark.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-meta-time {
        color: #8396ac;
    }

    body.site-dark.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-cover {
        background: #22323f;
        box-shadow: 0 10px 22px rgba(0, 0, 0, 0.34);
    }
}

@media (min-width: 1500px) {
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tbody {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 12px 10px;
    }
}

@media (min-width: 1220px) and (max-width: 1499px) {
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tbody {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 12px 10px;
    }
}

@media (min-width: 920px) and (max-width: 1219px) {
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tbody {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 420px) {
    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable table tbody {
        gap: 10px 6px;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-title {
        font-size: 13px;
        line-height: 1.3;
    }

    body.user-books-mobile-layout.user-books-list-page .my_bookshelf .updateTable .books-mobile-status {
        top: 6px;
        right: 6px;
        min-height: 20px;
        line-height: 20px;
        font-size: 11px;
        padding: 0 7px;
    }
}
