:root {
    --booksfb2-ink: #162033;
    --booksfb2-muted: #667085;
    --booksfb2-line: rgba(22, 32, 51, 0.12);
    --booksfb2-blue: #214f9b;
    --booksfb2-green: #0d7567;
    --booksfb2-amber: #e9972f;
    --booksfb2-paper: #fffdf8;
    --booksfb2-bg: #f4f6f2;
}

body {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(244, 246, 242, 0.94) 34rem),
        radial-gradient(circle at 13% 5%, rgba(233, 151, 47, 0.12), transparent 26rem),
        radial-gradient(circle at 88% 10%, rgba(13, 117, 103, 0.10), transparent 28rem),
        var(--booksfb2-bg) !important;
    color: var(--booksfb2-ink);
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(22, 32, 51, 0.035) 1px, transparent 1px),
        linear-gradient(180deg, rgba(22, 32, 51, 0.03) 1px, transparent 1px);
    background-size: 46px 46px;
    mask-image: linear-gradient(180deg, #000, transparent 62%);
}

body,
.text-white,
.text-white-75,
.text-white-50,
.text-muted {
    color: var(--booksfb2-ink) !important;
}

.text-muted,
.text-white-50,
.text-white-75 {
    color: var(--booksfb2-muted) !important;
}

a,
.hover-text-primary:hover {
    color: var(--booksfb2-blue);
}

.bg-dark-card,
.bg-feature-card,
.bg-body-tertiary,
.dropdown-menu-dark {
    background: rgba(255, 253, 248, 0.88) !important;
    color: var(--booksfb2-ink) !important;
}

.border-white-10,
.border-white-20,
.border-top.border-white-10 {
    border-color: var(--booksfb2-line) !important;
}

.card {
    border-color: var(--booksfb2-line) !important;
}

.form-control,
.form-select,
.search-input,
.mobile-search-input {
    color: var(--booksfb2-ink) !important;
    border-color: rgba(22, 32, 51, 0.12) !important;
    background: rgba(255, 255, 255, 0.72) !important;
}

.form-control::placeholder,
.search-input::placeholder,
.mobile-search-input::placeholder {
    color: rgba(102, 112, 133, 0.72) !important;
}

.site-navbar {
    background: rgba(255, 253, 248, 0.92) !important;
    border-bottom: 1px solid rgba(22, 32, 51, 0.1) !important;
    box-shadow: 0 18px 36px rgba(22, 32, 51, 0.08);
    backdrop-filter: blur(20px);
}

.site-navbar::after {
    content: "";
    position: absolute;
    left: 2rem;
    right: 2rem;
    bottom: -1px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(233, 151, 47, 0.58), rgba(13, 117, 103, 0.58), transparent);
    opacity: 0.65;
}

.site-navbar .container-fluid {
    max-width: 1760px;
}

.site-navbar .nav-link,
.site-navbar .navbar-toggler,
.site-navbar .dropdown-toggle,
.site-navbar .text-white-50 {
    color: #626b7d !important;
}

.site-navbar .nav-link {
    border-radius: 999px;
    padding-inline: 0.76rem !important;
    white-space: nowrap;
}

.site-navbar .nav-link:hover,
.site-navbar .nav-link.active,
.site-navbar .hover-text-white:hover,
.site-navbar .text-primary {
    color: var(--booksfb2-ink) !important;
    background: rgba(22, 32, 51, 0.055);
}

.site-navbar .btn-outline-light {
    color: var(--booksfb2-blue) !important;
    border-color: rgba(33, 79, 155, 0.45) !important;
    background: rgba(255, 255, 255, 0.72) !important;
}

.site-navbar .navbar-collapse {
    position: relative;
    z-index: 1;
}

.site-navbar .dropdown-menu {
    border-radius: 18px;
    border: 1px solid rgba(22, 32, 51, 0.10) !important;
    box-shadow: 0 24px 52px rgba(22, 32, 51, 0.14) !important;
}

.site-navbar .dropdown-item {
    color: var(--booksfb2-ink) !important;
    border-radius: 12px;
}

.site-navbar .dropdown-item:hover,
.site-navbar .dropdown-item.active {
    color: var(--booksfb2-ink) !important;
    background: rgba(13, 117, 103, 0.10) !important;
}

.booksfb2-wordmark {
    display: inline-flex;
    align-items: center;
    gap: 0.48rem;
    color: var(--booksfb2-ink) !important;
    font-weight: 900;
    letter-spacing: 0;
    text-decoration: none;
}

.booksfb2-wordmark__pro {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3.35rem;
    height: 2.12rem;
    padding: 0 0.66rem;
    color: #fff;
    background: #1d2b55;
    border-radius: 0.55rem;
    box-shadow: 0 12px 24px rgba(29, 43, 85, 0.22);
}

.booksfb2-wordmark__books {
    font-size: 1.32rem;
}

.site-navbar .input-group,
.site-navbar form[role="search"] .form-control,
.site-navbar form[role="search"] .btn {
    border-radius: 999px;
}

.site-navbar form[role="search"] {
    padding: 0.28rem;
    border: 1px solid rgba(22, 32, 51, 0.10);
    border-radius: 999px;
    background: rgba(22, 32, 51, 0.045);
}

.site-navbar form[role="search"] .form-control {
    min-width: 0;
    font-size: 0.94rem;
}

.site-navbar form[role="search"] .form-control::placeholder {
    font-size: 0.94rem;
}

.site-navbar .booksfb2-navbar-actions {
    flex-shrink: 0;
}

.site-navbar .booksfb2-theme-toggle,
.site-navbar .booksfb2-library-link {
    width: 2.65rem;
    height: 2.65rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(22, 32, 51, 0.1) !important;
    border-radius: 999px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(239, 245, 243, 0.58)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 10px 24px rgba(22, 32, 51, 0.08);
    color: #4c5a70 !important;
}

.site-navbar .booksfb2-theme-toggle:hover,
.site-navbar .booksfb2-library-link:hover {
    color: #fff !important;
    border-color: rgba(13, 117, 103, 0.18) !important;
    background: linear-gradient(135deg, #214f9b, #0d7567) !important;
}

.site-navbar .booksfb2-theme-toggle .booksfb2-theme-bi {
    display: none !important;
}

.site-navbar .booksfb2-theme-toggle .booksfb2-theme-svg {
    width: 1.28rem;
    height: 1.28rem;
    display: block;
    color: currentColor;
    flex: 0 0 auto;
}

.site-navbar .booksfb2-library-link {
    width: auto;
    min-width: 2.65rem;
    padding-inline: 0.82rem !important;
    text-decoration: none;
    display: none !important;
}

.site-navbar .booksfb2-library-link span {
    display: none !important;
}

@media (min-width: 992px) {
    .site-navbar .booksfb2-library-link {
        display: inline-flex !important;
    }

    .site-navbar .booksfb2-library-link span {
        display: inline !important;
    }
}

.site-navbar .booksfb2-login-btn,
.site-navbar .booksfb2-register-btn {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px !important;
    font-weight: 850;
    letter-spacing: -0.015em;
}

.site-navbar .booksfb2-login-btn {
    color: var(--booksfb2-ink) !important;
    border-color: rgba(22, 32, 51, 0.14) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(243, 247, 245, 0.72)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 10px 24px rgba(22, 32, 51, 0.07);
}

.site-navbar .booksfb2-login-btn:hover {
    color: #fff !important;
    border-color: rgba(33, 79, 155, 0.2) !important;
    background: linear-gradient(135deg, #214f9b, #0d7567) !important;
}

.site-navbar .booksfb2-register-btn {
    color: #fff !important;
    border-color: rgba(13, 117, 103, 0.22) !important;
    background:
        linear-gradient(135deg, #17233d, #214f9b 54%, #0d7567) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 14px 30px rgba(33, 79, 155, 0.18);
}

.site-navbar .booksfb2-register-btn:hover {
    border-color: rgba(233, 151, 47, 0.28) !important;
    background: linear-gradient(135deg, #0d7567, #214f9b 58%, #e9972f) !important;
}

.btn-primary,
.booksfb2-home-hero__primary {
    background: var(--booksfb2-ink) !important;
    border-color: var(--booksfb2-ink) !important;
    color: #fff !important;
}

.btn-outline-light {
    color: var(--booksfb2-ink) !important;
    border-color: rgba(22, 32, 51, 0.24) !important;
    background: rgba(255, 255, 255, 0.74) !important;
}

.btn-outline-light:hover {
    color: #fff !important;
    background: var(--booksfb2-ink) !important;
}

#catalog-home-page {
    max-width: 1760px;
}

.booksfb2-home-hero {
    margin-top: 1.8rem;
}

.booksfb2-home-hero__main {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.68fr);
    gap: 1.15rem;
    min-height: 420px;
}

.booksfb2-home-hero__copy {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    padding: clamp(2rem, 5vw, 4.8rem);
    color: #fff;
    background:
        linear-gradient(135deg, rgba(22, 32, 51, 0.96), rgba(33, 79, 155, 0.86)),
        radial-gradient(circle at 84% 12%, rgba(233, 151, 47, 0.32), transparent 22rem);
    border-radius: 18px;
    box-shadow: 0 34px 76px rgba(22, 32, 51, 0.22);
}

.booksfb2-home-hero__copy::after {
    content: "";
    position: absolute;
    right: -7rem;
    bottom: -9rem;
    width: 27rem;
    height: 27rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 50%;
}

.booksfb2-home-hero__eyebrow,
.booksfb2-catalog-head__eyebrow,
.booksfb2-empty-catalog__eyebrow {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    padding: 0.42rem 0.76rem;
    border-radius: 999px;
    font-size: 0.74rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.booksfb2-home-hero__eyebrow {
    color: #ffe3b1;
    background: rgba(255, 255, 255, 0.12);
}

.booksfb2-home-hero__title {
    position: relative;
    z-index: 1;
    max-width: 14ch;
    margin: 1.2rem 0 0;
    font-size: clamp(2.6rem, 6vw, 6.6rem);
    line-height: 0.92;
    font-weight: 950;
    letter-spacing: 0;
}

.booksfb2-home-hero__text {
    position: relative;
    z-index: 1;
    max-width: 45rem;
    margin: 1.45rem 0 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: clamp(1.04rem, 1.3vw, 1.26rem);
    line-height: 1.72;
}

.booksfb2-home-hero__actions,
.booksfb2-home-hero__signals {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 0.78rem;
    margin-top: 1.6rem;
}

.booksfb2-home-hero__primary,
.booksfb2-home-hero__secondary {
    display: inline-flex;
    align-items: center;
    gap: 0.58rem;
    min-height: 3.15rem;
    padding: 0 1.15rem;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 850;
}

.booksfb2-home-hero__primary {
    background: #fff !important;
    color: var(--booksfb2-ink) !important;
}

.booksfb2-home-hero__secondary {
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.26);
    background: rgba(255, 255, 255, 0.08);
}

.booksfb2-home-hero__signals span {
    display: inline-flex;
    align-items: center;
    gap: 0.44rem;
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.92rem;
}

.booksfb2-home-hero__feature {
    position: relative;
    display: grid;
    align-content: center;
    min-height: 100%;
    padding: 2rem;
    border: 1px solid rgba(22, 32, 51, 0.10);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(255, 253, 248, 0.96), rgba(238, 244, 239, 0.92)),
        repeating-linear-gradient(90deg, rgba(22, 32, 51, 0.05) 0 1px, transparent 1px 5rem);
    box-shadow: 0 28px 62px rgba(22, 32, 51, 0.10);
}

.booksfb2-home-hero__book {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: min(100%, 20rem);
    aspect-ratio: 2 / 2.75;
    margin: 0 auto;
    padding: 1.25rem;
    color: #fff;
    background:
        linear-gradient(145deg, rgba(29, 43, 85, 0.98), rgba(13, 117, 103, 0.9)),
        radial-gradient(circle at 80% 10%, rgba(233, 151, 47, 0.5), transparent 12rem);
    border-radius: 10px 18px 18px 10px;
    box-shadow: 18px 26px 54px rgba(22, 32, 51, 0.26);
}

.booksfb2-home-hero__book-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.2rem;
    height: 3.2rem;
    margin-bottom: auto;
    border-radius: 0.7rem;
    background: rgba(255, 255, 255, 0.16);
    font-weight: 900;
}

