/*
 * Privé Lounge V1.14.2
 * Authoritative overlay/modal system.
 * Loaded after app.css and prive-v114.css. Legacy prive-v1141.css is no longer enqueued.
 */

html.prive-modal-open,
body.prive-modal-open{
  overflow:hidden!important;
  overscroll-behavior:none!important;
}
body.prive-modal-open{
  touch-action:none;
}

/* --------------------------------------------------------------------------
   Event application / ticket terms modal
   -------------------------------------------------------------------------- */
.prive-event-apply-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  margin:0!important;
  padding:18px!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:#f4f0f8!important;
  transform:none!important;
  filter:none!important;
  perspective:none!important;
  contain:none!important;
}
body.prive-theme-dark .prive-event-apply-modal{
  background:#070412!important;
}
.prive-event-apply-modal[hidden]{display:none!important}
.prive-event-apply-modal.is-open:not([hidden]){display:flex!important}

/* Backdrop is only a click target. The wrapper itself is the opaque screen. */
.prive-event-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  border:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

.prive-event-modal-card{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  width:min(940px,calc(100vw - 36px))!important;
  height:min(900px,calc(100dvh - 36px))!important;
  max-height:calc(100dvh - 36px)!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #dfd7e6!important;
  border-radius:24px!important;
  background:#fff!important;
  background-image:none!important;
  color:#211a28!important;
  opacity:1!important;
  box-shadow:0 36px 120px rgba(22,10,34,.32)!important;
  transform:none!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  contain:layout paint!important;
}
body.prive-theme-dark .prive-event-modal-card{
  background:#110c27!important;
  background-image:none!important;
  color:#f8f5ff!important;
  border-color:rgba(232,219,255,.18)!important;
  box-shadow:0 46px 150px rgba(0,0,0,.76)!important;
}

/* Single scroll container for the entire popup. */
.prive-event-modal-scroll{
  position:relative!important;
  z-index:1!important;
  flex:1 1 auto!important;
  min-height:0!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:32px 34px 42px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  scrollbar-gutter:stable!important;
  background:#fff!important;
  color:#211a28!important;
  opacity:1!important;
  outline:none!important;
}
body.prive-theme-dark .prive-event-modal-scroll{
  background:#110c27!important;
  color:#f8f5ff!important;
}

.prive-event-modal-card>.prive-modal-close{
  position:absolute!important;
  z-index:50!important;
  top:14px!important;
  right:14px!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #ded7e3!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#1d1722!important;
  font-size:24px!important;
  line-height:1!important;
  box-shadow:0 8px 24px rgba(15,8,22,.18)!important;
  cursor:pointer!important;
}
body.prive-theme-dark .prive-event-modal-card>.prive-modal-close{
  background:#fbf8fd!important;
  color:#160f1e!important;
  border-color:rgba(255,255,255,.30)!important;
}
.prive-event-modal-scroll>.sc-card-kicker:first-child,
.prive-event-modal-scroll>h2{padding-right:56px!important}

