/* NIGHTSHOT V5.80 — Mobile App UI layer. Public pages only. */
:root{--ns-app-bg:#07060a;--ns-app-surface:#100d15;--ns-app-surface-2:#15111b;--ns-app-border:rgba(255,255,255,.085);--ns-app-text:#fbf9fc;--ns-app-muted:#aaa2b2;--ns-app-primary:#f03bc6;--ns-app-violet:#8c38ff;--ns-app-radius:24px;--ns-app-shadow:0 20px 55px rgba(0,0,0,.34)}
html,body{max-width:100%;overflow-x:clip} body{background:var(--ns-app-bg);color:var(--ns-app-text)}
.ns-app-bottom-nav{display:none}
@media(max-width:768px){
 body{padding-bottom:calc(82px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% -10%,rgba(166,30,255,.13),transparent 32rem),#07060a!important}
 .ns-global-header{position:sticky!important;top:0!important;z-index:900!important;background:rgba(7,6,10,.82)!important;backdrop-filter:blur(22px) saturate(130%);border-bottom:1px solid rgba(255,255,255,.07)!important}
 .ns-global-header-spacer{display:none!important}.ns-utilitybar,.ns-tablet-utility,.ns-global-nav,.ns-global-search{display:none!important}
 .ns-mainbar{height:64px!important;min-height:64px!important;padding:max(6px,env(safe-area-inset-top)) 18px 6px!important;display:grid!important;grid-template-columns:48px 1fr 48px!important;align-items:center!important;gap:10px!important}
 .ns-global-brand{grid-column:2!important;justify-self:center!important;min-width:0!important}.ns-global-brand-logo{width:auto!important;max-width:150px!important;max-height:32px!important;object-fit:contain!important}
 .ns-menu-toggle{grid-column:1!important;grid-row:1!important;width:44px!important;height:44px!important;border-radius:15px!important;border:1px solid var(--ns-app-border)!important;background:rgba(255,255,255,.035)!important;display:grid!important;place-content:center!important}
 .ns-menu-toggle span{width:20px!important}.ns-mobile-menu{position:fixed!important;top:64px!important;left:10px!important;right:10px!important;max-height:calc(100dvh - 150px)!important;overflow:auto!important;border:1px solid var(--ns-app-border)!important;border-radius:22px!important;background:rgba(13,10,17,.98)!important;box-shadow:var(--ns-app-shadow)!important;padding:12px!important}.ns-mobile-menu nav{display:grid!important;gap:4px!important}.ns-mobile-menu nav a,.ns-mobile-utility a{padding:13px 14px!important;border-radius:13px!important;overflow-wrap:anywhere!important}.ns-mobile-menu nav a[aria-current=page]{background:linear-gradient(135deg,rgba(240,59,198,.16),rgba(140,56,255,.13))!important;color:#fff!important}
 .hero{min-height:auto!important;padding:34px 14px 12px!important}.hero-inner{width:100%!important;max-width:none!important}.ns-hero-brand{margin-bottom:12px!important}.ns-hero-brand-logo{max-width:min(76vw,300px)!important}.hero-subtitle{font-size:clamp(.92rem,4vw,1.08rem)!important;line-height:1.45!important;color:var(--ns-app-muted)!important}
 .search-shell{width:calc(100% - 24px)!important;margin:12px auto 0!important}.search-panel{border-radius:22px!important;padding:12px!important;background:rgba(16,13,21,.92)!important;border:1px solid var(--ns-app-border)!important;box-shadow:var(--ns-app-shadow)!important}.filters-grid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}.filter-control,.filter-input,.filter-select{min-width:0!important;width:100%!important}
 .section{width:100%!important;max-width:none!important;padding-left:14px!important;padding-right:14px!important;margin-top:34px!important}.section-head{align-items:end!important;gap:10px!important;margin-bottom:14px!important}.section-head h2,.section-title{font-size:clamp(1.55rem,7vw,2.15rem)!important;line-height:.98!important;letter-spacing:-.035em!important}.section-kicker{font-size:.62rem!important;letter-spacing:.17em!important;color:#f47bd7!important}
 .ns2-eventi-shell{margin-left:-14px!important;margin-right:-14px!important}.ns2-eventi-viewport{padding:0 14px 8px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important}.ns2-eventi-track{gap:12px!important}.ns2-eventi-slide{flex:0 0 min(76vw,310px)!important;scroll-snap-align:center!important;border:1px solid var(--ns-app-border)!important;border-radius:24px!important;overflow:hidden!important;background:var(--ns-app-surface)!important;box-shadow:0 16px 38px rgba(0,0,0,.28)!important}.ns2-eventi-poster{border-radius:0!important}.ns2-eventi-info{padding:14px!important}.ns2-eventi-title{font-size:1.15rem!important;line-height:1.1!important}.ns2-eventi-address{overflow-wrap:anywhere!important}.ns2-eventi-nav{display:none!important}
 .ns-venue-rail{gap:12px!important;padding-bottom:8px!important;scroll-snap-type:x mandatory!important}.ns-venue-card{flex:0 0 min(80vw,330px)!important;scroll-snap-align:start!important;border-radius:24px!important;background:var(--ns-app-surface)!important;border:1px solid var(--ns-app-border)!important;overflow:hidden!important}.ns-venue-arrow{display:none!important}
 .ns-event-page{width:100%!important;padding:18px 12px 30px!important}.ns-breadcrumb{display:none!important}.ns-event-shell{display:block!important}.ns-event-grid{display:block!important}.ns-event-flyer{width:min(70vw,310px)!important;margin:8px auto 20px!important}.ns-event-flyer img{width:100%!important;height:auto!important;border-radius:24px!important;box-shadow:0 24px 65px rgba(0,0,0,.42)!important}.ns-event-info{min-width:0!important}.ns-event-info h1{font-size:clamp(2rem,10vw,3.1rem)!important;line-height:.92!important;letter-spacing:-.05em!important;margin:10px 0 18px!important;overflow-wrap:anywhere!important}.ns-event-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.ns-fact{min-width:0!important;border:1px solid var(--ns-app-border)!important;background:var(--ns-app-surface)!important;border-radius:18px!important;padding:13px!important;overflow-wrap:anywhere!important}.ns-fact:last-child:nth-child(odd){grid-column:1/-1!important}.ns-event-desc{margin-top:12px!important;border:1px solid var(--ns-app-border)!important;border-radius:20px!important;background:var(--ns-app-surface)!important;padding:15px!important}.ns-share{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:12px!important}.ns-share>*{width:100%!important;min-width:0!important;justify-content:center!important;border-radius:15px!important;min-height:48px!important;overflow-wrap:anywhere!important}.ns-related{margin-top:30px!important}.ns-related-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;gap:11px!important;margin-right:-12px!important;padding-right:12px!important;scrollbar-width:none!important}.ns-related-card{flex:0 0 min(43vw,185px)!important;scroll-snap-align:start!important;border-radius:18px!important;overflow:hidden!important;background:var(--ns-app-surface)!important;border:1px solid var(--ns-app-border)!important}
 .ns-geo-sidebar{display:none!important}.ns-geo-mobile-trigger{display:flex!important;width:100%!important;min-height:54px!important;margin:0 0 15px!important;border:1px solid rgba(240,59,198,.25)!important;border-radius:18px!important;background:linear-gradient(135deg,rgba(240,59,198,.10),rgba(140,56,255,.08))!important;color:#fff!important;padding:12px 14px!important;align-items:center!important;justify-content:space-between!important}.ns-geo-mobile-sheet{border-radius:28px 28px 0 0!important;background:#0c0910!important}
 .ns-site-footer{margin-top:38px!important;padding-bottom:20px!important}.ns-site-footer-inner{display:grid!important;grid-template-columns:1fr 1fr!important;gap:22px 14px!important;padding:28px 18px!important}.ns-footer-brand{grid-column:1/-1!important}.ns-footer-bottom{padding:18px!important;display:grid!important;gap:5px!important;font-size:.65rem!important}
 .ns-app-bottom-nav{display:grid;position:fixed;z-index:950;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));height:66px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(12,9,16,.91);backdrop-filter:blur(24px) saturate(140%);box-shadow:0 18px 50px rgba(0,0,0,.48);padding:6px}.ns-app-bottom-nav a{min-width:0;color:#89818f;text-decoration:none;display:grid;place-items:center;align-content:center;gap:3px;border-radius:16px;font-size:.53rem;font-weight:800;letter-spacing:.03em}.ns-app-bottom-nav a svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8}.ns-app-bottom-nav a.is-active{color:#fff;background:linear-gradient(135deg,rgba(240,59,198,.19),rgba(140,56,255,.15));box-shadow:inset 0 0 0 1px rgba(240,59,198,.12)}.ns-app-bottom-nav a.is-active svg{color:#f25aca}
 img,video,canvas,svg{max-width:100%}.ns-site-footer a,.ns-mobile-menu a{overflow-wrap:anywhere}
}
@media(min-width:769px){.ns-event-page{max-width:1280px!important}.ns-event-shell{grid-template-columns:minmax(0,1fr) 300px!important}.ns-geo-sidebar{display:block!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

.ns-admin-photo-fab{display:none!important}