.booksfb2-home-hero__book-title {
    font-size: 1.45rem;
    line-height: 1.15;
    font-weight: 900;
}

.booksfb2-home-hero__book-line {
    display: block;
    width: 100%;
    height: 0.52rem;
    margin-top: 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.26);
}

.booksfb2-home-hero__book-line--short {
    width: 66%;
}

.booksfb2-home-hero__note {
    position: absolute;
    right: 1.25rem;
    bottom: 1.25rem;
    width: 13.5rem;
    padding: 0.95rem;
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 18px 42px rgba(22, 32, 51, 0.12);
    backdrop-filter: blur(14px);
}

.booksfb2-home-hero__note span {
    color: var(--booksfb2-green);
    font-size: 0.76rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.booksfb2-home-hero__note strong {
    display: block;
    margin-top: 0.3rem;
    color: var(--booksfb2-ink);
    line-height: 1.28;
}

.booksfb2-home-routes {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 0.78rem;
    margin-top: 0.9rem;
}

.booksfb2-home-routes__item {
    display: grid;
    gap: 0.42rem;
    min-height: 9.7rem;
    padding: 1rem;
    color: var(--booksfb2-ink);
    text-decoration: none;
    border: 1px solid rgba(22, 32, 51, 0.1);
    border-radius: 14px;
    background: rgba(255, 253, 248, 0.84);
    box-shadow: 0 16px 34px rgba(22, 32, 51, 0.07);
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.booksfb2-home-routes__item:hover {
    transform: translateY(-3px);
    border-color: rgba(13, 117, 103, 0.32);
    box-shadow: 0 22px 44px rgba(13, 117, 103, 0.12);
}

.booksfb2-home-routes__item--warm {
    background: linear-gradient(145deg, rgba(255, 253, 248, 0.92), rgba(255, 239, 210, 0.76));
}

.booksfb2-home-routes__item--green {
    background: linear-gradient(145deg, rgba(255, 253, 248, 0.92), rgba(222, 243, 237, 0.8));
}

.booksfb2-home-routes__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.55rem;
    height: 2.55rem;
    color: var(--booksfb2-blue);
    background: rgba(33, 79, 155, 0.10);
    border-radius: 0.72rem;
    font-size: 1.14rem;
}

.booksfb2-home-routes__label {
    font-size: 1.12rem;
    font-weight: 900;
    line-height: 1.12;
}

.booksfb2-home-routes__meta {
    color: var(--booksfb2-muted);
    font-size: 0.94rem;
    line-height: 1.34;
    font-weight: 720;
}

.booksfb2-catalog-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin: 4rem 0 1.1rem;
}

.booksfb2-catalog-head__eyebrow,
.booksfb2-empty-catalog__eyebrow {
    color: var(--booksfb2-green);
    background: rgba(13, 117, 103, 0.1);
}

.booksfb2-catalog-head__title {
    margin: 0.65rem 0 0;
    color: var(--booksfb2-ink);
    font-size: clamp(1.4rem, 2.4vw, 2.6rem);
    line-height: 1.06;
    font-weight: 950;
    letter-spacing: 0;
}

.booksfb2-filter-bar {
    display: flex !important;
    justify-content: flex-start;
    margin-bottom: 2.4rem !important;
}

.booksfb2-filter-bar .catalog-filter-toolbar__buttons {
    padding: 0.55rem;
    border: 1px solid rgba(22, 32, 51, 0.10);
    border-radius: 999px;
    background: rgba(255, 253, 248, 0.72);
    box-shadow: 0 16px 32px rgba(22, 32, 51, 0.07);
}

.booksfb2-filter-bar .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    min-height: 2.75rem;
    line-height: 1;
    border-radius: 999px !important;
    font-weight: 850;
    transition:
        color 0.18s ease,
        background 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease;
}

.booksfb2-filter-bar .btn i {
    margin-right: 0 !important;
    line-height: 1;
    transform: translateY(-0.02em);
}

.booksfb2-filter-bar .btn-outline-light:hover,
.booksfb2-filter-bar .btn-outline-light:focus-visible {
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.64) !important;
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.92), rgba(13, 117, 103, 0.78)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        0 16px 34px rgba(33, 79, 155, 0.18) !important;
    transform: translateY(-1px);
}

.booksfb2-filter-bar .btn-outline-warning:hover,
.booksfb2-filter-bar .btn-outline-warning:focus-visible {
    color: #fff !important;
    border-color: rgba(255, 206, 134, 0.72) !important;
    background:
        linear-gradient(135deg, rgba(170, 92, 8, 0.94), rgba(226, 147, 35, 0.86)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.3),
        0 16px 34px rgba(170, 92, 8, 0.18) !important;
    transform: translateY(-1px);
}

.catalog-layout-switch {
    border: 1px solid rgba(22, 32, 51, 0.10) !important;
    background: rgba(255, 253, 248, 0.76) !important;
    box-shadow: 0 16px 32px rgba(22, 32, 51, 0.07);
}

.catalog-layout-switch__button {
    color: var(--booksfb2-muted) !important;
}

.catalog-layout-switch__button.is-active {
    color: #fff !important;
    background: var(--booksfb2-green) !important;
}

.catalog-grid-shell,
.collection-books-grid,
.collection-books-list {
    position: relative;
}

.vertical-book-card-wrapper,
.catalog-grid-shell .card,
.collection-books-grid .card,
.collection-books-list .card,
.genre-index-card,
.catalog-alphabet-panel,
.collection-show-card-body,
.profile-sidebar-card,
.profile-overview-panel,
.profile-stats-panel {
    border: 1px solid rgba(22, 32, 51, 0.10) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(145deg, rgba(255, 253, 248, 0.94), rgba(246, 249, 244, 0.9)) !important;
    box-shadow: 0 18px 42px rgba(22, 32, 51, 0.075) !important;
}

.vertical-book-card-wrapper {
    padding: 0.48rem;
}

.vertical-book-card-wrapper .book-cover-link,
.vertical-book-card-wrapper img,
.book-cover-link,
.book-cover-link img {
    border-radius: 12px !important;
}

.vertical-book-card-wrapper .card-body {
    padding: 0.85rem 0.35rem 0.35rem !important;
}

.vertical-book-card-wrapper .card-title a,
.catalog-grid-shell .card a,
.collection-books-grid .card a,
.collection-books-list .card a {
    color: var(--booksfb2-ink) !important;
}

.vertical-book-card-wrapper .card-title a:hover,
.catalog-grid-shell .card a:hover,
.collection-books-grid .card a:hover,
.collection-books-list .card a:hover {
    color: var(--booksfb2-green) !important;
}

.vertical-book-card-wrapper .bg-gradient-to-t {
    background: linear-gradient(180deg, transparent, rgba(22, 32, 51, 0.76)) !important;
}

.vertical-book-card-wrapper .badge,
.catalog-grid-shell .badge,
.collection-books-grid .badge,
.collection-books-list .badge {
    border: 0 !important;
    box-shadow: none !important;
}

.catalog-grid-shell .btn-outline-primary,
.collection-books-list .btn-outline-primary {
    color: var(--booksfb2-green) !important;
    border-color: rgba(13, 117, 103, 0.36) !important;
    background: rgba(13, 117, 103, 0.06) !important;
}

.catalog-grid-shell .btn-outline-primary:hover,
.collection-books-list .btn-outline-primary:hover {
    color: #fff !important;
    background: var(--booksfb2-green) !important;
}

.pagination {
    gap: 0.45rem;
}

.pagination .page-link {
    min-width: 2.55rem;
    min-height: 2.55rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--booksfb2-ink);
    border: 1px solid rgba(22, 32, 51, 0.12);
    border-radius: 999px !important;
    background: rgba(255, 253, 248, 0.88);
}

.pagination .active .page-link,
.pagination .page-link:hover {
    color: #fff;
    border-color: var(--booksfb2-ink);
    background: var(--booksfb2-ink);
}

.pagination .page-link:focus-visible {
    color: #fff;
    border-color: rgba(33, 79, 155, 0.76);
    background: linear-gradient(135deg, rgba(33, 79, 155, 0.94), rgba(13, 117, 103, 0.82));
    box-shadow: 0 0 0 0.18rem rgba(33, 79, 155, 0.16);
}

.booksfb2-empty-catalog {
    display: grid;
    grid-template-columns: 18rem minmax(0, 1fr);
    gap: clamp(1.5rem, 4vw, 3rem);
    align-items: center;
    padding: clamp(1.4rem, 4vw, 3rem);
    border: 1px solid rgba(22, 32, 51, 0.10);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(255, 253, 248, 0.9), rgba(238, 244, 239, 0.92)),
        repeating-linear-gradient(0deg, transparent 0 4.2rem, rgba(22, 32, 51, 0.055) 4.2rem 4.28rem);
    box-shadow: 0 24px 56px rgba(22, 32, 51, 0.09);
}

.booksfb2-empty-catalog__shelf {
    display: flex;
    align-items: end;
    justify-content: center;
    gap: 0.55rem;
    min-height: 14rem;
    padding: 1.1rem;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.72);
}

