.catalog-guide { position: fixed; inset: auto; margin: 0; box-sizing: border-box; width: min(360px, calc(100vw - 24px)); padding: 16px; border: 0; border-radius: 12px; background: var(--vault-panel-raised, #1b1b1b); color: var(--vault-text, #f4f2ec); box-shadow: 0 12px 36px rgba(0,0,0,.4); overflow-y: auto; z-index: 10000; }
.catalog-guide[hidden] { display: none; }
.catalog-guide::backdrop { background: transparent; pointer-events: none; }
.catalog-guide-heading { display: flex; align-items: flex-start; gap: 12px; }
.catalog-guide h2 { flex: 1; margin: 0; font-size: 18px; font-weight: 650; line-height: 1.25; }
.catalog-guide-progress { flex: none; padding-top: 2px; color: var(--vault-muted, #b0aca6); font-size: 13px; line-height: 20px; font-variant-numeric: tabular-nums; }
.catalog-guide p { margin: 12px 0 16px; color: var(--vault-text, #f4f2ec); font-size: 14px; line-height: 1.5; }
.catalog-guide-actions { display: flex; align-items: center; gap: 6px; }
.catalog-guide button { box-sizing: border-box; min-height: 44px; padding: 10px 12px; border: 0; border-radius: 8px; background: transparent; color: var(--vault-muted, #b0aca6); font: inherit; font-size: 13px; font-weight: 500; line-height: 20px; cursor: pointer; }
.catalog-guide button[hidden] { display: none; }
.catalog-guide button:hover { background: rgba(255,255,255,.05); color: var(--vault-text, #f4f2ec); }
.catalog-guide .catalog-guide-next { margin-left: auto; background: var(--vault-gold, #e6ca78); color: #15120a; font-weight: 600; }
.catalog-guide .catalog-guide-next:hover { background: var(--vault-gold, #e6ca78); color: #15120a; filter: brightness(1.06); }
.catalog-guide button:focus-visible { outline: 2px solid var(--vault-gold, #e6ca78); outline-offset: 2px; }
.catalog-guide-target { outline: 2px solid var(--vault-gold, #e6ca78); outline-offset: 4px; }
#libraryCatalogControls.library-catalog-controls #catalogGuideReplay { justify-self: start; min-height: 44px; padding: 4px 0; border: 0; background: transparent; color: var(--vault-gold); font: inherit; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
