.xs-controls{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:10px;align-items:end;margin:8px 0 6px}
.xs-controls label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--sage);margin-bottom:4px}
.xs-controls input,.xs-controls select,.xs-controls button{width:100%;font:inherit;font-size:15px;background:var(--dark);color:var(--white);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);padding:9px 12px}
.xs-controls button{background:transparent;color:var(--lime);border-color:var(--lime);cursor:pointer;width:auto}
.xs-controls :focus-visible{outline:3px solid var(--lime);outline-offset:2px}
.xs-note{color:var(--sage);font-size:14px;margin:6px 0 0}
.xs-stats{display:flex;flex-wrap:wrap;gap:10px 32px;margin-top:22px;color:var(--sage);font-size:15px}
.xs-stats b{display:block;color:var(--lime);font-family:var(--display);font-size:26px;font-weight:600}
.xs-group{margin:44px 0 0}
.xs-group h2{display:flex;align-items:baseline;gap:12px;font-size:clamp(26px,3vw,34px)}
.xs-group h2 small{font-family:var(--body);font-size:15px;color:var(--sage);font-weight:400;letter-spacing:0}
.xs-year{font-size:17px;color:var(--lime);margin:24px 0 12px;border-bottom:1px solid var(--rule);padding-bottom:6px}
.xs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;list-style:none;padding:0;margin:0}
.xs-card{background:var(--dark);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.xs-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#000}
.xs-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.xs-card h4{margin:0;font-family:var(--display);font-size:18px;line-height:1.25;font-weight:600;letter-spacing:-.01em}
.xs-meta,.xs-people{font-size:14px;color:var(--sage)}
.xs-people a{color:var(--mint)}
.xs-tags{display:flex;flex-wrap:wrap;gap:6px}
.xs-tag{font-size:12px;border-radius:999px;padding:2px 9px;background:rgba(177,252,3,.08);color:var(--mint);border:1px solid var(--rule-strong)}
.xs-tag.host{background:var(--lime);color:var(--dark);border-color:var(--lime);font-weight:600}
.xs-links{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px;padding-top:6px;align-items:center}
.xs-btn{display:inline-block;text-decoration:none;font-size:14px;font-weight:600;border-radius:999px;padding:6px 14px;border:1px solid var(--lime);color:var(--lime)}
.xs-btn.primary{background:var(--lime);color:var(--dark)}
.xs-unavail{font-size:13px;color:var(--sage);font-style:italic}
.xs-upcoming{border:1px solid var(--lime);border-radius:20px;padding:20px;margin-top:28px;background:linear-gradient(135deg,var(--dark),#000)}
.xs-upcoming h2{color:var(--lime)}
.xs-empty{color:var(--sage);padding:40px 0}
@media (max-width:820px){.xs-controls{grid-template-columns:1fr 1fr}.xs-controls .xs-search{grid-column:1/-1}}

/* share on X + deep-link highlight */
.xs-share{display:inline-flex;align-items:center;gap:6px;border-color:var(--rule-strong);color:var(--white)}
.xs-share:hover,.xs-share:focus-visible{border-color:var(--lime);color:var(--lime)}
.xs-x{width:13px;height:13px;fill:currentColor;flex:none}
.xs-btn:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.xs-card{scroll-margin-top:96px}
.xs-card.is-target{border-color:var(--lime);box-shadow:0 0 0 2px var(--lime),0 0 32px rgba(177,252,3,.35);animation:xs-glow 2.4s ease-out 1}
.xs-card.is-target:focus{outline:none}
@keyframes xs-glow{0%{box-shadow:0 0 0 6px rgba(177,252,3,.6),0 0 60px rgba(177,252,3,.6)}100%{box-shadow:0 0 0 2px var(--lime),0 0 32px rgba(177,252,3,.35)}}
@media (prefers-reduced-motion:reduce){.xs-card.is-target{animation:none}}
