/* KeyboxHub 1.5.7.9 donation sheet, shared actions, result capture and ad fallback. */

/* Donation sheet */
.kb-donation-layer{
  box-sizing:border-box!important;
  overscroll-behavior:contain!important;
}
.kb-donation-card{
  box-sizing:border-box!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.014) 52%,transparent 76%),
    rgba(27,27,32,.94)!important;
  border:0!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.14),
    inset 0 1px 0 rgba(255,255,255,.09),
    0 26px 72px rgba(0,0,0,.42)!important;
  -webkit-backdrop-filter:blur(28px) saturate(150%)!important;
  backdrop-filter:blur(28px) saturate(150%)!important;
}
html[data-kb-theme="light"] .kb-donation-card{
  background:
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(255,255,255,.28) 54%,transparent 76%),
    rgba(249,249,252,.96)!important;
  box-shadow:
    inset 0 0 0 1px rgba(25,25,31,.12),
    inset 0 1px 0 #fff,
    0 24px 64px rgba(30,34,48,.18)!important;
}
.kb-donation-card>div:last-child{min-height:0!important}
.kb-donation-card .modal-scroll{overscroll-behavior:contain!important;scrollbar-gutter:stable!important}
.kb-donation-card footer{flex:none!important}

/* Donation-style compact copy controls shared by Hub, Checker, Status and VIP. */
:is(.kb-donation-copy,.kb-copy-action){
  position:relative!important;
  isolation:isolate!important;
  display:inline-grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  min-width:40px!important;
  min-height:40px!important;
  padding:0!important;
  border:0!important;
  border-radius:13px!important;
  color:var(--kb157-text,var(--kb-text,#f6f6f8))!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.025) 54%,transparent 76%),
    rgba(33,33,39,.84)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.145),
    inset 0 1px 0 rgba(255,255,255,.13),
    0 8px 19px rgba(0,0,0,.18)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
  overflow:hidden!important;
  transform:translateZ(0)!important;
  transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,border-color .2s,background-color .2s!important;
}
:is(.kb-donation-copy,.kb-copy-action)::before,
:is(.kb-donation-copy,.kb-copy-action)::after{content:none!important;display:none!important}
@media(hover:hover) and (pointer:fine){
  :is(.kb-donation-copy,.kb-copy-action):hover{
    transform:translateY(-1px)!important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.22),
      inset 0 1px 0 rgba(255,255,255,.16),
      0 10px 23px rgba(0,0,0,.2)!important;
  }
}
:is(.kb-donation-copy,.kb-copy-action):active,
:is(.kb-donation-copy,.kb-copy-action).is-kb-copy-pressed{transform:scale(.95)!important}
:is(.kb-donation-copy,.kb-copy-action):focus-visible{outline:3px solid rgba(255,255,255,.2)!important;outline-offset:3px!important}
:is(.kb-donation-copy,.kb-copy-action) :is(i,svg){position:relative!important;z-index:1!important;font-size:16px!important;line-height:1!important}
html[data-kb-theme="light"] :is(.kb-donation-copy,.kb-copy-action){
  color:#17171b!important;
  background:
    linear-gradient(145deg,#fff,rgba(255,255,255,.34) 55%,transparent 78%),
    rgba(246,246,249,.92)!important;
  box-shadow:
    inset 0 0 0 1px rgba(25,25,31,.12),
    inset 0 1px 0 #fff,
    0 8px 18px rgba(38,41,53,.09)!important;
}
html[data-kb-theme="light"] :is(.kb-donation-copy,.kb-copy-action):focus-visible{outline-color:rgba(20,20,24,.18)!important}

/* The former text-copy control now creates a clean PNG of the result card. */
body.kb-surface-checker [data-kb-screenshot-result]{
  position:relative!important;
  isolation:isolate!important;
  min-height:34px!important;
  padding:7px 12px!important;
  border:0!important;
  border-radius:11px!important;
  color:var(--kb157-text,var(--kb-text,#f6f6f8))!important;
  background:linear-gradient(145deg,rgba(255,255,255,.09),transparent 64%),rgba(35,35,41,.78)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),inset 0 1px 0 rgba(255,255,255,.1),0 6px 14px rgba(0,0,0,.14)!important;
  -webkit-backdrop-filter:blur(14px) saturate(140%)!important;
  backdrop-filter:blur(14px) saturate(140%)!important;
  overflow:hidden!important;
}
body.kb-surface-checker [data-kb-screenshot-result]::before,
body.kb-surface-checker [data-kb-screenshot-result]::after{content:none!important;display:none!important}
body.kb-surface-checker [data-kb-screenshot-result]:disabled{opacity:.68!important;cursor:wait!important;transform:none!important}
html[data-kb-theme="light"] body.kb-surface-checker [data-kb-screenshot-result]{
  color:#17171b!important;
  background:linear-gradient(145deg,#fff,rgba(255,255,255,.22)),rgba(244,244,248,.9)!important;
  box-shadow:inset 0 0 0 1px rgba(25,25,31,.11),inset 0 1px 0 #fff,0 6px 14px rgba(38,41,53,.075)!important;
}
.kb-result-capture-active,
.kb-result-capture-active *{animation-play-state:paused!important;caret-color:transparent!important}

/* Graceful ad fallback. Filled inventory always remains authoritative. */
.kb-ad-slot-v1579{position:relative!important;min-width:0!important}
.kb-ad-fallback-v1579{
  display:none;
  width:min(100%,520px);
  min-height:88px;
  margin:14px auto 0;
  padding:16px 18px;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:0;
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.075),transparent 62%),rgba(37,37,43,.64);
  color:var(--kb157-muted,#b3b3bc);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
  -webkit-backdrop-filter:blur(16px) saturate(135%);
  backdrop-filter:blur(16px) saturate(135%);
  box-sizing:border-box;
}
.kb-ad-fallback-v1579.is-visible{display:flex}
.kb-ad-fallback-v1579 p{margin:0!important;color:inherit!important;font-size:12px!important;line-height:1.55!important;text-align:left!important}
.kb-ad-fallback-v1579 button{
  flex:none!important;
  min-height:38px!important;
  padding:8px 13px!important;
  border:0!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.075)!important;
  color:var(--kb157-text,#f6f6f8)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.11)!important;
  font-size:11px!important;
  font-weight:760!important;
  white-space:nowrap!important;
}
.kb-ad-slot-v1579.is-ad-unavailable>ins.adsbygoogle,
.kb-ad-slot-v1579.is-ad-unavailable ins.adsbygoogle{
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
html[data-kb-theme="light"] .kb-ad-fallback-v1579{
  background:linear-gradient(145deg,#fff,rgba(255,255,255,.15) 62%),rgba(239,240,244,.88);
  color:#62626b;
  box-shadow:inset 0 0 0 1px rgba(25,25,31,.09);
}
html[data-kb-theme="light"] .kb-ad-fallback-v1579 button{
  background:rgba(255,255,255,.78)!important;
  color:#17171b!important;
  box-shadow:inset 0 0 0 1px rgba(25,25,31,.1)!important;
}

/* Donation is a bounded bottom sheet on phones. */
@media(max-width:760px){
  .kb-donation-layer{
    align-items:flex-end!important;
    justify-content:center!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .kb-donation-card{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - max(10px,env(safe-area-inset-top,0px)))!important;
    margin:0!important;
    border-radius:28px 28px 0 0!important;
    border-bottom:0!important;
    clip-path:inset(0 round 28px 28px 0 0)!important;
    overflow:hidden!important;
    transform-origin:50% 100%!important;
    box-shadow:inset 0 0 0 1px var(--kb157-rim,rgba(255,255,255,.14)),inset 0 1px 0 rgba(255,255,255,.11),0 -18px 54px rgba(0,0,0,.26)!important;
  }
  .kb-donation-card::before,
  .kb-donation-card::after{content:none!important;display:none!important}
  .kb-donation-card>div:last-child{
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - max(38px,env(safe-area-inset-top,0px)))!important;
    overflow:hidden!important;
    padding:0 18px calc(16px + env(safe-area-inset-bottom,0px))!important;
  }
  .kb-donation-card>div:last-child>header{grid-row:1!important;min-height:0!important;padding-top:12px!important}
  .kb-donation-card>div:last-child>.modal-scroll{
    grid-row:2!important;
    min-height:0!important;
    max-height:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    padding-right:4px!important;
    padding-bottom:8px!important;
    margin-bottom:0!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .kb-donation-card>div:last-child>footer{
    grid-row:3!important;
    flex:0 0 auto!important;
    margin-top:12px!important;
    margin-bottom:0!important;
    padding-top:12px!important;
    padding-bottom:2px!important;
    background:transparent!important;
  }
  .kb-donation-handle{width:48px!important;height:5px!important;opacity:.62!important}
}
@media(max-width:560px){
  .kb-ad-fallback-v1579{flex-direction:column!important;align-items:flex-start!important;min-height:0!important}
  .kb-ad-fallback-v1579 button{width:100%!important}
}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .kb-donation-card,:is(.kb-donation-copy,.kb-copy-action),body.kb-surface-checker [data-kb-screenshot-result],.kb-ad-fallback-v1579{
    background:#29292f!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  html[data-kb-theme="light"] .kb-donation-card,
  html[data-kb-theme="light"] :is(.kb-donation-copy,.kb-copy-action),
  html[data-kb-theme="light"] body.kb-surface-checker [data-kb-screenshot-result],
  html[data-kb-theme="light"] .kb-ad-fallback-v1579{background:#f4f4f7!important}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
  .kb-donation-card,:is(.kb-donation-copy,.kb-copy-action),body.kb-surface-checker [data-kb-screenshot-result],.kb-ad-fallback-v1579{
    background:#29292f!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  html[data-kb-theme="light"] .kb-donation-card,
  html[data-kb-theme="light"] :is(.kb-donation-copy,.kb-copy-action),
  html[data-kb-theme="light"] body.kb-surface-checker [data-kb-screenshot-result],
  html[data-kb-theme="light"] .kb-ad-fallback-v1579{background:#f4f4f7!important}
}
@media(prefers-reduced-motion:reduce){
  .kb-donation-card,:is(.kb-donation-copy,.kb-copy-action),body.kb-surface-checker [data-kb-screenshot-result]{transition:none!important;animation:none!important}
}