.booksfb2-empty-catalog__shelf span {
    display: block;
    width: 2.6rem;
    border-radius: 0.45rem 0.45rem 0.2rem 0.2rem;
    background: var(--booksfb2-blue);
}

.booksfb2-empty-catalog__shelf span:nth-child(1) { height: 8.8rem; background: var(--booksfb2-ink); }
.booksfb2-empty-catalog__shelf span:nth-child(2) { height: 11rem; background: var(--booksfb2-green); }
.booksfb2-empty-catalog__shelf span:nth-child(3) { height: 7.6rem; background: var(--booksfb2-amber); }
.booksfb2-empty-catalog__shelf span:nth-child(4) { height: 10rem; background: #5d6f93; }

.booksfb2-empty-catalog__title {
    margin: 0.8rem 0 0;
    color: var(--booksfb2-ink);
    font-size: clamp(1.8rem, 4vw, 4rem);
    line-height: 0.98;
    font-weight: 950;
    letter-spacing: 0;
}

.booksfb2-empty-catalog__text {
    max-width: 44rem;
    margin: 1rem 0 0;
    color: var(--booksfb2-muted);
    font-size: 1.05rem;
    line-height: 1.7;
}

.booksfb2-collections-section {
    color: var(--booksfb2-ink);
    border-color: rgba(22, 32, 51, 0.1) !important;
}

.booksfb2-collections-section .book-page-collections-section__all {
    border-color: rgba(13, 117, 103, 0.32) !important;
    color: var(--booksfb2-green) !important;
}

.book-page-collection-card {
    border-radius: 18px !important;
    background:
        linear-gradient(135deg, rgba(255, 253, 248, 0.92), rgba(232, 242, 236, 0.88)) !important;
    border: 1px solid rgba(22, 32, 51, 0.10) !important;
    box-shadow: 0 16px 36px rgba(22, 32, 51, 0.075) !important;
}

.book-page-collection-card__title,
.book-page-collection-card__meta {
    color: var(--booksfb2-ink) !important;
}

.book-page-collections-slider-nav {
    color: var(--booksfb2-ink) !important;
    background: rgba(255, 253, 248, 0.92) !important;
    border-color: rgba(22, 32, 51, 0.12) !important;
}

.book-page-title,
.display-4,
.display-5,
.display-6,
h1,
h2,
h3,
h4,
.h1,
.h2,
.h3,
.h4,
.h5 {
    color: var(--booksfb2-ink) !important;
    letter-spacing: -0.035em;
}

.badge.bg-success,
.badge.text-bg-success {
    background-color: var(--booksfb2-green) !important;
}

.badge.bg-warning,
.badge.text-bg-warning,
.btn-outline-warning {
    color: #8a4e0b !important;
    border-color: rgba(233, 151, 47, 0.42) !important;
    background-color: rgba(233, 151, 47, 0.13) !important;
}

.btn-primary:hover,
.booksfb2-home-hero__primary:hover {
    background: #0d7567 !important;
    border-color: #0d7567 !important;
}

.btn-outline-primary {
    color: var(--booksfb2-blue) !important;
    border-color: rgba(33, 79, 155, 0.38) !important;
}

.btn-outline-primary:hover {
    color: #fff !important;
    background: var(--booksfb2-blue) !important;
}

.footer-shell {
    border-radius: 18px !important;
    background:
        linear-gradient(135deg, rgba(255,253,248,0.96), rgba(236,244,240,0.92)) !important;
    border-color: var(--booksfb2-line) !important;
}

.footer-brand-mark {
    background: var(--booksfb2-ink) !important;
    color: #fff !important;
}

.footer-brand-title,
.home-quick-start__label {
    color: var(--booksfb2-ink) !important;
}

.footer-shell--booksfb2 {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-radius: 28px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.72), rgba(240, 247, 245, 0.32)),
        radial-gradient(circle at 8% 8%, rgba(255, 255, 255, 0.96), transparent 18rem),
        radial-gradient(circle at 88% 12%, rgba(33, 79, 155, 0.13), transparent 22rem),
        radial-gradient(circle at 80% 100%, rgba(13, 117, 103, 0.12), transparent 24rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 28px 72px rgba(22, 32, 51, 0.1) !important;
    backdrop-filter: blur(26px) saturate(1.22);
    -webkit-backdrop-filter: blur(26px) saturate(1.22);
}

.footer-shell--booksfb2::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(rgba(22, 32, 51, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(22, 32, 51, 0.035) 1px, transparent 1px);
    background-size: 38px 38px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.45), transparent 72%);
    pointer-events: none;
}

.footer-shell__orb {
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    filter: blur(4px);
    opacity: 0.76;
    pointer-events: none;
}

.footer-shell__orb--blue {
    top: -5rem;
    right: 18%;
    width: 18rem;
    height: 18rem;
    background: radial-gradient(circle, rgba(33, 79, 155, 0.16), transparent 68%);
}

.footer-shell__orb--green {
    right: -4rem;
    bottom: -6rem;
    width: 22rem;
    height: 22rem;
    background: radial-gradient(circle, rgba(13, 117, 103, 0.16), transparent 66%);
}

.footer-command {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(270px, 0.38fr);
    gap: 1rem;
    align-items: stretch;
}

.footer-command__brand,
.footer-contact-card,
.footer-route-board,
.footer-status-card,
.footer-bottom-strip {
    border: 1px solid rgba(255, 255, 255, 0.6);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.22));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 18px 42px rgba(22, 32, 51, 0.07);
    backdrop-filter: blur(22px) saturate(1.18);
    -webkit-backdrop-filter: blur(22px) saturate(1.18);
}

.footer-command__brand {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1.1rem;
    align-items: center;
    padding: clamp(1rem, 2.2vw, 1.7rem);
    border-radius: 24px;
}

.footer-brand-mark--wide {
    width: 4.25rem;
    height: 4.25rem;
    border-radius: 1.25rem;
    color: #fff !important;
    background:
        linear-gradient(135deg, #17233c, #214f9b 52%, #0d7567) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.28),
        0 18px 38px rgba(33, 79, 155, 0.22);
}

.footer-command__eyebrow,
.footer-route-group__label,
.footer-contact-card__label,
.footer-partner__eyebrow {
    display: block;
    color: var(--booksfb2-green);
    font-size: 0.74rem;
    font-weight: 950;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.footer-command__title {
    max-width: 20ch;
    margin: 0.35rem 0 0;
    color: var(--booksfb2-ink) !important;
    font-size: clamp(1.35rem, 2vw, 2.15rem);
    line-height: 1.06;
    font-weight: 950;
    letter-spacing: -0.045em;
}

.footer-command__text {
    max-width: 36rem;
    margin: 0.8rem 0 0;
    color: var(--booksfb2-muted);
    font-size: 0.98rem;
    font-weight: 700;
    line-height: 1.48;
}

.footer-contact-card {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1.2rem;
    border-radius: 24px;
}

.footer-contact-card__email {
    color: var(--booksfb2-ink);
    font-size: clamp(1rem, 1.35vw, 1.28rem);
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.footer-contact-card__email:hover,
.footer-route-link:hover,
.footer-info-link:hover {
    color: var(--booksfb2-green) !important;
}

.footer-contact-card__hint {
    color: var(--booksfb2-muted);
    font-size: 0.9rem;
    font-weight: 700;
}

.footer-route-board {
    display: grid;
    grid-template-columns: minmax(300px, 0.34fr) minmax(0, 1fr) minmax(240px, 0.34fr);
    gap: 1.35rem;
    align-items: start;
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 24px;
}

.footer-route-group {
    min-width: 0;
}

.footer-route-group--legal,
.footer-route-group--main {
    position: relative;
    padding: 0.35rem 0;
}

.footer-route-group--legal {
    padding-right: 1.35rem;
    border-right: 1px solid rgba(13, 117, 103, 0.14);
}

.footer-route-group--main {
    padding-left: 0.15rem;
}

.footer-route-group__label {
    margin-bottom: 0.75rem;
}

.footer-route-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
}

.footer-route-grid--menu {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.footer-route-link,
.footer-info-link {
    color: var(--booksfb2-ink);
    text-decoration: none;
}

.footer-route-link {
    display: flex;
    min-height: 2.72rem;
    align-items: center;
    gap: 0.58rem;
    padding: 0.58rem 0.72rem;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.4);
    font-size: 0.96rem;
    font-weight: 850;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
    transition: transform 0.18s ease, color 0.18s ease, background 0.18s ease;
}

.footer-route-link span {
    min-width: 0;
}

.footer-route-link i {
    display: inline-flex;
    width: 1.58rem;
    height: 1.58rem;
    align-items: center;
    justify-content: center;
    color: var(--booksfb2-blue);
    border-radius: 999px;
    background: rgba(33, 79, 155, 0.1);
}

.footer-route-link:hover {
    transform: translateY(-2px);
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.66);
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.94), rgba(13, 117, 103, 0.82));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        0 16px 36px rgba(33, 79, 155, 0.18);
}

.footer-route-link:hover i {
    color: #fff;
    background: rgba(255, 255, 255, 0.16);
}

.footer-route-link--static {
    cursor: default;
}

.footer-route-link--static:hover {
    transform: none;
}

.footer-info-link--static {
    cursor: default;
}

.footer-route-stack {
    display: grid;
    gap: 0.55rem;
}

.footer-route-stack--legal {
    align-content: start;
}

.footer-info-link {
    display: block;
    padding: 0.72rem 0;
    border-bottom: 1px solid rgba(22, 32, 51, 0.08);
    font-weight: 850;
}

.footer-info-link--legal {
    display: flex;
    width: 100%;
    min-height: 3.05rem;
    align-items: center;
    gap: 0.65rem;
    padding: 0.7rem 0.8rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.46), rgba(255, 255, 255, 0.24));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.72),
        0 10px 24px rgba(22, 32, 51, 0.035);
    line-height: 1.15;
    transition: transform 0.18s ease, color 0.18s ease, background 0.18s ease;
}

.footer-info-link--legal span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.footer-info-link--legal i {
    display: inline-flex;
    width: 1.68rem;
    height: 1.68rem;
    flex: 0 0 1.68rem;
    align-items: center;
    justify-content: center;
    color: var(--booksfb2-blue);
    border-radius: 999px;
    background: rgba(33, 79, 155, 0.1);
}

.footer-info-link--legal:hover {
    transform: translateY(-1px);
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.66);
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.84), rgba(13, 117, 103, 0.7));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        0 12px 26px rgba(33, 79, 155, 0.13);
}

.footer-info-link--legal:hover i {
    color: #fff;
    background: rgba(255, 255, 255, 0.16);
}

