/* Nexplora event collection. Static content stays readable before JavaScript. */
.events-section{--event-accent:#baa4f5;--event-tint:rgba(178,150,255,.07)}
.event-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px;padding:0 0 24px;border-bottom:1px solid var(--line)}
.event-filters{display:flex;align-items:center;gap:6px;padding:5px;background:#0e0c12;border:1px solid var(--line);border-radius:7px}
.event-filters button{min-height:45px;padding:12px 20px;border:1px solid transparent;border-radius:3px;font-size:12px;color:#a99db7;transition:color .2s,background .2s,transform .15s,border-color .2s;white-space:nowrap}
.event-filters button>span{font:9px var(--mono);opacity:.7;margin-left:8px}
.event-filters button[aria-pressed="true"]{background:#b296ff;color:#170e28;border-color:#c5aff6;box-shadow:0 2px 12px #0003}
.event-filters button:active{transform:scale(.97)}
.event-filters button:focus-visible{outline-offset:3px}
#event-count{font:10px var(--mono);letter-spacing:1px;color:#b7a6c8;white-space:nowrap;font-variant-numeric:tabular-nums}
.event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.event-card{position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:24px;min-width:0;min-height:357px;border:1px solid #302b39;border-radius:2px;background:linear-gradient(155deg,#17131d,#0b0a0e 75%);overflow:hidden;isolation:isolate;transition:border-color .25s,background .25s,transform .16s,box-shadow .25s;contain:layout paint}
.event-card[data-category="non_technical"]{--event-accent:#c4b6cd;--event-tint:rgba(194,167,212,.055);background:linear-gradient(155deg,#17131b,#0b0a0e 75%)}
.event-card:before{position:absolute;content:'';inset:0;z-index:-1;background:radial-gradient(ellipse at 80% 20%,var(--event-tint),transparent 65%);pointer-events:none}
.event-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font:9px/1.5 var(--mono);letter-spacing:1px}
.event-category{color:var(--event-accent)}
.event-index{color:#73667f;font-variant-numeric:tabular-nums}
.event-art{height:133px;position:relative;display:flex;align-items:center;justify-content:center;pointer-events:none;margin:10px 0 14px}
.event-art:before{content:'';position:absolute;inset:10px 50%;width:160px;transform:translateX(-50%);background-image:linear-gradient(#ac8ddd09 1px,transparent 1px),linear-gradient(90deg,#ac8ddd09 1px,transparent 1px);background-size:21px 21px;mask-image:radial-gradient(ellipse,#000 10%,transparent 70%)}
.event-art:after{content:'';width:100px;height:100px;border:1px solid #a786ce2e;border-radius:50%;position:absolute;transform:rotate(-25deg) scaleX(1.6) scaleY(.7);transition:transform .55s cubic-bezier(.2,.7,.2,1),border-color .3s}
.event-glyph{display:flex;align-items:center;justify-content:center;width:76px;height:76px;font:38px/1 var(--mono);font-weight:400;color:var(--event-accent);text-shadow:0 0 30px #b296ff20;position:relative;z-index:1;transition:transform .45s cubic-bezier(.2,.7,.2,1);transform:rotate(-7deg)}
.event-glyph svg{display:block;width:60px;height:60px;max-width:85%;max-height:85%;flex:none;filter:drop-shadow(0 0 10px #ac7bdb25)}
.event-art--prompt .event-glyph{font-size:30px;border:1px solid #b296ff66;border-radius:5px;width:91px;height:63px;background:linear-gradient(140deg,#37274799,#0e0916);box-shadow:6px 6px 0 #b296ff09}
.event-art--scramble .event-glyph{border:1px solid #9b7bb07a;background:linear-gradient(135deg,#49395166,#120d18);box-shadow:9px -8px 0 -1px #110c19,9px -8px 0 #80619244;transform:rotate(-13deg);font-size:30px}
.event-art--poster .event-glyph{height:89px;width:68px;border:1px solid #b99dc099;box-shadow:8px 5px 0 -1px #171020,8px 5px 0 #76578a88;background:repeating-linear-gradient(0deg,transparent 0 13px,#ad88c222 13px 14px),linear-gradient(145deg,#3c304b,#100b17);font-size:29px;transform:rotate(10deg)}
.event-art--data .event-glyph{height:83px;border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0 15px,#aa8ce944 15px 16px),repeating-linear-gradient(90deg,transparent 0 15px,#aa8ce944 15px 16px);border:1px solid #b08cdc99;box-shadow:inset -16px -10px 24px #09050e;font-size:30px}
.event-art--aiball .event-glyph{border-radius:50%;border:1px solid #a68ac388;background:radial-gradient(circle at 30% 25%,#d9c8e577,#534564 35%,#140e1b 70%);box-shadow:inset 0 0 20px #21162d,0 0 35px #ac7bdd15}
.event-art--reel .event-glyph{border:1px solid #b5a0c18f;border-radius:13px;background:linear-gradient(135deg,#5242575c,#120b1a);box-shadow:inset 0 0 0 7px #bca1c40b;font-size:30px}
.event-art--anime .event-glyph{font:70px/1 'Space Grotesk',sans-serif;transform:rotate(12deg);text-shadow:5px 4px 0 #46314d,0 0 40px #b296ff18}
.event-art--meme .event-glyph{border:1px solid #af91b98f;border-radius:50%;background:linear-gradient(140deg,#4c385b66,#120b1a);font-size:29px;transform:rotate(10deg)}
.event-art--freefire .event-glyph{width:95px;height:66px;border:1px solid #b3a1be99;border-radius:16px 16px 25px 25px;font-size:32px;background:linear-gradient(120deg,#53405b55,#171019);box-shadow:inset 0 -8px 14px #050407;transform:rotate(-9deg)}
.event-art--auction .event-glyph{font-size:40px;transform:rotate(-25deg);border:1px solid #a48caf77;border-radius:3px;background:linear-gradient(135deg,#50395d55,#170f1e);box-shadow:6px 6px 0 #a17fac0b}
.event-art--mystery .event-glyph{font:62px/1 'Space Grotesk',sans-serif;font-weight:500;border-radius:45% 45% 10% 10%;background:linear-gradient(140deg,#47314d77,#1a111d88);text-shadow:3px 2px 0 #21102c;transform:rotate(8deg)}
.event-art--hunt .event-glyph{font-size:48px;border:1px solid #b398bc88;border-radius:50%;background:linear-gradient(140deg,#51445444,#100b16);box-shadow:inset 0 0 0 6px #b69cb90b;transform:rotate(16deg)}
.event-card-body{display:block;margin-top:auto}
.event-card-name{display:block;font-size:clamp(23px,2vw,31px);font-weight:500;letter-spacing:-1.1px;line-height:1.12;color:#ede7f3}
.event-coordinator{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;margin-top:15px;font:8px/1.6 var(--mono);letter-spacing:.7px;color:#8e809b}
.event-coordinator strong{font:12px/1.6 'Space Grotesk',sans-serif;letter-spacing:0;color:#b7a9c5;font-weight:400}
.event-card-footer{display:flex;align-items:end;justify-content:space-between;gap:16px;border-top:1px solid #aa8cbe26;padding-top:19px;margin-top:23px}
.event-price{font-size:22px;letter-spacing:-.5px;line-height:1;color:#d8c9e8;white-space:nowrap}
.event-price small{display:inline-block;font:8px var(--mono);letter-spacing:.3px;color:#8f7c9f;margin-right:3px}
.event-view{display:flex;align-items:center;gap:9px;font-size:11px;line-height:1.2;color:#aa98b9;white-space:nowrap}
.event-view>span{font-size:21px;line-height:.8;transition:transform .2s,color .2s}
.event-provisional{display:inline-block;font:7px/1.3 var(--mono);letter-spacing:.2px;color:#a99ab7;margin-top:9px;border-bottom:1px dotted #675373;padding-bottom:2px}
.event-name-mark{color:#ac93c3;font:10px var(--mono);vertical-align:super;margin-left:1px}
.event-section-note{display:flex;justify-content:space-between;align-items:start;gap:32px;padding-top:25px;color:#a18fab;font-size:11px;line-height:1.85}
.event-section-note>p{max-width:590px}
.event-section-note>span{font:9px/1.8 var(--mono);color:#8e799b;max-width:230px}
.event-schedule-summary{font:10px/1.7 var(--mono);color:#9d8da9;padding-top:23px}
.event-footnote{font-size:11px;line-height:1.8;color:#93839f;margin-top:20px}
.event-card:active{transform:scale(.985);border-color:#b296ff;background:#21182c;box-shadow:0 0 0 1px #b296ff25}
@media(hover:hover) and (pointer:fine){.event-card:hover{border-color:#837091;box-shadow:0 7px 26px #0003;transform:translateY(-4px)}.event-card:hover .event-art:after{transform:rotate(-38deg) scaleX(1.65) scaleY(.8);border-color:#c4a2e966}.event-card:hover .event-glyph{transform:rotate(0deg) translateY(-4px)}.event-card:hover .event-view>span{transform:translate(2px,-2px);color:#d6c2f1}.event-filters button:not([aria-pressed="true"]):hover{background:#21192d;color:#e9dcfa}.event-card:active{transform:scale(.985)}}

/* A native dialog keeps focus inside; on phones it becomes a roomy bottom sheet. */
#event-dialog{width:min(730px,calc(100vw - 48px));max-width:none;max-height:88svh;max-height:88dvh;margin:auto;background:#100d15;border:1px solid #695579;border-radius:7px;padding:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#675279 #100d15;box-shadow:0 35px 120px #000b}
#event-dialog::backdrop{background:#030107bd;backdrop-filter:blur(8px)}
#event-dialog .event-dialog-tools{position:sticky;top:0;height:0;z-index:5}
#event-dialog [data-event-close]{position:absolute;right:19px;top:18px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:1px solid #6f5b7e70;border-radius:50%;z-index:3;color:#e3d6ee;background:#1d1625;font:26px/1 Arial,sans-serif;transition:background .2s,transform .15s,border-color .2s}
#event-dialog [data-event-close]:hover{background:#30223e;border-color:#b296ff}
#event-dialog [data-event-close]:active{transform:scale(.93)}
#event-dialog-content{padding:43px 42px 27px}
.event-detail-heading{padding-right:39px}
.event-detail-category{font:9px/1.8 var(--mono);letter-spacing:1.1px;text-transform:uppercase;color:#b498d2}
.event-detail-title{font-size:clamp(35px,4.3vw,53px);font-weight:500;line-height:1.05;letter-spacing:-2px;margin-top:18px;overflow-wrap:anywhere}
.event-name-note{font-size:11px;color:#ad9bbb;margin-top:10px}
.event-detail-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 19px;margin-top:23px;font-size:12px;color:#b6a8c3}
.event-detail-meta>span+span:before{content:'·';color:#775b8d;margin-right:19px}
.event-schedule-note{display:flex;align-items:center;gap:10px;margin:25px 0 0;padding:14px 0;border-top:1px solid #44314e;border-bottom:1px solid #44314e;color:#a695b5;font:10px/1.65 var(--mono)}
.event-schedule-dot{flex:none;width:5px;height:5px;border:1px solid #b59acb;border-radius:50%}
.event-detail-section{padding-top:28px;min-width:0}
.event-detail-label{font:9px/1.6 var(--mono);letter-spacing:1.2px;text-transform:uppercase;color:#9a84ae;margin:0 0 15px}
.event-fees{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:9px;margin:0}
.event-fee{display:flex;flex-direction:column;align-items:start;justify-content:space-between;gap:12px;min-height:100px;padding:16px;border:1px solid #4c385f;background:linear-gradient(140deg,#261b34,#17101f)}
.event-fee dt{font-size:11px;color:#b8a6c8;line-height:1.4}
.event-fee dd{font-size:28px;letter-spacing:-1.2px;font-weight:400;color:#e8d9f8;margin:0;font-variant-numeric:tabular-nums}
.event-fee-pending{font-size:26px;letter-spacing:-.7px;color:#dfcbee;padding:19px 20px;border:1px solid #4c385f;background:#20152a}
.event-detail-note{font-size:11px;line-height:1.7;color:#a994b9;margin-top:13px}
.event-detail-note+.event-detail-note{margin-top:4px}
.event-format{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;margin:20px 0 0;padding-top:16px;border-top:1px solid #33263d;color:#a28bb3}
.event-format strong{font-weight:400;color:#d4bbdf;font-size:12px}
.event-detail-people{display:grid;grid-template-columns:.9fr 1.2fr;gap:30px;border-top:1px solid #33263d;margin-top:26px}
.event-coordinator-name{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:20px;letter-spacing:-.4px;line-height:1.4;color:#d9c4e8}
.event-team{list-style:none;display:flex;flex-direction:column;gap:10px;padding:0;margin:0}
.event-person{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:13px;line-height:1.5;color:#c3afcf}
.event-confirmation{display:inline-block;border:1px solid #68486e6e;border-radius:2px;padding:3px 5px;font:7px/1.5 var(--mono);letter-spacing:0;color:#ad94b8;white-space:nowrap}
.event-detail-footnote{font-size:10px;line-height:1.7;color:#a08bac;margin-top:27px}
.event-detail-department{font:8px/1.8 var(--mono);letter-spacing:.5px;color:#8c789a;border-top:1px solid #33263d;margin-top:26px;padding-top:20px}
.motion-paused .event-card,.motion-paused .event-art:after,.motion-paused .event-glyph,.motion-paused .event-filters button,.motion-paused .event-view>span{transition:none!important}
.motion-paused .event-card:hover,.motion-paused .event-card:active{transform:none}
@media(min-width:1500px){.event-grid{gap:24px}.event-card{padding:28px;min-height:392px}.event-art{height:153px}}
@media(max-width:1000px){.event-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.event-card-name{font-size:27px}.event-card{min-height:355px}}
@media(max-width:620px){
  .event-toolbar{display:block;margin-bottom:18px;padding-bottom:18px}
  .event-filters{width:100%;gap:3px;padding:4px}
  .event-filters button{flex:1;padding:12px 9px;min-height:45px;font-size:11px}
  .event-filters button>span{display:none}
  #event-count{display:block;margin-top:16px;font-size:9px;letter-spacing:.8px}
  .event-grid{grid-template-columns:1fr;gap:13px}
  .event-card{display:grid;grid-template-columns:minmax(0,1fr) 92px;grid-template-rows:auto 1fr auto;padding:21px;min-height:217px;border-radius:3px}
  .event-card-top{grid-column:1/-1;font-size:8px}
  .event-card-body{grid-column:1;grid-row:2;margin:auto 0;position:relative;z-index:2;padding:23px 0 20px}
  .event-card-name{font-size:27px;letter-spacing:-1px;max-width:240px}
  .event-art{grid-column:2;grid-row:2;height:112px;align-self:center;margin:2px -10px 0 -6px;transform:scale(.76);transform-origin:center right}
  .event-art:after{width:86px;height:86px}
  .event-art:before{width:123px}
  .event-coordinator{margin-top:12px;gap:3px 8px;font-size:7px;letter-spacing:.4px}
  .event-coordinator strong{font-size:12px}
  .event-card-footer{grid-column:1/-1;margin-top:0;padding-top:15px}
  .event-price{font-size:21px}
  .event-price small{font-size:8px}
  .event-view{font-size:11px;gap:10px}
  .event-provisional{font-size:7px;margin-top:6px}
  .event-schedule-summary{font-size:9px;line-height:1.9;padding-top:20px}
  .event-section-note{display:block;padding-top:21px;font-size:11px}
  .event-section-note>span{display:block;max-width:none;margin-top:12px;font-size:9px}
  #event-dialog{width:100%;max-height:calc(100svh - 22px);max-height:calc(100dvh - 22px);margin:auto 0 0;max-width:100%;border-radius:20px 20px 0 0;border:1px solid #665173;border-bottom:0}
  #event-dialog:before{content:'';display:block;width:35px;height:4px;border-radius:5px;background:#6e5b7d;margin:12px auto 0}
  #event-dialog [data-event-close]{top:10px;right:17px;width:44px;height:44px;font-size:25px}
  #event-dialog-content{padding:23px 24px max(26px,env(safe-area-inset-bottom))}
  .event-detail-heading{padding-right:32px}
  .event-detail-category{font-size:8px;letter-spacing:.6px}
  .event-detail-title{font-size:38px;letter-spacing:-1.7px;margin-top:17px}
  .event-detail-meta{font-size:11px;gap:7px 12px;flex-direction:column;align-items:start;margin-top:18px}
  .event-detail-meta>span+span:before{content:none}
  .event-schedule-note{font-size:9px;margin-top:22px;padding:13px 0}
  .event-detail-section{padding-top:24px}
  .event-detail-label{font-size:9px;margin-bottom:13px}
  .event-fees{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .event-fees>.event-fee:only-child{grid-column:1/-1}
  .event-fee{padding:15px;min-height:94px}
  .event-fee dd{font-size:27px}
  .event-detail-people{grid-template-columns:1fr;gap:0;margin-top:22px}
  .event-detail-people>.event-detail-section+section{padding-top:22px}
  .event-team{gap:9px}
  .event-coordinator-name{font-size:21px}
  .event-confirmation{font-size:8px}
  .event-detail-department{font-size:8px;letter-spacing:0}
}
@media(max-width:360px){.event-filters button{font-size:10px;padding-inline:7px}.event-card{padding:18px;grid-template-columns:minmax(0,1fr) 70px}.event-card-name{font-size:25px}.event-art{transform:scale(.66)}.event-detail-title{font-size:34px}#event-dialog-content{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){.event-card,.event-art:after,.event-glyph,.event-filters button,.event-view>span{transition:none!important}.event-card:hover,.event-card:active{transform:none}}

/* One touch target for the event. A separate, accessible star saves it. */
.event-tile{position:relative;min-width:0;display:flex;isolation:isolate}
.event-tile[hidden]{display:none!important}
.event-tile>.event-card{width:100%;flex:1}
.event-card-top{padding-right:42px;min-height:24px}
.event-save{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;border:1px solid #9a79bb36;border-radius:50%;background:#17111e;color:#aa92bf;touch-action:manipulation;transition:transform .16s cubic-bezier(.2,.7,.2,1),border-color .2s,background .2s,color .2s}
.event-tile>.event-save{position:absolute;z-index:3;top:13px;right:13px}
.event-save-icon{display:block;font:25px/1 Arial,sans-serif;transform:translateY(-1px)}
.event-save.is-saved{color:#e3ccff;background:#382348;border-color:#b28ad0b0}
.event-save:active,.shortlist-explore:active,.shortlist-remove:active{transform:scale(.92)}
.event-save:focus-visible,.shortlist-remove:focus-visible,.shortlist-event-open:focus-visible{outline:2px solid #ccb1f1;outline-offset:3px}
.event-detail-save-row{display:flex;align-items:center;gap:18px;margin:0 0 19px}
.event-detail-save{position:static;width:auto;height:auto;min-height:46px;padding:11px 16px 11px 12px;border-radius:6px;gap:9px;flex:none;font-size:11px}
.event-detail-save .event-save-icon{font-size:21px}
.event-storage-note{font:9px/1.7 var(--mono);color:#94819f;letter-spacing:.05px}
.event-live-message{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* The lightweight surface morph lives in the dialog's top layer. It contains
   no screenshot, cloned DOM tree, extra canvas, or focusable controls. */
#event-dialog-content{position:relative;z-index:2}
#event-dialog.is-event-morphing{background:transparent;border-color:transparent;box-shadow:none}
#event-dialog.is-event-morphing:before{opacity:0}
.event-transition-ghost{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:visible}
.event-transition-surface{position:absolute;left:0;top:0;transform-origin:0 0;border:1px solid #6e5483;border-radius:8px;background:linear-gradient(145deg,#211729,#100d15 65%);box-shadow:0 20px 80px #0007;will-change:transform;contain:strict}
.event-transition-title{position:absolute;color:#ede7f3;line-height:1.12;letter-spacing:-1px;z-index:1;transform-origin:0 0;overflow-wrap:normal}

/* A private, local collection: no profile or registration is implied. */
#shortlist-dialog{width:min(640px,calc(100vw - 48px));max-width:none;max-height:88svh;max-height:88dvh;margin:auto;background:#100d15;border:1px solid #695579;border-radius:10px;padding:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#675279 #100d15;box-shadow:0 35px 120px #000b}
#shortlist-dialog::backdrop{background:#030107ca;backdrop-filter:blur(8px)}
.shortlist-tools{position:sticky;top:0;height:0;z-index:5}
[data-shortlist-close]{position:absolute;right:18px;top:18px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border:1px solid #6f5b7e70;border-radius:50%;color:#e3d6ee;background:#1d1625;font:26px/1 Arial,sans-serif;transition:background .2s,transform .15s}
[data-shortlist-close]:active{transform:scale(.92)}
#shortlist-content{padding:42px 36px max(30px,env(safe-area-inset-bottom))}
.shortlist-title{font-size:clamp(35px,4vw,49px);line-height:1.1;font-weight:500;letter-spacing:-1.9px;margin:16px 45px 14px 0}
.shortlist-intro{font-size:13px;line-height:1.8;color:#c1aecf;max-width:370px;margin-bottom:9px}
.shortlist-discovery{color:#d1b3fa;font:9px/1.5 var(--mono);letter-spacing:.2px;padding:11px 12px;border:1px solid #67488a;background:#2a1a3e;margin-top:20px;display:inline-flex;border-radius:4px}
.shortlist-list{list-style:none;margin:29px 0 0;padding:0;display:flex;flex-direction:column;gap:11px}
.shortlist-item{position:relative;display:flex;min-width:0;border:1px solid #4a3658;border-radius:7px;background:linear-gradient(130deg,#201527,#120e18);transition:border-color .2s}
.shortlist-event-open{display:flex;flex-direction:column;align-items:stretch;min-width:0;text-align:left;width:100%;padding:21px 58px 22px 21px;border-radius:7px;touch-action:manipulation}
.shortlist-event-open:active{background:#39234566}
.shortlist-category{font:8px/1.5 var(--mono);color:#ad89c9;text-transform:uppercase;letter-spacing:1px}
.shortlist-event-name{font-size:24px;line-height:1.15;letter-spacing:-.8px;margin-top:9px;color:#e9d9f7}
.shortlist-fees{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:11px;line-height:1.7;margin-top:13px;color:#b49ec5}
.shortlist-fees>span{white-space:nowrap}
.shortlist-pending{font-size:10px;line-height:1.7;color:#a18dad;margin-top:10px}
.shortlist-remove{position:absolute;right:8px;top:8px;width:44px;height:44px;border-radius:50%;font:24px/1 Arial,sans-serif;color:#ab92be;touch-action:manipulation;transition:transform .16s,background .2s}
.shortlist-footnote{margin-top:25px;font:9px/1.9 var(--mono);color:#9d85ae}
.shortlist-empty{text-align:center;margin:29px 0 0;padding:32px 20px 30px;border:1px solid #4a355b;background:radial-gradient(ellipse at 50% 30%,#39224855,transparent 70%);border-radius:8px}
.shortlist-empty-star{display:block;color:#c7a0e6;font-size:69px;line-height:1.3;text-shadow:0 0 40px #b988de25}
.shortlist-empty h3{font-size:24px;font-weight:400;letter-spacing:-.7px;line-height:1.3;margin:15px 0 11px;color:#e2cff0}
.shortlist-empty p{font-size:12px;line-height:1.8;color:#ab94bd;max-width:250px;margin:auto}
.shortlist-explore{display:inline-flex;align-items:center;justify-content:center;margin-top:24px;padding:13px 18px;min-height:46px;color:#21102f;background:#ceb1ec;border:1px solid #dbc4f2;border-radius:5px;font-size:12px;touch-action:manipulation;transition:transform .16s}
@media(hover:hover) and (pointer:fine){.event-save:hover{border-color:#b598cb;color:#ebd9fb;background:#352041}.shortlist-item:hover{border-color:#8a6c9b}.shortlist-remove:hover{background:#482b5577;color:#ead8f5}[data-shortlist-close]:hover{background:#382147}}
@media(max-width:620px){
  .event-card-top{padding-right:44px;min-height:22px}
  .event-tile>.event-save{top:10px;right:12px}
  .event-detail-save-row{display:block;margin-bottom:14px}
  .event-detail-save{width:100%;min-height:47px;font-size:12px}
  .event-detail-save-row>.event-storage-note{display:block;margin-top:9px;font-size:8px;text-align:center}
  .event-transition-surface{border-radius:20px 20px 0 0}
  #event-dialog::backdrop,#shortlist-dialog::backdrop{backdrop-filter:none;background:#030107dc}
  #shortlist-dialog{width:100%;max-width:100%;max-height:calc(100svh - 20px);max-height:calc(100dvh - 20px);margin:auto 0 0;border-radius:20px 20px 0 0;border-bottom:0}
  #shortlist-dialog:before{content:'';display:block;width:35px;height:4px;border-radius:5px;background:#6e5b7d;margin:12px auto 0}
  #shortlist-content{padding:25px 22px max(28px,env(safe-area-inset-bottom))}
  [data-shortlist-close]{top:9px;right:14px;width:44px;height:44px;font-size:25px}
  .shortlist-title{font-size:38px;letter-spacing:-1.6px;margin-top:15px}
  .shortlist-intro{font-size:12px;padding-right:15px}
  .shortlist-list{margin-top:25px}
  .shortlist-event-open{padding:20px 55px 20px 18px}
  .shortlist-event-name{font-size:24px}
  .shortlist-fees{gap:4px 12px;font-size:10px}
  .shortlist-empty{padding-inline:12px}
  .shortlist-empty h3{font-size:23px}
}
.motion-paused .event-save,.motion-paused .shortlist-explore,.motion-paused .shortlist-remove,.motion-paused .shortlist-item,.motion-paused [data-shortlist-close]{transition:none!important}
@media(prefers-reduced-motion:reduce){.event-save,.shortlist-explore,.shortlist-remove,.shortlist-item,[data-shortlist-close]{transition:none!important}}

#event-dialog-content>.event-world{margin:24px 0 18px;border:1px solid #7c58993b;border-radius:8px}
@media(max-width:620px){#event-dialog-content>.event-world{margin:20px 0 16px}}

/* Event URLs travel with the detail sheet; sharing never implies registration. */
.event-share{margin:0 0 21px}
.event-share-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px}
.event-share-button,.event-copy-button,.shortlist-create-pass{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;min-width:44px;padding:12px 16px;border:1px solid #725b8b;border-radius:6px;background:#23172f;color:#e7d7f5;font-size:12px;line-height:1.45;touch-action:manipulation;transition:transform .16s,background .2s,border-color .2s}
.event-copy-button{background:#151019;border-color:#4e3d5e;color:#bfa8d1}
.event-share-button:active,.event-copy-button:active,.shortlist-create-pass:active{transform:scale(.975)}
.event-share-button:focus-visible,.event-copy-button:focus-visible,.shortlist-create-pass:focus-visible,.event-share-url:focus-visible{outline:2px solid #ccb1f1;outline-offset:3px}
.event-share-button:disabled,.event-copy-button:disabled{opacity:.62;cursor:wait}
.event-share-status{font-size:11px;line-height:1.7;color:#b5a0c5;margin-top:9px}
.event-share-status:empty{display:none}
.event-share-manual{margin-top:13px;padding:12px;border:1px solid #4e3d5e;border-radius:6px;background:#151019}
.event-share-manual[hidden]{display:none!important}
.event-share-manual label{display:block;font-size:11px;line-height:1.6;color:#bfa8d1;margin-bottom:8px}
.event-share-url{display:block;width:100%;max-width:100%;min-width:0;min-height:44px;border:1px solid #655076;border-radius:4px;background:#0c0910;color:#e5d5f4;padding:10px;font:16px/1.5 var(--mono)}
.shortlist-create-pass{width:100%;margin-top:24px;min-height:50px;background:linear-gradient(110deg,#d9c0f5,#b894e5);border-color:#d1b4f1;color:#241232;font-weight:500}
.shortlist-pass-note{font-size:10px;line-height:1.7;color:#a68bb9;margin-top:9px;text-align:center}
@media(hover:hover) and (pointer:fine){.event-share-button:hover,.event-copy-button:hover{background:#35223f;border-color:#ba95d7}.shortlist-create-pass:hover{background:#dfc9f8;border-color:#eadcf7}}
@media(max-width:620px){.event-share{margin-bottom:19px}.event-share-button,.event-copy-button{min-height:47px;padding-inline:10px}.shortlist-create-pass{margin-top:21px}}
.motion-paused .event-share-button,.motion-paused .event-copy-button,.motion-paused .shortlist-create-pass{transition:none!important}
@media(prefers-reduced-motion:reduce){.event-share-button,.event-copy-button,.shortlist-create-pass{transition:none!important}}
