/* LULY payment flow: compact order information + invoice payment review */
.payment-compact-section{padding-top:clamp(2.5rem,6vw,5rem);padding-bottom:clamp(2.5rem,6vw,5rem)}
.payment-compact-panel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:clamp(1.25rem,4vw,2.5rem);align-items:center;padding:clamp(1.25rem,4vw,2.25rem);position:relative;overflow:hidden}
.payment-compact-panel::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-120px;top:-140px;background:radial-gradient(circle,rgba(255,106,0,.2),transparent 68%);pointer-events:none}
.payment-compact-copy h2{margin:.5rem 0 .75rem;color:#fff7ee;font-size:clamp(1.75rem,4vw,3rem);letter-spacing:-.045em}
.payment-compact-copy p{margin:0;color:rgba(255,247,238,.7);line-height:1.7;max-width:620px}
.payment-compact-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;position:relative;z-index:1}
.payment-compact-steps>div{padding:1rem;border:1px solid rgba(255,181,107,.17);border-radius:20px;background:rgba(255,255,255,.045);min-height:145px}
.payment-compact-steps span{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:rgba(255,106,0,.16);color:#ff9b4b;font-weight:900;font-size:.8rem}
.payment-compact-steps strong{display:block;color:#fff4e6;margin:.9rem 0 .3rem;font-size:.98rem}
.payment-compact-steps small{display:block;color:rgba(255,247,238,.62);line-height:1.5;font-size:.82rem}
.payment-compact-actions{grid-column:1/-1;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding-top:.25rem}
.payment-compact-actions>span{color:rgba(255,247,238,.58);font-size:.88rem}
.luly-payment-dialog{width:min(680px,calc(100vw - 28px));max-width:none;padding:0;border:0;border-radius:28px;background:transparent;color:#fff;overflow:visible}
.luly-payment-dialog::backdrop{background:rgba(3,4,8,.78);backdrop-filter:blur(8px)}
.luly-payment-dialog-card{position:relative;margin:0;border:1px solid rgba(255,181,107,.22);border-radius:28px;padding:clamp(1.25rem,4vw,2rem);background:linear-gradient(145deg,rgba(25,20,18,.985),rgba(10,11,16,.985));box-shadow:0 35px 100px rgba(0,0,0,.62);overflow:hidden}
.luly-payment-dialog-card::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#ff6a00,#ffb16a,transparent)}
.luly-payment-dialog-card h2{margin:.55rem 2.5rem .75rem 0;color:#fff7ee;font-size:clamp(1.7rem,5vw,2.65rem);letter-spacing:-.05em;line-height:1.05}
.payment-dialog-lead{color:rgba(255,247,238,.68);line-height:1.68;margin:0 0 1.25rem}
.payment-dialog-close{position:absolute;right:1rem;top:1rem;width:2.45rem;height:2.45rem;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);color:#fff;display:grid;place-items:center;cursor:pointer}
.payment-dialog-close:hover{background:rgba(255,106,0,.16);border-color:rgba(255,153,72,.38)}
.payment-dialog-steps{display:grid;gap:.7rem;margin:1rem 0}
.payment-dialog-steps>div{display:grid;grid-template-columns:2.7rem 1fr;gap:.8rem;align-items:start;padding:.9rem;border:1px solid rgba(255,255,255,.085);border-radius:18px;background:rgba(255,255,255,.035)}
.payment-dialog-steps i{width:2.5rem;height:2.5rem;border-radius:14px;display:grid;place-items:center;background:rgba(255,106,0,.14);color:#ff9a48}
.payment-dialog-steps strong{display:block;color:#fff4e6;margin-bottom:.15rem}
.payment-dialog-steps small{display:block;color:rgba(255,247,238,.62);line-height:1.45}
.payment-dialog-note{display:flex;gap:.75rem;align-items:flex-start;margin:1rem 0;padding:.9rem 1rem;border-radius:17px;border:1px solid rgba(255,181,107,.16);background:rgba(255,106,0,.07)}
.payment-dialog-note i{color:#ff9a48;margin-top:.15rem}.payment-dialog-note p{margin:0;color:rgba(255,247,238,.72);line-height:1.55;font-size:.9rem}
.payment-dialog-actions{display:flex;justify-content:flex-end;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}
.payment-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.payment-review-grid>div{padding:.9rem 1rem;border-radius:17px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035)}
.payment-review-grid span{display:block;color:rgba(255,247,238,.55);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.3rem}
.payment-review-grid strong{display:block;color:#fff4e6;overflow-wrap:anywhere}
body.payment-dialog-fallback-open{overflow:hidden}
.luly-payment-dialog.is-open{display:block;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:9999}
@media(max-width:991.98px){.payment-compact-panel{grid-template-columns:1fr}.payment-compact-actions{grid-column:auto}.payment-compact-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){.payment-compact-steps,.payment-review-grid{grid-template-columns:1fr}.payment-compact-steps>div{min-height:0}.payment-dialog-actions>*{width:100%}.payment-dialog-actions{flex-direction:column-reverse}.luly-payment-dialog-card{border-radius:22px}.luly-payment-dialog{width:min(100% - 18px,680px)}}
@media(prefers-reduced-motion:no-preference){.luly-payment-dialog[open] .luly-payment-dialog-card,.luly-payment-dialog.is-open .luly-payment-dialog-card{animation:lulyPaymentIn .2s ease-out}@keyframes lulyPaymentIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}}
