@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@400;500;600;700&display=swap";:root{--bg:#0f1013;--bg-soft:#181a20;--paper:#16181f;--paper-2:#1d2028;--text:#f4f4f5;--muted:#a2a6b5;--line:#2a2f3b;--accent:#ff3b30;--accent-2:#ff8a00;--ok:#2dc789;color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Barlow Condensed,Segoe UI,sans-serif;line-height:1.35}*{box-sizing:border-box}html{overflow-y:scroll}body{background-color:#0f1013;min-height:100vh;margin:0;position:relative}body:before{content:"";pointer-events:none;z-index:0;background-color:#0000;background-image:linear-gradient(#090a0d66 0%,#0a0b0eb3 60%,#0f1013 100%),radial-gradient(circle at 84% 14%,#ff3b302e,#0000 38%),radial-gradient(circle at 12% 24%,#ff8a0024,#0000 36%),url(/background-concert.jpg);background-position:top,100% 0,0 0,top;background-repeat:no-repeat;background-size:auto,auto,auto,cover;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;width:100%;height:1000px;position:absolute;inset:0 auto auto 0}#app{z-index:1;width:100%;max-width:none;margin:0;padding:0 30px 64px;position:relative}.page{gap:18px;display:grid}.site-header{z-index:50;border-top:0;border-left:0;border-right:0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#13151be6;border-radius:0;justify-content:space-between;align-items:center;gap:14px;width:100vw;min-height:80px;margin-left:calc(50% - 50vw);padding:10px 30px;display:flex;position:sticky;top:0;box-shadow:0 14px 28px #0006}.brand-block{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;padding:0;display:grid}.menu-toggle{border:1px solid var(--line);cursor:pointer;background:#151a24;border-radius:8px;flex-direction:column;justify-content:center;gap:6px;width:46px;height:46px;padding:0 11px;display:inline-flex}.header-quick-nav{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.locale-switch{background:#151a24;border:1px solid #3a4153;border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.locale-option{color:#ffb356;min-width:52px;font:inherit;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 10px;font-size:.86rem;font-weight:800;transition:background .15s,color .15s}.locale-option:hover{color:#ffd28a}.locale-option.active{color:#fff4d8;background:linear-gradient(120deg,#ff3b3040,#ff8a0038)}.menu-toggle span{background:#ffb356;border-radius:999px;width:100%;height:2px}.menu-overlay{z-index:54;background:#00000073;position:fixed;inset:0}.slide-menu{z-index:55;background:#11151e;border-left:1px solid #2e3545;grid-template-rows:1fr auto;width:min(360px,90vw);height:100vh;padding:86px 18px 20px;transition:transform .22s;display:grid;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-18px 0 42px #0000006b}.slide-menu.open{transform:translate(0)}.slide-menu-nav{align-content:start;gap:8px;display:grid}.slide-menu-link{color:#f1f3fa;font:inherit;text-transform:uppercase;letter-spacing:.03em;text-align:left;cursor:pointer;background:#161b25;border:1px solid #31384a;border-radius:8px;padding:12px 14px;font-size:1.02rem;font-weight:700}.slide-menu-link:hover{border-color:var(--accent)}.slide-menu-link.active{border-color:var(--accent);background:linear-gradient(120deg,#ff3b302e,#ff8a0024)}.slide-menu-footer{border-top:1px solid #2f3647;gap:4px;padding-top:12px;display:grid}.slide-menu-bottom{gap:8px;padding-top:10px;display:grid}.slide-menu-footer p{color:#aeb4c4;margin:0;font-size:.86rem}.brand{letter-spacing:.08em;color:#ffb356;text-transform:uppercase;margin:0;font-family:Bebas Neue,sans-serif;font-size:1.55rem}.header-quick-nav .nav-link{color:#ffb356}.build-version{color:var(--muted);letter-spacing:.04em;margin:0;font-size:.8rem}.main-nav{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.nav-link{border:1px solid var(--line);background:var(--paper);color:var(--text);font:inherit;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;border-radius:4px;padding:8px 11px;font-size:.98rem;font-weight:700;transition:transform .12s,border-color .12s,background .12s}.nav-link:hover{border-color:var(--accent);background:#252933;transform:translateY(-1px)}.nav-link.active{border-color:var(--accent);background:linear-gradient(120deg,#ff3b3038,#ff8a0029)}.nav-link:disabled{opacity:.65;cursor:not-allowed;transform:none}.nav-action{background:linear-gradient(120deg, var(--accent), var(--accent-2));color:#fff;border-color:#0000}.nav-action:hover{color:#fff;border-color:#0000}.nav-danger{background:linear-gradient(120deg,#a01919,#e12929)}.hero{background:linear-gradient(180deg, var(--paper) 0%, var(--paper-2) 100%);border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 10px 24px #00000052}.section-head-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.hero-transparent{box-shadow:none;text-align:center;background:0 0;border:0;align-content:center;justify-items:center;min-height:640px;padding:78px 16px 42px;display:grid}.kicker{text-transform:uppercase;letter-spacing:.18em;color:var(--accent-2);margin:0;font-size:.7rem;font-weight:700}h1,h2,h3{letter-spacing:.04em;color:#fff;font-family:Bebas Neue,sans-serif}h1{margin:10px 0;font-size:clamp(2.1rem,6vw,3.5rem);line-height:1}h2{margin:0 0 10px;font-size:1.7rem}h3{margin:0;font-size:1.28rem}.lead{color:var(--muted);max-width:70ch;margin:0;font-size:1.05rem}.home-title{text-transform:uppercase;color:#ffb356;letter-spacing:.06em;text-shadow:0 8px 30px #0000008c;margin:0;font-size:clamp(3.4rem,10vw,6rem);line-height:.9}.home-lead{color:#f1f3fa;text-shadow:0 4px 18px #00000080;max-width:62ch;margin-top:14px;font-size:clamp(1.05rem,2.2vw,1.35rem)}.actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.refresh{background:linear-gradient(120deg, var(--accent), var(--accent-2));color:#fff;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;border:0;border-radius:4px;padding:10px 16px;font-weight:700}.refresh.danger{background:linear-gradient(120deg,#a01919,#e12929)}.refresh:disabled{cursor:not-allowed;opacity:.7}.updated{color:#ffd57a;margin:0}.source-panel{gap:12px;display:grid}.auth-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.source-form,.login-form,.password-form{gap:10px;display:grid}.source-form{grid-template-columns:1fr 1.5fr auto}.contact-form{background:linear-gradient(#121722 0%,#10141d 100%);border:1px solid #31384a;border-radius:10px;grid-template-columns:1fr;width:min(100%,680px);margin:16px auto 0;padding:18px;box-shadow:0 14px 26px #00000040}.login-form{grid-template-columns:1fr 1fr auto}.password-form{grid-template-columns:1fr 1fr 1fr auto}.source-form input,.login-form input,.password-form input{border:1px solid var(--line);color:var(--text);font:inherit;background:#11141b;border-radius:4px;padding:10px 12px}.contact-message{resize:vertical;border:1px solid var(--line);width:100%;min-height:120px;color:var(--text);font:inherit;background:#11141b;border-radius:4px;padding:10px 12px}.contact-panel .lead{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}.contact-form input{width:100%}.contact-form .refresh{justify-self:start}.error{color:#ff8e8e;margin:6px 0 0;font-weight:600}.source-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.source-list li{border:1px solid var(--line);background:#12151d;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.source-list strong{display:block}.source-list a{color:#f8b84f;word-break:break-all;font-size:.95rem}.source-name-list li,.source-status-list li{justify-content:flex-start}.source-status-list p{color:var(--muted);margin:2px 0 0;font-size:.95rem}.link-button{color:#ff6e66;cursor:pointer;text-transform:uppercase;background:0 0;border:0;font-weight:700}.link-button.active{color:#ffd57a}.errors ul{margin:0;padding-inline-start:18px}.source-filter{gap:12px;display:grid}.source-filter.collapsed{gap:0}.filter-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.concerts-submenu{justify-content:flex-start}.concerts-subview-toggle{background:#151a24;border:1px solid #3a4153;border-radius:4px;align-items:center;display:inline-flex;overflow:hidden}.concerts-subview-option{color:#ffb356;font:inherit;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;border:0;border-right:1px solid #2f3647;padding:8px 14px;font-size:.95rem;font-weight:700}.concerts-subview-option:last-child{border-right:0}.concerts-subview-option:hover{background:#252933}.concerts-subview-option.active{color:#ffd57a;background:linear-gradient(120deg,#ff3b3038,#ff8a0029)}.discovery-panel{gap:14px;display:grid}.discovery-top{gap:10px;display:grid}.discovery-controls{grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;display:grid}.concerts-submenu-row{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.concerts-admin-actions{justify-content:flex-end}.quick-filters{flex-wrap:wrap;gap:8px;display:flex}.quick-filters-toggle{background:#151a24;border:1px solid #3a4153;border-radius:4px;justify-self:center;align-items:center;display:inline-flex;overflow:hidden}.quick-filter-option{color:#ffb356;font:inherit;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;border:0;border-right:1px solid #2f3647;padding:8px 12px;font-size:.9rem;font-weight:700}.quick-filter-option:last-child{border-right:0}.quick-filter-option:hover{background:#252933}.quick-filter-option.active{color:#ffd57a;background:linear-gradient(120deg,#ff3b3038,#ff8a0029)}.view-mode-switch{flex-wrap:wrap;gap:8px;display:flex}.view-mode-toggle{background:#151a24;border:1px solid #3a4153;border-radius:4px;justify-self:end;align-items:center;display:inline-flex;overflow:hidden}.filter-modal-trigger{border:1px solid var(--line);background:var(--paper);border-right:1px solid var(--line);border-radius:4px}.filter-modal-trigger:hover{border-color:var(--accent);background:#252933}.view-mode-option{color:#ffb356;font:inherit;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;border:0;border-right:1px solid #2f3647;padding:8px 14px;font-size:.95rem;font-weight:700}.view-mode-option:last-child{border-right:0}.view-mode-option:hover{background:#252933}.view-mode-option.active{color:#ffd57a;background:linear-gradient(120deg,#ff3b3038,#ff8a0029)}.popular-panel{border-color:#ff8a00}.popular-list p{color:var(--muted);margin:4px 0 0}.popular-score{color:#ffd57a;font-size:.92rem}.concert-cards-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));grid-auto-rows:1fr;gap:14px;display:grid}.home-concerts-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}.home-concerts-grid .card+.card{margin-top:0}.home-concerts-grid>article.card:last-of-type:nth-of-type(odd){grid-column:1/-1}.concert-tile{background:#10131a;border:1px solid #2a3040;border-radius:10px;grid-template-rows:230px 1fr;height:100%;display:grid;overflow:visible}.concert-tile.highlighted{border-color:#ff8a00;box-shadow:0 0 0 1px #ff8a0073}.concert-tile-media{min-height:230px;position:relative}.concert-tile-image{object-fit:cover;object-position:top center;width:100%;height:230px;display:block}.concert-tile-image.fallback{background:linear-gradient(135deg,#202532,#151a25)}.concert-tile-tag{background:#0000008c;border:1px solid #3a4153;border-radius:999px;margin:0;padding:4px 9px;font-size:.8rem;font-weight:700;position:absolute;top:10px;left:10px}.tile-heart{top:10px;right:10px}.concert-tile-body{flex-direction:column;gap:4px;padding:12px;display:flex}.concerts-table-wrap{overflow-x:auto}.concerts-table{border-collapse:collapse;width:100%}.concerts-table th,.concerts-table td{text-align:left;vertical-align:top;border-bottom:1px solid #2a3040;padding:10px 8px}.concerts-table th{color:#ffb356;text-transform:uppercase;letter-spacing:.04em;font-size:.82rem}.table-actions{flex-wrap:wrap;align-items:center;gap:6px;min-width:320px;display:flex}.table-actions .mini-action-button{border:1px solid var(--line);border-right:1px solid var(--line);background:var(--paper);border-radius:4px;width:auto;min-height:0;padding:6px 10px;font-size:.86rem}.table-row-menu{display:none;position:relative}.table-row-menu-toggle{color:#ffb356;cursor:pointer;background:#161b24;border:1px solid #3a4153;border-radius:8px;justify-content:center;align-items:center;width:38px;height:34px;list-style:none;display:inline-flex}.table-row-menu-toggle::-webkit-details-marker{display:none}.table-row-menu-list{z-index:70;background:#101521;border:1px solid #2e3648;border-radius:8px;gap:6px;min-width:220px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 24px #00000073}.table-row-menu-list .mini-action-button{text-align:left;border:1px solid var(--line);border-right:1px solid var(--line);background:var(--paper);border-radius:4px;justify-content:flex-start;width:100%;min-height:0;padding:8px 10px;font-size:.9rem}.table-row-menu-info{color:var(--muted);margin:0;padding:4px 2px 0;font-size:.9rem;display:none}@media (width<=1240px){.table-actions{display:none}.table-row-menu{display:inline-block}.cell-actions{text-align:right;min-width:56px}}@media (width<=1040px){.col-city,.cell-city{display:none}.table-row-menu-info-city{display:block}}@media (width<=860px){.col-venue,.cell-venue{display:none}.table-row-menu-info-venue{display:block}}.search-panel{gap:8px;display:grid}.search-row{grid-template-columns:minmax(260px,1fr) minmax(150px,190px) auto;align-items:end;gap:10px;display:grid}.search-field{gap:8px;min-width:220px;display:grid}.search-field-date{min-width:150px}.search-table{grid-template-columns:minmax(340px,1fr) auto;align-items:end;gap:8px 12px;display:grid}.search-date-actions{align-items:center;gap:8px;display:flex}.search-date-actions .flatpickr-input[readonly]{width:150px}.search-clear-date{white-space:nowrap}.favorites-toolbar{gap:8px;max-width:320px;display:grid}.search-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.95rem;font-weight:700}.search-input{border:1px solid var(--line);color:var(--text);font:inherit;background:#11141b;border-radius:6px;padding:10px 12px}#concert-date-to.search-input-date{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.search-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #ff3b3040}.flatpickr-day.has-event-day{position:relative}.flatpickr-day.has-event-day:after{content:"";background:#ff8a00;border-radius:999px;width:6px;height:6px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.filter-toggle{text-align:center;min-width:154px}.filter-body{gap:12px;display:grid}.filter-title{color:#c7cbd8;text-transform:uppercase;letter-spacing:.05em;margin:0;font-weight:700}.filter-actions{flex-wrap:wrap;gap:10px;margin-top:-4px;display:flex}.filter-options{flex-wrap:wrap;gap:8px;display:flex}.filter-option{border:1px solid var(--line);cursor:pointer;background:#12151d;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.filter-option.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px #ff3b304d}.filter-option input{margin:0}.neutral{color:#ffb356}.filter-collapse-enter-active,.filter-collapse-leave-active{transform-origin:top;transition:opacity .2s,transform .2s}.filter-collapse-enter-from,.filter-collapse-leave-to{opacity:0;transform:translateY(-6px)scaleY(.98)}.list{gap:14px;display:grid}.year-group{background:linear-gradient(180deg, var(--paper) 0%, #1a1e27 100%);border:1px solid var(--line);border-radius:8px;padding:14px}.month-group+.month-group{border-top:1px dashed #343b49;margin-top:14px;padding-top:14px}.month-heading{text-transform:uppercase;color:#f1a94a;margin:0 0 10px}.card{background:#10131a;border:1px solid #2a3040;border-radius:8px;grid-template-columns:minmax(128px,182px) 1fr;height:100%;display:grid;position:relative;overflow:visible}.card:before{content:"";background:linear-gradient(180deg, var(--accent), var(--accent-2));width:4px;position:absolute;top:0;bottom:0;left:0}.card+.card{margin-top:10px}.card.highlighted{border-color:#ff8a00;box-shadow:0 0 0 1px #ff8a0073,0 14px 26px #0000005c}.meta{border-right:1px solid #2a3040;align-content:start;gap:8px;padding:14px 14px 14px 18px;display:grid}.meta p{margin:0;font-size:.95rem}.meta p+p{color:var(--muted);margin-top:4px}.content{flex-direction:column;gap:4px;padding:14px 58px 14px 14px;display:flex;position:relative}.mini-actions{flex-wrap:wrap;gap:10px;margin-top:auto;display:flex}.card-footer{background:#171c26;border-top:1px solid #2f3647;align-items:stretch;gap:0;margin-top:auto;display:flex}.card .content .card-footer{margin-bottom:-14px;margin-left:-14px;margin-right:-58px}.concert-tile-body .card-footer{margin-bottom:-12px;margin-left:-12px;margin-right:-12px}.card-footer-main{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:0;display:grid}.card-menu{z-index:20;position:relative}.card-menu-toggle{color:#ffb356;cursor:pointer;background:0 0;border:0;border-left:1px solid #2f3647;border-radius:0;justify-content:center;align-items:center;width:50px;height:100%;min-height:44px;font-weight:700;line-height:1;list-style:none;display:inline-flex}.card-menu-toggle::-webkit-details-marker{display:none}.card-menu[open] .card-menu-toggle{background:#ff8a0029}.card-menu-list{z-index:60;background:#101521;border:1px solid #2e3648;border-radius:8px;gap:6px;min-width:190px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 24px #00000073}.card-menu-list .mini-action-button{text-align:left;border:1px solid var(--line);border-right:1px solid var(--line);background:var(--paper);border-radius:4px;justify-content:flex-start;width:100%;min-height:0;padding:8px 10px;font-size:.9rem}.readmore-button{justify-content:flex-start;align-items:center;text-decoration:none;display:inline-flex}.mini-action-button{color:#ffb356;font:inherit;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;border:0;border-right:1px solid #2f3647;border-radius:0;width:100%;min-height:44px;padding:10px 8px;font-size:.84rem;font-weight:700;transition:border-color .15s,background .15s,color .15s}.mini-action-button:hover{color:#ffb356;background:#222838}.mini-action-button.active{color:#ffd57a;background:linear-gradient(120deg,#ff3b3038,#ff8a0029)}.admin-counter{margin-top:0}.concert-image{object-fit:cover;object-position:top center;background:#1d222c;border:1px solid #343b49;border-radius:4px;justify-self:start;width:100%;max-width:140px;height:148px}.title,.venue{margin:4px 0 0}.venue{color:var(--muted)}.venue-line{flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:6px 0 0;display:flex}.venue-city{color:var(--muted)}.concert-date{color:#cfd5e3;white-space:nowrap;margin-left:auto}.genre{color:#ffb356;margin:6px 0 0;font-size:.95rem;font-weight:700}.source{color:#72d4ff;margin:7px 0 0;font-size:.95rem;font-weight:700}.readmore{color:#fff;text-underline-offset:3px;margin-top:8px;font-weight:700;text-decoration:underline;display:inline-block}.card-readmore{margin:8px 0 10px}.favorite{color:#7dd6ff}.heart-button{color:#9c6c2c;cursor:pointer;-webkit-text-stroke:1px #0e121cd1;text-stroke:1px #0e121cd1;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:1.35rem;line-height:0;transition:color .18s,transform .18s,text-shadow .18s,background .18s;display:inline-flex;position:absolute;top:12px;right:12px}.heart-button:hover{color:#ffb84d;background:#f8b84f14;transform:translateY(-1px)}.heart-button.active{color:#f8b84f;-webkit-text-stroke:1px #2b1803e6;text-stroke:1px #2b1803e6;text-shadow:0 0 8px #f8b84f6b,0 0 18px #ff5a1f47;background:#f8b84f1f}.shared-concert-cta{border-color:#ff8a00}.shared-concert-summary{color:#ffd57a;gap:2px;margin:0;display:grid}.shared-concert-summary strong{color:#fff;font-size:1.1rem}.user-auth-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.user-auth-form{border:1px solid var(--line);background:#11141b;border-radius:6px;padding:12px}.stacked-form{gap:10px;display:grid}.field-group{gap:6px;display:grid}.field-group span{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.88rem;font-weight:700}.stacked-form input{border:1px solid var(--line);width:100%;color:var(--text);font:inherit;background:#0f131b;border-radius:4px;padding:10px 12px}.password-field{position:relative}.password-field input{width:100%;padding-right:72px}.toggle-password{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:#171c25;border-radius:4px;padding:4px 8px;font-size:.8rem;font-weight:700;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.toggle-password:hover{color:#fff;border-color:var(--accent)}.modal-backdrop{z-index:60;background:#000000a3;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-card{background:linear-gradient(180deg, var(--paper) 0%, var(--paper-2) 100%);border:1px solid var(--line);border-radius:8px;gap:12px;width:min(640px,100%);padding:18px;display:grid;box-shadow:0 24px 46px #0000007a}.filter-modal-card{width:min(980px,100%);max-height:min(85vh,820px);overflow:auto}.modal-login{grid-template-columns:1fr}.compact-list{margin-top:12px}@media (width<=1000px){.password-form{grid-template-columns:1fr}}@media (width<=900px){#app{padding:0 0 64px}.site-header{min-height:72px;padding:10px 18px}.header-quick-nav{display:none}.slide-menu{width:min(340px,94vw)}.source-form,.login-form,.user-auth-grid,.home-concerts-grid{grid-template-columns:1fr}.discovery-controls{grid-template-columns:1fr;justify-items:start}.search-row,.search-table{grid-template-columns:1fr}.search-date-actions{flex-wrap:wrap}.quick-filters-toggle,.view-mode-toggle,.filter-modal-trigger{justify-self:start}.home-concerts-grid>article.card:last-of-type:nth-of-type(odd){grid-column:auto}}@media (width<=740px){.card{grid-template-columns:1fr}.meta{border-bottom:1px solid #2a3040;border-right:0;padding-left:14px}.source-list li,.auth-header,.filter-header{flex-direction:column;align-items:flex-start}}.spotify-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.artist-image{object-fit:cover;border-radius:8px;width:80px;height:80px}.spotify-tracks{gap:8px;margin-top:12px;display:grid}.spotify-track{border:1px solid var(--line);background:#ff8a0014;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.track-info{flex:1;align-items:center;gap:10px;display:flex}.track-number{color:var(--accent-2);min-width:24px;font-weight:700}.track-name{color:var(--text);margin:0;font-size:.95rem;font-weight:600}.track-meta{color:var(--muted);margin:2px 0 0;font-size:.8rem}.track-actions{gap:6px;display:flex}.flatpickr-calendar{opacity:0;text-align:center;visibility:hidden;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;direction:ltr;background:#fff;border:0;border-radius:5px;width:307.875px;padding:0;font-size:14px;line-height:24px;animation:none;display:none;position:absolute;box-shadow:1px 0 #e6e6e6,-1px 0 #e6e6e6,0 1px #e6e6e6,0 -1px #e6e6e6,0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;visibility:visible;max-height:640px}.flatpickr-calendar.open{z-index:99999;display:inline-block}.flatpickr-calendar.animate.open{animation:.3s cubic-bezier(.23,1,.32,1) fpFadeInDown}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{border-top:1px solid #e6e6e6;height:40px}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{pointer-events:none;content:"";border:solid #0000;width:0;height:0;display:block;position:absolute;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{display:inline-block;position:relative}.flatpickr-months{display:flex}.flatpickr-months .flatpickr-month{color:#000000e6;fill:#000000e6;text-align:center;-webkit-user-select:none;user-select:none;background:0 0;flex:1;height:34px;line-height:1;position:relative;overflow:hidden}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;user-select:none;cursor:pointer;z-index:3;color:#000000e6;fill:#000000e6;height:34px;padding:10px;text-decoration:none;position:absolute;top:0}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{fill:inherit;transition:fill .1s}.numInputWrapper{height:auto;position:relative}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numInputWrapper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numInputWrapper span{opacity:0;cursor:pointer;box-sizing:border-box;border:1px solid #39393926;width:14px;height:50%;padding:0 4px 0 2px;line-height:50%;position:absolute;right:0}.numInputWrapper span:hover{background:#0000001a}.numInputWrapper span:active{background:#0003}.numInputWrapper span:after{content:"";display:block;position:absolute}.numInputWrapper span.arrowUp{border-bottom:0;top:0}.numInputWrapper span.arrowUp:after{border-bottom:4px solid #39393999;border-left:4px solid #0000;border-right:4px solid #0000;top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-top:4px solid #39393999;border-left:4px solid #0000;border-right:4px solid #0000;top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#00000080}.numInputWrapper:hover{background:#0000000d}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;color:inherit;text-align:center;width:75%;height:34px;padding:7.48px 0 0;font-weight:300;line-height:1;display:inline-block;position:absolute;left:12.5%;transform:translate(0,0)}.flatpickr-current-month span.cur-month{color:inherit;margin-left:.5ch;padding:0;font-family:inherit;font-weight:700;display:inline-block}.flatpickr-current-month span.cur-month:hover{background:#0000000d}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#000000e6}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#000000e6}.flatpickr-current-month input.cur-year{box-sizing:border-box;color:inherit;cursor:text;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;vertical-align:initial;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0 0 0 .5ch;display:inline-block}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{color:#00000080;pointer-events:none;background:0 0;font-size:100%}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;height:auto;font-family:inherit;font-weight:300;line-height:inherit;vertical-align:initial;background:0 0;border:none;border-radius:0;outline:none;width:auto;margin:-1px 0 0;padding:0 0 0 .5ch;position:relative}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:#0000000d}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#0000;outline:none;padding:0}.flatpickr-weekdays{text-align:center;background:0 0;align-items:center;width:100%;height:28px;display:flex;overflow:hidden}.flatpickr-weekdays .flatpickr-weekdaycontainer{flex:1;display:flex}span.flatpickr-weekday{cursor:default;color:#0000008a;text-align:center;background:0 0;flex:1;margin:0;font-size:90%;font-weight:bolder;line-height:1;display:block}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{align-items:flex-start;width:307.875px;display:flex;position:relative;overflow:hidden}.flatpickr-days:focus{outline:0}.dayContainer{text-align:left;box-sizing:border-box;opacity:1;outline:0;flex-wrap:wrap;justify-content:space-around;width:307.875px;min-width:307.875px;max-width:307.875px;padding:0;display:flex;transform:translate(0,0)}.dayContainer+.dayContainer{box-shadow:-1px 0 #e6e6e6}.flatpickr-day{box-sizing:border-box;color:#393939;cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:150px;flex-basis:14.2857%;justify-content:center;width:14.2857%;max-width:39px;height:39px;margin:0;font-weight:400;line-height:39px;display:inline-block;position:relative}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;background:#e6e6e6;border-color:#e6e6e6;outline:0}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{color:#fff;background:#959ea9;border-color:#959ea9}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{-webkit-box-shadow:none;box-shadow:none;color:#fff;background:#569ff7;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){box-shadow:-10px 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;box-shadow:-5px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3939394d;cursor:default;background:0 0;border-color:#0000}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3939391a}.flatpickr-day.week.selected{border-radius:0;box-shadow:-5px 0 #569ff7,5px 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;box-shadow:1px 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{color:#3939394d;cursor:default;background:0 0;border:none;width:100%;max-width:none;display:block}.flatpickr-innerContainer{box-sizing:border-box;display:flex;overflow:hidden}.flatpickr-rContainer{box-sizing:border-box;padding:0;display:inline-block}.flatpickr-time{text-align:center;box-sizing:border-box;outline:0;height:0;max-height:40px;line-height:40px;display:flex;overflow:hidden}.flatpickr-time:after{content:"";clear:both;display:table}.flatpickr-time .numInputWrapper{float:left;flex:1;width:40%;height:40px}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{-webkit-box-shadow:none;box-shadow:none;text-align:center;height:inherit;line-height:inherit;color:#393939;box-sizing:border-box;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0;font-size:14px;position:relative}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{border:0;outline:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;-webkit-user-select:none;user-select:none;align-self:center;width:2%;font-weight:700}.flatpickr-time .flatpickr-am-pm{cursor:pointer;text-align:center;outline:0;width:18%;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@keyframes fpFadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0,0)}}
