/* ============================================================
   iBLOCK Bundles — aligned with inverseblock-shared.css
   This file only adds bundle-specific components.
============================================================ */

.bundle-hero-actions{margin-top:34px}
.bundle-wallet-status{
  margin-top:18px;
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;
  color:var(--text-3);
  letter-spacing:.4px;
  word-break:break-word;
}

.bundle-toc{margin-top:10px}

.bundle-grid{
margin-top: 50px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.bundle-card{
  background:var(--bg-surface);
  border:1px solid var(--border);
  border-radius:var(--r);
  padding:34px;
  position:relative;
  overflow:hidden;
  transition:all .35s cubic-bezier(.4,0,.2,1);
  min-width:0;
}

.bundle-card::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--accent-g),transparent);
  opacity:0;
  transition:opacity .35s;
}

.bundle-card:hover{
  border-color:var(--border-h);
  transform:translateY(-3px);
  box-shadow:0 22px 55px rgba(0,0,0,.32),0 0 70px rgba(240,122,32,.035);
}

.bundle-card:hover::before{opacity:1}

.bundle-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:24px;
}

.bundle-code{
  font-family:'IBM Plex Mono',monospace;
  font-size:10.5px;
  font-weight:700;
  color:var(--text-3);
  text-transform:uppercase;
  letter-spacing:1.7px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bundle-bonus{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:58px;
  height:31px;
  padding:0 12px;
  border-radius:999px;
  color:var(--accent);
  background:var(--accent-d);
  border:1px solid var(--border-a);
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;
  font-weight:700;
}

.bundle-card h3{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(34px,3vw,46px);
  letter-spacing:1.5px;
  line-height:.98;
  margin-bottom:12px;
}

.bundle-card p{
  min-height:50px;
  font-size:15px;
  color:var(--text-2);
  line-height:1.7;
  margin-bottom:24px;
}

.bundle-token-number{
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(48px,5vw,72px);
  letter-spacing:2px;
  line-height:.95;
  color:var(--accent);
  margin:18px 0 26px;
  text-shadow:0 0 44px rgba(240,122,32,.13);
}

.bundle-token-number span{
  font-family:'IBM Plex Mono',monospace;
  font-size:13px;
  letter-spacing:1.5px;
  color:var(--text-3);
  text-transform:uppercase;
}

.bundle-breakdown{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:26px;
  background:var(--bg-deep);
  border:1px solid var(--border);
  border-radius:var(--rm);
  padding:16px;
}

.bundle-breakdown div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid var(--border);
}
.bundle-breakdown div:last-child{border-bottom:0;padding-bottom:0}

.bundle-breakdown span{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  color:var(--text-3);
  text-transform:uppercase;
  letter-spacing:1.4px;
}

.bundle-breakdown b{
  color:var(--text);
  font-size:14px;
}

.bundle-buy{
  width:100%;
  min-height:50px;
}

.bundle-buy:disabled{
  opacity:.45;
  cursor:not-allowed;
  transform:none!important;
  box-shadow:none!important;
}

.bundle-terms-panel p + p{margin-top:10px}

/* =========================================================
   Bundle confirmation modal — matched to Account Recent Activity popup
   ========================================================= */
