/* 底部付费拉起 — 透明遮罩，视频保持可见 */
.pay-sheet-mask{
    position:fixed;inset:0;z-index:3000;
    background:transparent;
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .2s,visibility .2s;
}
.pay-sheet-mask.show{
    opacity:1;visibility:visible;pointer-events:auto;
}
.pay-sheet{
    position:fixed;left:50%;right:auto;bottom:0;
    width:100%;max-width:480px;
    transform:translate(-50%,100%);
    background:#1c1c1e;
    border-radius:18px 18px 0 0;
    padding:18px 16px calc(16px + env(safe-area-inset-bottom));
    transition:transform .28s cubic-bezier(.22,.7,.3,1);
    box-shadow:0 -8px 32px rgba(0,0,0,.35);
    color:#fff;
    z-index:3001;
}
.pay-sheet-mask.show .pay-sheet{transform:translate(-50%,0);}
body.pay-sheet-open{overflow:hidden;}
.pay-sheet-close{
    position:absolute;right:12px;top:10px;width:32px;height:32px;border:0;
    background:transparent;color:#888;font-size:24px;cursor:pointer;line-height:1;
}
.pay-sheet-title{font-size:17px;font-weight:800;margin:0 0 8px;padding-right:28px;}
.pay-sheet-sub{font-size:13px;color:#a1a1aa;line-height:1.55;margin-bottom:16px;}
.pay-sheet-actions{display:flex;flex-direction:column;gap:10px;}
.pay-sheet-form{margin:0;}
.pay-sheet-buy-wrap .pay-methods{margin:0 0 12px;}
.pay-sheet-btn{
    display:block;width:100%;text-align:center;padding:13px 16px;border-radius:14px;
    font-size:15px;font-weight:700;text-decoration:none;border:0;cursor:pointer;
    font-family:inherit;box-sizing:border-box;
}
.pay-sheet-btn.primary{
    background:linear-gradient(135deg,#5a9fa7,#6FB4BC);color:#fff;
    box-shadow:0 4px 16px rgba(111,180,188,.3);
}
.pay-sheet-btn.vip{
    background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.15);
}
.pay-sheet-hint{font-size:12px;color:#f87171;margin-top:10px;text-align:center;}
.pay-sheet-trigger{
    display:inline-block;padding:10px 20px;border-radius:24px;
    background:linear-gradient(135deg,#ff8eb3,#fe2c55);color:#fff;font-weight:700;
    font-size:14px;border:0;cursor:pointer;text-decoration:none;
    box-shadow:0 4px 14px rgba(254,44,85,.35);
}
