/* ═══ Link2Page · Purchase modal & success page ═══
   Checkout modal (z-300, opens above everything), success screen (z-200).
   Load order matters — index.html loads css files in numeric order. */

#purchaseModal{display:none;position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:2rem}
#purchaseModal.open{display:flex;animation:fadeUp .3s ease both}
.purch-modal{background:var(--surface);border:1px solid var(--border2);border-radius:24px;max-width:480px;width:100%;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.8)}
.purch-hdr{background:linear-gradient(135deg,rgba(108,99,255,.15),rgba(34,211,238,.08));padding:2rem 2rem 1.5rem;border-bottom:1px solid var(--border);text-align:center}
.purch-hdr h3{font-family:var(--fd);font-size:22px;font-weight:800;margin-bottom:.25rem}
.purch-hdr p{font-size:13px;color:var(--text2)}
.purch-body{padding:1.5rem 2rem}
.purch-legal{background:rgba(251,146,60,.06);border:1px solid rgba(251,146,60,.2);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.25rem}
.purch-legal-title{font-size:13px;font-weight:600;color:var(--orange);margin-bottom:.5rem}
.purch-legal p{font-size:12px;color:var(--text2);line-height:1.6}
.purch-check-wrap{display:flex;align-items:flex-start;gap:12px;margin-bottom:1.25rem;cursor:pointer}
.purch-checkbox{width:18px;height:18px;border:1.5px solid var(--border2);border-radius:4px;flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;transition:all .15s}
.purch-checkbox.checked{background:var(--accent);border-color:var(--accent)}
.purch-check-label{font-size:13px;color:var(--text2);line-height:1.5}
.purch-order{background:var(--bg2);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.25rem}
.purch-order-row{display:flex;justify-content:space-between;font-size:13px;padding:4px 0}
.purch-order-row span:first-child{color:var(--text2)}
.purch-order-row.total{font-weight:700;font-size:16px;border-top:1px solid var(--border);margin-top:8px;padding-top:10px;color:var(--text)}
.purch-pay-btns{display:flex;flex-direction:column;gap:10px}
.paypal-btn{background:#ffc439;color:#000;border:none;border-radius:10px;padding:13px;font-size:15px;font-weight:700;cursor:pointer;font-family:var(--fb);transition:all .15s;opacity:.4;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:8px}
.paypal-btn.ready{opacity:1;pointer-events:all}
.paypal-btn.ready:hover{background:#f0b429;transform:translateY(-1px)}
.card-btn{background:var(--accent);color:#fff;border:none;border-radius:10px;padding:13px;font-size:15px;font-weight:700;cursor:pointer;font-family:var(--fb);transition:all .2s;opacity:.4;pointer-events:none;box-shadow:0 0 30px rgba(108,99,255,.3)}
.card-btn.ready{opacity:1;pointer-events:all}
.card-btn.ready:hover{transform:translateY(-1px);box-shadow:0 0 50px rgba(108,99,255,.5)}

#successPage{display:none;position:fixed;inset:0;z-index:200;background:var(--bg);flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}
.success-ring{width:90px;height:90px;border-radius:50%;background:rgba(52,211,153,.1);border:2px solid rgba(52,211,153,.3);display:flex;align-items:center;justify-content:center;font-size:42px;margin:0 auto 1.5rem;animation:popIn .5s cubic-bezier(.175,.885,.32,1.275) both}
@keyframes popIn{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