.footer-status-card {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 1rem;
    border-radius: 20px;
}

.footer-status-card__top {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.footer-chip {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    color: var(--booksfb2-ink) !important;
    border: 1px solid rgba(255, 255, 255, 0.58) !important;
    background: rgba(255, 255, 255, 0.42) !important;
    font-weight: 900;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.footer-chip--accent {
    color: #8a4e0b !important;
    background: rgba(255, 237, 210, 0.62) !important;
}

.footer-status-card__text {
    margin: 0;
    color: var(--booksfb2-muted);
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.45;
}

.footer-partner--mini {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 0.65rem;
    padding: 0.52rem 0.72rem;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.38);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.footer-partner__badge {
    display: inline-flex;
    width: 2.1rem;
    height: 2.1rem;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: 0.7rem;
    background: linear-gradient(135deg, #ff9343, #f36d27);
    font-weight: 950;
}

.footer-partner__title {
    display: block;
    color: var(--booksfb2-ink);
    font-weight: 950;
    line-height: 1;
}

.footer-bottom-strip {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1rem;
    padding: 0.82rem 1rem;
    border-radius: 18px;
    color: var(--booksfb2-muted);
    font-size: 0.9rem;
    font-weight: 750;
}

@media (max-width: 1199.98px) {
    .booksfb2-home-hero__main {
        grid-template-columns: 1fr;
    }

    .booksfb2-home-hero__feature {
        min-height: 26rem;
    }

    .booksfb2-home-routes {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    #app > main {
        padding-top: 1.2rem !important;
    }

    #catalog-home-page {
        max-width: min(1760px, calc(100vw - 6rem));
    }

    .booksfb2-home-hero {
        margin-top: -0.15rem;
        margin-bottom: 1.35rem !important;
    }

    .booksfb2-home-hero__main {
        grid-template-columns: minmax(0, 1fr) minmax(220px, 0.4fr);
        min-height: 220px;
        gap: 0.58rem;
    }

    .booksfb2-home-hero__copy {
        padding: clamp(1.25rem, 1.9vw, 2rem);
        border-radius: 14px;
    }

    .booksfb2-home-hero__title {
        max-width: 15ch;
        margin-top: 0.6rem;
        font-size: clamp(1.9rem, 2.55vw, 3.2rem);
        line-height: 1;
    }

    .booksfb2-home-hero__text {
        max-width: 34rem;
        margin-top: 0.72rem;
        font-size: 0.82rem;
        line-height: 1.46;
    }

    .booksfb2-home-hero__actions,
    .booksfb2-home-hero__signals {
        margin-top: 0.72rem;
        gap: 0.45rem;
    }

    .booksfb2-home-hero__primary,
    .booksfb2-home-hero__secondary {
        min-height: 2.12rem;
        padding: 0 0.72rem;
        font-size: 0.78rem;
    }

    .booksfb2-home-hero__feature {
        padding: 0.82rem;
        border-radius: 14px;
    }

    .booksfb2-home-hero__book {
        width: min(100%, 9.4rem);
        padding: 0.72rem;
    }

    .booksfb2-home-hero__note {
        right: 0.62rem;
        bottom: 0.62rem;
        width: 9.4rem;
        padding: 0.52rem;
        font-size: 0.72rem;
    }

    .booksfb2-home-routes {
        gap: 0.58rem;
        margin-top: 0.55rem;
    }

    .booksfb2-home-routes__item {
        min-height: 6.35rem;
        padding: 0.72rem;
        border-radius: 12px;
    }

    .booksfb2-home-routes__icon {
        width: 2.15rem;
        height: 2.15rem;
        font-size: 1.06rem;
    }

    .booksfb2-home-routes__label {
        font-size: 1rem;
        line-height: 1.08;
    }

    .booksfb2-home-routes__meta {
        font-size: 0.78rem;
        line-height: 1.28;
    }

    .booksfb2-catalog-head {
        margin-top: 1.8rem;
    }
}

@media (max-width: 767.98px) {
    #catalog-home-page {
        padding-inline: 1rem;
    }

    .booksfb2-wordmark__pro {
        min-width: 2.8rem;
        height: 1.75rem;
        font-size: 0.86rem;
    }

    .booksfb2-wordmark__books {
        font-size: 1.05rem;
    }

    .booksfb2-home-hero {
        margin-top: 1rem;
    }

    .booksfb2-home-hero__copy,
    .booksfb2-home-hero__feature,
    .booksfb2-empty-catalog {
        border-radius: 14px;
    }

    .booksfb2-home-hero__copy {
        padding: 1.45rem;
    }

    .booksfb2-home-hero__title {
        max-width: 12ch;
    }

    .booksfb2-home-routes {
        grid-template-columns: 1fr 1fr;
    }

    .booksfb2-home-routes__item {
        min-height: 8.5rem;
    }

    .booksfb2-catalog-head {
        display: grid;
        margin-top: 2.5rem;
    }

    .booksfb2-filter-bar .catalog-filter-toolbar__buttons {
        border-radius: 18px;
        justify-content: flex-start !important;
    }

    .booksfb2-empty-catalog {
        grid-template-columns: 1fr;
    }

    .booksfb2-empty-catalog__shelf {
        min-height: 10rem;
    }
}

@media (max-width: 420px) {
    .booksfb2-home-routes {
        grid-template-columns: 1fr;
    }

    .booksfb2-home-hero__actions {
        display: grid;
    }
}

.booksfb2-home-hero__copy,
.booksfb2-home-hero__copy h1,
.booksfb2-home-hero__copy h2,
.booksfb2-home-hero__copy h3,
.booksfb2-home-hero__copy .booksfb2-home-hero__title {
    color: #fff !important;
}

.booksfb2-home-hero__copy .booksfb2-home-hero__secondary,
.booksfb2-home-hero__copy .booksfb2-home-hero__signals span {
    color: rgba(255, 255, 255, 0.84) !important;
}

/* Liquid Glass homepage layer */
.booksfb2-home-hero {
    position: relative;
    isolation: isolate;
}

.booksfb2-home-hero::before {
    content: "";
    position: absolute;
    inset: -1.6rem -2.4rem auto;
    height: 72%;
    z-index: -1;
    border-radius: 36px;
    background:
        radial-gradient(circle at 16% 28%, rgba(255, 255, 255, 0.8), transparent 20rem),
        radial-gradient(circle at 78% 20%, rgba(99, 166, 255, 0.28), transparent 22rem),
        radial-gradient(circle at 55% 78%, rgba(61, 190, 160, 0.20), transparent 20rem);
    filter: blur(18px);
    opacity: 0.86;
}

.booksfb2-home-hero__copy,
.booksfb2-home-hero__feature,
.booksfb2-home-routes__item,
.booksfb2-empty-catalog {
    backdrop-filter: blur(24px) saturate(1.32);
    -webkit-backdrop-filter: blur(24px) saturate(1.32);
}

.booksfb2-home-hero__copy {
    border: 1px solid rgba(255, 255, 255, 0.28);
    background:
        linear-gradient(135deg, rgba(19, 31, 54, 0.86), rgba(35, 76, 137, 0.7)),
        radial-gradient(circle at 9% 12%, rgba(255, 255, 255, 0.24), transparent 14rem),
        radial-gradient(circle at 88% 78%, rgba(82, 215, 186, 0.22), transparent 18rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        inset 0 -24px 60px rgba(255, 255, 255, 0.06),
        0 28px 70px rgba(22, 32, 51, 0.2);
}

.booksfb2-home-hero__copy::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(115deg, rgba(255, 255, 255, 0.42), transparent 18%),
        radial-gradient(circle at 44% 0%, rgba(255, 255, 255, 0.28), transparent 16rem);
    opacity: 0.42;
    pointer-events: none;
}

.booksfb2-home-hero__copy::after {
    right: -4rem;
    bottom: -8rem;
    width: 22rem;
    height: 22rem;
    border-color: rgba(255, 255, 255, 0.2);
}

.booksfb2-home-hero__eyebrow {
    color: #fff4d7;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.booksfb2-home-hero__feature {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.52);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.55), rgba(245, 250, 247, 0.28)),
        radial-gradient(circle at 18% 20%, rgba(255, 255, 255, 0.88), transparent 10rem),
        radial-gradient(circle at 82% 76%, rgba(54, 190, 164, 0.18), transparent 14rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.86),
        0 24px 60px rgba(22, 32, 51, 0.12);
}

.booksfb2-home-hero__feature::before {
    content: "";
    position: absolute;
    inset: -35% auto auto -22%;
    width: 20rem;
    height: 20rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.56);
    filter: blur(18px);
}

.booksfb2-home-hero__dashboard {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 0.72rem;
    width: min(100%, 20rem);
    margin: auto;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 18px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.22)),
        radial-gradient(circle at 92% 12%, rgba(33, 79, 155, 0.18), transparent 9rem);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 18px 44px rgba(22, 32, 51, 0.14);
}

.booksfb2-home-hero__dashboard-kicker {
    color: var(--booksfb2-green);
    font-size: 0.68rem;
    font-weight: 950;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.booksfb2-home-hero__dashboard-title {
    color: var(--booksfb2-ink);
    font-size: clamp(1rem, 1.8vw, 1.55rem);
    line-height: 1.05;
}

.booksfb2-home-hero__dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.45rem;
}

.booksfb2-home-hero__dashboard-grid span {
    min-height: 2.35rem;
    display: flex;
    align-items: center;
    padding: 0 0.65rem;
    color: var(--booksfb2-ink);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.46);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
    font-size: 0.78rem;
    font-weight: 850;
}

.booksfb2-home-hero__dashboard-rail {
    display: grid;
    gap: 0.35rem;
}

.booksfb2-home-hero__dashboard-rail span {
    height: 0.45rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(33, 79, 155, 0.3), rgba(13, 117, 103, 0.18));
}

.booksfb2-home-hero__dashboard-rail span:nth-child(2) {
    width: 76%;
}

.booksfb2-home-hero__dashboard-rail span:nth-child(3) {
    width: 48%;
}

.booksfb2-home-routes__item {
    position: relative;
    overflow: hidden;
    border-color: rgba(255, 255, 255, 0.56);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.64), rgba(255, 255, 255, 0.28)),
        radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.92), transparent 7rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.78),
        0 14px 36px rgba(22, 32, 51, 0.08);
}

.booksfb2-home-routes__item::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, rgba(33, 79, 155, 0.76), rgba(13, 117, 103, 0.52));
    opacity: 0;
    transition: opacity 0.18s ease;
}

.booksfb2-home-routes__item:hover::before {
    opacity: 1;
}

