.passport-card,.passport-card *,.passport-card *:before,.passport-card *:after{box-sizing:border-box}.passport-card{--mx: 50%;--my: 50%;--pointer-x: 50%;--pointer-y: 50%;--bg-x: 50%;--bg-y: 50%;--from-center: 0;--hovered: 0;position:relative;display:flex;flex-direction:column;justify-content:space-between;width:100%;max-width:342px;aspect-ratio:1.586 / 1;padding:1.25rem;overflow:hidden;cursor:pointer;-moz-user-select:none;user-select:none;-webkit-user-select:none;border-radius:var(--f-radius, 1.55rem);background:radial-gradient(circle at 12% 14%,rgba(255,255,255,.32),transparent 38%),linear-gradient(135deg,var(--p-bg-1) 0%,var(--p-bg-2) 48%,var(--p-bg-3) 100%);border:var(--f-border, 2px solid rgba(255, 255, 255, .38));box-shadow:var(--f-shadow, 0 24px 48px var(--f-glow-38), 0 8px 18px var(--f-glow-20));filter:var(--f-filter, none);font-family:var(--t-font, inherit);color:var(--p-ink);transform-origin:center;isolation:isolate}.passport-card:focus-visible{outline:3px solid var(--p-accent-40);outline-offset:3px}.passport-card.is-placeholder{border-style:dashed;box-shadow:0 14px 32px #4f464414}.passport-substrate,.passport-glow,.holofoil,.passport-glare,.passport-texture,.passport-laminate,.passport-edge{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.passport-pattern{position:absolute;top:0;right:0;width:7rem;height:100%;pointer-events:none}.passport-substrate{background:var(--f-substrate, transparent);border-radius:inherit}.passport-glow{background:radial-gradient(circle at 18% 22%,rgba(255,255,255,.44),transparent 32%),linear-gradient(115deg,transparent 0%,var(--p-glow-22) 46%,transparent 72%);mix-blend-mode:overlay;opacity:.52}.holofoil{background:repeating-linear-gradient(var(--holo-angle, 110deg),var(--holo-c1) 0%,var(--holo-c2) 14%,var(--holo-c3) 28%,var(--holo-c4) 42%,var(--holo-c5) 56%,var(--holo-c6) 70%,var(--holo-c1) 84%);background-size:var(--holo-size, 400% 400%);background-position:var(--bg-x) var(--bg-y);mix-blend-mode:var(--holo-blend, color-dodge);filter:var(--holo-filter, brightness(.9) contrast(1.4) saturate(1.6));-webkit-mask-image:radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),rgba(0,0,0,1) 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.5) 65%,rgba(0,0,0,.28) 100%);mask-image:radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),rgba(0,0,0,1) 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.5) 65%,rgba(0,0,0,.28) 100%);opacity:calc(var(--holo-rest, .26) + (var(--from-center) * var(--holo-bloom, .5)) + (var(--hovered) * .34));transition:opacity .28s ease;border-radius:inherit}.passport-glare{background:radial-gradient(farthest-corner ellipse at var(--pointer-x) var(--pointer-y),rgba(255,255,255,.34) 0%,rgba(255,255,255,.12) 32%,transparent 68%);mix-blend-mode:soft-light;opacity:calc(.18 + (var(--from-center) * .3) + (var(--hovered) * .28));transition:opacity .22s ease;border-radius:inherit}.passport-texture{background-image:var(--tx-image, none);background-size:var(--tx-size, auto);mix-blend-mode:var(--tx-blend, normal);opacity:var(--tx-opacity, 0);border-radius:inherit}.passport-laminate{background:linear-gradient(118deg,transparent 5%,rgba(255,255,255,.34) 21%,transparent 38%),linear-gradient(28deg,transparent 20%,rgba(255,255,255,.18) 48%,transparent 70%),repeating-linear-gradient(118deg,#fff0 0,#fff0 18px,#ffffff2e,#ffffff2e,#fff0 21px,#fff0 38px);opacity:.54;mix-blend-mode:soft-light}.passport-edge{border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff9e,inset 0 -1px #0000001a,inset 0 1px #ffffffdb}.passport-kicker,.passport-label{letter-spacing:0;color:var(--p-ink-soft)}.passport-kicker{margin:0;font-size:11px;font-weight:900;text-transform:uppercase}.passport-name{margin:.25rem 0 0;max-width:228px;font-size:var(--t-name-size, 1.56rem);font-weight:var(--t-name-weight, 900);text-transform:var(--t-transform, none);letter-spacing:var(--t-tracking, 0);line-height:1.08;overflow-wrap:break-word;color:var(--p-ink);text-shadow:0 1px 0 rgba(255,255,255,.28),0 8px 20px var(--p-glow-16);text-wrap:balance}.passport-pattern{background:repeating-linear-gradient(135deg,var(--p-accent-w86) 0 5px,rgba(255,255,255,.18) 5px 10px,rgba(255,255,255,.06) 10px 15px);clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);opacity:.72;filter:saturate(1.12)}.passport-card.is-placeholder .passport-pattern{opacity:.24}.passport-head{position:relative;z-index:10;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.passport-head-text{min-width:0}.avatar-chip-wrap{position:relative;flex-shrink:0}.avatar-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.avatar-chip{display:grid;place-items:center;width:3.5rem;height:3.5rem;overflow:hidden;border-radius:1rem;font-weight:900;background:#ffffff38;border:2.5px solid rgba(255,255,255,.72);box-shadow:0 8px 20px var(--p-glow-32),0 2px #ffffff85 inset;transition:transform .15s ease;cursor:pointer;padding:0}.avatar-chip:hover:not(:disabled){transform:scale(1.05)}.avatar-chip:active:not(:disabled){transform:scale(.95)}.avatar-chip:disabled{cursor:default}.avatar-img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:inherit}.avatar-initials{font-size:1.1rem;font-weight:900;color:var(--p-ink);text-shadow:0 1px 0 rgba(255,255,255,.3)}.avatar-reset{position:absolute;top:-.375rem;right:-.375rem;z-index:20;display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:999px;border:1px solid #1e1714;background:#fffef7;color:#1e1714;font-size:11px;font-weight:900;line-height:1;opacity:0;box-shadow:0 1px 2px #00000014;transition:opacity .16s ease;cursor:pointer}.avatar-chip-wrap:hover .avatar-reset,.avatar-reset:focus-visible{opacity:1}.passport-bottom{position:relative;z-index:10;display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem}.passport-id-chip{position:relative;z-index:2;flex:1 1 auto;width:auto;min-width:0;margin:-.375rem;padding:.375rem;border-radius:.5rem;transition:background-color .15s ease,transform .15s ease;cursor:pointer}.passport-id-chip:hover{background:#1e17140d}.passport-id-chip:active{transform:scale(.95)}.passport-id-chip:focus-visible{outline:2px solid var(--p-accent-40);outline-offset:2px}.passport-label{display:flex;align-items:center;gap:.375rem;margin:0;font-size:10px;font-weight:700;text-transform:uppercase}.passport-tap-hint{font-size:9px;font-weight:600;text-transform:lowercase;opacity:.6}.passport-reveal-btn{padding:.1rem .32rem;border-radius:.28rem;border:1px solid rgba(30,23,20,.25);background:#fffef785;color:var(--p-ink);font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;line-height:1.1;cursor:pointer;transition:background-color .14s ease,transform .14s ease}.passport-reveal-btn:hover{background:#fffef7d1}.passport-reveal-btn:active{transform:scale(.94)}.passport-copied{display:none;padding:.125rem .25rem;border-radius:.25rem;background:#059669;color:#fffef7;font-size:9px;font-weight:900;box-shadow:0 1px 2px #00000014}.passport-card.is-copied .passport-copied{display:inline}.passport-card.is-copied .passport-tap-hint{display:none}.passport-member-id{margin:.125rem 0 0;max-width:100%;overflow-wrap:break-word;white-space:normal;line-height:1.25;color:var(--p-ink);font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,monospace;font-weight:900;font-size:clamp(.64rem,2.5vw,.82rem);letter-spacing:-.01em}.passport-qr-stamp,.ghost-seal{position:relative;flex-shrink:0;align-self:flex-end}.ghost-seal{display:grid;place-items:center;width:3rem;height:3rem;flex-shrink:0;border-radius:999px;background:#ffffff38;border:2px solid rgba(255,255,255,.52);box-shadow:0 6px 14px var(--p-glow-24);padding:0}.ghost-seal--interactive{cursor:pointer;transition:transform .15s ease,background-color .15s ease}.ghost-seal--interactive:hover{transform:scale(1.06);background:#ffffff57}.ghost-seal--interactive:active{transform:scale(.95)}.ghost-mark{width:32px;height:36px;fill:#ffffffeb;filter:drop-shadow(0 3px 0 var(--p-accent-w42))}.ghost-mark circle{fill:var(--p-ink)}.passport-qr-stamp{display:grid;width:5.1rem;height:5.1rem;flex-shrink:0;place-items:center;overflow:hidden;margin:.15rem .15rem 0 0;rotate:-2deg;border-radius:.68rem;border:2px solid rgba(255,255,255,.86);background:#fffef7;padding:.22rem;box-shadow:0 13px 26px var(--p-glow-28),0 2px #ffffffb8 inset,inset 0 -1px #0000000f;transition:transform .15s ease,box-shadow .15s ease}.passport-qr-stamp--preview{pointer-events:none}.passport-qr-stamp:hover,.passport-qr-stamp:focus-visible{transform:translateY(-1px) scale(1.02) rotate(1deg);box-shadow:0 16px 30px var(--p-glow-32),inset 0 1px #ffffffe6;outline:none}.passport-qr-stamp:focus-visible{box-shadow:0 0 0 3px var(--p-accent-40),0 10px 22px var(--p-glow-24)}.passport-qr-stamp img{position:relative;z-index:1;display:block;width:100%;height:100%;border-radius:.24rem;-o-object-fit:contain;object-fit:contain}.qr-tap-hint{position:absolute;inset-inline:0;bottom:0;z-index:2;display:none;padding:.12rem 0;background:#1e17148f;color:#fffef7;font-size:.46rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;pointer-events:none}@media (hover: none) and (pointer: coarse){.qr-tap-hint{display:block}}@media (max-width: 360px){.passport-card{padding:1rem}.passport-name{font-size:1.3rem;line-height:1.12}.passport-qr-stamp{width:3.55rem;height:3.55rem;border-radius:.8rem}}@media (prefers-reduced-motion: no-preference){.passport-card{animation:passportReveal .52s cubic-bezier(.16,1.25,.3,1) both;animation-timing-function:linear(0,.006,.025 .9%,.101 1.8%,.539 6.5%,.826 10%,.967 11.8%,1.037 13.1%,1.078 14.2%,1.103 15.3%,1.115,1.118 17.7%,1.114 18.9%,1.106 20%,1.094 21.2%,1.08 22.3%,1.064 23.5%,1.046 24.6%,1.028 25.8%,1.01 26.9%,.992 28.1%,.975 29.2%,.959 30.4%,.945 31.5%,.931 32.8%,.92 33.9%,.91 35%,.901 36.2%,.894 37.3%,.888 38.5%,.883 39.6%,.88 40.8%,.877 42.2%,.875 43.5%,.875 44.9%,.875 46.2%,.877 47.6%,.88 48.9%,.883 50.3%,.888 51.6%,.893 53%,.9 54.5%,.907 56%,.915 57.6%,.924 59.1%,.933 60.7%,.943 62.2%,.954 63.8%,.964 65.3%,.975 67%,.986 69%,.996 71%,1.005 73.1%,1.013 75.2%,1.02 77.2%,1.026 79.3%,1.03 81.4%,1.034 83.5%,1.036 85.5%,1.037 87.6%,1.037 89.7%,1.036 91.8%,1.034 93.9%,1.032 95.9%,1.029 97.5%,1.026 98.5%,1.024 99.1%,1.022 99.5%,1.021 99.8%,1.02 100%)}.passport-card:not([style*="--hovered: 1"]) .holofoil{animation:foilDrift 7s ease-in-out infinite alternate}}.passport-card:not(.is-placeholder){will-change:transform;transition:transform .16s ease,box-shadow .12s ease;transform:perspective(620px) rotateX(calc((var(--my) - 50) * -.36deg)) rotateY(calc((var(--mx) - 50) * .36deg))}.passport-card:active{transform:perspective(620px) rotateX(calc((var(--my) - 50) * -.36deg)) rotateY(calc((var(--mx) - 50) * .36deg)) scale(.92)!important;transition:transform 70ms cubic-bezier(.34,1.56,.64,1)!important}.passport-card.is-squishing:not(.reduced-motion){animation:passportSquish .38s cubic-bezier(.34,1.56,.64,1) both}@keyframes passportSquish{0%{transform:perspective(620px) scale(.92) rotateX(calc((var(--my) - 50) * -.36deg)) rotateY(calc((var(--mx) - 50) * .36deg))}42%{transform:perspective(620px) scale(1.05) rotateX(calc((var(--my) - 50) * -.36deg)) rotateY(calc((var(--mx) - 50) * .36deg))}72%{transform:perspective(620px) scale(.985) rotateX(calc((var(--my) - 50) * -.36deg)) rotateY(calc((var(--mx) - 50) * .36deg))}to{transform:perspective(620px) scale(1) rotateX(calc((var(--my) - 50) * -.36deg)) rotateY(calc((var(--mx) - 50) * .36deg))}}.passport-card.reduced-motion:not(.is-placeholder){will-change:auto;transform:perspective(620px)}@keyframes passportReveal{0%{opacity:0;transform:perspective(620px) translateY(14px) scale(.92) rotate(-1.5deg)}to{opacity:1;transform:perspective(620px) translateY(0) scale(1) rotate(0)}}@keyframes foilDrift{0%{background-position:0% 35%}to{background-position:100% 65%}}.confetti-overlay.svelte-1y7rcnb{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:120;overflow:hidden}.confetti-piece.svelte-1y7rcnb{position:absolute;top:0;left:0;width:var(--piece-width);height:var(--piece-height);border-radius:var(--piece-radius);opacity:0;will-change:transform,opacity;animation:svelte-1y7rcnb-confettiBurst var(--duration) cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--delay);transform:translate(calc(var(--origin-x) + var(--start-x)),calc(var(--origin-y) + var(--start-y))) rotate(var(--rotate-start)) scale(.5)}.confetti-piece.is-glyph.svelte-1y7rcnb{display:flex;align-items:center;justify-content:center;font-size:var(--piece-height);line-height:1}@media (prefers-reduced-motion: reduce){.confetti-piece.svelte-1y7rcnb{display:none}}@keyframes svelte-1y7rcnb-confettiBurst{0%{opacity:0;transform:translate(calc(var(--origin-x) + var(--start-x)),calc(var(--origin-y) + var(--start-y))) rotate(var(--rotate-start)) scale(.48)}10%{opacity:1}36%{opacity:1;transform:translate(calc(var(--origin-x) + var(--burst-x)),calc(var(--origin-y) + var(--burst-y))) rotate(var(--rotate-mid)) scale(1)}to{opacity:0;transform:translate(calc(var(--origin-x) + var(--final-x)),calc(var(--origin-y) + var(--final-y))) rotate(var(--rotate-end)) scale(.86)}}.passport-reveal-btn{position:relative;display:inline-flex;align-items:center;min-height:24px;padding:.1rem .38rem;touch-action:manipulation}.passport-reveal-btn:after{content:"";position:absolute;top:-10px;right:-8px;bottom:-10px;left:-8px}.passport-qr-stamp{width:5.5rem;height:5.5rem;padding:.25rem;border-radius:.55rem}.passport-qr-stamp img{border-radius:.16rem!important}.passport-qr-stamp .qr-tap-hint{display:none!important}@media (max-width: 430px){.passport-card{aspect-ratio:auto;min-height:188px;padding:1rem}.passport-name{font-size:1.3rem;line-height:1.12}.passport-qr-stamp{width:5.25rem;height:5.25rem;padding:.22rem;border-radius:.5rem}}
