.qbb-invitation{width:min(570px,calc(100% - 28px));max-height:calc(100svh - 32px);box-sizing:border-box;overflow:auto;padding:32px;border:8px solid #fff;border-radius:26px;background:#fff8ef;color:#493c35;box-shadow:0 30px 100px #0004;font-family:inherit}
.qbb-invitation::backdrop{background:#30211999;backdrop-filter:blur(5px)}.qbb-invitation [hidden]{display:none!important}.qbb-invitation button,.qbb-invitation input,.qbb-invitation textarea{font:inherit}.qbb-invitation h2{font-size:30px;margin:12px 0 20px;line-height:1.3}.qbb-invitation p{line-height:1.7}.qbb-invitation :focus-visible{outline:3px solid #a35249;outline-offset:4px}.qbb-invite-close{position:absolute;right:14px;top:9px;border:0;background:none;font-size:32px!important;color:#78564e;cursor:pointer}.qbb-invite-seal{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:transparent;font-size:30px;margin-bottom:12px}.qbb-invite-eyebrow{font-size:14px;color:#885e52;margin:0}.qbb-invitation label{display:block;font-weight:700;margin:18px 0 8px}.qbb-invitation input,.qbb-invitation textarea{width:100%;box-sizing:border-box;padding:14px;border:1px solid #d3b6a5;border-radius:12px;background:#fff;color:#493c35;font-size:19px}.qbb-invitation textarea{font-size:14px;word-break:break-all}.qbb-invite-primary,.qbb-invite-secondary{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;min-height:50px;border-radius:18px;padding:13px 18px;margin:16px 0 0;text-align:center;text-decoration:none;font-weight:bold;cursor:pointer;border:0}.qbb-invite-primary{background:#bf6b61;color:#fff;box-shadow:0 8px 20px #bc746329}.qbb-invite-secondary{background:#fff;border:1px solid #d8b8a8;color:#895347}.qbb-invitation button:disabled{opacity:.6;cursor:wait}.qbb-invite-text{border:0;background:none;text-decoration:underline;color:#8d6256;cursor:pointer;padding:18px 0 0}.qbb-invite-keepsake{background:#fff;border:1px solid #e5cbbc;padding:18px;border-radius:20px;box-shadow:0 12px 25px #a26a4e15}.qbb-invite-card-mark{font-size:12px;letter-spacing:.15em;color:#986f5c}.qbb-invite-keepsake img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;display:block;margin-top:12px;border:6px solid #fff;box-sizing:border-box;border-radius:14px}.qbb-invite-keepsake h3{font-size:25px;line-height:1.4;margin:18px 0 10px}.qbb-invite-keepsake p{font-size:16px;margin:0}.qbb-invite-small{font-size:13px!important;color:#79675f;line-height:1.7;margin-top:20px}.qbb-invite-message{font-size:16px;color:#884d43;margin:18px 0 0}.qbb-invite-address{margin-top:18px;font-size:14px;color:#79675f}.qbb-invite-address summary{cursor:pointer;padding:6px 0}.qbb-invite-spinner{display:inline-block;width:18px;height:18px;border:2px solid #e3c8b9;border-top-color:#a25e52;border-radius:50%;vertical-align:middle;animation:qbbInviteSpin .8s linear infinite}@keyframes qbbInviteSpin{to{transform:rotate(360deg)}}
@media(max-width:700px){.qbb-invitation{padding:26px 18px}.qbb-invitation h2{font-size:25px}.qbb-invite-keepsake h3{font-size:23px}}@media(prefers-reduced-motion:reduce){.qbb-invite-spinner{animation:none}}

.qbb-invite-seal img{display:block;width:58px;height:58px;object-fit:contain}
/* 2026-10-27: recipient-facing AB share card; referrer reward artwork stays in success Step 3. */
.qbb-invite-brand{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.qbb-invite-brand .qbb-invite-seal{margin:0}
.qbb-invite-brand .qbb-invite-eyebrow{font-size:19px;font-weight:700;color:#895347}
.qbb-invite-keepsake .qbb-invite-card-mark{display:block;font-size:17px;font-weight:700;letter-spacing:.03em;color:#795b43}
.qbb-invite-keepsake h3{color:#795b43}
.qbb-invite-keepsake p{color:#795b43}
.qbb-invite-keepsake .qbb-invite-blessing{margin-top:14px;font-weight:700}
.qbb-invitation .qbb-invite-or{text-align:center;color:#927260;margin:10px 0 0;font-size:16px}
.qbb-invite-or+.qbb-invite-secondary{margin-top:10px}
.qbb-invite-rules-copy{border-top:1px solid #e5cbbc;padding-top:14px}
.qbb-invite-rules-copy p{font-size:14px;line-height:1.7;margin:10px 0;color:#79675f}
/* 2026-10-27: only Share / Copy remain visible; internal copy buffer is not a third route. */
.qbb-invitation .qbb-invite-copy-buffer{position:fixed!important;left:-10000px!important;top:0!important;width:1px!important;height:1px!important;padding:0!important;opacity:0!important;pointer-events:none}
.qbb-invite-rules-copy{margin-top:16px;padding-top:10px}
.qbb-invite-rules-copy p{font-size:12px!important;line-height:1.45!important;margin:6px 0!important}
.qbb-invite-rules-copy .qbb-invite-count{color:#c73340;font-weight:700}
/* 2026-10-27: structured compact notes; the entire repeat-reward sentence is blue. */
.qbb-invite-rules-copy ul{list-style:disc;margin:6px 0 0;padding-left:18px;font-size:12px;line-height:1.45;text-align:left}
.qbb-invite-rules-copy li{margin:7px 0;padding:0;color:#79675f}
.qbb-invite-rules-copy li::marker{color:#b38770}
.qbb-invite-rules-copy li.qbb-invite-repeat{color:#2463b4;font-weight:700}
.qbb-invite-rules-copy li.qbb-invite-repeat::marker{color:#2463b4}
/* 2026-10-27 mobile QA: accessible close target and safe wrapping at narrow widths. */
.qbb-invitation .qbb-invite-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
.qbb-invitation img{max-width:100%}
.qbb-invite-keepsake,.qbb-invite-rules-copy{overflow-wrap:anywhere}
@media(max-width:360px){.qbb-invitation{padding:24px 12px}.qbb-invite-keepsake{padding:12px}.qbb-invitation h2{font-size:23px}.qbb-invite-card-mark{line-height:1.5}}