.booksfb2-home-routes__icon {
    border: 1px solid rgba(255, 255, 255, 0.56);
    background: rgba(255, 255, 255, 0.42);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

@media (min-width: 1200px) {
    .booksfb2-home-hero__dashboard {
        width: min(100%, 13.4rem);
        padding: 0.76rem;
        gap: 0.48rem;
        border-radius: 14px;
    }

    .booksfb2-home-hero__dashboard-grid {
        gap: 0.32rem;
    }

    .booksfb2-home-hero__dashboard-grid span {
        min-height: 1.82rem;
        padding: 0 0.5rem;
        border-radius: 10px;
        font-size: 0.68rem;
    }

    .booksfb2-home-hero__dashboard-title {
        font-size: 1.05rem;
    }
}

.booksfb2-home-body .booksfb2-catalog-head {
    align-items: center;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 20px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.24)),
        radial-gradient(circle at 8% 0%, rgba(255, 255, 255, 0.92), transparent 10rem);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.86),
        0 18px 46px rgba(22, 32, 51, 0.08);
    backdrop-filter: blur(24px) saturate(1.22);
    -webkit-backdrop-filter: blur(24px) saturate(1.22);
}

.booksfb2-home-body .booksfb2-catalog-head__eyebrow,
.booksfb2-home-body .booksfb2-empty-catalog__eyebrow {
    border: 1px solid rgba(255, 255, 255, 0.58);
    background: rgba(255, 255, 255, 0.42);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.booksfb2-home-body .booksfb2-filter-bar .catalog-filter-toolbar__buttons,
.booksfb2-home-body .catalog-layout-switch,
.booksfb2-home-body .pagination .page-link {
    border-color: rgba(255, 255, 255, 0.58) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.28)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 14px 34px rgba(22, 32, 51, 0.07);
    backdrop-filter: blur(22px) saturate(1.18);
    -webkit-backdrop-filter: blur(22px) saturate(1.18);
}

.booksfb2-home-body .booksfb2-filter-bar .btn {
    border-color: rgba(255, 255, 255, 0.56) !important;
    background: rgba(255, 255, 255, 0.42) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.62);
}

.booksfb2-home-body .booksfb2-filter-bar .btn-outline-light:hover,
.booksfb2-home-body .booksfb2-filter-bar .btn-outline-light:focus-visible {
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.66) !important;
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.94), rgba(13, 117, 103, 0.8)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.36),
        0 18px 38px rgba(33, 79, 155, 0.2) !important;
}

.booksfb2-home-body .booksfb2-filter-bar .btn-outline-warning:hover,
.booksfb2-home-body .booksfb2-filter-bar .btn-outline-warning:focus-visible {
    color: #fff !important;
    border-color: rgba(255, 213, 146, 0.74) !important;
    background:
        linear-gradient(135deg, rgba(160, 82, 7, 0.96), rgba(231, 154, 43, 0.88)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.34),
        0 18px 38px rgba(170, 92, 8, 0.2) !important;
}

.booksfb2-home-body .booksfb2-filter-bar .btn-primary,
.booksfb2-home-body .catalog-layout-switch__button.is-active,
.booksfb2-home-body .pagination .active .page-link {
    color: #fff !important;
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.88), rgba(13, 117, 103, 0.76)) !important;
}

.booksfb2-home-body .pagination .page-link:hover,
.booksfb2-home-body .pagination .page-link:focus-visible {
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.66) !important;
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.94), rgba(13, 117, 103, 0.8)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.36),
        0 18px 38px rgba(33, 79, 155, 0.2) !important;
}

.booksfb2-home-body .catalog-grid-shell .card,
.booksfb2-home-body .vertical-book-card-wrapper {
    position: relative;
    overflow: hidden;
    border-color: rgba(255, 255, 255, 0.58) !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.24)),
        radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.85), transparent 8rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.78),
        0 18px 42px rgba(22, 32, 51, 0.08) !important;
    backdrop-filter: blur(22px) saturate(1.18);
    -webkit-backdrop-filter: blur(22px) saturate(1.18);
}

.booksfb2-home-body .vertical-book-card-wrapper::before,
.booksfb2-home-body .catalog-grid-shell .card::before,
.booksfb2-home-body .booksfb2-empty-catalog::before,
.booksfb2-home-body .footer-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0.5), transparent 24%);
    opacity: 0.38;
    pointer-events: none;
}

.booksfb2-home-body .booksfb2-empty-catalog {
    position: relative;
    overflow: hidden;
    border-color: rgba(255, 255, 255, 0.58);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(245, 250, 247, 0.28)),
        radial-gradient(circle at 18% 18%, rgba(255, 255, 255, 0.86), transparent 12rem),
        radial-gradient(circle at 92% 86%, rgba(61, 190, 160, 0.18), transparent 16rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.86),
        0 22px 56px rgba(22, 32, 51, 0.09);
}

.booksfb2-home-body .booksfb2-empty-catalog__shelf {
    border: 1px solid rgba(255, 255, 255, 0.58);
    background: rgba(255, 255, 255, 0.34);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.76);
    backdrop-filter: blur(18px) saturate(1.16);
    -webkit-backdrop-filter: blur(18px) saturate(1.16);
}

.booksfb2-home-body .booksfb2-collections-section {
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.54) !important;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.28);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.72),
        0 18px 44px rgba(22, 32, 51, 0.07);
    backdrop-filter: blur(22px) saturate(1.18);
    -webkit-backdrop-filter: blur(22px) saturate(1.18);
}

.booksfb2-home-body .book-page-collection-card,
.booksfb2-home-body .book-page-collections-slider-nav,
.booksfb2-home-body #home-page-collections-placeholder {
    border-color: rgba(255, 255, 255, 0.58) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.24)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.78),
        0 14px 34px rgba(22, 32, 51, 0.07) !important;
    backdrop-filter: blur(20px) saturate(1.18);
    -webkit-backdrop-filter: blur(20px) saturate(1.18);
}

.booksfb2-home-body #home-page-collections-placeholder {
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 18px;
    color: var(--booksfb2-muted) !important;
}

.booksfb2-home-body .footer-shell {
    position: relative;
    overflow: hidden;
    border-color: rgba(255, 255, 255, 0.58) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.64), rgba(255, 255, 255, 0.26)),
        radial-gradient(circle at 8% 0%, rgba(255, 255, 255, 0.9), transparent 18rem),
        radial-gradient(circle at 94% 84%, rgba(33, 79, 155, 0.14), transparent 18rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.86),
        0 22px 60px rgba(22, 32, 51, 0.10);
    backdrop-filter: blur(24px) saturate(1.22);
    -webkit-backdrop-filter: blur(24px) saturate(1.22);
}

.booksfb2-home-body .footer-brand-mark,
.booksfb2-home-body .footer-chip,
.booksfb2-home-body .footer-partner {
    border: 1px solid rgba(255, 255, 255, 0.56);
    background: rgba(255, 255, 255, 0.38) !important;
    color: var(--booksfb2-ink) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.booksfb2-home-body .footer-link {
    color: var(--booksfb2-ink) !important;
}

/* PRO Books liquid book cards */
.booksfb2-book-card {
    position: relative;
    isolation: isolate;
    padding: 0.54rem !important;
    border: 1px solid rgba(255, 255, 255, 0.62) !important;
    border-radius: 24px !important;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.62), rgba(244, 249, 246, 0.32)),
        radial-gradient(circle at 18% 0%, rgba(255, 255, 255, 0.9), transparent 8.5rem),
        radial-gradient(circle at 100% 78%, rgba(13, 117, 103, 0.13), transparent 9rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        inset 0 -1px 0 rgba(22, 32, 51, 0.04),
        0 22px 54px rgba(22, 32, 51, 0.1) !important;
    backdrop-filter: blur(24px) saturate(1.2);
    -webkit-backdrop-filter: blur(24px) saturate(1.2);
}

.booksfb2-book-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    background:
        linear-gradient(120deg, rgba(255, 255, 255, 0.58), transparent 28%),
        linear-gradient(180deg, transparent 62%, rgba(33, 79, 155, 0.08));
    opacity: 0.86;
    pointer-events: none;
}

.booksfb2-book-card::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(33, 79, 155, 0.9), rgba(13, 117, 103, 0.68), rgba(245, 177, 66, 0.76));
    opacity: 0.72;
    pointer-events: none;
}

.booksfb2-book-card:hover {
    transform: none !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.94),
        0 26px 64px rgba(22, 32, 51, 0.14) !important;
}

.booksfb2-book-card__cover-shell {
    overflow: visible;
    padding: 0.38rem;
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 20px;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0.13)),
        radial-gradient(circle at 15% 0%, rgba(255, 255, 255, 0.78), transparent 6rem);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.76),
        0 12px 28px rgba(22, 32, 51, 0.08);
}

.booksfb2-book-card__cover-link {
    position: relative;
    border-radius: 16px !important;
    box-shadow:
        0 18px 34px rgba(22, 32, 51, 0.18),
        0 2px 0 rgba(255, 255, 255, 0.55);
}

.booksfb2-book-card__cover-link::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(125deg, rgba(255, 255, 255, 0.28), transparent 34%, rgba(10, 18, 32, 0.12));
    pointer-events: none;
}

.booksfb2-book-card__cover-link img {
    border-radius: 16px !important;
    transform-origin: center;
}

.booksfb2-book-card:hover .booksfb2-book-card__cover-link img {
    transform: scale(1.045) rotate(-0.6deg);
}

.booksfb2-book-card.hover-card-lift:hover,
.booksfb2-book-list-card.hover-card-lift:hover,
.top100-card.hover-card-lift:hover,
.author-book-row-card.hover-card-lift:hover,
.series-book-row-card.hover-card-lift:hover {
    transform: none !important;
}

.booksfb2-book-card__rating-wrap {
    padding: 0.55rem !important;
    background: linear-gradient(180deg, transparent, rgba(10, 18, 32, 0.46)) !important;
}

.booksfb2-book-card__rating {
    display: inline-flex;
    align-items: center;
    min-height: 1.72rem;
    padding: 0.32rem 0.62rem !important;
    color: #fff8df !important;
    background: rgba(22, 32, 51, 0.72) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.24),
        0 10px 22px rgba(10, 18, 32, 0.22) !important;
    backdrop-filter: blur(14px) saturate(1.18);
    -webkit-backdrop-filter: blur(14px) saturate(1.18);
}

.booksfb2-book-card__body {
    position: relative;
    z-index: 1;
    padding: 0.9rem 0.34rem 0.26rem !important;
}

.booksfb2-book-card__title {
    margin-bottom: 0.35rem !important;
    letter-spacing: -0.025em;
}

