.specular-border{z-index:5;pointer-events:none;border-radius:inherit;position:absolute;inset:-20px}.specular-border canvas{pointer-events:none;width:100%;height:100%;display:block}@media (prefers-reduced-motion:reduce){.specular-border{display:none}}
.join-ticket-wrap{width:100%;min-width:0;position:relative}.join-ticket-stage{perspective:1000px;align-items:center;height:330px;display:grid;position:relative;overflow:visible}.join-ticket{width:100%;height:250px;transform-style:preserve-3d;transform-origin:50%;display:flex}.join-ticket-main{background:var(--muted);border:1px solid var(--border);border-right:none;border-radius:16px 0 0 16px;flex:1;min-width:0;position:relative;overflow:hidden;box-shadow:0 8px 20px #00000018}.join-ticket-main[data-torn=true]{border-right:1px solid var(--border);border-radius:16px}.join-ticket-image{pointer-events:none;position:absolute;inset:0}.join-ticket-image:after{content:"";background:linear-gradient(#00000005,#000000cb);position:absolute;inset:0}.join-ticket-caption{z-index:1;color:#fff;pointer-events:none;position:absolute;inset:auto 20px 24px}.join-ticket-caption>span{letter-spacing:.05em;color:#ffffffbf;font-size:10px}.join-ticket-caption h3{letter-spacing:-.025em;margin-top:22px;font-size:27px;font-weight:500;line-height:1.4}.join-ticket-caption p{color:#ffffffcf;margin-top:12px;font-size:12px;line-height:1.6}.join-ticket-stub{background:var(--muted);border:1px solid var(--border);color:var(--foreground);cursor:grab;touch-action:pan-y;transform-origin:0 0;-webkit-user-select:none;user-select:none;border-left:none;border-radius:0 16px 16px 0;flex-direction:column;flex:0 0 104px;justify-content:center;align-items:center;gap:18px;display:flex;position:relative;box-shadow:0 8px 20px #00000018}.join-ticket-stub[data-torn=true]{cursor:default;border-left:1px solid var(--border);border-radius:4px 16px 16px 4px}.join-ticket-stub:active{cursor:grabbing}.join-ticket-stub-title{font-size:25px;font-weight:500;line-height:1.4}.join-ticket-stub-hint{color:var(--muted-foreground);font-size:11px}.join-ticket-perforation{background:radial-gradient(circle,var(--background)3px,transparent 3.5px)center top/8px 18px repeat-y;pointer-events:none;width:8px;position:absolute;top:9px;bottom:9px;left:-4px}.join-ticket-qr{z-index:2;background:color-mix(in srgb,var(--muted)86%,transparent);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:12px;display:flex;position:absolute;inset:0}.join-ticket-qr-title{font-size:12px;font-weight:500}.join-ticket-qr img{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:0;width:min(176px,100%);height:auto;display:block}.join-ticket-qr-note{color:var(--muted-foreground);text-align:center;font-size:11px;line-height:1.6}.join-ticket-footer{color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.join-ticket-footer button,.join-ticket-footer a{min-height:44px;color:var(--foreground);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:7px;display:inline-flex}.join-ticket-mobile-note{color:var(--muted-foreground);margin-top:6px;font-size:11px;line-height:1.7}@media (max-width:479px){.join-ticket-stub{flex-basis:74px}.join-ticket-caption{left:14px;right:12px}.join-ticket-caption h3{font-size:23px}.join-ticket-caption>span{font-size:8px}.join-ticket-footer{flex-wrap:wrap;gap:0}}
.partner-swap{width:100%;min-width:0}.partner-swap-deck{perspective:900px;height:390px;position:relative;overflow:hidden}.partner-swap-card{border:1px solid color-mix(in srgb,var(--foreground)22%,transparent);background:var(--muted);width:calc(100% - 76px);max-width:340px;height:248px;color:var(--foreground);transform-style:preserve-3d;backface-visibility:hidden;border-radius:16px;padding:22px;position:absolute;top:62%;left:calc(50% - 32px);box-shadow:0 16px 36px #00000012}.partner-swap-heading{z-index:1;color:var(--muted-foreground);align-items:center;gap:8px;font-size:12px;display:flex;position:relative}.partner-swap-visual{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.partner-swap-visual img{object-fit:cover;opacity:.48}.partner-swap-visual:after{content:"";background:linear-gradient(90deg,var(--muted)0%,color-mix(in srgb,var(--muted)92%,transparent)30%,color-mix(in srgb,var(--muted)70%,transparent)58%,color-mix(in srgb,var(--muted)12%,transparent)100%);position:absolute;inset:0}.dark .partner-swap-visual img{opacity:.82}.dark .partner-swap-visual:after{background:linear-gradient(90deg,color-mix(in srgb,var(--muted)94%,transparent)0%,color-mix(in srgb,var(--muted)90%,transparent)28%,color-mix(in srgb,var(--muted)75%,transparent)58%,color-mix(in srgb,var(--muted)24%,transparent)100%)}.partner-swap-index{font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.partner-swap-card h3{z-index:1;letter-spacing:-.025em;margin-top:28px;font-size:clamp(21px,2vw,25px);font-weight:500;line-height:1.4;position:relative}.partner-swap-card p{z-index:1;color:var(--muted-foreground);margin-top:14px;font-size:14px;line-height:1.8;position:relative}.partner-swap-number{opacity:.04;pointer-events:none;font-size:64px;font-weight:500;line-height:1;position:absolute;bottom:9px;right:17px}.partner-swap-controls{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;padding:0 8px;font-size:12px;display:flex}.partner-swap-controls button{cursor:pointer;border-radius:999px;align-items:center;gap:9px;min-height:44px;padding:0 12px;display:inline-flex}.partner-swap-controls button:hover{background:var(--muted)}@media (max-width:767px){.partner-swap-deck{height:360px}.partner-swap-card{height:234px;padding:18px}.partner-swap-card h3{margin-top:22px}}@media (max-width:479px){.partner-swap{--swap-x:20px;--swap-y:32px}.partner-swap-deck{height:410px}.partner-swap-card{width:calc(100% - 44px);height:280px;left:calc(50% - 18px)}.partner-swap-card h3{font-size:21px}.partner-swap-card p{font-size:13px}}
