/* PhotoBridge v792 — safe customer-gallery controls + renewal action. */

/* ---------- Customer gallery: never inject controls into React-owned child lists ---------- */
.publicClientGalleryPage.pb792CustomerGallery .clientGalleryMobileSingleViewHint{display:none!important}
.publicClientGalleryPage.pb792CustomerGallery .clientGalleryPublicMedia{position:relative!important;overflow:visible!important}

/* Invoice/order mode: SELECT disappears as a concept; its existing label becomes the order button below the photo. */
.publicClientGalleryPage.pb792Priced .clientGalleryPhotoInteraction{
  position:static!important;inset:auto!important;z-index:auto!important;display:block!important;width:100%!important;
  margin:5px 0 0!important;padding:0!important;background:transparent!important;box-shadow:none!important;pointer-events:auto!important;overflow:visible!important
}
.publicClientGalleryPage.pb792Priced .clientGalleryBaseSelection.pb792OrderTrigger{
  position:static!important;inset:auto!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;pointer-events:auto!important
}
.publicClientGalleryPage.pb792Priced .clientGalleryBaseSelection.pb792OrderTrigger>label{
  display:flex!important;align-items:center!important;justify-content:center!important;width:calc(100% - 12px)!important;min-width:0!important;height:30px!important;min-height:30px!important;
  margin:0 6px!important;padding:0 8px!important;border:1px solid #c9d5ff!important;border-radius:8px!important;background:#eef2ff!important;color:#2448c5!important;box-shadow:none!important;
  font-size:0!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;cursor:pointer!important
}
.publicClientGalleryPage.pb792Priced .clientGalleryBaseSelection.pb792OrderTrigger>label::after{content:"سفارش چاپ";font-size:9.5px!important;line-height:1!important}
.publicClientGalleryPage.pb792Priced .clientGalleryPublicMedia.pb792HasOrder .clientGalleryBaseSelection.pb792OrderTrigger>label{background:#315efb!important;border-color:#315efb!important;color:#fff!important}
.publicClientGalleryPage.pb792Priced .clientGalleryPublicMedia.pb792HasOrder .clientGalleryBaseSelection.pb792OrderTrigger>label::after{content:"ویرایش سفارش چاپ"}
.publicClientGalleryPage.pb792Priced .clientGalleryBaseSelection.pb792OrderTrigger input,
.publicClientGalleryPage.pb792Priced .clientGalleryBaseSelection.pb792OrderTrigger span,
.publicClientGalleryPage.pb792Priced .clientGalleryBaseSelection.pb792OrderTrigger b{display:none!important}
.publicClientGalleryPage.pb792Priced .clientGalleryPhotoNote{display:none!important}
.publicClientGalleryPage.pb792Priced .clientGalleryOptionalOrdering{display:none!important}
.publicClientGalleryPage.pb792Priced .clientGalleryPublicMedia.pb792OrderOpen .clientGalleryOptionalOrdering{
  display:grid!important;position:fixed!important;left:12px!important;right:12px!important;bottom:64px!important;top:auto!important;z-index:2147483638!important;
  width:auto!important;max-width:520px!important;max-height:calc(100dvh - 92px)!important;margin:0 auto!important;padding:14px!important;overflow:auto!important;
  border:1px solid #dfe5ef!important;border-radius:18px!important;background:#fff!important;box-shadow:0 28px 90px rgba(15,23,42,.34)!important;pointer-events:auto!important;-webkit-overflow-scrolling:touch!important
}
.publicClientGalleryPage.pb792Priced.pb792Multi .clientGalleryBaseSelection.pb792OrderTrigger>label{width:calc(100% - 8px)!important;height:26px!important;min-height:26px!important;margin:0 4px!important;padding:0 4px!important;border-radius:7px!important}
.publicClientGalleryPage.pb792Priced.pb792Multi .clientGalleryBaseSelection.pb792OrderTrigger>label::after{font-size:8px!important}

/* Selection-only mode: compact SELECT stays on the image. */
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryPhotoInteraction{
  display:block!important;position:absolute!important;top:7px!important;right:7px!important;z-index:28!important;width:auto!important;margin:0!important;padding:0!important;background:transparent!important;pointer-events:none!important;overflow:visible!important
}
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryBaseSelection.pb792SelectTrigger{display:block!important;position:static!important;width:34px!important;height:34px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;pointer-events:auto!important}
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryBaseSelection.pb792SelectTrigger>label{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;margin:0!important;padding:0!important;border:1px solid rgba(15,23,42,.2)!important;border-radius:10px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 4px 12px rgba(15,23,42,.18)!important;color:#344054!important;overflow:hidden!important}
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryBaseSelection.pb792SelectTrigger>label.picked{background:#315efb!important;border-color:#315efb!important;color:#fff!important}
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryBaseSelection.pb792SelectTrigger input{display:block!important;width:18px!important;height:18px!important;margin:0!important;accent-color:#315efb!important}
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryBaseSelection.pb792SelectTrigger span,
.publicClientGalleryPage.pb792SelectionOnly .clientGalleryBaseSelection.pb792SelectTrigger b{display:none!important}

/* One-column selection keeps the normal note textarea. Multi-column turns it into a compact note button. */
.publicClientGalleryPage.pb792SelectionOnly.pb792Single .clientGalleryPhotoNote{display:grid!important;margin-top:7px!important}
.publicClientGalleryPage.pb792SelectionOnly.pb792Multi .clientGalleryPhotoNote.pb792CompactNote{
  display:flex!important;align-items:center!important;justify-content:center!important;width:calc(100% - 8px)!important;height:28px!important;min-height:28px!important;margin:5px 4px 0!important;padding:0 6px!important;
  border:1px solid #d0d5dd!important;border-radius:8px!important;background:#fff!important;color:#344054!important;box-shadow:none!important;cursor:pointer!important;overflow:hidden!important
}
.publicClientGalleryPage.pb792SelectionOnly.pb792Multi .clientGalleryPhotoNote.pb792CompactNote>textarea{display:none!important}
.publicClientGalleryPage.pb792SelectionOnly.pb792Multi .clientGalleryPhotoNote.pb792CompactNote>span{font-size:0!important;line-height:1!important;color:inherit!important}
.publicClientGalleryPage.pb792SelectionOnly.pb792Multi .clientGalleryPhotoNote.pb792CompactNote>span::after{content:"توضیحات";font-size:8.5px!important;font-weight:900!important}
.publicClientGalleryPage.pb792SelectionOnly.pb792Multi .clientGalleryPhotoNote.pb792CompactNote small{display:none!important}

/* Order sheet chrome is outside #root, so layout switching cannot break React reconciliation. */
.pb792OrderBackdrop{position:fixed!important;inset:0!important;z-index:2147483635!important;border:0!important;background:rgba(15,23,42,.58)!important;padding:0!important}
.pb792OrderClose{position:fixed!important;top:max(10px,env(safe-area-inset-top))!important;left:12px!important;z-index:2147483642!important;width:38px!important;height:38px!important;border:0!important;border-radius:12px!important;background:#fff!important;color:#101828!important;box-shadow:0 8px 28px rgba(15,23,42,.25)!important;font-size:24px!important;line-height:1!important}
.pb792OrderActions{position:fixed!important;left:12px!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;z-index:2147483641!important;display:grid!important;grid-template-columns:.8fr 1.4fr!important;gap:8px!important;max-width:520px!important;margin:0 auto!important}
.pb792OrderActions button{height:44px!important;border:1px solid #d0d5dd!important;border-radius:11px!important;background:#fff!important;color:#344054!important;font-size:10.5px!important;font-weight:950!important}
.pb792OrderActions .primary{border-color:#315efb!important;background:#315efb!important;color:#fff!important}.pb792OrderActions .primary:disabled{opacity:.45!important}
body>.pbSelectMenuPortal{z-index:2147483646!important;pointer-events:auto!important}

/* Floating cart, also outside #root. */
.pb792GalleryCart{position:fixed!important;left:12px!important;bottom:max(14px,env(safe-area-inset-bottom))!important;z-index:2147483200!important;display:flex!important;align-items:center!important;gap:6px!important;height:42px!important;padding:0 11px!important;border:1px solid #c7d2fe!important;border-radius:13px!important;background:#fff!important;color:#2448c5!important;box-shadow:0 12px 34px rgba(15,23,42,.2)!important;font-family:Vazirmatn,Tahoma,Arial,sans-serif!important}
.pb792GalleryCart b{font-size:10px!important}.pb792GalleryCart i{display:grid!important;place-items:center!important;min-width:22px!important;height:22px!important;padding:0 5px!important;border-radius:999px!important;background:#315efb!important;color:#fff!important;font-size:9px!important;font-style:normal!important;font-weight:950!important}
.pb792CartLayer,.pb792NoteLayer{position:fixed!important;inset:0!important;z-index:2147483640!important;display:grid!important;place-items:end center!important;padding:12px!important;background:rgba(15,23,42,.56)!important;direction:rtl!important;font-family:Vazirmatn,Tahoma,Arial,sans-serif!important}
.pb792CartCard,.pb792NoteCard{width:min(520px,100%)!important;max-height:min(82dvh,760px)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border-radius:20px!important;background:#fff!important;box-shadow:0 26px 90px rgba(15,23,42,.35)!important}
.pb792CartCard>header,.pb792NoteCard>header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:12px 14px!important;border-bottom:1px solid #eaecf0!important}.pb792CartCard>header>div{display:grid!important;gap:3px!important}.pb792CartCard>header b,.pb792NoteCard>header b{font-size:13px!important}.pb792CartCard>header small{font-size:9px!important;color:#667085!important}.pb792CartCard>header button,.pb792NoteCard>header button{width:32px!important;height:32px!important;border:0!important;border-radius:9px!important;background:#f2f4f7!important;font-size:20px!important}
.pb792CartRows{min-height:0!important;overflow:auto!important;padding:8px 12px!important;-webkit-overflow-scrolling:touch!important}.pb792CartRow{display:grid!important;grid-template-columns:54px minmax(0,1fr) auto!important;gap:9px!important;align-items:center!important;padding:8px 0!important;border-bottom:1px solid #eef0f3!important}.pb792CartRow img{width:54px!important;height:54px!important;object-fit:cover!important;border-radius:9px!important}.pb792CartRow>div{display:grid!important;gap:3px!important;min-width:0!important}.pb792CartRow b{font-size:11px!important}.pb792CartRow small{font-size:9px!important;color:#667085!important;line-height:1.6!important}.pb792CartRow button{height:32px!important;border:1px solid #cbd5e1!important;border-radius:8px!important;background:#fff!important;font-size:9px!important;font-weight:900!important}.pb792CartEmpty{padding:30px 12px!important;text-align:center!important;color:#667085!important;font-size:11px!important}.pb792CartCard>footer,.pb792NoteCard>footer{display:grid!important;grid-template-columns:1fr 1.35fr!important;gap:8px!important;padding:10px 12px max(10px,env(safe-area-inset-bottom))!important;border-top:1px solid #eaecf0!important}.pb792CartCard>footer button,.pb792NoteCard>footer button{min-height:42px!important;border-radius:10px!important;font-size:10.5px!important;font-weight:950!important}.pb792CartCard>footer .primary,.pb792NoteCard>footer .primary{border:0!important;background:#315efb!important;color:#fff!important}.pb792CartContinue{border:1px solid #cbd5e1!important;background:#fff!important;color:#344054!important}
.pb792NoteCard{padding-bottom:0!important}.pb792NoteCard>textarea{min-height:150px!important;margin:12px!important;padding:11px!important;border:1px solid #d0d5dd!important;border-radius:12px!important;resize:vertical!important;font-family:inherit!important;font-size:12px!important;line-height:1.8!important}.pb792NoteCard>small{margin:-5px 12px 12px!important;color:#667085!important;font-size:9px!important}.pb792NoteCard>footer{grid-template-columns:1fr!important}

/* Gallery renewal button: shown by v791 only during the last 7 days. */
.clientGalleryCardActions .pb792RenewGallery{flex:1 1 100%!important;border-color:#b7e4c7!important;background:#ecfdf3!important;color:#067647!important;font-weight:950!important}
@media(max-width:820px){.clientGalleryCardActions .pb792RenewGallery{height:31px!important;min-height:31px!important;font-size:8.5px!important}}


/* v792: renewal is visually next to the lifetime badge without moving React-owned nodes. */
.clientGalleryCard.pb792Renewable{position:relative!important}
.clientGalleryCard.pb792Renewable .pb791GalleryLifetime{max-width:48%!important;margin-left:82px!important}
.clientGalleryCard.pb792Renewable .clientGalleryCardActions .pb792RenewGallery{
  position:absolute!important;top:11px!important;left:8px!important;z-index:6!important;
  width:auto!important;min-width:70px!important;height:24px!important;min-height:24px!important;padding:0 7px!important;margin:0!important;
  border:1px solid #b7e4c7!important;border-radius:999px!important;background:#ecfdf3!important;color:#067647!important;font-size:8px!important;line-height:1!important;white-space:nowrap!important;box-shadow:0 2px 7px rgba(6,118,71,.08)!important
}
@media(max-width:820px){
  .clientGalleryCard.pb792Renewable .pb791GalleryLifetime{max-width:46%!important;margin-left:74px!important}
  .clientGalleryCard.pb792Renewable .clientGalleryCardActions .pb792RenewGallery{top:10px!important;left:7px!important;min-width:64px!important;height:22px!important;min-height:22px!important;padding:0 6px!important;font-size:7.5px!important}
}

/* Locked/finalized invoice action stays outside #root to avoid React reconciliation crashes. */
.pb792InvoicePortal{position:fixed!important;right:12px!important;bottom:max(14px,env(safe-area-inset-bottom))!important;z-index:2147483300!important;min-height:40px!important;padding:0 12px!important;border-radius:12px!important;box-shadow:0 12px 34px rgba(15,23,42,.2)!important}
