.payment-cta{margin-top:18px;padding-top:17px;border-top:1px solid #26374c}
.make-payment-btn{width:100%;min-height:48px;border:1px solid #dc3b52;border-radius:12px;background:#cf3045;color:#fff;font-family:inherit;font-size:14px;font-weight:900;letter-spacing:-.01em;cursor:pointer;box-shadow:0 12px 28px rgba(207,48,69,.18);transition:transform .15s ease,background .15s ease,box-shadow .15s ease}
.make-payment-btn:hover{background:#db3b52;box-shadow:0 15px 32px rgba(207,48,69,.25);transform:translateY(-1px)}
.make-payment-btn:active{transform:translateY(0)}
.payment-cta>small{display:block;margin-top:8px;color:#71869c;font-size:10px;text-align:center}
.payment-return-message{min-height:0;margin:9px 0 0;color:#e9939f;font-size:11px;font-weight:750;line-height:1.45;text-align:center}
.payment-return-message:empty{display:none}
.payment-complete{margin-top:16px;padding:12px;border:1px solid #24553f;border-radius:11px;background:#102b21;color:#70d6a7;font-weight:850}
body.payment-sheet-open{overflow:hidden}
.payment-sheet[hidden]{display:none!important}
.payment-sheet{position:fixed;inset:0;z-index:10000;display:flex;justify-content:flex-end}
.payment-sheet-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(1,6,12,.74);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:default}
.payment-sheet-dialog{position:relative;z-index:1;display:flex;flex-direction:column;width:min(460px,100%);height:100%;overflow:hidden;border-left:1px solid #26384d;background:#09131f;color:#f4f7fb;box-shadow:-30px 0 70px rgba(0,0,0,.44);animation:payment-sheet-in .24s cubic-bezier(.2,.8,.2,1)}
@keyframes payment-sheet-in{from{transform:translateX(35px);opacity:.45}to{transform:translateX(0);opacity:1}}
.payment-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;padding:31px 30px 23px;border-bottom:1px solid #223247}
.payment-sheet-header p{margin:0 0 7px;color:#7f9bc0;font-size:10px;font-weight:900;letter-spacing:.16em}
.payment-sheet-header h2{margin:0;color:#f5f7fb;font-size:28px;line-height:1.05;letter-spacing:-.035em}
.payment-sheet-close{display:grid;place-items:center;width:36px;height:36px;margin-top:-3px;border:1px solid #2a3b50;border-radius:50%;background:#101d2c;color:#9dafc3;font-size:25px;font-weight:400;line-height:1;cursor:pointer;transition:background .15s,color .15s}
.payment-sheet-close:hover{background:#172638;color:#fff}
.payment-sheet-body{flex:1;overflow:auto;padding:25px 30px}
.payment-sheet-account{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px;border:1px solid #26384d;border-radius:15px;background:#0f1c2b}
.payment-sheet-account>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#2878bb,#0c3768);color:#fff;font-size:13px;font-weight:900}
.payment-sheet-account>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.payment-sheet-account>div:last-child{align-items:flex-end;text-align:right}
.payment-sheet-account small{color:#6f86a0;font-size:8px;font-weight:900;letter-spacing:.13em}
.payment-sheet-account strong{overflow:hidden;color:#f0f4f8;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.payment-sheet-account>div:last-child strong{font-size:18px}
.payment-step{margin-top:27px}
.payment-step>p{margin:0 0 11px;color:#dfe7f0;font-size:13px;font-weight:850}
.payment-preset-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.payment-preset-options:empty{display:none}
.payment-preset-options button{position:relative;display:flex;min-height:74px;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding:13px 15px;border:1px solid #2b4058;border-radius:13px;background:#0d1927;color:#dfe8f2;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.payment-preset-options button:hover{border-color:#587492;background:#122135}
.payment-preset-options button.selected{border-color:#d43a51;background:#171b2a;box-shadow:inset 0 0 0 1px #d43a51}
.payment-preset-options button.selected:after{content:'✓';position:absolute;top:10px;right:11px;color:#ef6376;font-size:12px;font-weight:900}
.payment-preset-options span{color:#8598ad;font-size:10px;font-weight:800}
.payment-preset-options strong{font-size:17px}
.payment-custom{display:block;margin-top:14px}
.payment-custom>span{display:block;margin-bottom:7px;color:#8498af;font-size:10px;font-weight:850}
.payment-custom>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;border:1px solid #2b4058;border-radius:12px;background:#07111c;transition:border-color .15s,box-shadow .15s}
.payment-custom>div:focus-within{border-color:#6081a5;box-shadow:0 0 0 3px rgba(71,113,157,.18)}
.payment-custom b{padding-left:15px;color:#b1c0d0;font-size:16px}
.payment-custom input{width:100%;min-width:0;border:0;outline:0;padding:14px 14px 14px 8px;background:transparent;color:#f4f7fb;font-family:inherit;font-size:16px;font-weight:800}
.payment-custom input::placeholder{color:#586d84;font-weight:650}
.payment-confirmation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:16px 0;border-top:1px solid #223247;border-bottom:1px solid #223247}
.payment-confirmation span{color:#879aaf;font-size:12px}
.payment-confirmation strong{color:#fff;font-size:18px;text-align:right}
.payment-sheet-message{min-height:18px;margin:13px 0 0;color:#ed7b8a;font-size:12px;font-weight:750;line-height:1.45}
.payment-sheet-message:empty{display:none}
.payment-privacy{margin:13px 0 0;color:#687e96;font-size:10px;line-height:1.5}
.payment-sheet-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 30px calc(19px + env(safe-area-inset-bottom));border-top:1px solid #223247;background:#0b1623}
.payment-sheet-footer>span{color:#6f849b;font-size:10px}
.payment-sheet-footer button{min-height:48px;padding:0 21px;border:1px solid #dc3b52;border-radius:12px;background:#cf3045;color:#fff;font-family:inherit;font-size:13px;font-weight:900;cursor:pointer;box-shadow:0 10px 25px rgba(207,48,69,.2)}
.payment-sheet-footer button:hover{background:#dc3a52}
.payment-sheet-footer button:disabled{border-color:#26384d;background:#172333;color:#63758a;box-shadow:none;cursor:not-allowed}
@media(max-width:600px){.payment-sheet{align-items:flex-end}.payment-sheet-dialog{width:100%;height:auto;max-height:92vh;border-top:1px solid #30435a;border-left:0;border-radius:22px 22px 0 0;animation:payment-sheet-up .24s cubic-bezier(.2,.8,.2,1)}@keyframes payment-sheet-up{from{transform:translateY(40px);opacity:.45}to{transform:translateY(0);opacity:1}}.payment-sheet-header{padding:23px 21px 18px}.payment-sheet-header h2{font-size:24px}.payment-sheet-body{padding:20px 21px}.payment-sheet-footer{padding:15px 21px calc(15px + env(safe-area-inset-bottom))}.payment-sheet-account{grid-template-columns:42px minmax(0,1fr)}.payment-sheet-account>span{width:42px;height:42px}.payment-sheet-account>div:last-child{grid-column:2;align-items:flex-start;text-align:left}.payment-preset-options{grid-template-columns:1fr 1fr}.payment-sheet-footer>span{display:none}.payment-sheet-footer button{width:100%}}
@media(max-width:380px){.payment-preset-options{grid-template-columns:1fr}.payment-sheet-account{padding:13px}}
@media(prefers-reduced-motion:reduce){.payment-sheet-dialog{animation:none}}
.payment-meta-v70{grid-template-columns:1fr}
.payment-review-summary{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding:12px 13px;border:1px solid #654f20;border-radius:11px;background:#231e12;color:#e8c567}
.payment-review-summary b{font-size:12px}
.payment-review-summary span{color:#bca66c;font-size:10px;line-height:1.45}
.payment-review-hold{display:flex;flex-direction:column;gap:5px;margin-top:16px;padding:14px;border:1px solid #604c22;border-radius:12px;background:#211c12}
.payment-review-hold b{color:#f0cf75;font-size:12px}
.payment-review-hold span{color:#ae9b68;font-size:10px;line-height:1.5}