.booksfb2-book-card__title a {
    color: var(--booksfb2-ink) !important;
}

.booksfb2-book-card__title a:hover {
    color: var(--booksfb2-green) !important;
}

.booksfb2-book-card__authors,
.booksfb2-book-card__authors a,
.booksfb2-book-card__genre {
    color: rgba(22, 32, 51, 0.62) !important;
}

.booksfb2-book-card__genre {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 0.32rem 0.62rem;
    border: 1px solid rgba(22, 32, 51, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.48);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.booksfb2-book-card__metrics {
    gap: 0.45rem;
    padding-top: 0.62rem !important;
    border-top: 0 !important;
}

.booksfb2-book-card__metric {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.9rem;
    padding: 0.28rem 0.58rem;
    color: rgba(22, 32, 51, 0.62) !important;
    border: 1px solid rgba(255, 255, 255, 0.54);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.42);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.booksfb2-book-card .dropdown > .btn {
    color: var(--booksfb2-ink) !important;
    background: rgba(255, 255, 255, 0.64) !important;
    border: 1px solid rgba(255, 255, 255, 0.58) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 10px 24px rgba(22, 32, 51, 0.14) !important;
    backdrop-filter: blur(16px) saturate(1.18);
    -webkit-backdrop-filter: blur(16px) saturate(1.18);
}

.booksfb2-book-list-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.62) !important;
    border-radius: 26px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.66), rgba(244, 249, 246, 0.28)),
        radial-gradient(circle at 0% 8%, rgba(255, 255, 255, 0.92), transparent 12rem),
        radial-gradient(circle at 100% 100%, rgba(33, 79, 155, 0.12), transparent 16rem) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        0 22px 58px rgba(22, 32, 51, 0.09) !important;
    backdrop-filter: blur(24px) saturate(1.18);
    -webkit-backdrop-filter: blur(24px) saturate(1.18);
}

.booksfb2-book-list-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.42rem;
    background: linear-gradient(180deg, rgba(33, 79, 155, 0.82), rgba(13, 117, 103, 0.64), rgba(245, 177, 66, 0.72));
    opacity: 0.86;
}

.booksfb2-book-list-card__body {
    position: relative;
    z-index: 1;
    padding-left: 1.35rem !important;
}

.booksfb2-book-list-card__cover {
    position: relative;
    padding: 0.34rem;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.42);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.78),
        0 14px 30px rgba(22, 32, 51, 0.12);
}

.booksfb2-book-list-card__image {
    border-radius: 14px !important;
    box-shadow: 0 14px 24px rgba(22, 32, 51, 0.16) !important;
}

.booksfb2-book-list-card__title a {
    color: var(--booksfb2-ink) !important;
}

.booksfb2-book-list-card__title a:hover {
    color: var(--booksfb2-green) !important;
}

.booksfb2-book-list-card__authors,
.booksfb2-book-list-card__authors a,
.booksfb2-book-list-card__meta {
    color: rgba(22, 32, 51, 0.62) !important;
}

.booksfb2-book-list-card__metrics {
    gap: 0.5rem !important;
}

.booksfb2-book-list-card__metric {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.32rem 0.68rem;
    color: rgba(22, 32, 51, 0.62) !important;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.44);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.booksfb2-book-list-card__metric--rating {
    color: #9d6115 !important;
    background: rgba(255, 241, 210, 0.6);
}

@media (max-width: 575.98px) {
    .booksfb2-book-card {
        border-radius: 20px !important;
        padding: 0.42rem !important;
    }

    .booksfb2-book-card__cover-shell {
        padding: 0.28rem;
        border-radius: 17px;
    }

    .booksfb2-book-card__cover-link,
    .booksfb2-book-card__cover-link img {
        border-radius: 13px !important;
    }

    .booksfb2-book-card__body {
        padding-top: 0.72rem !important;
    }

    .booksfb2-book-card__genre {
        padding: 0.24rem 0.5rem;
    }

    .booksfb2-book-card__metric {
        min-height: 1.72rem;
        padding: 0.22rem 0.48rem;
    }

    .booksfb2-book-list-card__body {
        gap: 0.78rem !important;
        padding: 0.9rem 0.9rem 0.9rem 1.15rem !important;
    }

    .booksfb2-book-list-card__cover {
        padding: 0.24rem;
        border-radius: 15px;
    }
}

.booksfb2-home-body .footer-shell--booksfb2 {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.72), rgba(240, 247, 245, 0.32)),
        radial-gradient(circle at 8% 8%, rgba(255, 255, 255, 0.96), transparent 18rem),
        radial-gradient(circle at 88% 12%, rgba(33, 79, 155, 0.13), transparent 22rem),
        radial-gradient(circle at 80% 100%, rgba(13, 117, 103, 0.12), transparent 24rem) !important;
}

.booksfb2-home-body .footer-command__brand,
.booksfb2-home-body .footer-contact-card,
.booksfb2-home-body .footer-route-board,
.booksfb2-home-body .footer-status-card,
.booksfb2-home-body .footer-bottom-strip,
.booksfb2-home-body .footer-route-link,
.booksfb2-home-body .footer-info-link--legal,
.booksfb2-home-body .footer-partner--mini {
    border-color: rgba(255, 255, 255, 0.6) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.22)) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 18px 42px rgba(22, 32, 51, 0.07) !important;
}

.booksfb2-home-body .footer-brand-mark--wide {
    color: #fff !important;
    background:
        linear-gradient(135deg, #17233c, #214f9b 52%, #0d7567) !important;
}

.booksfb2-home-body .footer-route-link i {
    color: var(--booksfb2-blue);
    background: rgba(33, 79, 155, 0.1);
}

.booksfb2-home-body .footer-contact-card__email,
.booksfb2-home-body .footer-route-link,
.booksfb2-home-body .footer-info-link,
.booksfb2-home-body .footer-partner__title {
    color: var(--booksfb2-ink) !important;
}

.booksfb2-home-body .footer-route-link:hover,
.booksfb2-home-body .footer-info-link--legal:hover {
    color: #fff !important;
    background:
        linear-gradient(135deg, rgba(33, 79, 155, 0.94), rgba(13, 117, 103, 0.82)) !important;
}

.booksfb2-home-body .footer-route-link:hover i,
.booksfb2-home-body .footer-info-link--legal:hover i {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.16) !important;
}

@media (max-width: 1199.98px) {
    .footer-command,
    .footer-route-board {
        grid-template-columns: 1fr;
    }

    .footer-route-group--legal {
        padding-right: 0;
        padding-bottom: 1.1rem;
        border-right: 0;
        border-bottom: 1px solid rgba(13, 117, 103, 0.14);
    }

    .footer-route-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .footer-shell--booksfb2 {
        border-radius: 22px !important;
    }

    .footer-command__brand {
        grid-template-columns: 1fr;
    }

    .footer-brand-mark--wide {
        width: 3.4rem;
        height: 3.4rem;
        border-radius: 1rem;
    }

    .footer-command__title {
        max-width: 100%;
    }

    .footer-route-grid {
        grid-template-columns: 1fr;
    }

    .footer-bottom-strip {
        flex-direction: column;
    }
}

/* Home scroll stability: keep the glass look, but avoid live blur repaints while scrolling. */
.booksfb2-home-body::before {
    position: absolute;
    min-height: 100vh;
    height: 1800px;
    bottom: auto;
}

.booksfb2-home-body .booksfb2-home-hero__copy,
.booksfb2-home-body .booksfb2-home-hero__feature,
.booksfb2-home-body .booksfb2-home-routes__item,
.booksfb2-home-body .booksfb2-empty-catalog,
.booksfb2-home-body .booksfb2-catalog-head,
.booksfb2-home-body .booksfb2-filter-bar .catalog-filter-toolbar__buttons,
.booksfb2-home-body .catalog-layout-switch,
.booksfb2-home-body .pagination .page-link,
.booksfb2-home-body .catalog-grid-shell .card,
.booksfb2-home-body .vertical-book-card-wrapper,
.booksfb2-home-body .booksfb2-empty-catalog__shelf,
.booksfb2-home-body .booksfb2-collections-section,
.booksfb2-home-body .book-page-collection-card,
.booksfb2-home-body .book-page-collections-slider-nav,
.booksfb2-home-body #home-page-collections-placeholder,
.booksfb2-home-body .footer-shell,
.booksfb2-home-body .booksfb2-book-card,
.booksfb2-home-body .booksfb2-book-card__rating,
.booksfb2-home-body .booksfb2-book-card .dropdown > .btn,
.booksfb2-home-body .booksfb2-book-list-card {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.booksfb2-home-body #home-page-collections-placeholder,
.booksfb2-home-body #home-page-collections-slider {
    min-height: 15rem;
}

.booksfb2-home-body .book-page-collections-slider.d-none {
    display: block !important;
    visibility: hidden;
    pointer-events: none;
}

@media (max-width: 767.98px) {
    .booksfb2-home-body::before {
        height: 1400px;
    }

    .booksfb2-home-body #home-page-collections-placeholder,
    .booksfb2-home-body #home-page-collections-slider {
        min-height: 12rem;
    }
}

/* Book-shell uses a smaller generated Bootstrap Icons subset. Keep shared layout
   icons visible on book pages without rebuilding the whole asset bundle. */
.bi-compass:before {
    content: "\f2d1";
}

.bi-moon-stars-fill:before {
    content: "☾" !important;
    display: inline-block !important;
    font-family: Arial, sans-serif !important;
    font-size: 1.35rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: #0b5f93 !important;
    transform: translateY(-1px);
    vertical-align: 0 !important;
}

.site-navbar .booksfb2-theme-toggle .bi-moon-stars-fill:before,
.booksfb2-theme-toggle .bi-moon-stars-fill:before {
    content: "\f495" !important;
    display: inline-block !important;
    font-family: "bootstrap-icons" !important;
    font-size: 1.25rem !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    color: #4c5a70 !important;
    transform: none !important;
    vertical-align: -.125em !important;
}

@media (min-width: 992px) {
    .d-lg-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 1400px) {
    .d-xxl-inline {
        display: inline !important;
    }
}

.bi-shield:before {
    content: "\f53f";
}

.bi-tag:before {
    content: "\f5b0";
}

/* BOOKSFB2_ACCOUNT_CONTRAST_20260526 */
.profile-page .profile-auto-delete-alert,
.profile-page .alert-warning,
.profile-page .bg-warning,
.profile-page .bg-warning-subtle {
    background: #fff3d4 !important;
    color: #2a1705 !important;
    border: 1px solid #e2c282 !important;
    box-shadow: 0 12px 28px rgba(98, 63, 12, 0.08) !important;
}

