/* Shared approved sky-blue design; book detail pages keep their existing layout. */
.blue-home {
  --blue: #064cff;
  --blue-ink: #0d1527;
  --blue-muted: #737c8c;
  --blue-line: #e4eaf2;
  --blue-display: Georgia, "Songti SC", "STSong", "Noto Serif CJK SC", serif;
  --blue-ui: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  background: #fff;
  color: var(--blue-ink);
  font-family: var(--blue-ui);
  line-height: 1.5;
}
.blue-home::before { display: none; }
.blue-home :is(h1,h2,h3,h4,p,figure) { margin: 0; }
.blue-home a { text-decoration: none; }
.blue-home a:hover { color: var(--blue); }
.blue-home :focus-visible { outline: 2px solid var(--blue); outline-offset: 5px; }
.blue-home svg { width: 20px; height: 20px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.blue-container { width: min(1320px, calc(100% - 112px)); margin-inline: auto; }
.blue-header { background: #fff; }
.blue-header-inner { display: flex; align-items: center; height: 72px; gap: 48px; }
.blue-brand { display: inline-flex; align-items: center; gap: 10px; color: #10151e; font: 700 38px/1 Georgia, serif; letter-spacing: -1.6px; white-space: nowrap; }
.blue-brand img { width: 38px; height: 38px; flex: none; border-radius: 9px; }
.blue-nav { align-self: stretch; display: flex; align-items: stretch; gap: 36px; }
.blue-nav a { display: flex; align-items: center; position: relative; font-size: 17px; }
.blue-nav a[aria-current] { color: var(--blue); }
.blue-nav a[aria-current]::after { content: ""; position: absolute; bottom: 8px; height: 2px; inset-inline: 0; background: var(--blue); }
.blue-language { margin-left: auto; display: flex; gap: 7px; font-size: 14px; }
.blue-language a:first-child { color: var(--blue); font-weight: 600; }
.blue-language span { color: #b1b8c4; }
.blue-search-shortcut { padding: 10px; }
.blue-hero { background: #e8f5ff url('/assets/home/sky-hero.webp') center 54% / cover no-repeat; }
.blue-hero-inner { min-height: 440px; display: grid; grid-template-columns: 1fr 1.12fr; gap: 48px; align-items: center; }
.blue-hero-copy { padding: 42px 0; position: relative; z-index: 1; }
.blue-hero h1 { font-family: var(--blue-display); font-size: clamp(46px, 4.4vw, 68px); line-height: 1.14; letter-spacing: -.025em; font-weight: 700; }
.blue-hero-copy > p { margin-top: 18px; font-size: 20px; color: #495b74; }
.blue-hero-copy > small { display: block; margin-top: 13px; font-size: 14px; color: #4b5d76; }
.blue-search { margin-top: 28px; display: flex; align-items: center; gap: 12px; height: 64px; background: #fff; padding: 7px 8px 7px 18px; border: 1px solid #deebfa; border-radius: 6px; box-shadow: 0 8px 26px #44658515; }
.blue-search > svg { color: #344c70; width: 22px; height: 22px; }
.blue-search input { flex: 1; min-width: 0; padding: 0; border: 0; background: transparent; box-shadow: none; outline: none; font: 15px var(--blue-ui); height: 100%; }
.blue-search input::placeholder { color: #8794a7; }
.blue-search:focus-within { outline: 2px solid var(--blue); outline-offset: 2px; }
.blue-search button, .blue-primary { border: 0; background: var(--blue); color: #fff; border-radius: 4px; padding: 14px 27px; font: 600 15px/1.3 var(--blue-ui); white-space: nowrap; }
.blue-search button:hover, .blue-primary:hover { background: #003fd8; color: #fff !important; }
.blue-hero-books { display: flex; align-items: flex-end; justify-content: center; gap: 26px; padding-top: 32px; perspective: 1100px; }
.blue-hero-book { display: block; position: relative; flex: 1; max-width: 190px; aspect-ratio: 5 / 7; background: #eef2f5; box-shadow: 10px 14px 18px #1d375b2b, 1px 2px 3px #1d375b33; border-radius: 2px; transition: transform .2s; }
.blue-hero-book:first-child { transform: rotateY(-9deg) rotate(-2deg); margin-bottom: 12px; }
.blue-hero-book:nth-child(2) { transform: rotateY(-7deg); margin-bottom: 7px; }
.blue-hero-book:last-child { transform: rotateY(-10deg) rotate(2deg); }
.blue-hero-book:hover { transform: translateY(-7px); }
.blue-hero-book img { width: 100%; height: 100%; object-fit: contain; border-radius: 2px; }
.blue-genre-nav { border-bottom: 1px solid var(--blue-line); }
.blue-genre-nav > div { display: flex; align-items: center; gap: 52px; height: 66px; overflow-x: auto; scrollbar-width: none; }
.blue-genre-nav button { height: 100%; display: flex; align-items: center; flex-shrink: 0; font: 15px var(--blue-ui); color: inherit; padding: 0 10px; border: 0; border-bottom: 2px solid transparent; background: transparent; cursor: pointer; }
.blue-genre-nav button:hover { color: var(--blue); }
.blue-genre-nav button:focus-visible { outline-offset: -5px; }
.blue-genre-nav .is-active { color: var(--blue); border-color: var(--blue); }
.blue-featured-empty { grid-column: 1 / -1; padding-block: 35px; color: var(--blue-muted); }
.blue-content { padding-block: 32px 54px; }
.blue-section + .blue-section { margin-top: 46px; }
.blue-section-heading { display: flex; align-items: center; gap: 20px; margin-bottom: 23px; }
.blue-home h2 { font: 700 33px/1.3 var(--blue-display); letter-spacing: -.025em; }
.blue-heading-rule { flex: 1; height: 1px; background: var(--blue-line); }
.blue-section-heading > a { display: flex; align-items: center; gap: 10px; color: var(--blue); font-size: 14px; white-space: nowrap; }
.blue-shelf { display: grid; align-items: start; gap: 28px; }
.blue-shelf--seven { grid-template-columns: repeat(7,minmax(0,1fr)); }
.blue-shelf--six { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 34px; }
.blue-shelf--four { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px; }
.blue-book { min-width: 0; }
.blue-cover { display: block; position: relative; aspect-ratio: 5 / 7; background: #f1f4f8; border-radius: 3px; box-shadow: 0 5px 11px #132c4915; transition: transform .18s; }
.blue-cover:hover { transform: translateY(-5px); }
.blue-cover img { width: 100%; height: 100%; object-fit: contain; border-radius: 3px; }
.blue-book h3 { margin-top: 13px; font-family: var(--blue-ui); font-size: 17px; line-height: 1.45; font-weight: 600; letter-spacing: 0; overflow-wrap: anywhere; }
.blue-book-author { color: #636e80; font-size: 14px; margin-top: 4px !important; overflow-wrap: anywhere; }
.blue-book-category { color: #687487; font-size: 13px; margin-top: 3px !important; }
.blue-heat { display: block; margin-top: 11px; color: #325b9e; font-size: 13px; line-height: 1.5; }
.blue-heat span { display: block; }
.blue-heat small { display: block; font-size: 11px; color: #687487; margin-top: 3px; }
.blue-heat--empty { color: #7c8797; }
.blue-heat-note { color: #7b8798; margin-top: 20px; font-size: 12px; }
.blue-heat-note summary { cursor: pointer; width: fit-content; }
.blue-heat-note p { max-width: 920px; margin-top: 10px; line-height: 1.8; }
.blue-genre-columns { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.blue-genre-column { padding: 0 30px; border-left: 1px solid var(--blue-line); min-width: 0; }
.blue-genre-column:first-child { border: 0; padding-left: 0; }
.blue-genre-column:last-child { padding-right: 0; }
.blue-genre-column > h3 { margin-bottom: 18px; font: 700 23px var(--blue-display); color: var(--blue); }
.blue-genre-column > h3 a { display: flex; align-items: center; gap: 16px; }
.blue-mini { display: flex; gap: 20px; align-items: center; padding-block: 12px; border-top: 1px solid #f0f3f7; }
.blue-mini--lead { padding-top: 0; border: 0; }
.blue-mini-cover { flex: 0 0 66px; width: 66px; aspect-ratio: 5 / 7; position: relative; background: #f1f4f8; }
.blue-mini-cover img { width: 100%; height: 100%; object-fit: contain; border-radius: 2px; box-shadow: 0 3px 6px #15253c17; }
.blue-mini--lead .blue-mini-cover { flex-basis: 84px; width: 84px; }
.blue-mini > div { min-width: 0; }
.blue-mini h4 { font-size: 15px; line-height: 1.45; font-weight: 600; }
.blue-mini--lead h4 { font-family: var(--blue-display); font-size: 19px; }
.blue-mini p, .blue-mini small { display: block; color: #737e8e; font-size: 12px; margin-top: 4px; }
.blue-worlds { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.blue-world { min-height: 194px; position: relative; overflow: hidden; background: #eef7ff; border-radius: 3px; }
.blue-world > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.blue-world > div { position: relative; z-index: 1; padding: 22px; }
.blue-world h3 { font: 700 27px/1.3 var(--blue-display); }
.blue-world p { color: #697c96; font-size: 14px; line-height: 1.65; margin-top: 13px; }
.blue-world span { display: flex; align-items: center; gap: 8px; color: var(--blue); font-size: 14px; margin-top: 17px; }
.blue-world:hover img { transform: scale(1.025); transition: transform .25s; }
.blue-completed { display: grid; grid-template-columns: .95fr 2fr; align-items: start; gap: 38px; }
.blue-completed-intro { padding-top: 10px; }
.blue-completed-intro h2 { font-size: 27px; }
.blue-completed-intro p { margin-top: 30px; color: #7a8494; font: 22px/1.6 var(--blue-display); }
.blue-completed-intro small { display: block; color: #8a94a2; font-size: 12px; margin-top: 16px; }
.blue-completed-intro > a { display: flex; align-items: center; gap: 8px; color: var(--blue); font-size: 14px; margin-top: 24px; }
.blue-discover-band { background: #e9f5ff url('/assets/home/sky-hero.webp') center 64% / cover no-repeat; }
.blue-discover-band > div { display: flex; justify-content: space-between; align-items: center; gap: 24px; min-height: 120px; }
.blue-discover-band h2 { font-size: 34px; }
.blue-primary { display: inline-flex; gap: 20px; align-items: center; }
.blue-footer > div { min-height: 116px; display: flex; align-items: center; gap: 45px; }
.blue-footer .blue-brand { font-size: 29px; }
.blue-footer .blue-brand img { width: 30px; height: 30px; border-radius: 7px; }
.blue-footer nav { display: flex; gap: 24px; font-size: 13px; color: #4a5363; }
.blue-footer p { margin-left: auto; text-align: right; font-size: 11px; color: #6d7788; line-height: 1.8; }
.blue-footer small { font-size: 10px; }
.blue-cover-fallback { display: none; position: absolute; inset: 0; padding: 15px; align-items: center; justify-content: center; text-align: center; flex-direction: column; background: #eef2f6; color: #697586; }
.blue-cover-fallback strong { font-size: 14px; font-weight: 500; }
.blue-cover-fallback small { font-size: 11px; margin-top: 12px; }
.blue-cover-fallback.is-visible, .cover-unavailable > .blue-cover-fallback { display: flex; }
.blue-home .cover-unavailable > img { visibility: hidden; }
@media (min-width: 1600px) { .blue-hero-inner { min-height: 475px; } }
@media (max-width: 1100px) {
  .blue-container { width: calc(100% - 64px); }
  .blue-header-inner { gap: 30px; }
  .blue-nav { gap: 26px; }
  .blue-hero-inner { grid-template-columns: 1.05fr 1fr; gap: 28px; min-height: 390px; }
  .blue-hero h1 { font-size: 50px; }
  .blue-hero-books { gap: 14px; }
  .blue-hero-copy > p { font-size: 17px; }
  .blue-shelf { gap: 20px; }
  .blue-genre-nav > div { gap: 30px; }
  .blue-genre-column { padding-inline: 22px; }
  .blue-mini { gap: 13px; }
  .blue-worlds { gap: 18px; }
  .blue-world > div { padding: 18px; }
  .blue-world h3 { font-size: 24px; }
  .blue-completed { grid-template-columns: .8fr 2fr; gap: 26px; }
  .blue-home h2 { font-size: 26px; }
  .blue-footer > div { gap: 28px; }
}
@media (max-width: 800px) {
  .blue-container { width: calc(100% - 40px); }
  .blue-header-inner { height: 64px; gap: 24px; }
  .blue-brand { font-size: 30px; }
  .blue-brand img { width: 32px; height: 32px; border-radius: 8px; }
  .blue-nav { gap: 22px; }
  .blue-nav a { font-size: 13px; }
  .blue-search-shortcut { display: none; }
  .blue-hero-inner { gap: 20px; }
  .blue-hero h1 { font-size: 43px; }
  .blue-hero-books { gap: 11px; }
  .blue-search { padding-left: 12px; gap: 9px; height: 58px; }
  .blue-search input { font-size: 13px; }
  .blue-search button { padding: 12px 17px; }
  .blue-shelf--seven { grid-template-columns: repeat(4,minmax(0,1fr)); row-gap: 28px; }
  .blue-shelf--six { grid-template-columns: repeat(3,minmax(0,1fr)); row-gap: 28px; }
  .blue-genre-columns { gap: 24px; grid-template-columns: 1fr; }
  .blue-genre-column, .blue-genre-column:first-child, .blue-genre-column:last-child { border: 0; padding: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
  .blue-genre-column > h3 { grid-column: 1/-1; margin: 0; }
  .blue-mini { border: 0; padding: 0; gap: 12px; align-items: start; }
  .blue-mini-cover, .blue-mini--lead .blue-mini-cover { width: 58px; flex-basis: 58px; }
  .blue-mini h4, .blue-mini--lead h4 { font: 600 14px/1.5 var(--blue-ui); }
  .blue-worlds { grid-template-columns: 1fr; }
  .blue-world { min-height: 188px; }
  .blue-world > img { object-position: center; }
  .blue-world > div { padding-left: 26px; }
  .blue-completed { grid-template-columns: 1fr; }
  .blue-completed-intro p { margin-top: 12px; font-size: 18px; }
  .blue-completed-intro p br { display: none; }
  .blue-completed-intro > a { margin-top: 12px; }
  .blue-completed-intro small { margin-top: 8px; }
  .blue-discover-band > div { min-height: 132px; }
  .blue-discover-band h2 { font-size: 27px; }
  .blue-footer > div { flex-wrap: wrap; padding-block: 28px; gap: 22px; }
  .blue-footer p { flex-basis: 100%; text-align: left; }
}
@media (max-width: 560px) {
  .blue-header-inner { flex-wrap: wrap; height: auto; gap: 0; padding-top: 19px; }
  .blue-brand { font-size: 31px; }
  .blue-language { font-size: 13px; }
  .blue-nav { order: 3; width: 100%; justify-content: space-between; margin-top: 12px; height: 46px; }
  .blue-nav a { font-size: 14px; min-width: 44px; justify-content: center; }
  .blue-nav a[aria-current]::after { bottom: 0; }
  .blue-hero-inner { grid-template-columns: 1fr; gap: 0; min-height: 0; }
  .blue-hero-copy { padding: 36px 0 0; }
  .blue-hero h1 { font-size: 47px; }
  .blue-hero-copy > p { margin-top: 16px; font-size: 16px; }
  .blue-search { margin-top: 22px; }
  .blue-search input { font-size: 14px; }
  .blue-hero-copy > small { font-size: 12px; }
  .blue-hero-books { padding: 30px 8px 32px; gap: 21px; }
  .blue-hero-book { max-width: 104px; }
  .blue-genre-nav > div { height: 58px; gap: 22px; }
  .blue-genre-nav button { font-size: 13px; padding: 0 2px; }
  .blue-content { padding-block: 28px 38px; }
  .blue-section + .blue-section { margin-top: 35px; }
  .blue-section-heading { gap: 12px; margin-bottom: 21px; }
  .blue-home h2 { font-size: 23px; }
  .blue-section-heading > a { font-size: 12px; gap: 4px; }
  .blue-shelf--seven, .blue-shelf--six, .blue-shelf--four { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 25px 23px; }
  .blue-book h3 { font-size: 15px; }
  .blue-book-author { font-size: 12px; }
  .blue-book-category { font-size: 11px; }
  .blue-heat { font-size: 12px; margin-top: 8px; }
  .blue-heat-note { margin-top: 22px; }
  .blue-genre-column, .blue-genre-column:first-child, .blue-genre-column:last-child { grid-template-columns: 1fr; gap: 16px; }
  .blue-mini-cover, .blue-mini--lead .blue-mini-cover { width: 60px; flex-basis: 60px; }
  .blue-mini { gap: 18px; }
  .blue-mini h4, .blue-mini--lead h4 { font-size: 16px; }
  .blue-mini p, .blue-mini small { margin-top: 6px; }
  .blue-genre-column > h3 { font-size: 22px; }
  .blue-discover-band > div { align-items: start; flex-direction: column; padding-block: 26px; gap: 19px; }
  .blue-discover-band h2 { font-size: 24px; }
  .blue-primary { padding: 13px 20px; font-size: 14px; }
  .blue-footer nav { gap: 24px; width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .blue-home * { transition: none !important; } }

/* Library and personal bookshelf share the homepage's open shelves and blue accents. */
.blue-catalog [data-saved-only] { display: none !important; }
html[data-collection="saved"] .blue-catalog [data-catalog-only] { display: none !important; }
html[data-collection="saved"] .blue-catalog [data-saved-only] { display: revert !important; }
html[data-collection="saved"] .blue-catalog #novel-results[data-loading="true"] { display: none; }
.blue-catalog { min-height: 100vh; }
.blue-catalog main { min-height: calc(100vh - 255px); }
.blue-library-hero { background: #eef7ff url('/assets/home/sky-hero.webp') center 68% / cover no-repeat; position: relative; }
.blue-library-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #f1f9fff2, #eff8ffc9 55%, #edf8ff70); }
.blue-library-intro { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 48px; min-height: 250px; padding-block: 40px; }
.blue-eyebrow { color: #39618c; font-size: 13px; letter-spacing: .1em; }
.blue-library-intro h1 { margin-top: 10px; font: 700 clamp(34px, 3.6vw, 50px)/1.3 var(--blue-display); letter-spacing: -.02em; }
.blue-library-description { margin-top: 15px !important; color: #52657e; font-size: 16px; }
.blue-library-count { display: grid; gap: 3px; min-width: 170px; padding-left: 34px; border-left: 1px solid #bdcee3; color: #4d6280; font-size: 13px; }
.blue-library-count strong { color: var(--blue); font: 400 52px/1.2 Georgia, serif; font-variant-numeric: tabular-nums; }
.blue-library-content { padding-bottom: 70px; }
.blue-library-topline { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-bottom: 1px solid var(--blue-line); }
.blue-collection-tabs { display: flex; gap: 36px; }
.blue-collection-tabs a { min-height: 76px; display: flex; align-items: center; gap: 9px; position: relative; font-size: 17px; }
.blue-collection-tabs a[aria-current] { color: var(--blue); }
.blue-collection-tabs a[aria-current]::after { content: ""; position: absolute; bottom: -1px; inset-inline: 0; height: 2px; background: var(--blue); }
#shelf-count { min-width: 24px; padding: 1px 6px; background: #f0f5fe; border-radius: 4px; color: #526a8e; font-size: 12px; text-align: center; font-variant-numeric: tabular-nums; }
.blue-library-topline > p { color: #6c778a; font-size: 13px; }
.blue-library-filters { padding-block: 28px; border-bottom: 1px solid var(--blue-line); }
.blue-library-filters .blue-search { max-width: 750px; height: 56px; margin-top: 0; box-shadow: none; border-color: #d7e2f0; }
.blue-library-filters .blue-search input:focus-visible { outline: none; }
.blue-filter-row { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 20px; }
.blue-filter-row label { display: flex; align-items: center; gap: 12px; min-width: 0; }
.blue-filter-row label > span { color: #778196; font-size: 13px; white-space: nowrap; }
.blue-filter-row select { min-width: 136px; max-width: 100%; height: 42px; padding: 0 30px 0 12px; border: 1px solid var(--blue-line); border-radius: 4px; background-color: #f8faff; color: #26364e; font: 14px var(--blue-ui); cursor: pointer; }
.blue-filter-row .blue-sort-filter { margin-left: auto; }
.blue-reset { min-height: 44px; padding: 6px 0 6px 8px; color: #64738c; font: 13px var(--blue-ui); border: 0; background: transparent; cursor: pointer; }
.blue-reset:hover { color: var(--blue); }
.blue-results-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin: 30px 0 25px; }
.blue-catalog .blue-results-heading h2 { font: 700 26px/1.3 var(--blue-display); }
.blue-catalog .results-status { margin: 0; color: #737e90; font: 13px/1.5 var(--blue-ui); }
.blue-catalog .novel-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 36px 30px; padding-top: 0; }
.blue-catalog .novel-card__media { order: 0; aspect-ratio: 5 / 7; background: #f3f6fb; border-radius: 3px; box-shadow: 2px 4px 12px #203b6020; }
.blue-catalog .novel-card__media::after { border-color: #253d6010; }
.blue-catalog .novel-card__media img { object-fit: contain; }
.blue-catalog .novel-card:hover .novel-card__media img { filter: none; transform: none; }
.blue-catalog .novel-card h2 { order: 1; margin-top: 14px; font: 600 17px/1.5 var(--blue-ui); letter-spacing: 0; }
.blue-catalog .novel-card h2 a { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.blue-catalog .novel-card h2 a:hover { color: var(--blue); text-decoration: none; }
.blue-catalog .novel-card > p { order: 2; margin: 5px 0 0; color: #737c8c; font: 13px/1.5 var(--blue-ui); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.blue-catalog .novel-card__meta { order: 3; justify-content: flex-start; flex-wrap: wrap; gap: 3px 7px; padding-top: 5px; padding-bottom: 14px; font: 12px/1.5 var(--blue-ui); letter-spacing: 0; text-transform: none; color: #788398; }
.blue-catalog .novel-card__meta span + span::before { content: "·"; margin-right: 7px; }
.blue-catalog .novel-card__footer { order: 4; border-top: 0; padding-top: 0; min-height: 0; }
.blue-catalog .novel-card__footer .save-button { display: inline-flex; align-items: center; justify-content: center; width: 100%; min-width: 0; height: 42px; gap: 7px; border: 1px solid #dfe8f5; border-radius: 4px; background: #fff; color: #65738a; font: 13px var(--blue-ui); transition: border-color 150ms, background-color 150ms; }
.blue-catalog .save-button:hover { background: #f4f8ff; border-color: #96b2ff; color: var(--blue); }
.blue-catalog .save-button[aria-pressed="true"] { background: #edf3ff; color: var(--blue); border-color: #ccddff; }
.blue-catalog .save-button[aria-pressed="true"] svg { fill: #064cff14; }
.blue-catalog .cover-unavailable-text, .blue-catalog .cn-cover-placeholder { background: #eff4fc; color: #637b9c; font-family: var(--blue-ui); text-transform: none; }
.blue-catalog .cn-cover-placeholder strong { font-family: var(--blue-display); }
.blue-catalog .load-more { display: flex; margin: 48px auto 0; border: 0; cursor: pointer; }
.blue-catalog .load-more[hidden] { display: none; }
.blue-catalog .catalog-empty { grid-column: 1 / -1; max-width: none; width: 100%; text-align: center; padding: 48px 20px 62px; margin: 0; border: 1px solid var(--blue-line); border-radius: 6px; background: linear-gradient(#f8fbff, #fff); }
.blue-empty-symbol { display: grid; place-items: center; margin: 0 auto 22px; width: 62px; height: 62px; background: #e8f0ff; border-radius: 50%; color: var(--blue); }
.blue-empty-symbol svg { width: 28px; height: 28px; }
.blue-catalog .catalog-empty h2 { font: 700 28px/1.4 var(--blue-display); }
.blue-catalog .catalog-empty p { margin: 15px auto 25px; color: #6b7890; font: 14px/1.9 var(--blue-ui); }
.blue-catalog .catalog-empty .blue-primary { display: inline-flex; border: 0; cursor: pointer; }
.blue-catalog :is(input, select, button):disabled { cursor: not-allowed; opacity: .55; }
@media (max-width: 1100px) {
  .blue-catalog .novel-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px 24px; }
  .blue-filter-row { gap: 16px; }
  .blue-filter-row .blue-sort-filter { margin-left: 0; }
  .blue-filter-row select { min-width: 110px; }
  .blue-library-topline > p { font-size: 12px; }
}
@media (max-width: 760px) {
  .blue-library-intro { gap: 24px; min-height: 220px; }
  .blue-library-count { min-width: 110px; padding-left: 20px; }
  .blue-library-count strong { font-size: 40px; }
  .blue-library-description { max-width: 330px; font-size: 14px; }
  .blue-library-topline { align-items: flex-start; flex-direction: column; gap: 0; padding-bottom: 16px; }
  .blue-collection-tabs a { min-height: 65px; }
  .blue-library-topline > p { margin-top: 14px; }
  .blue-catalog .novel-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 22px; }
  .blue-filter-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
  .blue-filter-row label { flex-direction: column; align-items: stretch; gap: 6px; }
  .blue-filter-row select { width: 100%; min-width: 0; }
  .blue-reset { align-self: end; justify-self: end; }
}
@media (max-width: 560px) {
  .blue-library-intro { display: block; padding-block: 28px; }
  .blue-eyebrow { font-size: 11px; }
  .blue-library-intro h1 { font-size: 34px; margin-top: 8px; }
  .blue-library-description { margin-top: 12px !important; }
  .blue-library-count { display: flex; align-items: baseline; gap: 10px; border: 0; padding: 0; margin-top: 18px; }
  .blue-library-count strong { font-size: 30px; }
  .blue-library-count span { font-size: 12px; }
  .blue-collection-tabs { gap: 28px; }
  .blue-collection-tabs a { font-size: 15px; }
  .blue-library-filters { padding-block: 22px; }
  .blue-filter-row { margin-top: 18px; }
  .blue-library-filters .blue-search { height: 54px; padding-left: 12px; gap: 8px; }
  .blue-library-filters .blue-search input { font-size: 14px; }
  .blue-results-heading { margin: 24px 0 21px; align-items: baseline; gap: 12px; }
  .blue-catalog .blue-results-heading h2 { font-size: 23px; flex-shrink: 0; }
  .blue-catalog .results-status { font-size: 11px; text-align: right; }
  .blue-catalog .novel-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; }
  .blue-catalog .novel-card h2 { font-size: 15px; margin-top: 11px; }
  .blue-catalog .novel-card > p { font-size: 12px; }
  .blue-catalog .novel-card__meta { font-size: 11px; }
  .blue-catalog .novel-card__footer .save-button { height: 44px; font-size: 12px; }
  .blue-library-content { padding-bottom: 40px; }
  .blue-catalog .catalog-empty { padding: 32px 17px 38px; }
  .blue-catalog .catalog-empty h2 { font-size: 24px; }
  .blue-catalog .catalog-empty p { font-size: 13px; }
}
