.gig[data-v-0af1bb7f]{display:flex;flex-direction:column;gap:var(--space-2xs);min-height:9.5rem;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--space-m);position:relative;overflow:hidden;color:var(--text);transition:border-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}.gig[data-v-0af1bb7f]:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--accent),color-mix(in oklab,var(--accent-2) 70%,var(--accent)));transform:scaleX(0);transform-origin:left;transition:transform var(--dur) var(--ease-out)}.gig[data-v-0af1bb7f]:hover{border-color:color-mix(in oklab,var(--accent) 45%,var(--border));box-shadow:var(--shadow-lg);transform:translateY(-3px)}.gig[data-v-0af1bb7f]:hover:before{transform:scaleX(1)}.gig__head[data-v-0af1bb7f]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-s)}.gig__when[data-v-0af1bb7f]{display:inline-flex;align-items:baseline;gap:.4em;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.gig__dow[data-v-0af1bb7f]{color:var(--text-muted)}.gig__day[data-v-0af1bb7f]{font-family:var(--font-heading);font-size:var(--fs-md);font-weight:700;letter-spacing:-.01em;color:var(--text)}.gig__time[data-v-0af1bb7f]{display:inline-flex;align-items:center;gap:.45em;flex-shrink:0;padding:.25em .7em;border-radius:var(--r-pill);font-size:var(--fs-xs);font-weight:600;color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,transparent)}.gig__dot[data-v-0af1bb7f]{width:.45em;height:.45em;border-radius:50%;background:var(--accent)}.gig__title[data-v-0af1bb7f]{font-size:var(--fs-lg);line-height:1.2;margin:var(--space-2xs) 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gig__venue[data-v-0af1bb7f]{margin:auto 0 0;padding-top:var(--space-2xs);display:flex;align-items:center;gap:.5em;color:var(--text-muted);font-size:var(--fs-sm);min-width:0}.gig__venue span[data-v-0af1bb7f]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gig__venue[data-v-0af1bb7f] svg{color:var(--accent);flex-shrink:0;font-size:.9em}