/* Terms are ordinary content in the modal. NO nested scrolling. */
.prive-terms-details{
  display:block!important;
  width:100%!important;
  margin:14px 0!important;
  overflow:visible!important;
  border:1px solid #e1d9e7!important;
  border-radius:14px!important;
  background:#f8f5fb!important;
  color:#2a2130!important;
  opacity:1!important;
}
.prive-terms-details summary{
  display:block!important;
  position:static!important;
  padding:13px 15px!important;
  background:#eee8f3!important;
  color:#27202e!important;
  border-radius:13px 13px 0 0!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.prive-terms-details .prive-legal-scroll{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
  padding:17px!important;
  border-top:1px solid #e1d9e7!important;
  background:#fff!important;
  color:#3a313f!important;
}
.prive-terms-details .prive-legal-scroll pre{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  font:inherit!important;
  font-size:14px!important;
  line-height:1.65!important;
  color:#3a313f!important;
  background:transparent!important;
}
body.prive-theme-dark .prive-terms-details{
  background:#18112f!important;
  border-color:rgba(226,209,255,.18)!important;
  color:#f5f0fa!important;
}
body.prive-theme-dark .prive-terms-details summary{
  background:#21183e!important;
  color:#fff!important;
}
body.prive-theme-dark .prive-terms-details .prive-legal-scroll{
  background:#0c091c!important;
  color:#eee8f3!important;
  border-top-color:rgba(226,209,255,.12)!important;
}
body.prive-theme-dark .prive-terms-details .prive-legal-scroll pre{
  color:#eee8f3!important;
}

.prive-event-modal-rules,
.prive-event-preview-rule-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.prive-event-modal-rules>div,
.prive-event-preview-rule-grid>div,
.prive-application-profile-note{
  background:#f8f5fb!important;
  border:1px solid #e3dce9!important;
  color:#2b2232!important;
  opacity:1!important;
}
body.prive-theme-dark .prive-event-modal-rules>div,
body.prive-theme-dark .prive-event-preview-rule-grid>div,
body.prive-theme-dark .prive-application-profile-note{
  background:#1a1334!important;
  border-color:rgba(226,209,255,.15)!important;
  color:#f8f5ff!important;
}

.prive-event-modal-card .sc-check{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  color:#39303f!important;
  line-height:1.5!important;
  white-space:normal!important;
}
body.prive-theme-dark .prive-event-modal-card .sc-check{color:#eee8f3!important}
.prive-event-modal-card .sc-check input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  flex:0 0 18px!important;
  margin:2px 0 0!important;
  padding:0!important;
  opacity:1!important;
  accent-color:#8b3dff!important;
}

.prive-event-organiser-preview .sc-notice,
.prive-event-modal-card .sc-notice{
  background:#fff7e7!important;
  border:1px solid #e6cf91!important;
  color:#4a3911!important;
  opacity:1!important;
}
body.prive-theme-dark .prive-event-organiser-preview .sc-notice,
body.prive-theme-dark .prive-event-modal-card .sc-notice{
  background:#251b2e!important;
  border-color:rgba(229,195,106,.32)!important;
  color:#f3dfad!important;
}

/* --------------------------------------------------------------------------
   Business / Edit Event modal
   -------------------------------------------------------------------------- */
.prive-business-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  width:100vw!important;
  height:100vh!important;
  height:100dvh!important;
  margin:0!important;
  padding:18px!important;
  display:none!important;
  place-items:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:#f4f0f8!important;
  transform:none!important;
  filter:none!important;
  contain:none!important;
}
body.prive-theme-dark .prive-business-modal{background:#070412!important}
.prive-business-modal[hidden]{display:none!important}
.prive-business-modal.is-open:not([hidden]){display:grid!important}
.prive-business-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:transparent!important;
  opacity:1!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:0!important;
}
.prive-business-modal-dialog,
.prive-business-modal-wide{
  position:relative!important;
  z-index:2!important;
  width:min(1120px,calc(100vw - 36px))!important;
  height:min(900px,calc(100dvh - 36px))!important;
  max-height:calc(100dvh - 36px)!important;
  min-height:0!important;
  overflow:hidden!important;
  opacity:1!important;
  border-radius:24px!important;
  background:#fff!important;
  background-image:none!important;
  border:1px solid #ded7e5!important;
  box-shadow:0 40px 130px rgba(20,9,31,.30)!important;
  transform:none!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  contain:layout paint!important;
}
body.prive-theme-dark .prive-business-modal-dialog,
body.prive-theme-dark .prive-business-modal-wide{
  background:#110c27!important;
  background-image:none!important;
  border-color:rgba(232,219,255,.18)!important;
  box-shadow:0 48px 150px rgba(0,0,0,.76)!important;
}
.prive-business-modal-form{
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  background:#fff!important;
  color:#211a28!important;
  opacity:1!important;
}
body.prive-theme-dark .prive-business-modal-form{
  background:#110c27!important;
  color:#f8f5ff!important;
}
body.prive-theme-dark .prive-business-modal-form label,
body.prive-theme-dark .prive-business-modal-form legend,
body.prive-theme-dark .prive-business-modal-form h2,
body.prive-theme-dark .prive-business-modal-form h3,
body.prive-theme-dark .prive-business-modal-form strong{color:#f8f4ff!important}
body.prive-theme-dark .prive-business-modal-form small,
body.prive-theme-dark .prive-business-modal-form p{color:#cfc6d9!important}
body.prive-theme-dark .prive-business-modal-form input,
body.prive-theme-dark .prive-business-modal-form select,
body.prive-theme-dark .prive-business-modal-form textarea{
  background:#0d091f!important;
  color:#f8f4ff!important;
  -webkit-text-fill-color:#f8f4ff!important;
  border-color:rgba(231,214,255,.18)!important;
}
body.prive-theme-dark .prive-business-modal-form input::placeholder,
body.prive-theme-dark .prive-business-modal-form textarea::placeholder{color:#948aa1!important;opacity:1}
body.prive-theme-dark .prive-business-modal-form select option{background:#0d091f!important;color:#f8f4ff!important}

/* Keep audience checkboxes readable in Edit Event. */
body.prive-theme-dark .prive-promo-channel-fieldset{
  background:#171130!important;
  color:#f6f1fb!important;
  border-color:rgba(230,214,255,.16)!important;
}
body.prive-theme-dark .prive-promo-channel-fieldset legend{color:#c99bff!important;background:#171130!important}
body.prive-theme-dark .prive-promo-channel-fieldset label{color:#eee7f5!important}
body.prive-theme-dark .prive-promo-channel-fieldset input[type="checkbox"]{
  width:17px!important;height:17px!important;min-width:17px!important;max-width:17px!important;flex:0 0 17px!important;margin:2px 0 0!important;accent-color:#8b3dff!important;
}

@media(max-width:760px){
  .prive-event-apply-modal,.prive-business-modal{padding:6px!important}
  .prive-event-modal-card,.prive-business-modal-dialog,.prive-business-modal-wide{
    width:calc(100vw - 12px)!important;
    height:calc(100dvh - 12px)!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:16px!important;
  }
  .prive-event-modal-scroll{padding:26px 17px 34px!important}
  .prive-event-modal-rules,.prive-event-preview-rule-grid{grid-template-columns:1fr!important}
}
