/* Shared book-card styles, scoped to enabled Past Deals and Daily Deals pages. */
.apc-preview :is(#apd-past-results,#apap-current-deals) .book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.apc-preview :is(#apd-past-results,#apap-current-deals) .apc-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:18px;border:1px solid #ded5ce;border-radius:9px;background:#fcfaf7;color:#484454;font:14px/1.5 Arimo,Arial,sans-serif;box-sizing:border-box}
.apc-preview .apc-card-top{display:grid;grid-template-columns:100px minmax(0,1fr);gap:15px;align-items:start}
.apc-preview .apc-cover{display:block;width:100%;height:155px;object-fit:contain;object-position:top center;border-radius:3px}
.apc-preview .apc-no-cover{display:flex;align-items:center;justify-content:center;height:155px;text-align:center;background:#eee8e2;font-size:12px}
.apc-preview :is(#apd-past-results,#apap-current-deals) .apc-title{margin:2px 0 7px;color:#302b34;font:600 20px/1.2 Arimo,Arial,sans-serif;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.apc-preview .apc-author{margin:0 0 11px;font:400 13px/1.4 Arimo,Arial,sans-serif;color:#746a78}
.apc-preview .apc-genres{margin:0;color:#66033d;font:600 11px/1.65 Arimo,Arial,sans-serif}
.apc-preview .apc-take{margin:16px 0;font:400 13px/1.6 Arimo,Arial,sans-serif;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.apc-preview .apc-open,.apc-preview .apc-retailer{display:flex;align-items:center;justify-content:center;min-height:44px;padding:11px 16px;border:1px solid #66033d;border-radius:6px;background:#66033d;color:#fff;font:600 14px/1.3 Arimo,Arial,sans-serif;text-decoration:none;box-sizing:border-box;cursor:pointer}
.apc-preview .apc-open{width:100%;margin-top:auto}
.apc-preview .apc-open:hover,.apc-preview .apc-retailer:hover{background:#4e022f;border-color:#4e022f;color:#fff}
.apc-preview .apc-open:focus-visible,.apc-preview .apc-dialog :focus-visible{outline:3px solid #26476b;outline-offset:3px}
.apc-preview .apc-dialog{width:min(650px,calc(100vw - 28px));max-width:650px;max-height:88dvh;padding:0;border:1px solid #ded5ce;border-radius:12px;background:#fff;color:#484454;font:15px/1.65 Arimo,Arial,sans-serif;overflow:auto;overscroll-behavior:contain;box-sizing:border-box;box-shadow:0 14px 70px #0003}
.apc-preview .apc-dialog::backdrop{background:#21151fb8}
.apc-preview .apc-close-bar{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;padding:9px 12px;background:#fff}
.apc-preview .apc-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #ded5ce;border-radius:50%;background:#fcfaf7;color:#66033d;font:26px/1 Arimo,Arial,sans-serif;cursor:pointer}
.apc-preview .apc-dialog-body{padding:0 28px 28px}
.apc-preview .apc-modal-heading{display:grid;grid-template-columns:112px minmax(0,1fr);gap:23px;align-items:center;margin-bottom:22px}
.apc-preview .apc-modal-heading .apc-cover{height:auto;max-height:180px}
.apc-preview .apc-dialog h2{margin:0 0 8px;color:#66033d;font:600 27px/1.2 Arimo,Arial,sans-serif;overflow-wrap:anywhere}
.apc-preview .apc-modal-author{margin:0 0 9px;font-size:14px}
.apc-preview .apc-modal-genres{font-size:12px;margin:0;line-height:1.6}
.apc-preview .apc-dialog h3{margin:22px 0 10px;color:#66033d;font:600 16px/1.4 Arimo,Arial,sans-serif}
.apc-preview .apc-dialog p{font-family:Arimo,Arial,sans-serif;line-height:1.7}
.apc-preview .apc-recommendation{background:#f5f2ee;border-left:3px solid #66033d;padding:16px 18px;margin:22px 0;font-size:14px}
.apc-preview .apc-recommendation h3{margin:0 0 6px;font-size:13px}
.apc-preview .apc-recommendation p:last-child{margin-bottom:0}
.apc-preview .apc-retailers{display:flex;flex-wrap:wrap;gap:9px}
.apc-preview .apc-retailer{flex:1 1 145px;min-height:46px}
.apc-preview .apc-synopsis p{font:400 15px/1.75 Arimo,Arial,sans-serif;margin:0 0 13px}
.apc-preview .apc-dialog .apc-affiliate{font-size:11px;color:#756c77;margin:24px 0 0;line-height:1.6}
.apc-preview .apc-preview-banner{margin:12px auto;padding:12px 18px;max-width:1140px;border:1px solid #ded5ce;border-left:4px solid #66033d;border-radius:6px;background:#fcfaf7;color:#66033d;font:400 13px/1.5 Arimo,Arial,sans-serif}
@media(max-width:1150px){.apc-preview :is(#apd-past-results,#apap-current-deals) .book-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.apc-preview :is(#apd-past-results,#apap-current-deals) .book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.apc-preview :is(#apd-past-results,#apap-current-deals) .book-grid{grid-template-columns:minmax(0,1fr);gap:14px}.apc-preview :is(#apd-past-results,#apap-current-deals) .apc-card{padding:16px}.apc-preview .apc-card-top{grid-template-columns:104px minmax(0,1fr)}.apc-preview :is(#apd-past-results,#apap-current-deals) .apc-title{font-size:21px}.apc-preview .apc-take{-webkit-line-clamp:2}.apc-preview .apc-dialog-body{padding:0 19px 23px}.apc-preview .apc-modal-heading{grid-template-columns:85px minmax(0,1fr);gap:16px}.apc-preview .apc-dialog h2{font-size:23px}}

/* Override the site-wide button color rule for the modal close control. */
.apc-preview .apc-dialog button.apc-close{background:#fcfaf7!important;color:#66033d!important}

/* Explicit preview button states override Elementor's white focus background. */
.apc-preview .apc-card button.apc-open,
.apc-preview .apc-card button.apc-open:focus,
.apc-preview .apc-dialog a.apc-retailer,
.apc-preview .apc-dialog a.apc-retailer:visited,
.apc-preview .apc-dialog a.apc-retailer:focus{
    background:#66033D!important;
    border-color:#66033D!important;
    color:#fff!important;
}
.apc-preview .apc-card button.apc-open:hover,
.apc-preview .apc-card button.apc-open:focus-visible,
.apc-preview .apc-card button.apc-open:active,
.apc-preview .apc-dialog a.apc-retailer:hover,
.apc-preview .apc-dialog a.apc-retailer:focus-visible,
.apc-preview .apc-dialog a.apc-retailer:active{
    background:#26476B!important;
    border-color:#26476B!important;
    color:#fff!important;
}
.apc-preview .apc-dialog button.apc-close:hover,
.apc-preview .apc-dialog button.apc-close:focus-visible{
    background:#26476B!important;
    border-color:#26476B!important;
    color:#fff!important;
}

/* Daily Deals keeps a single live-price element under the existing pricing plugin. */
.apc-preview #apap-current-deals .apc-price-home{margin:auto 0 0}
.apc-preview #apap-current-deals .apc-daily .apc-open{margin-top:12px}
.apc-preview .apc-modal-price:empty{display:none}
