/* 数据驱动书架：沿用主站黑金色，不使用空栏或重复卡片撑高页面。 */
.restorer-catalog-page,.restorer-catalog-page main,.restorer-catalog-page .main{background:#111110!important;color:#f1ede2}
.restorer-catalog-page .section__title,.restorer-catalog-page .genres h1,.restorer-catalog-page .genres h2{color:#f0d077!important}
.restorer-catalog-page .home-feature-title{color:#fff!important}
.restorer-catalog-page .category-list__link,.restorer-catalog-page .genres .category__item{color:#e9d79e}
.restorer-catalog-page .restorer-content-empty,.restorer-catalog-page .ywdj-discover-empty{background:#1a1915;color:#e4d5a3;border-color:#574b2d}
.restorer-catalog-shelf{padding:30px 0 38px!important}
.restorer-catalog-shelf .section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.restorer-catalog-shelf .section__title{margin:0;font-size:26px}
.restorer-shelf-all{flex-shrink:0;color:#d5ac35;font-size:13px;text-decoration:none}
.restorer-catalog-grid{display:grid!important;grid-template-columns:repeat(var(--catalog-columns,6),minmax(0,1fr));gap:20px!important;overflow:visible!important;margin:0!important}
.restorer-catalog-grid>.preview-card{width:auto!important;min-width:0!important;margin:0!important}
.restorer-catalog-grid .preview-card__link{display:block;position:relative;overflow:hidden}
.restorer-catalog-grid .preview-card__image{display:block;width:100%!important;height:auto!important;aspect-ratio:2/3;object-fit:cover}
.restorer-catalog-grid .preview-card__body{min-width:0}
.restorer-catalog-grid .preview-card__title{overflow:hidden;text-overflow:ellipsis}
.preview-card__labels.restorer-language-labels{display:flex!important;position:absolute;top:8px;left:8px;z-index:2;gap:4px}
.restorer-content-language{display:inline-block;background:#211c10;color:#f3d373;border:1px solid #b99a42;border-radius:4px;font-size:11px;font-weight:700;line-height:1.4;padding:3px 6px}
.restorer-catalog-grid .restorer-card-empty{grid-column:1/-1}
.restorer-home-shelf-status{grid-column:1/-1;display:grid;place-items:center;min-height:180px;margin:0;border:1px dashed #5b4d2b;border-radius:14px;background:#181711;color:#bda96f}
.restorer-product-card .preview-card__link{height:100%;text-decoration:none}
.restorer-product-card .preview-card__image{width:100%!important;aspect-ratio:2/3;object-fit:cover;background:#090908}
.restorer-product-card video.preview-card__image{display:block}
.restorer-product-labels{display:flex!important;position:absolute;z-index:3;top:8px;left:8px;right:8px;justify-content:space-between;gap:6px;pointer-events:none}
.restorer-product-labels span{max-width:72%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 7px;border:1px solid rgba(244,202,75,.6);border-radius:999px;background:rgba(15,13,7,.84);color:#f5cf57;font-size:10px;font-weight:800;line-height:1.2;backdrop-filter:blur(8px)}
.restorer-product-card .preview-card__body{display:grid;gap:5px}
.restorer-product-description{display:-webkit-box;overflow:hidden;color:#aaa394;font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.restorer-product-meta{overflow:hidden;color:#d6b64e;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.restorer-product-card--companion .preview-card__link:after{content:'↗';position:absolute;right:9px;bottom:9px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f3c94f;color:#17130a;font-weight:900;box-shadow:0 5px 18px rgba(0,0,0,.35)}
.restorer-product-card .preview-card__link:focus-visible{outline:3px solid #f3c94f;outline-offset:3px}
.restorer-catalog-pagination{display:flex;justify-content:center;align-items:center;gap:22px;padding:28px 0;color:#d4bc77}
.restorer-catalog-pagination[hidden]{display:none!important}
.restorer-catalog-pagination button{min-width:48px;min-height:44px;border:1px solid #65542b;border-radius:8px;background:#201d15;color:#f3c94f;cursor:pointer}
.restorer-catalog-pagination button:disabled{opacity:.35;cursor:default}
.restorer-catalog-pagination button:focus-visible{outline:3px solid #f3c94f;outline-offset:3px}
@media(max-width:1000px){.restorer-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important}}
@media(max-width:540px){.restorer-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px!important}.restorer-catalog-shelf{padding:20px 0 24px!important}.restorer-catalog-shelf .section__title{font-size:21px}}