.profile-page .profile-auto-delete-alert *,
.profile-page .alert-warning *,
.profile-page .bg-warning *,
.profile-page .bg-warning-subtle * {
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
}

.profile-page .profile-auto-delete-alert a,
.profile-page .alert-warning a,
.profile-page .bg-warning a,
.profile-page .bg-warning-subtle a {
    color: #0f6d61 !important;
    -webkit-text-fill-color: #0f6d61 !important;
    font-weight: 800 !important;
}

.profile-page .profile-sidebar-card .form-label,
.profile-page .profile-edit-form label,
.profile-page .profile-edit-form .form-label {
    color: #5c4a34 !important;
    -webkit-text-fill-color: #5c4a34 !important;
    font-weight: 800 !important;
}

.profile-page .profile-edit-form__control,
.profile-page .profile-edit-form input.form-control,
.profile-page .profile-edit-form textarea.form-control,
.profile-page .modal input.form-control,
.profile-page .modal textarea.form-control,
.library-page .modal input.form-control,
.library-page .modal textarea.form-control {
    background: #fffaf0 !important;
    color: #241406 !important;
    -webkit-text-fill-color: #241406 !important;
    border: 1px solid #d8bd84 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.9), 0 8px 20px rgba(70, 43, 7, 0.05) !important;
}

.profile-page .profile-edit-form__control::placeholder,
.profile-page .profile-edit-form textarea.form-control::placeholder,
.library-page .modal textarea.form-control::placeholder {
    color: #8a765d !important;
    -webkit-text-fill-color: #8a765d !important;
}

.profile-page .profile-edit-form__control:focus,
.profile-page .profile-edit-form input.form-control:focus,
.profile-page .profile-edit-form textarea.form-control:focus,
.profile-page .modal input.form-control:focus,
.profile-page .modal textarea.form-control:focus,
.library-page .modal input.form-control:focus,
.library-page .modal textarea.form-control:focus {
    background: #ffffff !important;
    color: #160d05 !important;
    -webkit-text-fill-color: #160d05 !important;
    border-color: #a66d1d !important;
    box-shadow: 0 0 0 .2rem rgba(166, 109, 29, .18), 0 12px 24px rgba(70, 43, 7, .08) !important;
}

.profile-page .profile-edit-form__choice-label {
    background: #fffdf8 !important;
    color: #2a1705 !important;
    border: 1px solid #d8bd84 !important;
}

.profile-page .profile-edit-form__choice-input:checked + .profile-edit-form__choice-label {
    background: linear-gradient(135deg, #9a641d, #c9943c) !important;
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
    border-color: #9a641d !important;
}

.library-page-title,
.library-page h1,
.library-page h2,
.library-page h3,
.library-page .text-white {
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
}

.library-page .text-muted,
.library-page .text-white-50,
.library-page .text-secondary {
    color: #6f6252 !important;
    -webkit-text-fill-color: #6f6252 !important;
}

.library-find-books-btn,
.library-page .btn-primary,
.library-page .nav-pills .nav-link.active,
.library-page #library-tabs .nav-link.active {
    background: linear-gradient(135deg, #8c5a18, #c08a2e) !important;
    border-color: #8c5a18 !important;
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
    box-shadow: 0 14px 26px rgba(124, 77, 16, .18) !important;
}

.library-page .btn-primary *,
.library-find-books-btn *,
.library-page .nav-pills .nav-link.active *,
.library-page #library-tabs .nav-link.active * {
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
}

.library-add-book-btn,
.library-page .btn-outline-primary,
.library-page .library-genre-dropdown__button,
.library-page .catalog-layout-switch,
.library-page .catalog-layout-switch__button {
    background: #fffdf8 !important;
    border-color: #dcc28d !important;
    color: #6d4310 !important;
    -webkit-text-fill-color: #6d4310 !important;
}

.library-add-book-btn:hover,
.library-page .btn-outline-primary:hover,
.library-page .library-genre-dropdown__button:hover,
.library-page .catalog-layout-switch__button:hover,
.library-page .catalog-layout-switch__button.is-active {
    background: #f6ead2 !important;
    border-color: #b47a24 !important;
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
}

.library-main-switcher .nav-link {
    color: #7b7062 !important;
    -webkit-text-fill-color: #7b7062 !important;
    border-bottom-color: transparent !important;
}

.library-main-switcher .nav-link.active,
.library-main-switcher .nav-link:hover {
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
    border-bottom-color: #a66d1d !important;
    background: rgba(255, 248, 234, .72) !important;
}

.library-page #library-tabs .nav-link:not(.active) {
    background: #fffdf8 !important;
    border: 1px solid transparent !important;
    color: #6f6252 !important;
    -webkit-text-fill-color: #6f6252 !important;
}

.library-page .text-danger,
.library-page .bi-heart-fill.text-danger {
    color: #a64d18 !important;
    -webkit-text-fill-color: #a64d18 !important;
}

.library-page .dropdown-menu .dropdown-item.active,
.library-page .dropdown-menu .dropdown-item:active {
    background: #8c5a18 !important;
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
}

.profile-page .btn-primary,
.profile-page .profile-sidebar-card .btn-primary {
    background: linear-gradient(135deg, #8c5a18, #c08a2e) !important;
    border-color: #8c5a18 !important;
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
}

.profile-page .btn-outline-primary {
    background: #fffdf8 !important;
    border-color: #dcc28d !important;
    color: #6d4310 !important;
    -webkit-text-fill-color: #6d4310 !important;
}

.profile-page .btn-outline-primary:hover {
    background: #f6ead2 !important;
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
}
/* /BOOKSFB2_ACCOUNT_CONTRAST_20260526 */

/* BOOKSFB2_LIBRARY_CONTROLS_FIX_20260527 */
.library-page .library-toolbar {
    row-gap: .75rem !important;
}

.library-page .library-genre-filter {
    width: min(100%, 216px) !important;
    flex: 0 0 auto !important;
}

.library-page .library-genre-dropdown__button {
    min-height: 40px !important;
    padding-inline: 1rem .9rem !important;
    font-size: .98rem !important;
    background: #fffdf8 !important;
    border: 1px solid #dcc28d !important;
    color: #6d4310 !important;
    -webkit-text-fill-color: #6d4310 !important;
    box-shadow: 0 10px 22px rgba(102, 63, 10, 0.06) !important;
}

.library-page .library-toolbar__secondary {
    display: inline-flex !important;
    align-items: stretch !important;
    gap: .75rem !important;
    width: auto !important;
    flex: 0 0 auto !important;
    grid-template-columns: none !important;
}

.library-page .library-sort-dropdown {
    width: auto !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
}

.library-page .library-sort-dropdown__button,
.library-page .library-sort-dropdown .btn,
.library-page .library-sort-dropdown button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fffdf8 !important;
    border: 1px solid #dcc28d !important;
    color: #6d4310 !important;
    -webkit-text-fill-color: #6d4310 !important;
    opacity: 1 !important;
    min-height: 40px !important;
    min-width: 0 !important;
    width: auto !important;
    padding: .55rem 1rem !important;
    font-size: .98rem !important;
    line-height: 1 !important;
    box-shadow: 0 10px 22px rgba(102, 63, 10, 0.06) !important;
}

.library-page .library-sort-dropdown__button *,
.library-page .library-sort-dropdown .btn *,
.library-page .library-sort-dropdown button * {
    color: #6d4310 !important;
    -webkit-text-fill-color: #6d4310 !important;
    opacity: 1 !important;
}

.library-page .library-sort-dropdown__button::after {
    color: #6d4310 !important;
    opacity: 1 !important;
}

.library-page .library-sort-dropdown__button:hover,
.library-page .library-sort-dropdown__button:focus,
.library-page .library-sort-dropdown__button:active {
    background: #f6ead2 !important;
    border-color: #b47a24 !important;
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
}

.library-page .library-layout-switch {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .25rem !important;
    padding: .18rem !important;
    min-height: 40px !important;
    border-radius: 999px !important;
    background: #fffdf8 !important;
    border: 1px solid #dcc28d !important;
    box-shadow: 0 10px 24px rgba(102, 63, 10, 0.08) !important;
}

.library-page .library-layout-switch__button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    border-radius: 999px !important;
    color: #0f6d61 !important;
    -webkit-text-fill-color: #0f6d61 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.library-page .library-layout-switch__button i,
.library-page .library-layout-switch__button svg {
    color: #0f6d61 !important;
    -webkit-text-fill-color: #0f6d61 !important;
    font-size: .92rem !important;
}

.library-page .library-layout-switch__button:hover {
    background: #f6ead2 !important;
    color: #2a1705 !important;
    -webkit-text-fill-color: #2a1705 !important;
}

.library-page .library-layout-switch__button.is-active {
    background: linear-gradient(135deg, #8c5a18, #c08a2e) !important;
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
    box-shadow: 0 8px 16px rgba(124, 77, 16, .18) !important;
}

.library-page .library-layout-switch__button.is-active i,
.library-page .library-layout-switch__button.is-active svg {
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
}
/* /BOOKSFB2_LIBRARY_CONTROLS_FIX_20260527 */

/* BOOKSFB2_LIBRARY_STATUS_TABS_FIX_20260527 */
.library-page #library-section > .d-flex.position-relative {
    align-items: flex-start !important;
}

.library-page #library-tabs.nav-pills-mobile-scroll {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    padding-bottom: .48rem !important;
    scrollbar-width: none !important;
}

.library-page #library-tabs.nav-pills-mobile-scroll::-webkit-scrollbar {
    display: none !important;
}

.library-page #library-tabs .nav-item {
    flex: 0 0 auto !important;
}

.library-page #library-tabs .nav-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: .62rem 1.08rem !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    font-size: .98rem !important;
}

.library-page #library-tabs .nav-link i {
    flex: 0 0 auto !important;
}

.library-page #library-section .library-toolbar {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    justify-content: flex-end !important;
    align-self: flex-start !important;
    max-width: 440px !important;
}

@media (min-width: 768px) {
    .library-page #library-section > .d-flex.position-relative {
        flex-wrap: nowrap !important;
        align-items: center !important;
    }

    .library-page #library-tabs.nav-pills-mobile-scroll {
        max-width: none !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        padding-bottom: 0 !important;
    }

    .library-page #library-section .library-toolbar {
        align-self: center !important;
    }
}

@media (max-width: 575.98px) {
    .library-page #library-tabs .nav-link {
        min-height: 38px !important;
        padding: .56rem .78rem !important;
        font-size: .9rem !important;
    }
}
/* /BOOKSFB2_LIBRARY_STATUS_TABS_FIX_20260527 */

