/* Compact catalog, while preserving readable cards on smaller screens. */
@media(min-width:1100px){.catalog-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 18px}}
@media(min-width:901px) and (max-width:1099px){.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Paint stars themselves, not a rectangular hover background. */
.book-rating .unit-rating a{overflow:hidden;outline:none!important}
.book-rating .unit-rating a:hover,.book-rating .unit-rating a:focus-visible{background:transparent!important}
.book-rating .unit-rating a:hover:before,.book-rating .unit-rating a:focus-visible:before{content:'★★★★★';position:absolute;left:0;top:0;color:#e4a522;font:24px/26px Arial,sans-serif;white-space:nowrap}
.book-rating .unit-rating a:focus-visible{box-shadow:inset 0 -2px #108e74}
.book-rating .unit-rating:has(a:hover) .current-rating,.book-rating .unit-rating:has(a:focus-visible) .current-rating{visibility:hidden}

/* DLE uses jQuery UI dialogs; this theme did not style their structural classes. */
.ui-widget-overlay{position:fixed;inset:0;background:rgba(17,35,29,.48);z-index:10000}
.ui-dialog{position:absolute;z-index:10001;box-sizing:border-box;max-width:calc(100vw - 28px);padding:0;background:#fff;color:#263932;border:1px solid #d8e3de;border-radius:12px;box-shadow:0 20px 70px rgba(0,0,0,.22);overflow:hidden;font:15px/1.5 Arial,sans-serif}
.ui-dialog .ui-dialog-titlebar{position:relative;padding:16px 54px 16px 20px;background:#f0f6f3;border-bottom:1px solid #dce6e0;font-weight:700;min-height:24px}
.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:12px;top:10px;width:34px;height:34px;overflow:hidden;border:0;border-radius:6px;background:transparent;color:#39554a;cursor:pointer;font-size:0}
.ui-dialog .ui-dialog-titlebar-close:after{content:'×';font:28px/30px Arial,sans-serif}
.ui-dialog .ui-dialog-titlebar-close .ui-icon,.ui-dialog .ui-dialog-titlebar-close .ui-button-icon-space{display:none}
.ui-dialog .ui-dialog-content{padding:22px 20px;overflow:auto;max-height:65vh;box-sizing:border-box}
.ui-dialog .ui-dialog-buttonpane{padding:12px 20px 16px;border-top:1px solid #e3ebe7;background:#fff}
.ui-dialog .ui-dialog-buttonset{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.ui-dialog .ui-dialog-buttonpane button{border:0;border-radius:6px;background:#108e74;color:#fff;padding:9px 22px;font:inherit;cursor:pointer}
.ui-dialog button:focus-visible{outline:2px solid #07715c;outline-offset:2px}
body>.ui-widget-overlay~.ui-dialog{z-index:10001}