.bundle-modal{
  position:fixed;
  inset:0;
  z-index:30000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:22px;
}
.bundle-modal.open,
.bundle-modal.closing,
.bundle-modal[aria-hidden="false"]{
  display:flex;
}
.bundle-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,7,10,0);
  -webkit-backdrop-filter:blur(0);
  backdrop-filter:blur(0);
  opacity:0;
}
.bundle-modal.open .bundle-modal-backdrop,
.bundle-modal[aria-hidden="false"] .bundle-modal-backdrop{
  animation:iblockBundleModalBackdropIn .3s ease-out forwards;
}
.bundle-modal.closing .bundle-modal-backdrop,
.bundle-modal.is-closing .bundle-modal-backdrop{
  animation:iblockBundleModalBackdropOut .24s ease-in forwards;
}
.bundle-modal-card{
  position:relative;
  z-index:1;
  width:min(460px,100%);
  background:rgba(21,26,33,.96);
  border:1px solid var(--border-h);
  border-radius:var(--r);
  padding:32px;
  box-shadow:0 30px 90px rgba(0,0,0,.38);
  opacity:0;
  transform:translateY(34px);
}
.bundle-modal.open .bundle-modal-card,
.bundle-modal[aria-hidden="false"] .bundle-modal-card{
  animation:iblockBundleModalCardUp .72s cubic-bezier(.16,1,.3,1) forwards;
}
.bundle-modal.closing .bundle-modal-card,
.bundle-modal.is-closing .bundle-modal-card{
  animation:iblockBundleModalCardDown .24s ease-in forwards;
}
.bundle-modal-head{
  display:block;
  padding:0;
  margin:0 0 26px;
  border:0;
  background:transparent;
}
.bundle-modal-head > div{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.bundle-modal-head .section-tag{
  display:block;
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  font-weight:900;
  letter-spacing:1.9px;
  text-transform:uppercase;
  color:var(--accent);
  margin:0;
}
.bundle-modal-head .section-tag .dot{
  display:none;
}
.bundle-modal-head h2{
  display:block;
  font-family:'Bebas Neue',sans-serif;
  font-size:46px;
  font-weight:400;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--text);
  line-height:1.02;
  margin:0;
}
.bundle-modal-close{
  position:absolute;
  top:16px;
  right:16px;
  width:38px;
  height:38px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--bg-raised);
  color:var(--text-2);
  font-size:26px;
  line-height:1;
  cursor:pointer;
  transition:all .25s;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.bundle-modal-close:hover{
  color:var(--accent);
  border-color:var(--border-a);
}
.bundle-modal-body{
  padding:0;
}
.bundle-modal-details{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border-top:1px solid var(--border);
  margin-bottom:18px;
}
.bundle-modal-details p{
  color:var(--text-2);
  line-height:1.7;
  margin:0;
  padding:15px 0;
  border-bottom:1px solid var(--border);
}
.bundle-modal-details .detail-label{
  font-family:'IBM Plex Mono',monospace;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:1.4px;
  color:rgba(255,255,255,.94);
  opacity:.5;
  margin:0;
  font-weight:800;
}
.bundle-modal-details .detail-value{
  font-size:15px;
  opacity:.9;
  color:var(--text);
  font-weight:500;
  word-break:break-word;
  text-align:left;
  line-height:1.45;
}
.bundle-modal-details .detail-item{
  display:grid;
  grid-template-columns:minmax(112px,152px) 1fr;
  gap:16px;
  background:transparent;
  border:0;
  border-bottom:1px solid var(--border);
  border-radius:0;
  padding:15px 0;
}
.bundle-modal-warning{
  background:var(--bg-deep);
  border:1px solid var(--border);
  border-left:3px solid var(--accent);
  border-radius:var(--rs);
  padding:16px 18px;
  font-size:14px;
  color:var(--text-2);
  line-height:1.7;
  margin-bottom:18px;
}
.bundle-modal-pay{
  width:100%;
  min-height:52px;
}
.bundle-modal-status{
  min-height:18px;
  margin:8px 0 8px 0;
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;
  color:var(--text-2);
  line-height:1.6;
  word-break:break-word;
}
.bundle-modal-status.ok{color:#81c784}
.bundle-modal-status.err{color:#ef9a9a}

@keyframes iblockBundleModalBackdropIn{
  from{background:rgba(5,7,10,0);backdrop-filter:blur(0);opacity:0}
  to{background:rgba(5,7,10,.58);backdrop-filter:blur(12px);opacity:1}
}
@keyframes iblockBundleModalBackdropOut{
  from{background:rgba(5,7,10,.58);backdrop-filter:blur(12px);opacity:1}
  to{background:rgba(5,7,10,0);backdrop-filter:blur(0);opacity:0}
}
@keyframes iblockBundleModalCardUp{
  from{opacity:0;transform:translateY(34px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes iblockBundleModalCardDown{
  from{opacity:1;transform:translateY(0)}
  to{opacity:0;transform:translateY(34px)}
}

@media(max-width:900px){
  .bundle-modal-card{width:min(460px,100%)}
  .bundle-modal-details .detail-item{grid-template-columns:minmax(94px,120px) 1fr;gap:12px}
}
@media(max-width:768px){
  .bundle-modal-card{padding:28px 22px}
}

@media(max-width:1060px){
  .bundle-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:768px){
  .bundle-grid{grid-template-columns:1fr}
  .bundle-card{padding:24px}
  .bundle-card p{min-height:auto}
  .bundle-modal-card{padding:28px 22px}
}

@media(max-width:560px){
  .bundle-card-top{align-items:flex-start;flex-direction:column}
  .bundle-code{white-space:normal}
}

/* =========================================================
   iBLOCK Bundles — Clean Card Layout Override
   Price softened + checklist restored
   Put this at the VERY BOTTOM of iblock-bundles.css
   ========================================================= */

.pg.bundle-grid{
  align-items:stretch;
}

.pc.ibx-bundle-card.bundle-card-clean{
  min-height:480px;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  padding:34px 32px !important;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-tier{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  padding:7px 13px;
  border-radius:999px;
  background:var(--accent-d);
  border:1px solid var(--border-a);
  color:var(--accent);
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  font-weight:800;
  letter-spacing:2px;
  line-height:1;
  text-transform:uppercase;
  margin:0 0 24px 0;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-token-amount{
  display:flex !important;
  align-items:flex-end;
  gap:10px;
  margin:0 0 14px 0;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-token-amount span{
  display:block;
  font-family:'Bebas Neue',sans-serif;
  font-size:72px;
  line-height:.82;
  letter-spacing:1px;
  color:var(--text);
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-token-amount small{
  display:block;
  font-size:13px;
  font-weight:700;
  color:var(--text-3);
  text-transform:uppercase;
  letter-spacing:1.8px;
  margin-bottom:8px;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-bonus-line{
  font-size:15px;
  color:var(--text-2);
  line-height:1.65;
  margin:0 0 24px 0;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-bonus-line strong{
  color:var(--accent);
  font-weight:800;
}

/* Softer price box: no harsh black background */
.pc.ibx-bundle-card.bundle-card-clean .bundle-price-line{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.075);
  border-radius:var(--rm);
  padding:16px 18px;
  margin:0 0 22px 0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-price-line span{
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  font-weight:800;
  color:var(--text-3);
  text-transform:uppercase;
  letter-spacing:1.8px;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-price-line strong{
  font-family:'Bebas Neue',sans-serif;
  font-size:30px;
  line-height:1;
  letter-spacing:1px;
  color:var(--accent);
  white-space:nowrap;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-buy-btn{
  width:100%;
  margin:0 0 28px 0;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-buy-btn:disabled{
  opacity:.95;
  cursor:not-allowed;
  background:var(--bg-raised);
  border-color:var(--border);
  color:var(--text-2);
}

.pc.ibx-bundle-card.bundle-card-clean.pop .bundle-buy-btn:disabled{
  background:linear-gradient(135deg,var(--accent),#d98314);
  color:#111;
  opacity:1;
}

/* Bring back checklist below the button */
.pc.ibx-bundle-card.bundle-card-clean .bundle-check-title{
  display:block !important;
  margin-top:auto;
  margin-bottom:18px;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-check-list{
  display:flex !important;
  flex-direction:column;
  gap:14px;
  list-style:none;
  margin:0;
  padding:0;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-check-list li{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:14px;
  color:var(--text-2);
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-check-list strong{
  color:var(--text);
  font-weight:800;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-check-list .ck{
  width:20px;
  height:20px;
  border-radius:50%;
  background:rgba(240,122,32,.1);
  border:1px solid rgba(240,122,32,.18);
  display:grid;
  place-items:center;
  flex-shrink:0;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-check-list .ck svg{
  width:12px;
  height:12px;
  stroke:var(--accent);
  fill:none;
  stroke-width:2.5;
}

/* Hide old bundle/card fragments if still present anywhere */
.pc.ibx-bundle-card.bundle-card-clean .pcn,
.pc.ibx-bundle-card.bundle-card-clean .bundle-code-line,
.pc.ibx-bundle-card.bundle-card-clean .pcp,
.pc.ibx-bundle-card.bundle-card-clean .pcd,
.pc.ibx-bundle-card.bundle-card-clean .bundle-mini-details{
  display:none !important;
}

@media(max-width:1060px){
  .pc.ibx-bundle-card.bundle-card-clean{
    min-height:440px; 
  }

  .pc.ibx-bundle-card.bundle-card-clean .bundle-token-amount span{
    font-size:64px;
  }
}

@media(max-width:768px){
  .pc.ibx-bundle-card.bundle-card-clean{
    min-height:auto;
    padding:26px 24px !important;
  }

  .pc.ibx-bundle-card.bundle-card-clean .bundle-token-amount span{
    font-size:56px;
  }

  .pc.ibx-bundle-card.bundle-card-clean .bundle-price-line{
    flex-direction:column;
    align-items:flex-start;
    gap:7px;
  }
}

/* Bundle card button spacing — tighter bottom */
.pc.ibx-bundle-card.bundle-card-clean{
  min-height:500px;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-check-list{
  margin-bottom:26px !important;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-buy-btn{
  margin-top:10px !important;
  margin-bottom:0 !important;
}

@media(max-width:768px){
  .pc.ibx-bundle-card.bundle-card-clean{
    min-height:auto;
  }

  .pc.ibx-bundle-card.bundle-card-clean .bundle-buy-btn{
    margin-top:22px !important;
    margin-bottom:0 !important;
  }
}

/* Softer borderless bundle price box */
.pc.ibx-bundle-card.bundle-card-clean .bundle-price-line{
  border:0 !important;
  box-shadow:none !important;
  background:rgba(255,255,255,.025) !important;
}

/* =========================================================
   iBLOCK Bundles — CTA rendering fix for <a> and <button>
   Keeps Login Required links clickable and visually centered.
   ========================================================= */

.pc.ibx-bundle-card.bundle-card-clean .bundle-buy-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:48px !important;
  padding:0 18px !important;
  margin-top:10px !important;
  margin-bottom:0 !important;
  border-radius:12px !important;
  text-align:center !important;
  text-decoration:none !important;
  line-height:1 !important;
  box-sizing:border-box !important;
  font-family:'Plus Jakarta Sans',sans-serif !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:-.1px !important;
}

/* Logged-out login link */
.pc.ibx-bundle-card.bundle-card-clean .bundle-login-btn{
  background:var(--bg-raised) !important;
  border:1px solid var(--border) !important;
  color:var(--text-2) !important;
  cursor:pointer !important;
}

.pc.ibx-bundle-card.bundle-card-clean .bundle-login-btn:hover{
  background:var(--bg-hover) !important;
  border-color:var(--border-h) !important;
  color:var(--text) !important;
  transform:translateY(-1px);
}

/* Featured middle card login link */
.pc.ibx-bundle-card.bundle-card-clean.pop .bundle-login-btn{
  background:linear-gradient(135deg,var(--accent),#d98314) !important;
  border-color:transparent !important;
  color:#111 !important;
}

.pc.ibx-bundle-card.bundle-card-clean.pop .bundle-login-btn:hover{
  background:linear-gradient(135deg,var(--accent-2),var(--accent)) !important;
  color:#111 !important;
}

/* Logged-in Buy Bundle button */
.pc.ibx-bundle-card.bundle-card-clean button.bundle-buy-btn{
  cursor:pointer !important;
}

/* Mobile spacing */
@media(max-width:768px){
  .pc.ibx-bundle-card.bundle-card-clean .bundle-buy-btn{
    margin-top:22px !important;
    margin-bottom:0 !important;
  }
}

#bundleGrid {
  transition: opacity .25s ease, filter .25s ease;
}

#bundleGrid.bundles-soft-refreshed {
  opacity: .88;
  filter: saturate(1.08);
}


/* Prevent first-open content flash while bundles/index.php rebuilds the drawer content. */
.bundle-modal.is-preparing .bundle-modal-backdrop,
.bundle-modal.is-preparing[aria-hidden="false"] .bundle-modal-backdrop,
.bundle-modal.is-preparing.open .bundle-modal-backdrop{
  animation:none !important;
  opacity:0 !important;
  -webkit-backdrop-filter:blur(0) !important;
  backdrop-filter:blur(0) !important;
}

.bundle-modal.is-preparing .bundle-modal-card,
.bundle-modal.is-preparing[aria-hidden="false"] .bundle-modal-card,
.bundle-modal.is-preparing.open .bundle-modal-card{
  animation:none !important;
  opacity:0 !important;
  transform:translateY(34px) !important;
  pointer-events:none !important;
}