/* BOOKSFB2_DARK_THEME_FIX_20260528 */
html[data-bs-theme="dark"] {
    color-scheme: dark;
    --bs-body-bg: #120b06;
    --bs-body-color: #f4e7d0;
    --bs-tertiary-bg: #17100b;
    --bs-primary: #d3a24a;
    --bs-primary-rgb: 211, 162, 74;
    --bs-link-color: #f0c872;
    --bs-link-hover-color: #ffe1a1;
}

html[data-bs-theme="dark"],
html[data-bs-theme="dark"] body,
html[data-bs-theme="dark"] body.bg-body-tertiary,
html[data-bs-theme="dark"] #app,
html[data-bs-theme="dark"] #app > main,
html[data-bs-theme="dark"] .booksfb2-home-body {
    background: #120b06 !important;
    color: #f4e7d0 !important;
    -webkit-text-fill-color: initial !important;
}

html[data-bs-theme="dark"] .site-navbar,
html[data-bs-theme="dark"] .navbar,
html[data-bs-theme="dark"] .dropdown-menu {
    background: #1a1109 !important;
    border-color: rgba(218, 171, 86, .34) !important;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .35) !important;
}

html[data-bs-theme="dark"] .navbar .nav-link,
html[data-bs-theme="dark"] .navbar .text-white-50,
html[data-bs-theme="dark"] .dropdown-item {
    color: #d8c5a6 !important;
    -webkit-text-fill-color: #d8c5a6 !important;
}

html[data-bs-theme="dark"] .navbar .nav-link:hover,
html[data-bs-theme="dark"] .navbar .nav-link.active,
html[data-bs-theme="dark"] .dropdown-item:hover {
    color: #f5ca76 !important;
    -webkit-text-fill-color: #f5ca76 !important;
}

html[data-bs-theme="dark"] .booksfb2-wordmark__books {
    color: #f3cf87 !important;
    -webkit-text-fill-color: #f3cf87 !important;
}

html[data-bs-theme="dark"] .booksfb2-wordmark__pro {
    background: linear-gradient(135deg, #a46b1d, #d4a142) !important;
    color: #fff7e7 !important;
    -webkit-text-fill-color: #fff7e7 !important;
}

html[data-bs-theme="dark"] .card,
html[data-bs-theme="dark"] .bg-white,
html[data-bs-theme="dark"] .bg-light,
html[data-bs-theme="dark"] .bg-dark-card,
html[data-bs-theme="dark"] .modal-content,
html[data-bs-theme="dark"] .list-group-item,
html[data-bs-theme="dark"] .vertical-book-card-wrapper,
html[data-bs-theme="dark"] .book-card,
html[data-bs-theme="dark"] .catalog-grid-shell .card,
html[data-bs-theme="dark"] .booksfb2-home-routes__item,
html[data-bs-theme="dark"] .booksfb2-catalog-head,
html[data-bs-theme="dark"] .booksfb2-empty-catalog,
html[data-bs-theme="dark"] .booksfb2-collections-section,
html[data-bs-theme="dark"] .book-page-collection-card,
html[data-bs-theme="dark"] .footer-shell,
html[data-bs-theme="dark"] .profile-card,
html[data-bs-theme="dark"] .library-panel,
html[data-bs-theme="dark"] .book-description-wrap,
html[data-bs-theme="dark"] .book-page-description,
html[data-bs-theme="dark"] .book-page-meta,
html[data-bs-theme="dark"] .book-page-card,
html[data-bs-theme="dark"] .book-page-side,
html[data-bs-theme="dark"] .book-actions-card,
html[data-bs-theme="dark"] .reviews-card,
html[data-bs-theme="dark"] .comment-card {
    background: #1b120b !important;
    background-image: none !important;
    border-color: rgba(218, 171, 86, .32) !important;
    color: #f4e7d0 !important;
    -webkit-text-fill-color: initial !important;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .28) !important;
}

html[data-bs-theme="dark"] .booksfb2-home-hero__main,
html[data-bs-theme="dark"] .booksfb2-home-hero__copy {
    background: linear-gradient(135deg, #2b1a10 0%, #8b612a 100%) !important;
    border-color: rgba(233, 190, 106, .35) !important;
    box-shadow: 0 22px 48px rgba(0, 0, 0, .34) !important;
}

html[data-bs-theme="dark"] .booksfb2-home-hero__feature,
html[data-bs-theme="dark"] .booksfb2-home-hero__dashboard,
html[data-bs-theme="dark"] .booksfb2-home-hero__note {
    background: #1e150e !important;
    border-color: rgba(218, 171, 86, .28) !important;
}

html[data-bs-theme="dark"] .booksfb2-home-hero__title,
html[data-bs-theme="dark"] .booksfb2-home-hero__text,
html[data-bs-theme="dark"] .booksfb2-home-hero__signals span {
    color: #fff2da !important;
    -webkit-text-fill-color: #fff2da !important;
}

html[data-bs-theme="dark"] h1,
html[data-bs-theme="dark"] h2,
html[data-bs-theme="dark"] h3,
html[data-bs-theme="dark"] h4,
html[data-bs-theme="dark"] h5,
html[data-bs-theme="dark"] h6,
html[data-bs-theme="dark"] .book-page-title,
html[data-bs-theme="dark"] .fw-bold,
html[data-bs-theme="dark"] .fw-semibold,
html[data-bs-theme="dark"] .text-white {
    color: #fff2da !important;
    -webkit-text-fill-color: #fff2da !important;
}

html[data-bs-theme="dark"] p,
html[data-bs-theme="dark"] .text-muted,
html[data-bs-theme="dark"] .text-secondary,
html[data-bs-theme="dark"] .small,
html[data-bs-theme="dark"] .breadcrumb,
html[data-bs-theme="dark"] .breadcrumb a,
html[data-bs-theme="dark"] .book-page-subtitle,
html[data-bs-theme="dark"] .book-page-description,
html[data-bs-theme="dark"] .book-description-wrap {
    color: #d8c5a6 !important;
    -webkit-text-fill-color: #d8c5a6 !important;
}

html[data-bs-theme="dark"] a,
html[data-bs-theme="dark"] .text-primary {
    color: #f0c872 !important;
    -webkit-text-fill-color: #f0c872 !important;
}

html[data-bs-theme="dark"] .form-control,
html[data-bs-theme="dark"] .form-select,
html[data-bs-theme="dark"] .input-group-text,
html[data-bs-theme="dark"] textarea,
html[data-bs-theme="dark"] input {
    background: #21160d !important;
    border-color: rgba(218, 171, 86, .42) !important;
    color: #f8ead1 !important;
    -webkit-text-fill-color: #f8ead1 !important;
}

html[data-bs-theme="dark"] .form-control::placeholder,
html[data-bs-theme="dark"] input::placeholder,
html[data-bs-theme="dark"] textarea::placeholder {
    color: #a9967a !important;
    -webkit-text-fill-color: #a9967a !important;
}

html[data-bs-theme="dark"] .btn-primary,
html[data-bs-theme="dark"] .booksfb2-register-btn,
html[data-bs-theme="dark"] .active > .page-link,
html[data-bs-theme="dark"] .page-item.active .page-link,
html[data-bs-theme="dark"] .catalog-layout-switch__button.is-active,
html[data-bs-theme="dark"] .library-layout-switch__button.is-active {
    background: linear-gradient(135deg, #9f681f, #d0a048) !important;
    border-color: #d0a048 !important;
    color: #fff7e7 !important;
    -webkit-text-fill-color: #fff7e7 !important;
}

html[data-bs-theme="dark"] .btn-outline-light,
html[data-bs-theme="dark"] .btn-outline-warning,
html[data-bs-theme="dark"] .btn-ghost,
html[data-bs-theme="dark"] .page-link,
html[data-bs-theme="dark"] .catalog-layout-switch,
html[data-bs-theme="dark"] .catalog-layout-switch__button,
html[data-bs-theme="dark"] .library-layout-switch,
html[data-bs-theme="dark"] .library-layout-switch__button {
    background: #1b120a !important;
    border-color: rgba(218, 171, 86, .42) !important;
    color: #f1c879 !important;
    -webkit-text-fill-color: #f1c879 !important;
}

html[data-bs-theme="dark"] .badge,
html[data-bs-theme="dark"] .book-page-badge,
html[data-bs-theme="dark"] .genre-badge,
html[data-bs-theme="dark"] .series-badge,
html[data-bs-theme="dark"] .author-badge,
html[data-bs-theme="dark"] .booksfb2-stat-badge {
    background: #2a1c10 !important;
    border-color: rgba(218, 171, 86, .42) !important;
    color: #f7d897 !important;
    -webkit-text-fill-color: #f7d897 !important;
}

html[data-bs-theme="dark"] .rating-stars,
html[data-bs-theme="dark"] .rating-stars *,
html[data-bs-theme="dark"] .bi-star,
html[data-bs-theme="dark"] .bi-star-fill {
    color: #d5b16c !important;
    -webkit-text-fill-color: #d5b16c !important;
}
/* /BOOKSFB2_DARK_THEME_FIX_20260528 */

/* === Читаемость чипов периода/сортировки (Топ-100 и т.п.), светлая тема === */
html:not([data-bs-theme="dark"]) .top100-filter-chip.btn-outline-light,
html:not([data-bs-theme="dark"]) [data-period].btn-outline-light,
html:not([data-bs-theme="dark"]) [data-sort].btn-outline-light {
    background: rgba(255, 255, 255, 0.92) !important;
    background-image: none !important;
    color: var(--booksfb2-ink) !important;
    -webkit-text-fill-color: var(--booksfb2-ink) !important;
    border-color: rgba(22, 32, 51, 0.24) !important;
}
html:not([data-bs-theme="dark"]) .top100-filter-chip.btn-primary,
html:not([data-bs-theme="dark"]) .top100-filter-chip.top100-filter-chip-active,
html:not([data-bs-theme="dark"]) [data-period].active,
html:not([data-bs-theme="dark"]) [data-sort].active {
    background: var(--booksfb2-ink) !important;
    background-image: none !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border-color: var(--booksfb2-ink) !important;
}

/* === Hover чипов-фильтров: белый текст на тёмном фоне (перебивает app.css) === */
html[data-bs-theme="light"] .btn-outline-light:hover,
html[data-bs-theme="light"] .btn-outline-light:focus-visible,
html[data-bs-theme="light"] .catalog-status-filter__btn:hover,
html[data-bs-theme="light"] .top100-filter-chip.btn-outline-light:hover {
    background: var(--booksfb2-ink) !important;
    background-image: none !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    border-color: var(--booksfb2-ink) !important;
}
html[data-bs-theme="light"] .btn-outline-light:hover *,
html[data-bs-theme="light"] .catalog-status-filter__btn:hover * {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
