.cv-popup{position:fixed;z-index:2147483000;left:20px;right:20px;max-width:760px;margin:auto;opacity:0;pointer-events:none;transform:translateY(30px);transition:opacity .45s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.cv-popup[data-position="top"]{top:18px}.cv-popup:not([data-position="top"]){bottom:18px}.cv-popup.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.cv-popup-inner,.cv-subscribe-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.15);border-radius:22px;padding:18px;background:linear-gradient(135deg,#001156 0%,#0060b5 100%);box-shadow:0 20px 60px rgba(0,17,86,.28);backdrop-filter:blur(14px);font-family:inherit;color:#fff}
.cv-popup-inner:before,.cv-subscribe-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 5%,rgba(255,255,255,.18),transparent 34%),radial-gradient(circle at 92% 96%,rgba(255,255,255,.11),transparent 40%);pointer-events:none}
.cv-popup-inner{display:flex;align-items:center;gap:15px}.cv-card-glow{position:absolute;inset:-100px auto auto -70px;width:190px;height:190px;border-radius:50%;background:rgba(255,255,255,.10);filter:blur(25px);pointer-events:none}
.cv-popup-icon,.cv-card-icon{position:relative;flex:0 0 54px;width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 8px 25px rgba(0,0,0,.14)}
.cv-popup-icon img,.cv-card-icon img{width:38px;height:38px;object-fit:contain;border-radius:10px}.cv-popup-copy,.cv-card-copy{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.cv-popup-copy strong,.cv-card-copy strong{font-size:17px;line-height:1.35}.cv-popup-copy span,.cv-card-copy span{font-size:13px;line-height:1.6;color:rgba(255,255,255,.82)}
.cv-popup-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.cv-subscribe-button{border:1px solid rgba(255,255,255,.10);cursor:pointer;border-radius:12px;padding:11px 16px;background:#fff;color:#001156;font-weight:800;transition:transform .2s,box-shadow .2s,opacity .2s,background .2s;min-height:42px}.cv-subscribe-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,17,86,.28)}.cv-subscribe-button:disabled{cursor:default;opacity:.75;transform:none}.cv-subscribe-button.is-subscribed{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.25)}.cv-subscribe-button.is-unsubscribe{background:transparent;color:#fff;border-color:rgba(255,255,255,.36)}.cv-later-button{border:1px solid rgba(255,255,255,.22);cursor:pointer;border-radius:12px;padding:10px 14px;background:rgba(0,0,0,.08);color:#fff;font-weight:700;min-height:42px}.cv-later-button:hover{background:rgba(0,0,0,.16)}
.cv-popup-close{position:absolute;top:7px;right:8px;width:31px;height:31px;border:0;border-radius:50%;background:rgba(255,255,255,.10);color:#fff;cursor:pointer;font-size:21px;line-height:1;z-index:2}.cv-popup-close:hover{background:rgba(255,255,255,.18)}
.cv-popup-status,.cv-inline-status{font-size:12px;margin-top:6px}.cv-popup-status[data-tone="error"],.cv-inline-status[data-tone="error"]{color:#ffe2e2}.cv-popup-status[data-tone="success"],.cv-inline-status[data-tone="success"]{color:#d1fae5}.cv-popup-status[data-tone="working"],.cv-inline-status[data-tone="working"]{color:#fef3c7}
.cv-subscribe-card{max-width:100%;width:100%;box-sizing:border-box;margin:12px 0;display:flex;flex-direction:column;align-items:stretch;gap:12px}.cv-card-head{display:flex;align-items:center;gap:13px;position:relative}.cv-card-copy strong{font-size:16px}.cv-card-copy span{font-size:13px}.cv-subscribe-card>.cv-subscribe-button{position:relative;width:100%;display:block}.cv-subscribe-card .cv-inline-status{position:relative}
@media(max-width:680px){.cv-popup{left:10px;right:10px;bottom:10px}.cv-popup-inner{align-items:flex-start;flex-wrap:wrap;padding:16px;border-radius:18px}.cv-popup-copy{flex-basis:calc(100% - 67px)}.cv-popup-actions{width:100%;margin-left:67px}.cv-subscribe-card{padding:16px;border-radius:18px}}
@media(prefers-reduced-motion:reduce){.cv-popup{transition:none}.cv-subscribe-button{transition:none}}

/* Modification 03 — gaming-focused responsive layouts */
.cv-popup {
  width:min(760px,calc(100vw - 24px)); max-width:none;
  left:50%; right:auto; margin:0;
  transform:translate(-50%,30px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
.cv-popup.is-visible { transform:translate(-50%,0); }
.cv-popup-inner { padding:clamp(15px,2vw,20px); }
.cv-popup-copy em,.cv-card-copy em {
  display:block; margin-bottom:2px; font-style:normal; font-size:9px; font-weight:900;
  letter-spacing:.16em; color:rgba(255,255,255,.62);
}
.cv-popup-copy strong { font-size:clamp(16px,2vw,20px); }
.cv-popup-copy span { font-size:clamp(12px,1.4vw,13.5px); }
.cv-popup-actions { align-items:center; }
.cv-popup-primary { min-width:150px; }
.cv-card-copy em { color:rgba(255,255,255,.58); }
.cv-card-copy strong { font-size:clamp(15px,2vw,18px); }
.cv-card-copy span { font-size:clamp(12px,1.45vw,13.5px); }
.cv-subscribe-card { margin:14px 0; padding:clamp(14px,2.2vw,20px); }
.cv-subscribe-card>.cv-subscribe-button { min-height:46px; border-radius:13px; font-size:13px; }
@media (min-width:1200px){
  .cv-popup { width:min(760px,calc(100vw - 40px)); }
  .cv-popup-inner { min-height:82px; }
}
@media (min-width:681px) and (max-width:980px){
  .cv-popup { width:min(680px,calc(100vw - 28px)); }
  .cv-popup-inner { display:grid; grid-template-columns:auto 1fr; }
  .cv-popup-actions { margin-top:8px; }
}
@media (max-width:680px){
  .cv-popup { width:calc(100vw - 20px); left:10px; transform:translateY(30px); }
  .cv-popup.is-visible { transform:translateY(0); }
  .cv-popup-inner { display:grid; grid-template-columns:auto 1fr; gap:12px; padding:15px; border-radius:18px; }
  .cv-popup-icon { width:48px; height:48px; flex-basis:48px; border-radius:14px; }
  .cv-popup-icon img { width:32px; height:32px; }
  .cv-popup-copy { padding-right:8px; }
  .cv-popup-actions { grid-column:1/-1; width:100%; margin:2px 0 0; display:grid; grid-template-columns:minmax(0,1fr) auto; }
  .cv-popup-primary { width:100%; min-width:0; }
  .cv-later-button { min-width:92px; }
}
@media (max-width:430px){
  .cv-popup { width:calc(100vw - 14px); left:7px; }
  .cv-popup-inner { padding:13px; gap:10px; border-radius:16px; }
  .cv-popup-close { top:6px; right:6px; width:28px; height:28px; font-size:19px; }
  .cv-popup-copy strong { font-size:16px; padding-right:22px; }
  .cv-popup-copy span { line-height:1.5; }
  .cv-popup-actions { grid-template-columns:1fr; }
  .cv-popup-primary,.cv-later-button { width:100%; }
  .cv-subscribe-card { margin:10px 0; border-radius:16px; }
}
@media (max-width:340px){
  .cv-popup-inner { padding:11px; }
  .cv-popup-icon { width:42px; height:42px; flex-basis:42px; }
  .cv-popup-icon img { width:28px; height:28px; }
  .cv-popup-copy strong { font-size:15px; }
  .cv-popup-copy span { font-size:11.5px; }
}

/* Modification 10 — centered subscriber count and shared subscription-card state */
.cv-subscribe-card {
  align-items:center;
  text-align:center;
}
.cv-subscribe-card .cv-card-head {
  width:100%;
  justify-content:center;
  align-items:center;
  flex-direction:column;
  gap:10px;
  text-align:center;
}
.cv-subscribe-card .cv-card-copy {
  width:100%;
  align-items:center;
  text-align:center;
}
.cv-subscribe-card .cv-card-icon {
  flex:0 0 58px;
  width:58px;
  height:58px;
  border-radius:17px;
}
.cv-subscribe-card .cv-card-icon img {
  width:40px;
  height:40px;
}
.cv-subscriber-count {
  position:relative;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:7px;
  width:100%;
  margin-top:1px;
  color:rgba(255,255,255,.86);
}
.cv-subscriber-count b {
  font-size:clamp(22px,3vw,30px);
  line-height:1;
  font-weight:900;
  letter-spacing:.01em;
}
.cv-subscriber-count span {
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.62);
}
.cv-subscribe-card > .cv-subscribe-button {
  width:min(100%,320px);
  margin-inline:auto;
}
.cv-subscribe-card .cv-inline-status {
  width:100%;
  text-align:center;
  min-height:18px;
}
@media(max-width:430px){
  .cv-subscribe-card .cv-card-icon{width:54px;height:54px;flex-basis:54px}
  .cv-subscribe-card .cv-card-icon img{width:37px;height:37px}
  .cv-subscriber-count b{font-size:24px}
}
