.pb-signature{--ts:1;--ls:1;--accent:#967BAA;position:relative;isolation:isolate;container:signature/inline-size;width:100%;overflow:hidden;border-radius:24px;border:1px solid #ffffff66;font-family:Onest,system-ui,sans-serif;color:#29232f;box-shadow:0 18px 40px #29232f18;text-align:left}
.pb-signature::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(64deg,transparent 57%,#fff2 57.1%,transparent 85%);box-shadow:inset 0 0 0 1px #ffffff22,inset 0 -3px 0 var(--accent)}
.pb-alloy{background:repeating-linear-gradient(178deg,#ffffff08 0 1px,#68627408 1px 2px),linear-gradient(120deg,#d6d9e1,#fafafc 30%,#c3c7d3 68%,#e3d8eb)}
.pb-atmosphere{background:linear-gradient(145deg,#302638,#574363 55%,#705c7e);color:#fff7fc}
.pb-signature-brand{position:absolute;top:7%;left:7%;display:flex;align-items:center;gap:6px;width:25%;height:7%}.pb-signature-brand img:first-child{width:23%;height:100%;object-fit:contain}.pb-signature-brand img:last-child{width:74%;height:100%;object-fit:contain}
.pb-signature-logo{position:absolute;width:calc(10% * var(--ls));height:calc(10% * var(--ls));top:6%;right:7%;border-radius:12px;background:#ffffffdd;padding:1.5%;display:grid;place-items:center}.pb-signature-logo img{width:100%;height:100%;object-fit:contain}
.pb-signature.lp-top-left .pb-signature-logo{top:17%;left:7%;right:auto}.pb-signature.lp-bottom-left .pb-signature-logo{top:auto;bottom:5%;left:7%;right:auto}.pb-signature.lp-bottom-right .pb-signature-logo{top:auto;bottom:5%}
.pb-signature-photo{position:absolute;top:28%;left:7%;width:16%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:1px solid #ffffff77}.pb-signature-photo img{width:100%;height:100%;object-fit:cover}
.pb-signature-qr{position:absolute;aspect-ratio:1;background:#fff;border-radius:8px;overflow:hidden;line-height:0;padding:0}.pb-signature-qr img,.pb-signature-qr>svg{width:100%;height:100%;display:block}
.pb-short{aspect-ratio:1.6}.pb-short .pb-signature-qr{width:30%;top:9%;right:6%}.pb-short .pb-signature-identity{position:absolute;left:7%;right:7%;top:61%}.pb-short .pb-signature-actions{display:none}
.pb-signature-name{margin:0;font-size:calc(5cqw * var(--ts));line-height:1.25;letter-spacing:-.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600;color:inherit}
.pb-signature-identity p{margin:1.5% 0 0;line-height:1.3;color:inherit;opacity:.82;font-size:calc(2.7cqw * var(--ts));overflow-wrap:anywhere}.pb-signature-identity .pb-signature-company{font-size:calc(2.4cqw * var(--ts))}.pb-signature-identity .pb-signature-verified{font-size:2.2cqw;opacity:.7}
.pb-signature-foot{position:absolute;bottom:4%;left:10%;right:10%;text-align:center;font-size:1.9cqw;opacity:.7;color:inherit}
.pb-tall{aspect-ratio:1/1.7;min-height:0}.pb-tall .pb-signature-brand{width:31%;height:5%;top:6%}.pb-tall .pb-signature-qr{width:62%;top:20%;left:19%;border-radius:10px}.pb-tall .pb-signature-identity{position:absolute;left:7%;right:7%;top:61%;text-align:center}.pb-tall .pb-signature-name{font-size:calc(5.5cqw * var(--ts))}.pb-tall .pb-signature-identity p{font-size:calc(3.1cqw * var(--ts))}.pb-tall .pb-signature-identity .pb-signature-company{font-size:calc(2.9cqw * var(--ts))}.pb-tall .pb-signature-photo{top:5%;left:47%;width:12%}.pb-tall .pb-signature-foot{bottom:5%;font-size:2cqw}
.pb-signature.ta-c .pb-signature-identity{text-align:center}.pb-signature-actions{position:absolute;top:81%;left:7%;right:7%;display:flex;flex-wrap:wrap;justify-content:center;gap:3%}.pb-signature-action{width:9%;aspect-ratio:1;display:grid;place-items:center;border:1px solid #ffffff44;border-radius:50%;background:#ffffff15}.pb-signature-action svg{width:46%;height:46%;fill:none;stroke:currentColor;stroke-width:1.7}.pb-alloy .pb-signature-action{border-color:#29232f33;background:#ffffff33}
.pb-signature-actions a{color:inherit;text-decoration:none;min-width:30px;min-height:30px}.pb-signature-priv{font-size:12px;text-align:center;padding:14px 24px;margin:0;color:#655a6d}.pb-save-contact{margin:16px 24px 0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:14px;background:#735199;color:#fff!important;text-decoration:none;font-weight:600}
.pb-signature-public{border-radius:0;box-shadow:none}.pb-signature-public .pb-signature-name{font-size:calc(5.5cqw * var(--ts))}.pb-signature-public .pb-signature-actions{top:79%;gap:8px}.pb-signature-public .pb-signature-action{width:11%;min-width:36px;min-height:36px}.pb-signature-public .pb-signature-foot{bottom:3%}
.pb-signature.ta-l .pb-signature-identity{text-align:left}.pb-signature-edge{position:absolute;bottom:0;left:0;width:100%;height:3px;pointer-events:none}

.pb-material-chip{display:block;height:64px;border-radius:12px;border:1.5px solid #d9cde2}.pb-material-chip.pb-alloy{background:linear-gradient(120deg,#d6d9e1,#fafafc 30%,#c3c7d3 68%,#e3d8eb)}.pb-material-chip.pb-atmosphere{background:linear-gradient(145deg,#302638,#574363 55%,#705c7e)}
/* Tall cards follow the app's QR-first layout, including variable contact rows. */
.pb-signature-name span{font-size:.67em;font-weight:400}
.pb-tall{aspect-ratio:1/1.65;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:6%;gap:16px}
.pb-tall .pb-signature-brand{position:relative;inset:auto;align-self:flex-start;width:37.5%;height:7.5cqw;flex:none}
.pb-tall .pb-signature-qr{position:relative;inset:auto;width:72.727%;flex:none}
.pb-tall .pb-signature-identity{position:relative;inset:auto;width:100%;flex:none;text-align:center}
.pb-tall .pb-signature-name,.pb-tall.pb-signature-public .pb-signature-name{font-size:calc(8.75cqw * var(--ts));line-height:1.15}
.pb-tall .pb-signature-identity p{font-size:calc(4.43cqw * var(--ts));line-height:1.18}
.pb-tall .pb-signature-identity .pb-signature-company{font-size:calc(4.09cqw * var(--ts))}
.pb-tall .pb-signature-identity .pb-signature-team,.pb-tall .pb-signature-identity .pb-signature-verified{font-size:3.3cqw}
.pb-tall .pb-signature-actions{position:relative;inset:auto;width:100%;flex:none;gap:3.4cqw}
.pb-tall .pb-signature-action{width:15.34%;min-width:30px;min-height:30px;border-radius:33.33%;background:color-mix(in srgb,currentColor 7.5%,transparent);border-color:color-mix(in srgb,currentColor 15%,transparent)}
.pb-tall .pb-signature-foot{position:relative;inset:auto;width:100%;flex:none;font-size:3.4cqw}
.pb-tall .pb-signature-photo{left:auto;right:6%;top:4%;width:12%}
.pb-tall.ta-l .pb-signature-identity{text-align:left}
.pb-tall{box-sizing:border-box}
.pb-tall .name-fit-medium .pb-signature-name{font-size:calc(6.4cqw * var(--ts))}.pb-tall .name-fit-long .pb-signature-name{font-size:calc(4.8cqw * var(--ts))}.pb-tall .name-fit-small .pb-signature-name{font-size:calc(3.7cqw * var(--ts))}
