.payment-consent-dialog{--pc-bg:#172017;--pc-ink:#f4eedf;--pc-muted:#d5d9ce;--pc-link:#ead296;--pc-accent:#d9bb72;--pc-on-accent:#172017;--pc-border:#b6a16f;--pc-disabled:#303b2b;box-sizing:border-box;margin:auto;width:min(520px,calc(100vw - 32px));padding:28px;border:1px solid var(--pc-border);border-radius:20px;background:var(--pc-bg);color:var(--pc-ink);font:15px/1.7 system-ui;max-height:calc(100dvh - 32px);overflow:auto}
.theme-light .payment-consent-dialog{--pc-bg:#faf7ee;--pc-ink:#263429;--pc-muted:#52604c;--pc-link:#665020;--pc-accent:#5f6037;--pc-on-accent:#fffdf4;--pc-border:#899279;--pc-disabled:#e3e5d8}
.payment-consent-dialog::backdrop{background:#000b}
.payment-consent-dialog h2{font-size:23px;line-height:1.4;margin:0 0 18px;color:var(--pc-ink)}
.payment-consent-dialog .payment-consent-price{font-size:18px;font-weight:700;color:var(--pc-ink)}
.payment-consent-dialog p{color:var(--pc-muted)}
.payment-consent-dialog a{color:var(--pc-link)}
.payment-consent-dialog label{display:flex;gap:12px;align-items:flex-start;margin:23px 0 12px;color:var(--pc-ink)}
.payment-consent-dialog input{width:20px;height:20px;flex:0 0 20px;margin-top:4px;accent-color:var(--pc-accent)}
.payment-consent-note{font-size:12px}
.payment-consent-actions{display:flex;gap:10px;margin-top:22px}
.payment-consent-actions button{--ui-control-background:var(--pc-bg);flex:1;min-height:44px;padding:10px;border-radius:8px;border:1px solid var(--pc-border);background:transparent;color:var(--pc-ink);cursor:pointer;font:inherit;font-size:14px}
.payment-consent-actions button:last-child{--ui-control-background:var(--pc-accent);background:var(--pc-accent);color:var(--pc-on-accent);border-color:var(--pc-accent);font-weight:700}
.payment-consent-actions button:disabled{opacity:1;cursor:not-allowed;background:var(--pc-disabled);color:var(--pc-muted);border-color:var(--pc-border)}
.payment-consent-dialog :focus-visible{outline:2px solid var(--pc-link);outline-offset:4px}
/* Shared interaction rules consume these variables; keep them on this dialog's palette. */
html body.site-ui .payment-consent-dialog{--ui-accent:var(--pc-link);--ui-panel:var(--pc-bg);--ui-ink:var(--pc-ink);--ui-hover:var(--pc-bg)}
html body.site-ui .payment-consent-actions button{--ui-control-background:var(--pc-bg)}
html body.site-ui .payment-consent-actions button:last-child{--ui-control-background:var(--pc-accent)}
@media(max-width:500px){.payment-consent-dialog{padding:22px}.payment-consent-dialog h2{font-size:21px}}
.payment-consent-dialog .payment-methods{border:0;padding:0;margin:18px 0;min-width:0}
.payment-methods legend{color:var(--pc-muted);font-size:13px;margin-bottom:8px}
.payment-consent-dialog .payment-methods label{border:1px solid var(--pc-border);border-radius:10px;padding:12px;margin:8px 0;cursor:pointer;align-items:center;line-height:1.5}
.payment-consent-dialog .payment-methods label:has(input:checked){background:var(--pc-disabled);border-color:var(--pc-link)}
.payment-consent-dialog .payment-methods input{margin:0;min-width:20px}
.paypal-payment-dialog .portone-ui-container{min-height:60px;isolation:isolate}
.paypal-payment-dialog{position:relative;width:min(460px,calc(100vw - 32px));padding:36px 30px 20px;border-color:color-mix(in srgb,var(--pc-border) 45%,transparent);border-radius:24px;box-shadow:0 28px 90px #0006}
.paypal-payment-dialog .paypal-checkout-eyebrow{margin:0 44px 14px 0;font-size:10px;letter-spacing:.18em;color:var(--pc-link);font-weight:600}
.paypal-payment-dialog h2{margin:0 0 26px;font-size:25px;line-height:1.45;font-family:Georgia,'Noto Serif KR',serif;font-weight:600;letter-spacing:-.04em;word-break:keep-all;overflow-wrap:break-word}
.paypal-payment-dialog .paypal-order-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-top:1px solid color-mix(in srgb,var(--pc-border) 30%,transparent);border-bottom:1px solid color-mix(in srgb,var(--pc-border) 30%,transparent)}
.paypal-payment-dialog .paypal-order-name{margin:0;font-size:14px;line-height:1.6;max-width:65%;overflow-wrap:anywhere;color:var(--pc-ink)}
.paypal-payment-dialog .paypal-order-amount{margin:0;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:26px;font-weight:600;line-height:1.2;letter-spacing:-.04em;color:var(--pc-ink);font-variant-numeric:tabular-nums}
.paypal-order-currency{font-size:10px;letter-spacing:.12em;font-weight:400;color:var(--pc-muted)}
.paypal-payment-dialog .paypal-payment-status{margin:22px 0 14px;text-align:center;font-size:13px;line-height:1.6}
.paypal-provider-surface{padding:18px 18px 12px;background:#fff;border:1px solid #e5e7e4;border-radius:16px}
.paypal-payment-dialog .portone-ui-container{min-height:48px;width:100%;background:#fff}
.paypal-payment-dialog .payment-consent-actions{margin-top:12px;justify-content:center}
html body.site-ui .paypal-payment-dialog .paypal-back-button,.paypal-payment-dialog .paypal-back-button{--ui-control-background:var(--pc-bg);flex:0 1 auto;min-height:44px;padding:8px 20px;background:transparent;border:0;color:var(--pc-muted);font-weight:400;font-size:13px}
html body.site-ui .paypal-payment-dialog .paypal-dismiss,.paypal-payment-dialog .paypal-dismiss{--ui-control-background:var(--pc-bg);position:absolute;right:14px;top:14px;width:44px;height:44px;min-height:44px;padding:0;background:transparent;border:0;border-radius:50%;color:var(--pc-muted);font:26px/1 system-ui;cursor:pointer}
.paypal-payment-dialog .paypal-back-button:hover,.paypal-payment-dialog .paypal-dismiss:hover{color:var(--pc-ink);background:var(--pc-disabled)}
@media(max-width:500px){.paypal-payment-dialog{padding:30px 22px 16px}.paypal-payment-dialog h2{font-size:23px}.paypal-provider-surface{padding:14px 12px 8px}.paypal-payment-dialog .paypal-order-summary{gap:12px}.paypal-payment-dialog .paypal-order-amount{font-size:24px}}
