:root{--ah-red:#e10616;--ah-dark:#090909;--ah-panel:#111;--ah-text:#f5f5f5;--ah-muted:#a7a7a7}.ah-events-wrap{width:100%;color:var(--ah-text);font-family:Arial,sans-serif}.ah-event-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.ah-event-filters button,.ah-actions a,.ah-actions button{border:0;cursor:pointer;background:#1a1a1a;color:#fff;padding:10px 15px;font-weight:800;letter-spacing:.5px;clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%)}.ah-event-filters button.active,.ah-event-filters button:hover,.ah-reserve{background:var(--ah-red)!important}.ah-event-grid{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:18px}.ah-events-wrap[data-cols="1"] .ah-event-grid{--cols:1}.ah-events-wrap[data-cols="2"] .ah-event-grid{--cols:2}.ah-events-wrap[data-cols="3"] .ah-event-grid{--cols:3}.ah-events-wrap[data-cols="4"] .ah-event-grid{--cols:4}.ah-events-wrap[data-cols="5"] .ah-event-grid{--cols:5}.ah-event-card{background:linear-gradient(145deg,#151515,#080808);border-bottom:2px solid var(--ah-red);overflow:hidden;box-shadow:0 12px 30px #0008}.ah-flyer{position:relative;aspect-ratio:4/5;overflow:hidden;background:#080808}.ah-flyer img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s}.ah-event-card:hover .ah-flyer img{transform:scale(1.035)}.ah-date-badge{position:absolute;left:0;bottom:0;background:var(--ah-red);padding:7px 12px;font-size:12px;font-weight:900;text-transform:uppercase}.ah-event-body{padding:15px}.ah-event-body h3{font-size:20px;line-height:1.1;margin:0 0 8px;color:#fff;text-transform:uppercase}.ah-meta,.ah-location{font-size:13px;color:#ccc;margin:4px 0}.ah-lineup{font-size:12px;color:var(--ah-muted);margin-top:10px}.ah-lineup b{color:var(--ah-red);margin-right:5px}.ah-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.ah-actions a,.ah-actions button{font-size:11px;text-decoration:none}.ah-hidden-content{display:none}.ah-no-flyer{height:100%;display:flex;align-items:center;justify-content:center;font-size:25px;font-weight:900;letter-spacing:3px}.ah-event-card.compact .ah-event-body{padding:11px}.ah-event-card.compact .ah-event-body h3{font-size:16px}.ah-modal{position:fixed;z-index:999999;inset:0;background:#000d;display:none;align-items:center;justify-content:center;padding:20px}.ah-modal.open{display:flex}.ah-modal-inner{position:relative;width:min(760px,96vw);max-height:90vh;overflow:auto;background:#101010;border-top:3px solid var(--ah-red);padding:28px;color:#fff}.ah-modal-close{position:absolute;right:8px;top:4px;border:0;background:transparent;color:#fff;font-size:36px;cursor:pointer}.ah-modal-copy h2{padding-right:40px;text-transform:uppercase}.ah-empty{padding:20px;background:#111;color:#aaa}@media(max-width:900px){.ah-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:560px){.ah-event-grid{grid-template-columns:1fr!important;gap:14px}.ah-event-filters{gap:5px}.ah-event-filters button{font-size:10px;padding:8px 11px}}
html.ah-modal-open,body.ah-modal-open{overflow:hidden!important}.ah-modal{overflow:hidden}.ah-modal-inner{width:min(980px,96vw);max-height:88vh;padding:0;overflow:auto;border-top:3px solid var(--ah-red);box-shadow:0 24px 80px #000}.ah-modal-close{position:sticky;float:right;right:10px;top:8px;z-index:10;width:42px;height:42px;line-height:38px;border-radius:50%;background:#080808d9;color:#fff;font-size:30px}.ah-modal-content{clear:both}.ah-detail{display:grid;grid-template-columns:minmax(260px,42%) 1fr;min-height:420px}.ah-detail-flyer{background:#070707;min-height:420px}.ah-detail-flyer img{width:100%;height:100%;max-height:76vh;object-fit:cover;display:block}.ah-detail-info{padding:30px 34px 34px}.ah-detail-info h2{margin:0 45px 22px 0;color:#fff;font-size:28px;line-height:1.05;text-transform:uppercase}.ah-detail-row{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #2a2a2a;font-size:14px}.ah-detail-row b{color:var(--ah-red);font-size:11px;letter-spacing:.8px}.ah-detail-row span{color:#eee}.ah-detail-short{font-weight:700;color:#fff;margin:22px 0 10px}.ah-detail-copy{color:#cfcfcf;line-height:1.6}.ah-detail-reserve{display:inline-block;margin-top:18px;background:var(--ah-red);color:#fff!important;text-decoration:none;font-weight:900;padding:12px 20px;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}
@media(max-width:700px){.ah-modal{padding:8px}.ah-modal-inner{width:100%;max-height:94vh}.ah-detail{grid-template-columns:1fr}.ah-detail-flyer{min-height:0}.ah-detail-flyer img{height:auto;max-height:none;object-fit:contain}.ah-detail-info{padding:22px 20px 28px}.ah-detail-info h2{font-size:23px}.ah-detail-row{grid-template-columns:90px 1fr}}

.ah-view-all-wrap{text-align:center;margin-top:20px}.ah-view-all{display:inline-block;background:#161616;color:#fff!important;text-decoration:none;font-weight:900;font-size:12px;letter-spacing:.8px;padding:12px 22px;border-bottom:2px solid var(--ah-red);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%)}.ah-view-all:hover{background:var(--ah-red)}
@media(max-width:560px){.ah-events-wrap .ah-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}.ah-event-card.compact .ah-event-body{padding:9px}.ah-event-card.compact .ah-event-body h3{font-size:13px;line-height:1.15}.ah-event-card.compact .ah-meta{font-size:10px}.ah-event-card.compact .ah-location{display:none}.ah-event-card.compact .ah-actions{margin-top:9px}.ah-event-card.compact .ah-actions button,.ah-event-card.compact .ah-actions a{font-size:9px;padding:8px 9px}.ah-event-card.compact .ah-date-badge{font-size:10px;padding:6px 8px}.ah-view-all-wrap{margin-top:14px}}

/* v1.1.7 popup actions + After Hours scrollbar */
.ah-modal-inner{scrollbar-width:thin;scrollbar-color:#d3133a #171717}
.ah-modal-inner::-webkit-scrollbar{width:11px}
.ah-modal-inner::-webkit-scrollbar-track{background:#171717}
.ah-modal-inner::-webkit-scrollbar-thumb{background:linear-gradient(#9e0d2b,#ef174c);border:2px solid #171717;border-radius:10px}
.ah-modal-inner::-webkit-scrollbar-thumb:hover{background:#ff174f}
.ah-detail-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px;padding-bottom:4px}
.ah-detail-action{display:inline-block;background:#1b1b1b;color:#fff!important;text-decoration:none;font-weight:900;font-size:12px;letter-spacing:.35px;padding:12px 18px;clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);transition:.2s}
.ah-detail-action:hover,.ah-detail-action.primary{background:var(--ah-red)}
@media(max-width:700px){.ah-detail-actions{gap:7px}.ah-detail-action{font-size:11px;padding:11px 14px}}

/* v1.1.8 mobile popup overflow fix */
.ah-detail-info,.ah-detail-copy,.ah-detail-short,.ah-detail-row span{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.ah-detail-copy a,.ah-detail-short a{overflow-wrap:anywhere;word-break:break-all}
@media(max-width:700px){
  .ah-modal{padding:8px}
  .ah-modal-inner{width:100%;max-width:100%;max-height:94vh;overflow-x:hidden}
  .ah-detail{grid-template-columns:1fr;min-width:0}
  .ah-detail-flyer{min-height:0}
  .ah-detail-flyer img{height:auto;max-height:none;object-fit:contain}
  .ah-detail-info{padding:22px 18px 26px;min-width:0;overflow:hidden}
  .ah-detail-row{grid-template-columns:82px minmax(0,1fr);gap:8px}
  .ah-detail-actions{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:100%;gap:9px;overflow:hidden}
  .ah-detail-action{display:block;width:100%;max-width:100%;box-sizing:border-box;text-align:center;white-space:normal;overflow-wrap:anywhere;word-break:break-word;padding:12px 14px}
}

/* v1.1.9 hardened mobile modal fit */
@media(max-width:700px){
  .ah-modal,.ah-modal *{box-sizing:border-box}
  .ah-modal{width:100vw;max-width:100vw;overflow:hidden}
  .ah-modal-inner{width:calc(100vw - 16px);max-width:calc(100vw - 16px);margin:0;overflow-y:auto;overflow-x:hidden}
  .ah-modal-content,.ah-detail,.ah-detail-info,.ah-detail-copy,.ah-detail-short,.ah-detail-actions{width:100%;max-width:100%;min-width:0}
  .ah-detail-row{width:100%;max-width:100%;min-width:0}
  .ah-detail-row span,.ah-detail-copy,.ah-detail-copy p,.ah-detail-copy div,.ah-detail-copy a{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
  .ah-detail-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}
  .ah-detail-action{width:100%;min-width:0;max-width:100%;margin:0}
}

/* v1.2.1 mobile tap + scroll-lock hardening */
.ah-info{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
@media(max-width:700px){.ah-modal.open{display:flex!important;position:fixed!important;inset:0!important;z-index:2147483000!important;overscroll-behavior:contain}.ah-modal-inner{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ah-modal-close{touch-action:manipulation}}
