.event-catalog{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:18px}
.focus-card{position:relative;display:flex;flex-direction:column;gap:16px;padding:26px;border:1px solid var(--line-strong);border-radius:20px;background:var(--surface);transition:transform .2s,border-color .2s,box-shadow .2s}
.focus-card:hover{transform:translateY(-3px);border-color:var(--red);box-shadow:var(--shadow)}
.focus-card.is-selected{border-color:var(--red);background:color-mix(in srgb,var(--red) 4%,var(--surface))}
.focus-card>.micro{padding-right:32px;min-height:28px;font-size:10px}
.event-pick{position:absolute;right:20px;top:20px;z-index:2;display:grid;place-items:center;width:32px;height:32px;cursor:pointer}
.event-pick input{width:20px;height:20px;accent-color:var(--red);cursor:pointer}
@media(hover:hover) and (pointer:fine){
 .event-pick{opacity:0;pointer-events:none;transition:opacity .18s ease}
 .focus-card:hover .event-pick,.focus-card:focus-within .event-pick{opacity:1;pointer-events:auto}
}
@media(prefers-reduced-motion:reduce){.event-pick{transition:none}}
.event-card-link{display:flex;flex-direction:column;flex:1;color:var(--ink);text-decoration:none}
.event-card-link::after{content:"";position:absolute;inset:0;border-radius:20px}
.event-card-link h3{font:600 21px/1.3 var(--font-body);letter-spacing:-.025em;margin:0 0 12px}
.event-card-link p{font:14px/1.65 var(--font-body);color:var(--muted);margin:0 0 24px}
.event-card-open{display:flex;justify-content:space-between;margin-top:auto;font-size:13px;color:var(--red-ink)}
.event-type-tags{display:flex;flex-wrap:wrap;gap:6px}
.event-type-tags span{font:11px/1.4 var(--font-body);padding:5px 9px;border:1px solid var(--line-strong);border-radius:6px;color:var(--muted)}
.event-type-tags .selected-label{background:var(--red);color:var(--on-red);border-color:var(--red)}
.catalog-toolbar{flex-wrap:wrap;gap:16px}.catalog-toolbar .search-field{flex:1;min-width:200px}
.catalog-toolbar input{width:100%}
.event-focus{min-height:100svh;background:var(--bg)}
.event-focus-header{display:flex;align-items:center;gap:28px;padding:24px 4vw;border-bottom:1px solid var(--line-strong)}
.event-focus-header>.brand{margin-right:auto}
.event-focus-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;max-width:1600px;margin:auto}
.event-focus-main{padding:48px clamp(24px,5vw,80px);min-width:0}
.event-coming-soon{position:relative;min-height:350px;border:1px solid var(--line-strong);border-radius:24px;background:var(--surface);padding:36px;overflow:hidden;animation:event-arrive .3s ease-out}
.event-coming-soon h2{font:500 22px/1.4 var(--font-body);margin:12px 0 50px}
.event-coming-soon h3{font:400 clamp(23px,3vw,36px)/1.3 var(--font-display);letter-spacing:-.02em;margin:0 0 16px}
.event-coming-soon p{font-size:15px;color:var(--muted);max-width:40ch;line-height:1.7}
.coming-soon-mark{position:absolute;right:32px;top:20px;font-size:100px;color:var(--red);opacity:.12}
.event-source{font-size:12px;line-height:1.7;color:var(--muted);margin-top:24px}.event-source a{text-decoration:underline;text-underline-offset:3px}
.event-tools{border-left:1px solid var(--line-strong);padding:40px 22px;position:sticky;top:0;align-self:start;height:100vh;height:100svh;overflow-y:auto;overscroll-behavior:contain;background:var(--surface)}
.event-tools nav{display:flex;flex-direction:column;gap:8px;margin:24px 0 50px}
.event-tools nav a{display:grid;grid-template-columns:22px 1fr 12px;align-items:center;gap:10px;padding:16px 12px;border-radius:10px;font-size:14px;line-height:1.5;color:var(--ink-2);transition:background .2s}
.event-tools nav a:hover{background:var(--surface-3)}
.event-tools nav a[aria-current=page]{background:var(--red);color:var(--on-red)}
.tool-number{opacity:.65;font-size:10px}
.event-tools>p{padding:20px 12px;font:400 18px/1.8 var(--font-display)}.event-tools>p span{font:14px var(--font-body);color:var(--muted)}
.rank-directory{margin-top:24px}
@keyframes event-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.event-focus-header{padding:18px 20px;gap:12px}.event-focus-header .text-button{font-size:12px}.event-focus-layout{grid-template-columns:minmax(0,1fr)}.event-tools{grid-row:1;position:static;height:auto;overflow:visible;min-height:0;border-left:0;border-bottom:1px solid var(--line-strong);padding:18px 20px}.event-tools nav{display:flex;flex-direction:row;overflow:auto;margin:12px 0 0;gap:8px}.event-tools nav a{display:flex;flex:none;padding:12px;white-space:nowrap}.event-tools>p{display:none}.event-focus-main{padding:28px 20px}.event-coming-soon{padding:26px;min-height:320px}.catalog-toolbar .select-label{flex:1;min-width:140px}}
@media(prefers-reduced-motion:reduce){.event-coming-soon{animation:none}.focus-card,.event-tools nav a{transition:none}.focus-card:hover{transform:none}}
