/* V3: tonal rhythm between concerts, keeping the Kasalla palette. */
.live-section .bit-widget .bit-event{padding:25px 26px!important;margin:0 0 10px!important;border:0!important;border-radius:8px!important;background:#202020!important;gap:24px!important}
.live-section .bit-widget .bit-event:first-child{border-top:0!important}
.live-section .bit-widget .bit-event:nth-child(even){background:#151515!important}
.live-section .bit-widget .bit-event:nth-child(odd){background:#292023!important}
.live-section .bit-widget .bit-event:hover,.live-section .bit-widget .bit-event:focus-within{background:#35262b!important}
.live-section .bit-widget .bit-date-wrapper{min-height:74px!important;padding:14px 17px!important;border:0!important;border-radius:5px!important;background:#422a31!important;justify-content:center!important}
.live-section .bit-widget .bit-event:nth-child(even) .bit-date-wrapper{background:#252122!important}
.live-section .bit-widget .bit-date{font-size:26px!important;color:#f18b95!important}
.live-section .bit-widget .bit-details-inner-wrapper{grid-template-columns:168px minmax(0,1fr)!important;column-gap:28px!important}
.live-section .bit-widget .bit-venue{font-size:28px!important}
.live-section .bit-widget .bit-location-under-desktop{color:#d0c2c5!important;font-size:16px!important}
.live-section .bit-widget .bit-button{border-radius:4px!important}
.live-section .tour-promo{border-radius:8px;background:#211b1d;border-color:#433036}
@media(max-width:800px){.live-section .bit-widget .bit-details-inner-wrapper{grid-template-columns:140px minmax(0,1fr)!important;column-gap:22px!important}.live-section .bit-widget .bit-date{font-size:23px!important}.live-section .bit-widget .bit-venue{font-size:25px!important}.live-section .bit-widget .bit-event{padding:22px 18px!important;gap:18px!important}}
@media(max-width:600px){.live-section .bit-widget .bit-event{padding:20px 14px!important;margin-bottom:10px!important;gap:15px!important}.live-section .bit-widget .bit-details-inner-wrapper{grid-template-columns:105px minmax(0,1fr)!important;column-gap:16px!important}.live-section .bit-widget .bit-date-wrapper{min-height:65px!important;padding:12px 7px!important}.live-section .bit-widget .bit-date{font-size:20px!important}.live-section .bit-widget .bit-venue{font-size:23px!important}.live-section .bit-widget .bit-location-under-desktop{font-size:14px!important}.live-section .bit-widget .bit-event-buttons{margin-left:121px!important}}
@media(max-width:350px){.live-section .bit-widget .bit-event{padding:18px 12px!important}.live-section .bit-widget .bit-details-inner-wrapper{grid-template-columns:85px minmax(0,1fr)!important;column-gap:12px!important}.live-section .bit-widget .bit-date{font-size:17px!important}.live-section .bit-widget .bit-venue{font-size:20px!important}.live-section .bit-widget .bit-event-buttons{margin-left:97px!important}.live-section .bit-widget .bit-button{min-width:104px!important;padding:10px 12px!important}}

.live-section .bit-widget .bit-date-wrapper{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
.live-section .bit-widget .bit-date{min-width:0!important}

/* Band name stays present when Bandsintown loads additional events. */
.live-section .bit-widget .bit-venue::before{content:"KASALLA";display:inline-block;font-size:.78em;font-weight:400;color:#d29aa5;letter-spacing:.6px;line-height:1;padding-right:.55em;margin-right:.55em;border-right:1px solid #95868a;vertical-align:baseline;}

/* Bandsintown sets a 250px venue width at its desktop breakpoint. */
.live-section .bit-widget .bit-titleWrapper{width:100%!important;max-width:none!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;scrollbar-color:#795059 transparent}
.live-section .bit-widget .bit-venue{display:block!important;width:max-content!important;min-width:0!important;max-width:none!important;white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important}
@media(max-width:600px){
 .live-section .bit-widget .bit-details-inner-wrapper{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;row-gap:12px!important}
 .live-section .bit-widget .bit-date-wrapper{grid-column:1!important;grid-row:1!important;width:110px!important;min-height:50px!important}
 .live-section .bit-widget .bit-titleWrapper{grid-column:1!important;grid-row:2!important}
 .live-section .bit-widget .bit-location-under-desktop{grid-column:1!important;grid-row:3!important}
 .live-section .bit-widget .bit-event-buttons{margin-left:0!important}
}

/* V3.4: band, venue and city share a single, unbroken headline. */
.live-section .bit-widget .bit-venue::before{font-size:1em}
.live-section .bit-widget .bit-venue[data-city]::after{content:" · " attr(data-city);color:#c6b8bc;font-weight:400;text-transform:none;letter-spacing:0}
.live-section .bit-widget .bit-details-inner-wrapper:has(.bit-venue[data-city]) .bit-location-under-desktop,
.live-section .bit-widget .bit-details-inner-wrapper:has(.bit-venue[data-city]) .bit-location-under-mobile{display:none!important}
.live-section .bit-widget .bit-details-inner-wrapper:has(.bit-venue[data-city]) .bit-titleWrapper{grid-row:1 / 3!important;align-self:center}
@media(max-width:600px){
 .live-section .bit-widget .bit-details-inner-wrapper:has(.bit-venue[data-city]){grid-template-rows:auto auto!important}
 .live-section .bit-widget .bit-details-inner-wrapper:has(.bit-venue[data-city]) .bit-titleWrapper{grid-row:2!important}
}

/* V3.5: date and ticket share one vertical centre at every width. */
.live-section .bit-widget .bit-event-buttons{align-self:center!important;margin-top:0!important;margin-bottom:0!important}
@media(max-width:600px){
 .live-section .bit-widget .bit-event{grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;column-gap:12px!important}
 .live-section .bit-widget .bit-details-inner-wrapper{display:contents!important}
 .live-section .bit-widget .bit-date-wrapper{grid-column:1!important;grid-row:1!important;align-self:center!important;height:50px!important}
 .live-section .bit-widget .bit-event-buttons{grid-column:2!important;grid-row:1!important;width:auto!important;min-width:0!important;margin:0!important}
 .live-section .bit-widget .bit-button{min-height:50px!important;box-sizing:border-box!important}
 .live-section .bit-widget .bit-titleWrapper{grid-column:1 / -1!important;grid-row:2!important}
}
@media(max-width:350px){
 .live-section .bit-widget .bit-date-wrapper{width:95px!important}
}

/* V3.6: suppress every native city variant; city lives in the headline. */
.live-section .bit-widget .bit-event .bit-location,
.live-section .bit-widget .bit-event .bit-location-under-desktop,
.live-section .bit-widget .bit-event .bit-location-under-mobile{display:none!important}
/* Matching box heights make top, centre and bottom alignment explicit. */
@media(min-width:601px){
 .live-section .bit-widget .bit-event .bit-button{height:74px!important;min-height:74px!important;box-sizing:border-box!important}
 .live-section .bit-widget .bit-event .bit-date-wrapper{height:74px!important}
}

/* V3.9: artist-provided concert notes beneath the venue headline. */
.live-section .bit-widget .kasalla-event-name{font-family:Arial,sans-serif!important;font-size:15px!important;font-weight:400!important;line-height:1.5!important;color:#c6b8bc!important;text-transform:none!important;letter-spacing:0!important;white-space:pre-line!important;overflow-wrap:anywhere!important;margin:7px 0 0!important;text-align:left!important}
@media(max-width:600px){.live-section .bit-widget .kasalla-event-name{font-size:14px!important}}

/* Map action next to the ticket button, with its own accessible hit area. */
.live-section .bit-widget .bit-event-buttons{flex-wrap:nowrap!important}
.live-section .bit-widget .kasalla-map-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;height:50px!important;padding:0!important;margin:0!important;color:#c63240!important;background:transparent!important;border:0!important;border-radius:5px!important}
.live-section .bit-widget .kasalla-map-link svg{width:28px!important;height:36px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.live-section .bit-widget .kasalla-map-link:hover{color:#f18b95!important;background:#422a31!important}
@media(max-width:350px){.live-section .bit-widget .bit-event-buttons{gap:4px!important}.live-section .bit-widget .bit-event .bit-button{min-width:96px!important;padding-left:8px!important;padding-right:8px!important}.live-section .bit-widget .bit-event .bit-button:after{margin-left:8px!important}}

#player-content .map-frame{display:block;width:100%;height:min(55vh,480px);min-height:220px;border:0;background:#eee}
.map-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:18px}.map-actions p{color:#c6b8bc;font-size:14px}.map-actions .button{font-size:16px;flex-shrink:0}
@media(max-width:600px){.map-actions{flex-direction:column;align-items:stretch}.map-actions .button{text-align:center;font-size:14px}}

/* Compact cards for phones and their landscape orientation. */
@media(max-width:1000px), (max-width:1100px) and (pointer:coarse){
 .live-section .bit-widget .bit-event{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:20px!important;margin-bottom:12px!important}
 .live-section .bit-widget .bit-details-inner-wrapper,.live-section .bit-widget .bit-details-inner-wrapper>.bit-details{display:contents!important}
 .live-section .bit-widget .bit-event .bit-date-wrapper{display:flex!important;align-items:baseline!important;justify-content:flex-start!important;flex-wrap:wrap!important;gap:8px!important;width:auto!important;height:auto!important;min-height:0!important;padding:0!important;background:transparent!important;border:0!important;order:0!important}
 .live-section .bit-widget .bit-date{font:600 17px/1.4 Oswald,Arial,sans-serif!important;letter-spacing:.2px!important}
 .live-section .bit-widget .bit-date-wrapper[data-city]::after{content:'· ' attr(data-city);font:400 15px/1.4 Arial,sans-serif;color:#c6b8bc}
 .live-section .bit-widget .bit-titleWrapper{order:1!important;width:100%!important;overflow:visible!important}
 .live-section .bit-widget .bit-venue{font-size:26px!important;line-height:1.2!important;width:auto!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important}
 .live-section .bit-widget .bit-venue::before,.live-section .bit-widget .bit-venue[data-city]::after{content:none!important;display:none!important}
 .live-section .bit-widget .kasalla-event-name{font-size:14px!important;line-height:1.5!important;margin-top:6px!important}
 .live-section .bit-widget .bit-event-buttons{order:2!important;display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important;min-width:0!important;margin:3px 0 0!important;gap:12px!important}
 .live-section .bit-widget .bit-event .bit-button{height:46px!important;min-height:46px!important;min-width:128px!important;padding:10px 18px!important;font-size:14px!important}
 .live-section .bit-widget .kasalla-map-link{height:46px!important}
 .live-section .bit-widget .kasalla-map-link svg{width:24px!important;height:31px!important}
 .live-section .bit-widget .bit-button:after{content:''!important;display:inline-block!important;width:17px;height:17px;margin-left:16px!important;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5M5 5h14v14' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
 .live-section .tour-promo a span,.header-ticket span{font-variant-emoji:text}
 .live-section .tour-promo a span{font-size:0}
 .live-section .tour-promo a span::after{content:'';display:inline-block;width:20px;height:20px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 19 19 5M5 5h14v14' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
}

/* Ticket actions use a plain label on every screen size. */
.live-section .bit-widget .bit-button:after{content:none!important;display:none!important}
a.header-ticket span,.tour-promo a span,.hero-action a span{display:none!important}
@media(max-width:1000px), (max-width:1100px) and (pointer:coarse){
 .live-section .bit-widget .bit-event .bit-date-wrapper,.live-section .bit-widget .bit-details-inner-wrapper .bit-titleWrapper{align-self:stretch!important;text-align:left!important}
}

@media(max-width:1000px), (max-width:1100px) and (pointer:coarse){
 .live-section .bit-widget .bit-event:nth-child(n) .bit-date-wrapper{background:transparent!important}
 .live-section .bit-widget .bit-event .bit-titleWrapper .bit-venue{text-align:left!important;align-self:stretch!important}
}
