.faith-card-dialog{width:min(956px,calc(100% - 24px));max-height:92dvh;padding:20px 24px 24px;border:1px solid #cfdcd6;border-radius:8px;background:#fff;color:#172033;overflow:hidden}
.faith-card-dialog[open]{display:flex;flex-direction:column}
.faith-card-dialog::backdrop{background:#10251fa6}
.faith-card-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid #e0e8e4;flex-shrink:0}
.faith-card-bar h2{font:700 20px/1.3 Arial,sans-serif;margin:0}
.faith-card-bar button{border:1px solid #d4e3dc;border-radius:6px;background:#edf4f2;color:#176b58;padding:8px 14px;cursor:pointer;font:600 14px Arial,sans-serif;min-height:36px}
.faith-card-tools{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 0;flex-shrink:0}
.faith-card-tabs{display:flex;gap:4px;border-bottom:1px solid #d4e3dc}
.faith-card-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:#68738a;padding:9px 16px;font:600 14px Arial,sans-serif;cursor:pointer}
.faith-card-tabs button[aria-selected=true]{color:#176b58;border-bottom-color:#176b58}
.faith-card-zoom{display:none;width:36px;height:36px;border:1px solid #d4e3dc;border-radius:6px;background:#edf4f2;color:#176b58;font:24px Arial,sans-serif;cursor:pointer}
.faith-card-dialog button:focus-visible{outline:2px solid #176b58;outline-offset:3px}
.faith-card-body{min-height:0;overflow:auto;padding:0;overscroll-behavior:contain}
.card-sheet{margin:0;max-width:900px}
.card-sheet[hidden],.card-sheet>h3[hidden]{display:none}
.card-viewport{width:100%;aspect-ratio:900/560;position:relative;overflow:hidden}
.faith-card{position:absolute;top:0;left:0;width:900px;height:560px;transform:scale(var(--card-scale,1));transform-origin:top left;background:#fff;color:#222;border:1px solid #888;font-family:Arial,sans-serif;letter-spacing:0}
.faith-card::before{content:'';position:absolute;inset:9px;border:4px double #0876d4;pointer-events:none}
.card-logo{position:absolute;left:69px;top:42px;width:136px;height:136px;object-fit:contain}
.card-heading{position:absolute;left:253px;top:23px;width:494px;text-align:center}
.card-heading p{margin:0;font-weight:700;line-height:1.4;white-space:nowrap}
.card-heading .card-religion{font-size:30px}
.card-heading .card-church{font-size:23px;margin-top:5px}
.card-heading .card-parish{font-size:23px;margin-top:1px}
.card-parish::after{content:'';display:block;width:236px;height:2px;background:#333;margin:6px auto 0}
.card-heading h2{margin:10px 0 0;font-family:'Times New Roman',serif;font-size:38px;line-height:1.2;color:#ff191f;font-weight:700}
.card-qr{position:absolute;left:759px;top:49px;width:114px;height:120px;border:1px solid #666;display:grid;place-items:center;font-size:30px;font-family:'Arial Narrow',Arial,sans-serif}
.card-qr img{width:100%;height:100%;object-fit:contain}
.card-photo{position:absolute;left:43px;top:222px;width:188px;height:286px;border:1px solid #666;display:grid;place-items:center;text-align:center;font:25px/1.2 'Times New Roman',serif}
.card-photo img{width:100%;height:100%;object-fit:contain}
.faith-card .card-photo.has-photo{border-color:transparent}
.card-fields{position:absolute;left:273px;top:202px;right:35px;margin:0;font-size:30px;line-height:1.3}
.card-fields>div{display:flex;gap:14px;min-height:47px;align-items:baseline}
.card-fields dt{flex-shrink:0}
.card-fields dd{margin:0;min-width:0;overflow-wrap:anywhere}
.card-fields .card-number{min-height:43px;padding-left:87px}
.faith-card .card-fields{font-size:26px;left:273px;right:30px}
.faith-card .card-fields dd{font-size:25px;line-height:1.35;white-space:nowrap}
.faith-card .card-fields>div{display:flex;gap:8px;min-height:47px}
.faith-card .card-fields .card-number{padding-left:0;width:494px;margin-left:-20px;justify-content:center}
.card-issued{position:absolute;left:75px;top:44px;margin:0;font-size:30px;line-height:1.4}
.card-signature{position:absolute;left:490px;top:94px;width:200px;text-align:center;margin:0;font-size:30px;line-height:1.4}
.card-signatory{position:absolute;left:375px;top:262px;width:430px;text-align:center;margin:0;font-size:30px;line-height:1.4}
@media(max-width:600px){.faith-card-dialog{padding:16px 12px;max-height:92dvh}.faith-card-bar h2{font-size:18px}.faith-card-tools{padding:12px 0}.faith-card-zoom{display:block}.faith-card-body.is-zoomed .card-sheet{width:900px;max-width:none}}
