.registry-dialog{padding:0;width:min(620px,calc(100vw - 28px));max-width:620px;max-height:calc(100dvh - 32px);overflow:auto;background:#fffaf1;border:1px solid #d6be8c;border-radius:12px;color:#182640;box-shadow:0 24px 90px #0005}
.registry-dialog::backdrop{background:#11182780;backdrop-filter:blur(3px)}
.registry-dialog .close{position:absolute;right:14px;top:14px;z-index:1;width:36px;height:36px;border-radius:50%;background:#fffaf1;color:#182640;border:1px solid #ddd1b9;font-size:26px;cursor:pointer}
.gift-card-photo{height:190px;background-repeat:no-repeat}
.gift-card-body{padding:24px 32px 26px}.gift-card-eyebrow{display:block;text-align:center;color:#8c6a2f;font:10px 'DM Sans',sans-serif;letter-spacing:2.5px}
.registry-dialog h2{font:36px/1.1 Georgia,serif;color:#182640;text-align:center;margin:12px 0}
.registry-dialog .gift-card-description{font:14px/1.5 'DM Sans',sans-serif;text-align:center;color:#687080;margin:0 0 12px}
.gift-card-form{display:grid;gap:16px}.gift-card-amount{display:flex;align-items:center;justify-content:center;gap:20px}.gift-card-amount strong{font:30px Georgia,serif}.gift-card-edit{background:none;border:0;border-bottom:1px solid #9c752e;padding:3px;color:#806020;font:13px 'DM Sans',sans-serif;cursor:pointer}
.gift-card-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gift-card-form label{display:grid;gap:7px;font:12px 'DM Sans',sans-serif;color:#28303f}
.gift-card-form input,.gift-card-form textarea{width:100%;min-width:0;box-sizing:border-box;background:#fffdf8;color:#182640;border:1px solid #c9c3b6;border-radius:5px;padding:11px;font:14px 'DM Sans',sans-serif}
.gift-card-form textarea{resize:vertical}.gift-card-amount-field[hidden]{display:none}
.gift-card-continue{width:100%;padding:15px;border:1px solid #c59d46;border-radius:5px;background:linear-gradient(110deg,#e7c271,#bd9038);color:#171b27;font:18px Georgia,serif;cursor:pointer}
.gift-card-continue:hover{filter:brightness(1.07)}.registry-dialog .gift-card-notice{font:11px/1.5 'DM Sans',sans-serif;color:#737785;margin:0;text-align:center}
.registry-dialog :focus-visible{outline:2px solid #a77d2d;outline-offset:3px}
@media(max-width:600px){.gift-card-photo{height:150px}.gift-card-body{padding:20px}.registry-dialog h2{font-size:29px}.gift-card-fields{grid-template-columns:1fr;gap:13px}.gift-card-form input,.gift-card-form textarea{font-size:16px}}
.gift-card-form[hidden],.gift-card-body h2[hidden],.gift-card-description[hidden]{display:none!important}
.payment-methods{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}
.payment-methods button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 5px;border:1px solid #d5cbb8;border-radius:7px;background:#fffdf8;color:#182640;font:12px 'DM Sans',sans-serif;cursor:pointer}
.payment-methods button[aria-pressed=true]{border:2px solid #b88d33;background:#f5ecd8;padding:11px 4px}
.payment-logo,.payment-logo svg{display:block;width:32px;height:32px}
.registry-dialog .payment-summary{text-align:center;font:21px/1.4 Georgia,serif;color:#182640;background:#f2eadb;padding:12px;border-radius:6px}
.payment-steps{counter-reset:step;list-style:none;display:grid;gap:15px;padding:18px;margin:14px 0;background:#f7f0e4;border-radius:7px}
.payment-steps li{display:flex;align-items:flex-start;gap:12px;font:14px/1.5 'DM Sans',sans-serif;color:#28303f}
.payment-steps li:before{counter-increment:step;content:counter(step);flex-shrink:0;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#bc9341;color:white}
.payment-setup{font:13px/1.6 'DM Sans',sans-serif;padding:15px;background:#eeece7;color:#646875;border-radius:6px;margin-bottom:16px}
.guided-payment .gift-card-continue:disabled{opacity:.6;cursor:not-allowed}
.guided-payment .gift-card-notice{margin-top:12px}
.payment-back{display:block;margin:18px auto 0;border:0;background:none;color:#826126;text-decoration:underline;font:13px 'DM Sans',sans-serif;cursor:pointer}
@media(max-width:420px){.payment-methods{grid-template-columns:repeat(2,1fr)}}
