/* Only mounted photo cards and the inventory photo lightbox are affected. */
.dm-item.rs-qpn-item { position: relative; }
.dm-item.rs-qpn-item .rs-qpn-meta-row { display: flex; align-items: center; gap: 6px; min-height: 36px; }
.dm-item.rs-qpn-item .rs-qpn-meta-row .dm-item-meta { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.dm-item.rs-qpn-item .rs-qpn-trigger { display: grid; flex: 0 0 36px; place-items: center; width: 36px; height: 36px; min-height: 36px; margin: 0; padding: 6px; border: 1px solid rgba(8,24,29,.12); border-radius: 11px; background: #f2fbf7; color: #08181d; box-shadow: none; cursor: pointer; }
.dm-item.rs-qpn-item .rs-qpn-icon { display: block; width: 24px; height: 24px; background: url('/roomscribe-icons/auto-note-presets.svg') center / contain no-repeat; }
.dm-item.rs-qpn-item .dm-item-delete.rs-qpn-delete { position: absolute; z-index: 1; top: 14px; right: 14px; display: grid; place-items: center; width: 30px; height: 30px; min-height: 30px; margin: 0; padding: 0; border: 1px solid rgba(255,255,255,.7) !important; border-radius: 50%; background: rgba(8,24,29,.55) !important; color: #fff !important; box-shadow: none !important; font: 24px/1 ui-sans-serif,system-ui,sans-serif; cursor: pointer; text-shadow: 0 1px 2px rgba(0,0,0,.35); transform: none; }
.dm-item.rs-qpn-item .rs-qpn-delete-glyph { display: block; transform: translateY(-4px); }
.dm-item.rs-qpn-item .rs-qpn-delete::after { content: ''; position: absolute; inset: -6px; border-radius: 50%; }
.dm-item.rs-qpn-item .rs-qpn-delete:hover { background: rgba(8,24,29,.8) !important; }
.dm-item.rs-qpn-item .rs-qpn-trigger:focus-visible,
.dm-item.rs-qpn-item .rs-qpn-delete:focus-visible { outline: 3px solid #0b916a; outline-offset: 3px; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox { z-index: 2147482900 !important; flex-direction: column; align-items: center; justify-content: flex-start; gap: 8px; padding: 64px 16px 12px; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox [hidden] { display: none !important; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-photo-viewport { position: relative; display: flex; align-items: center; justify-content: center; flex: 1 1 auto; width: 100%; max-width: 1200px; min-height: 0; overflow: hidden; border-radius: 14px; background: rgba(0,0,0,.2); touch-action: none; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox [data-rs-photo-viewport] > [data-dm-lightbox-image] { flex: 0 0 auto; width: auto; height: auto; max-width: 100%; max-height: 100%; touch-action: none; user-select: none; -webkit-user-select: none; transform-origin: center; object-fit: contain; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar { display: grid; grid-template-columns: 44px minmax(50px,1fr) 44px auto; align-items: center; flex: 0 0 44px; width: min(640px,100%); gap: 8px; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar button { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; margin: 0; padding: 8px 12px; border: 1px solid rgba(255,255,255,.24); border-radius: 12px; background: rgba(255,255,255,.12); color: #fff; font: 800 13px/1.2 Inter,ui-sans-serif,system-ui,sans-serif; cursor: pointer; box-shadow: none; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar .rs-qpn-lightbox-prev,
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar .rs-qpn-lightbox-next { font-size: 23px; padding: 0; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar button:disabled { opacity: .35; cursor: default; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar button:focus-visible { outline: 3px solid #42d79f; outline-offset: 2px; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-toolbar .rs-qpn-lightbox-auto { border-color: rgba(66,215,159,.5); background: #e7fbf2; color: #07553e; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-lightbox-counter { color: rgba(255,255,255,.86); text-align: center; font: 750 13px/1.3 Inter,ui-sans-serif,system-ui,sans-serif; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-icon { display: block; width: 22px; height: 22px; background: url('/roomscribe-icons/auto-note-presets.svg') center / contain no-repeat; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .dm-photo-lightbox-caption { position: static; flex: 0 0 auto; width: min(900px,100%); max-height: 36px; overflow: hidden; overflow-wrap: anywhere; font-size: 12px; line-height: 18px; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox .rs-qpn-notes-host { flex: 1 1 auto; min-height: 0; width: min(640px,100%); overflow: hidden; border-radius: 16px; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox.rs-qpn-notes-open .rs-qpn-photo-viewport { flex: 0 0 30vh; flex-basis: 30dvh; min-height: 90px; max-height: 36%; }
#dmInventoryPhotoLightbox.rs-qpn-lightbox.rs-qpn-notes-open .dm-photo-lightbox-caption { display: none; }
.rs-qpn-dialog { box-sizing: border-box; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 14px; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; border: 1px solid rgba(8,24,29,.12); border-radius: 16px; background: #fff; color: #08181d; font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size: 13px; line-height: 1.4; text-align: left; box-shadow: 0 8px 30px rgba(5,16,20,.14); }
.rs-qpn-dialog * { box-sizing: border-box; }
.rs-qpn-dialog [hidden] { display: none !important; }
.rs-qpn-dialog .rs-qpn-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rs-qpn-dialog .rs-qpn-heading > div { flex: 1; min-width: 0; }
.rs-qpn-dialog h2 { margin: 0; font-size: 17px; font-weight: 800; line-height: 1.15; letter-spacing: -.02em; }
.rs-qpn-dialog .rs-qpn-photo-label { margin-top: 3px; color: #617277; font-size: 11px; overflow-wrap: anywhere; }
.rs-qpn-dialog button { appearance: none; margin: 0; min-height: 36px; padding: 7px 6px; border: 1px solid rgba(8,24,29,.13); border-radius: 11px; background: #fff; color: #08181d; font: inherit; font-size: 12px; font-weight: 800; line-height: 1.2; letter-spacing: normal; text-transform: none; box-shadow: none; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.rs-qpn-dialog button:hover:not(:disabled) { filter: brightness(.97); }
.rs-qpn-dialog button:focus-visible { outline: 3px solid #0b916a; outline-offset: 2px; }
.rs-qpn-dialog button:disabled { opacity: .45; cursor: default; }
.rs-qpn-dialog .rs-qpn-close { flex: 0 0 40px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border-color: rgba(66,215,159,.38); background: linear-gradient(135deg,#42d79f,#c8ffe8); color: #041f17; font-size: 24px; line-height: 1; }
.rs-qpn-dialog .rs-qpn-help { margin: 10px 0 12px; color: #617277; font-size: 11px; }
.rs-qpn-dialog .rs-qpn-group { margin: 0 0 12px; }
.rs-qpn-dialog h3 { margin: 0 0 6px; color: #08181d; font-size: 12px; font-weight: 850; }
.rs-qpn-dialog .rs-qpn-chips { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
.rs-qpn-dialog .rs-qpn-chip { overflow-wrap: anywhere; }
.rs-qpn-dialog .rs-qpn-chip[aria-pressed="true"] { border-color: #0b916a; background: #ddf8eb; color: #07553e; box-shadow: inset 0 0 0 1px #0b916a; }
.rs-qpn-dialog .rs-qpn-scopes { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-top: 8px; }
.rs-qpn-dialog .rs-qpn-scopes button { min-height: 32px; padding: 6px 8px; border-radius: 9px; font-size: 11px; }
.rs-qpn-dialog .rs-qpn-scope[aria-pressed="true"] { border-color: #0b916a; background: #ddf8eb; color: #07553e; box-shadow: inset 0 0 0 1px #0b916a; }
.rs-qpn-dialog .rs-qpn-add-item { border-style: dashed; color: #07553e; }
.rs-qpn-dialog .rs-qpn-remove-item { border-color: transparent; color: #973b2f; }
.rs-qpn-dialog .rs-qpn-item-picker { margin: 0 0 12px; padding: 10px; border: 1px solid rgba(11,145,106,.2); border-radius: 12px; background: #f4fbf7; }
.rs-qpn-dialog .rs-qpn-categories,
.rs-qpn-dialog .rs-qpn-item-choices { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 5px; }
.rs-qpn-dialog .rs-qpn-categories { margin-bottom: 8px; padding-bottom: 8px; border-bottom: 1px solid rgba(8,24,29,.1); }
.rs-qpn-dialog .rs-qpn-category,
.rs-qpn-dialog .rs-qpn-item-choice { min-height: 34px; padding: 6px; font-size: 11px; overflow-wrap: anywhere; }
.rs-qpn-dialog .rs-qpn-category[aria-pressed="true"] { border-color: #0b916a; background: #ddf8eb; color: #07553e; }
.rs-qpn-dialog .rs-qpn-recent-empty { margin: 0; color: #617277; font-size: 11px; }
.rs-qpn-dialog .rs-qpn-preview-box { padding: 9px 11px; border: 1px solid rgba(8,24,29,.08); border-radius: 12px; background: #f4f8f7; }
.rs-qpn-dialog .rs-qpn-preview-label { margin-bottom: 4px; color: #617277; font-size: 10px; font-weight: 800; }
.rs-qpn-dialog .rs-qpn-preview { max-height: 78px; overflow-y: auto; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; }
.rs-qpn-dialog .rs-qpn-preview-empty { color: #617277; }
.rs-qpn-dialog .rs-qpn-status { margin: 9px 0 0; color: #973b2f; font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }
.rs-qpn-dialog[aria-busy="true"] .rs-qpn-status { color: #617277; }
.rs-qpn-dialog .rs-qpn-actions { position: sticky; bottom: -14px; display: flex; gap: 8px; margin: 12px 0 -14px; padding: 12px 0 14px; border-top: 1px solid rgba(8,24,29,.08); background: #fff; }
.rs-qpn-dialog .rs-qpn-actions button { flex: 1; min-height: 44px; padding: 10px 12px; font-size: 13px; }
.rs-qpn-dialog .rs-qpn-save { background: #08181d; border-color: #08181d; color: #fff; }
.rs-qpn-dialog .rs-qpn-next { border-color: rgba(11,145,106,.35); background: #e7fbf2; color: #07553e; }
@media (max-width: 600px) {
  #dmInventoryPhotoLightbox.rs-qpn-lightbox { gap: 7px; padding: 58px 8px max(8px,env(safe-area-inset-bottom)); }
  #dmInventoryPhotoLightbox.rs-qpn-lightbox .dm-photo-lightbox-close { top: 8px; right: 10px; }
  .rs-qpn-dialog { padding: 12px; border-radius: 16px; }
  .rs-qpn-dialog .rs-qpn-actions { bottom: -12px; margin-bottom: -12px; padding-bottom: 12px; }
}
@media (max-height: 500px) {
  #dmInventoryPhotoLightbox.rs-qpn-lightbox { gap: 5px; padding-top: 44px; padding-bottom: 6px; }
  #dmInventoryPhotoLightbox.rs-qpn-lightbox .dm-photo-lightbox-close { top: 5px; right: 10px; min-height: 38px; padding: 7px 14px; }
  #dmInventoryPhotoLightbox.rs-qpn-lightbox.rs-qpn-notes-open .rs-qpn-photo-viewport { flex-basis: 27vh; flex-basis: 27dvh; min-height: 75px; }
  .rs-qpn-dialog { padding: 8px; }
  .rs-qpn-dialog .rs-qpn-heading { margin-bottom: 6px; gap: 8px; }
  .rs-qpn-dialog h2 { font-size: 15px; }
  .rs-qpn-dialog .rs-qpn-heading h2 { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
  .rs-qpn-dialog .rs-qpn-scopes { margin-top: 0; gap: 4px; }
  .rs-qpn-dialog .rs-qpn-scopes button { min-height: 28px; padding: 4px 6px; font-size: 10px; }
  .rs-qpn-dialog .rs-qpn-close { flex-basis: 28px; width: 28px; height: 28px; min-height: 28px; font-size: 22px; }
  .rs-qpn-dialog .rs-qpn-help,
  .rs-qpn-dialog .rs-qpn-photo-label,
  .rs-qpn-dialog .rs-qpn-group-empty { display: none; }
  .rs-qpn-dialog .rs-qpn-group { margin-bottom: 8px; }
  .rs-qpn-dialog h3 { margin-bottom: 3px; font-size: 11px; }
  .rs-qpn-dialog .rs-qpn-chips { gap: 4px; }
  .rs-qpn-dialog .rs-qpn-chip { min-height: 32px; padding: 6px 5px; font-size: 11px; }
  .rs-qpn-dialog .rs-qpn-actions { bottom: -8px; margin: 8px 0 -8px; padding: 6px 0 8px; }
  .rs-qpn-dialog .rs-qpn-actions button { min-height: 36px; padding: 7px 10px; font-size: 12px; }
}
