.ticket-share-button{width:100%;min-height:44px;margin:4px 0 14px;color:var(--aqua);border-color:#335963;background:#0d2937;font-size:12px;font-weight:800}
.share-ticket-dialog{width:min(1160px,calc(100% - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;background:var(--canvas);color:var(--ink);border:1px solid #335963;border-radius:20px;box-shadow:0 24px 100px #0009;overflow:hidden}
.share-ticket-dialog[open]{display:flex;flex-direction:column}
.share-ticket-dialog::backdrop{background:#02090edb;backdrop-filter:blur(7px)}
.share-ticket-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px 16px;border-bottom:1px solid var(--line);flex:none}
.share-ticket-dialog h2{font:800 20px/1.35 var(--font-ui,Arial,sans-serif);margin:6px 0 0}
.share-ticket-dialog header .eyebrow{color:var(--aqua);font-size:9px}
.share-ticket-dialog header button{width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:28px}
.share-ticket-body{overflow:hidden;padding:16px 24px;min-height:0}
.share-ticket-preview{margin:auto;background:transparent}
.share-ticket-preview img{display:block;width:auto;max-width:100%;height:auto;max-height:var(--ticket-preview-height,calc(100dvh - 260px));object-fit:contain;margin:auto}
.share-ticket-preview>p{padding:36px 20px;text-align:center}
.share-ticket-loading{display:flex;align-items:center;justify-content:center;gap:12px}
.share-ticket-loading>span{width:22px;height:22px;flex:none;border:2px solid #28505b;border-top-color:var(--aqua);border-radius:50%;animation:ticket-loading-spin .9s linear infinite}
@keyframes ticket-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.share-ticket-loading>span{animation:none}}
.share-ticket-status{font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.share-ticket-dialog footer{display:flex;gap:10px;margin:0;padding:16px 24px;border-top:1px solid var(--line);flex:none}
.share-ticket-dialog footer>*{flex:1;text-align:center;justify-content:center;min-height:44px;font-size:13px;text-decoration:none}
.share-ticket-dialog [hidden]{display:none!important}
@media(max-width:650px){.share-ticket-dialog header{padding:16px}.share-ticket-dialog h2{font-size:18px}.share-ticket-body{padding:12px 16px}.share-ticket-dialog footer{padding:12px 16px}}
