/* library-carousel widget (Hall of Raziel™). Uses the Hall skin variables from hall-home.css. */
.rz-carousel { display: flex; flex-direction: column; gap: .5rem; margin: .25rem 0 .5rem; }
.rz-car-stage { position: relative; min-height: 13.5rem; }
.rz-car-slide { display: flex; flex-direction: column; align-items: center; gap: .3rem; text-decoration: none; color: inherit; text-align: center; padding: .25rem; border-radius: .75rem; }
.rz-car-slide[hidden] { display: none; }
.rz-car-slide:focus-visible, .rz-car-btn:focus-visible, .rz-car-dot:focus-visible { outline: 2px solid var(--gold, #c9a04a); outline-offset: 2px; }
.rz-car-art { display: flex; align-items: center; justify-content: center; height: 9.5rem; }
.rz-carousel .rz-car-img { width: auto; max-width: 100%; height: 9.5rem; object-fit: contain; margin: 0; border-radius: .35rem; box-shadow: 0 4px 14px rgba(58,52,44,.14); }
.rz-car-tile { display: flex; align-items: center; justify-content: center; width: 7.25rem; height: 9.5rem; padding: .6rem; border-radius: .35rem; background: linear-gradient(160deg, var(--cream-deep, #f3ebe0), var(--gold-soft, #e8d5a3)); border: 1px solid rgba(201,160,74,.45); box-shadow: 0 4px 14px rgba(58,52,44,.14); font-family: var(--serif, Georgia, serif); font-size: 1rem; line-height: 1.25; color: var(--ink, #3a342c); }
.rz-car-name { font-family: var(--serif, Georgia, serif); font-weight: 700; font-size: 1.05rem; }
.rz-car-sub { font-size: .82rem; color: var(--muted, #7a7166); }
.rz-car-controls { display: flex; justify-content: center; gap: .5rem; }
.rz-car-btn { width: 2.25rem; height: 2.25rem; border-radius: 50%; border: 1px solid rgba(201,160,74,.55); background: var(--white, #fffcf7); color: #8a6a24; font-size: 1.15rem; line-height: 1; cursor: pointer; }
.rz-car-btn:hover { border-color: var(--gold, #c9a04a); box-shadow: 0 2px 10px var(--gold-glow, rgba(201,160,74,.35)); }
.rz-car-pause { font-size: .7rem; letter-spacing: -.1em; }
.rz-car-dots { display: flex; flex-wrap: wrap; justify-content: center; gap: .3rem; }
.rz-car-dot { width: .7rem; height: .7rem; padding: 0; border-radius: 50%; border: 1px solid #8a6a24; background: transparent; cursor: pointer; }
.rz-car-dot[aria-current="true"] { background: var(--gold, #c9a04a); border-color: var(--gold, #c9a04a); }
@media (pointer: coarse) { .rz-car-dot { width: 1rem; height: 1rem; } }
.door--carousel { cursor: default; }
.door--carousel h3 a { color: inherit; text-decoration: none; }
.door--carousel .go { text-decoration: none; }
