@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Montserrat:wght@600;700;800&display=swap";*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6,p{margin:0}body{color:#eaeaea;-webkit-font-smoothing:antialiased;background-color:#121212;font-family:Inter,sans-serif;line-height:1.5}h1,h2,h3,h4,h5,h6{text-transform:uppercase;letter-spacing:.04em;font-family:Montserrat,sans-serif;font-weight:700;line-height:1.2}.section-heading{text-transform:uppercase;letter-spacing:.04em;font-family:Montserrat,sans-serif;font-weight:700}.site-page{width:min(100% - 2rem,72rem);margin-inline:auto}.primary-booking-button{color:#000;letter-spacing:.06em;text-transform:uppercase;background-color:#18c8f8;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-family:Montserrat,sans-serif;font-size:.875rem;font-weight:700;transition:background-color .2s,transform .2s;display:inline-flex;box-shadow:-6px 6px #ff01e8}.primary-booking-button:hover{background-color:#18c8f8}.primary-booking-button:active{transform:translateY(1px)}@media (width<=40rem){.primary-booking-button{text-align:center;justify-content:center;place-self:stretch stretch;width:100%;max-width:100%}}.booking-form-container{gap:2rem;display:grid}.booking-form-container .booking-form-field{gap:.5rem;display:grid}.booking-form-container .booking-form-label{letter-spacing:.08em;text-transform:uppercase;color:#a0a0a0;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:700}.booking-form-container .booking-form-input,.booking-form-container .booking-form-textarea{color:#eaeaea;background-color:#161616;border:none;border-bottom:1px solid #2a2a2a;border-radius:0;width:100%;padding:.85rem .25rem;font-family:Inter,sans-serif;font-size:1rem;transition:border-color .2s,box-shadow .2s}.booking-form-container .booking-form-input::placeholder,.booking-form-container .booking-form-textarea::placeholder{color:#a0a0a0}.booking-form-container .booking-form-input:focus,.booking-form-container .booking-form-textarea:focus{border-bottom-color:#18c8f8;outline:none;box-shadow:0 1px #18c8f8}.booking-form-container .booking-form-textarea{resize:vertical;min-height:120px}.booking-form-container .booking-form-submit{width:100%}.booking-flyout{z-index:1100;pointer-events:none;position:fixed;inset:0}.booking-flyout.booking-flyout-open{pointer-events:auto}.booking-flyout.booking-flyout-open .booking-overlay{opacity:1}.booking-flyout.booking-flyout-open .booking-flyout-panel{transform:translate(0)}.booking-flyout .booking-overlay{opacity:0;background-color:#121212b8;transition:opacity .3s;position:absolute;inset:0}.booking-flyout .booking-flyout-panel{background-color:#1e1e1e;align-content:start;gap:2rem;width:min(100%,26rem);height:100%;padding:2rem;transition:transform .35s;display:grid;position:absolute;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-1rem 0 2.5rem #00000073}.booking-flyout .booking-flyout-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.booking-flyout .booking-flyout-heading{text-transform:uppercase;letter-spacing:.04em;color:#eaeaea;font-family:Montserrat,sans-serif;font-size:clamp(1.35rem,3vw,1.75rem);font-weight:700}.booking-flyout .booking-flyout-close-button{color:#eaeaea;background-color:#0000;border:1px solid #2a2a2a;border-radius:.25rem;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;font-size:1.75rem;line-height:1;transition:border-color .2s,color .2s;display:inline-flex}.booking-flyout .booking-flyout-close-button:hover{color:#18c8f8;border-color:#18c8f8}.booking-flyout .contact-info-block{border-bottom:1px solid #2a2a2a;gap:1rem;padding-bottom:1rem;display:grid}.booking-flyout .contact-info-link{color:#eaeaea;align-items:center;gap:.5rem;font-family:Inter,sans-serif;font-size:.95rem;font-weight:500;transition:color .2s;display:flex}.booking-flyout .contact-info-link:hover{color:#18c8f8}.booking-flyout .contact-info-icon{color:#18c8f8;flex-shrink:0;width:1.25rem;height:1.25rem}.site-navigation-bar{z-index:100;background-color:#000;border-bottom:4px solid #ff01e8;position:sticky;top:0}.site-navigation-bar .site-navigation-bar-inner{justify-content:space-between;align-items:center;gap:1rem;width:min(100% - 2rem,1400px);min-height:6.75rem;margin-inline:auto;padding-block:16px;display:flex}.site-navigation-bar .site-navigation-brand{letter-spacing:.08em;text-transform:uppercase;color:#eaeaea;text-shadow:-2px 2px #18c8f8,-4px 4px #ff01e8;font-family:Montserrat,sans-serif;font-size:1.35rem;font-weight:800;transition:color .2s}.site-navigation-bar .site-navigation-brand:hover{color:#18c8f8}.site-navigation-bar .site-navigation-toggle{display:none}.site-navigation-bar .site-navigation-menu{display:contents}.site-navigation-bar .site-navigation-links{align-items:center;gap:2rem;display:flex}.site-navigation-bar .site-navigation-link{letter-spacing:.08em;text-transform:uppercase;color:#a0a0a0;font-family:Montserrat,sans-serif;font-size:.8125rem;font-weight:600;transition:color .2s}.site-navigation-bar .site-navigation-link:hover{color:#eaeaea}.site-navigation-bar .site-navigation-link.site-navigation-link-active{color:#18c8f8}.site-navigation-bar .primary-booking-button{flex-shrink:0}@media (width<=52rem){.site-navigation-bar .site-navigation-toggle{color:#fff;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;margin-left:auto;padding:0;font-size:0;display:inline-flex}.site-navigation-bar .site-navigation-toggle:hover{color:#18c8f8}.site-navigation-bar .site-navigation-toggle:focus-visible{outline-offset:3px;outline:2px solid #18c8f8}.site-navigation-bar .site-navigation-toggle-icon{flex-direction:column;justify-content:center;gap:5px;width:1.375rem;display:flex}.site-navigation-bar .site-navigation-toggle-icon span{background:currentColor;height:2px;transition:transform .2s,opacity .2s;display:block}.site-navigation-bar.site-navigation-bar-open .site-navigation-toggle-icon span:first-child{transform:translateY(7px)rotate(45deg)}.site-navigation-bar.site-navigation-bar-open .site-navigation-toggle-icon span:nth-child(2){opacity:0}.site-navigation-bar.site-navigation-bar-open .site-navigation-toggle-icon span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.site-navigation-bar .site-navigation-menu{visibility:hidden;opacity:0;pointer-events:none;background:#000;border-bottom:4px solid #ff01e8;flex-direction:column;align-items:flex-start;gap:2rem;padding:2rem 1rem 4rem;transition:opacity .2s,transform .2s,visibility .2s;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;transform:translateY(-.5rem)}.site-navigation-bar.site-navigation-bar-open .site-navigation-menu{visibility:visible;opacity:1;pointer-events:auto;transform:none}.site-navigation-bar .site-navigation-links{flex-direction:column;align-items:flex-start;gap:1rem}.site-navigation-bar .site-navigation-link{color:#fff;font-size:1rem}.site-navigation-bar .site-navigation-link:hover{color:#18c8f8}}.site-footer{color:#fff;background-color:#000;border-top:4px solid #ff01e8;margin-top:auto}.site-footer .site-footer-inner{gap:2rem;width:min(100% - 2rem,1400px);margin-inline:auto;padding-block:4rem;display:grid}.site-footer .site-footer-heading{letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:.5rem;font-family:Montserrat,sans-serif;font-size:.8125rem;font-weight:700}.site-footer .site-footer-booking{gap:.5rem;display:grid}.site-footer .site-footer-region{color:#fff}.site-footer .site-footer-contact{color:#fff;font-weight:600;transition:color .2s}.site-footer .site-footer-contact:hover{color:#fff}.site-footer .site-footer-social-list{flex-wrap:wrap;gap:1rem;display:flex}.site-footer .site-footer-social-link{color:#fff;font-weight:600;transition:color .2s}.site-footer .site-footer-social-link:hover{color:#fff}.site-footer .site-footer-copyright{color:#fff;font-size:.875rem}.site-layout{flex-direction:column;min-height:100vh;display:flex}.site-layout .site-layout-main{flex:1}:is(.site-layout .site-layout-main:has(.songs-page),.site-layout .site-layout-main:has(.shows-page),.site-layout .site-layout-main:has(.about-page)){background-color:#000}.show-block-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem;width:100%;display:grid}@media (width<=40rem){.show-block-list{grid-template-columns:1fr}}.show-block{color:#fff;background-color:#000;border:4px solid #ff01e8;align-content:start;justify-items:start;gap:1rem;padding:4rem;scroll-margin-top:7.75rem;display:grid}.show-block .show-block-date{color:#fff;font-weight:700}.show-block .show-block-title{color:#fff;font-size:clamp(1.35rem,3vw,1.85rem)}.show-block .show-block-venue,.show-block .show-block-description{color:#fff}.show-block .show-block-details{margin-top:.5rem}.show-block-past{border-color:#18c8f8}.show-details-overlay{z-index:1000;background-color:#000000b8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.show-details-dialog{color:#fff;text-align:left;background-color:#000;border:4px solid #ff01e8;justify-items:start;gap:.5rem;width:min(100%,36rem);max-height:min(80vh,40rem);padding:4rem 2rem 2rem;display:grid;position:relative;overflow:auto}.show-details-close{color:#fff;background:0 0;border:0;width:2.25rem;height:2.25rem;padding:0;font-size:1.75rem;line-height:1;position:absolute;top:.5rem;right:.5rem}.show-details-date,.show-details-venue,.show-details-description{color:#fff}.show-details-title{color:#fff;font-size:clamp(1.35rem,3vw,1.85rem)}.show-details-description{white-space:pre-wrap}.home-page{background-color:#000;min-height:calc(100vh - 6.75rem)}.home-page .home-container{width:min(100% - 2rem,1400px);margin-inline:auto}.home-page .home-page-hero-wrap{border-bottom:4px solid #18c8f8;position:relative;overflow:hidden}.home-page .home-page-hero{z-index:1;align-items:flex-start;min-height:calc(32rem + 14px);padding-top:30px;padding-bottom:14px;display:flex;position:relative}.home-page .home-page-hero-image{background-color:#000;position:absolute;inset:0 0 0 calc(max(1rem,50% - 700px) + min(22rem + 240px,100% - 2rem)/2)}.home-page .home-page-hero-image img{object-fit:cover;object-position:left top;width:100%;height:100%}.home-page .home-page-hero-image:after{content:"";pointer-events:none;background:linear-gradient(90deg,#000000b8 0%,#00000047 24%,#0000 42% 68%,#000 100%);position:absolute;inset:0}.home-page .home-hero-copy{z-index:1;gap:1rem;width:min(100%,22rem + 240px);padding:0 0 2rem 20px;display:grid;position:relative}.home-page .home-logo{width:100%;height:auto}.home-page .home-hero-text{text-align:left;justify-items:start;gap:1rem;width:100%;display:grid}.home-page .home-page-hero-headline{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;line-height:1.25}.home-page .home-page-hero-subheadline{color:#eaeaea;font-size:1.125rem}.home-page .primary-booking-button{margin-top:.5rem}.home-page .home-next-show{justify-items:start;padding:4rem 20px;display:grid}.home-page .home-next-show-block{text-align:left;justify-items:start;gap:4rem;width:100%;display:grid}.home-page .home-upcoming-shows-heading{letter-spacing:.04em;text-align:center;text-transform:uppercase;width:100%;font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;line-height:1.25}.home-page .home-next-show-list{margin-top:-1rem;margin-bottom:2rem}.home-page .home-next-show-status{color:#fff}.home-page .home-upcoming-shows-cta{justify-self:center}.member-card{background-color:#000;border:4px solid #18c8f8;gap:1rem;padding:4rem;display:grid}.member-card .member-card-photo{aspect-ratio:1;background-color:#1e1e1e;border:4px solid #ff01e8;border-radius:50%;justify-self:center;width:100%;max-width:16rem;overflow:hidden}.member-card .member-card-photo img{object-fit:cover;object-position:center;width:100%;height:100%}.member-card .member-card-details{text-align:center;gap:.5rem;display:grid}.member-card .member-card-name{text-transform:uppercase;letter-spacing:.04em;color:#fff;font-family:Montserrat,sans-serif;font-size:1.125rem;font-weight:700}.member-card .member-card-role{color:#18c8f8;text-transform:none;letter-spacing:normal;font-family:Inter,sans-serif;font-size:1rem;font-style:italic;font-weight:400;line-height:1.5}.about-page{background-color:#000}.about-page .about-page-inner{gap:4rem;width:min(100% - 2rem,1400px);margin-inline:auto;padding-block:4rem;display:grid}.about-page .meet-the-band-heading{color:#fff;text-align:center;font-size:clamp(1.75rem,4vw,2.5rem)}.about-page .band-member-grid{grid-template-columns:1fr;gap:4rem;display:grid}@media (width>=40rem){.about-page .band-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.about-page .band-member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.song-item{background-color:#000;border:4px solid #18c8f8;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem;transition:border-color .2s,background-color .2s;display:flex}.song-item.song-item-has-video{cursor:pointer}.song-item.song-item-has-video:focus-visible{outline-offset:2px;outline:2px solid #18c8f8}.song-item .song-item-details{gap:.35rem;min-width:0;display:grid}.song-item .song-item-title{text-transform:uppercase;letter-spacing:.04em;color:#eaeaea;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:700;line-height:1.3}.song-item .song-item-artist{color:#a0a0a0;font-family:Inter,sans-serif;font-size:.9375rem}.song-item .song-item-video-indicator{color:#18c8f8;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.song-item .song-item-play-icon{width:1.75rem;height:1.75rem}.video-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#121212e0;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.video-modal-dialog{width:min(100%,56rem);position:relative}.video-modal-close-button{color:#eaeaea;background-color:#0000;border:1px solid #2a2a2a;border-radius:.25rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;font-size:1.75rem;line-height:1;transition:border-color .2s,color .2s,background-color .2s;display:inline-flex;position:absolute;top:-2.75rem;right:0}.video-modal-close-button:hover{color:#18c8f8;background-color:#1e1e1ecc;border-color:#18c8f8}.video-modal-player{aspect-ratio:16/9;background-color:#121212;border:1px solid #2a2a2a;width:100%;position:relative;overflow:hidden;box-shadow:0 1.5rem 3rem #00000073}.video-modal-player iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.songs-page{background-color:#000}.songs-page .songs-page-inner{gap:2rem;width:min(100% - 2rem,1400px);margin-inline:auto;padding-block:4rem;display:grid}.songs-page .songs-page-header{text-align:center}.songs-page .songs-page-header .songs-page-heading{color:#eaeaea;font-size:clamp(1.75rem,4vw,2.5rem)}.songs-page .songs-page-status{color:#a0a0a0;align-items:center;gap:1rem;display:flex}.songs-page .songs-page-error{color:#eaeaea}.songs-page .songs-page-spinner{border:2px solid #2a2a2a;border-top-color:#18c8f8;border-radius:50%;width:1.25rem;height:1.25rem;animation:.8s linear infinite songs-spin}.songs-page .song-list-by-decade{gap:4rem;display:grid}.songs-page .song-decade-group .song-decade-heading{color:#18c8f8;margin-bottom:1rem;font-size:1.35rem}.songs-page .song-decade-group .song-decade-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}@media (width<=40rem){.songs-page .song-decade-group .song-decade-grid{grid-template-columns:1fr}}@keyframes songs-spin{to{transform:rotate(360deg)}}.shows-page{background-color:#000}.shows-page .shows-page-inner{gap:4rem;width:min(100% - 2rem,1400px);margin-inline:auto;padding:4rem 20px;display:grid}.shows-page .shows-page-header{gap:.5rem;display:grid}.shows-page .shows-page-header .shows-page-heading{color:#fff;font-size:clamp(1.75rem,4vw,2.5rem)}.shows-page .shows-page-header .shows-page-intro{color:#fff;max-width:40rem}.shows-page .shows-page-status{color:#fff;align-items:center;gap:1rem;display:flex}.shows-page .shows-page-spinner{border:2px solid #2a2a2a;border-top-color:#18c8f8;border-radius:50%;width:1.25rem;height:1.25rem;animation:.8s linear infinite shows-spin}.shows-page .shows-section{gap:2rem;display:grid}.shows-page .shows-section-heading{color:#fff;letter-spacing:.04em;font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;line-height:1.25}.shows-page .shows-empty-message{color:#fff}@keyframes shows-spin{to{transform:rotate(360deg)}}.admin-page{gap:2rem;padding-block:4rem;display:grid}.admin-page .admin-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;display:flex}.admin-page .admin-heading{color:#eaeaea;font-size:clamp(1.75rem,4vw,2.5rem)}.admin-page .admin-hub{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem;display:grid}.admin-page .admin-hub-card{color:#eaeaea;background-color:#1e1e1e;border:1px solid #2a2a2a;border-radius:0;gap:.5rem;padding:1rem;display:grid}.admin-page .admin-hub-card:hover{color:#eaeaea;border-color:#18c8f8}.admin-page .admin-hub-label{letter-spacing:.06em;text-transform:uppercase;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:700}.admin-page .admin-hub-description{color:#a0a0a0;font-size:.95rem}.admin-page .admin-nav{flex-wrap:wrap;gap:.5rem;display:flex}.admin-page .admin-nav a{color:#a0a0a0;letter-spacing:.06em;text-transform:uppercase;border:1px solid #2a2a2a;border-radius:0;padding:.4rem .7rem;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:700}.admin-page .admin-nav a.is-active,.admin-page .admin-nav a:hover{color:#18c8f8;border-color:#18c8f8}.admin-page .admin-status{color:#a0a0a0}.admin-page .admin-error{color:#eaeaea}.admin-page .admin-button{color:#eaeaea;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background-color:#0000;border:1px solid #2a2a2a;border-radius:0;align-items:center;padding:.55rem .8rem;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:700;display:inline-flex}.admin-page .admin-button:hover{color:#18c8f8;border-color:#18c8f8}.admin-page .admin-button-primary{color:#121212;background-color:#18c8f8;border-color:#18c8f8}.admin-page .admin-button-primary:hover{color:#121212;background-color:#18c8f8}.admin-page .admin-button-danger:hover{color:#eaeaea;border-color:#eaeaea}.admin-page .admin-actions{gap:.5rem;display:flex}.admin-page .admin-form{background-color:#1e1e1e;border:1px solid #2a2a2a;border-radius:0;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;padding:1rem;display:grid}.admin-page .admin-form label{color:#a0a0a0;gap:.35rem;font-size:.8rem;display:grid}.admin-page .admin-form input,.admin-page .admin-form select,.admin-page .admin-form textarea{width:100%;box-shadow:none;color:#eaeaea;background-color:#121212;border:1px solid #2a2a2a;border-radius:0;padding:.55rem .65rem;font-family:Inter,sans-serif;font-size:1rem}.admin-page .admin-form textarea{resize:vertical;min-height:5rem}.admin-page .admin-form .admin-check{grid-template-columns:auto 1fr;align-content:end;align-items:center}.admin-page .admin-form .admin-check input{width:auto}.admin-page .admin-form .admin-form-wide{grid-column:1/-1}.admin-page .admin-form .admin-form-actions{align-items:end;gap:.5rem;display:flex}.admin-page .admin-table-wrap{overflow-x:auto}.admin-page .admin-table{border-collapse:collapse;width:100%}.admin-page .admin-table th,.admin-page .admin-table td{text-align:left;vertical-align:middle;border:1px solid #2a2a2a;border-radius:0;padding:.7rem .75rem}.admin-page .admin-table th{color:#a0a0a0;letter-spacing:.06em;text-transform:uppercase;background-color:#1e1e1e;font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:700}.admin-page .admin-table td{color:#eaeaea}.setlist-builder{gap:2rem;padding-block:4rem;display:grid}.setlist-builder .setlist-builder-header{gap:.5rem;display:grid}.setlist-builder .setlist-builder-header .setlist-builder-heading{color:#eaeaea;font-size:clamp(1.75rem,4vw,2.5rem)}.setlist-builder .setlist-builder-header .setlist-builder-intro{color:#a0a0a0;max-width:40rem}.setlist-builder .setlist-builder-status{color:#a0a0a0;align-items:center;gap:1rem;display:flex}.setlist-builder .setlist-builder-error,.setlist-builder .setlist-save-error{color:#eaeaea}.setlist-builder .setlist-builder-spinner{border:2px solid #2a2a2a;border-top-color:#18c8f8;border-radius:50%;width:1.25rem;height:1.25rem;animation:.8s linear infinite setlist-spin}.setlist-builder .setlist-builder-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:2rem;display:grid}.setlist-builder .setlist-column{gap:1rem;display:grid}.setlist-builder .setlist-column-heading{color:#18c8f8;font-size:1.25rem}.setlist-builder .setlist-timing{background-color:#1e1e1e;border:1px solid #2a2a2a;gap:.35rem;padding:.5rem 1rem;display:grid}.setlist-builder .setlist-timing-total,.setlist-builder .setlist-timing-part{font-variant-numeric:tabular-nums;justify-content:space-between;gap:1rem;display:flex}.setlist-builder .setlist-timing-total{color:#18c8f8;letter-spacing:.06em;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:700}.setlist-builder .setlist-timing-total span:first-child{text-transform:uppercase}.setlist-builder .setlist-timing-part{color:#a0a0a0;font-family:Inter,sans-serif;font-size:.9rem}.setlist-builder .setlist-fields{gap:.5rem;display:grid}.setlist-builder .setlist-field{color:#a0a0a0;gap:.35rem;font-size:.85rem;display:grid}.setlist-builder .setlist-field input,.setlist-builder .setlist-field textarea{color:#eaeaea;background-color:#121212;border:1px solid #2a2a2a;width:100%;padding:.65rem .75rem;font-family:Inter,sans-serif;font-size:1rem}.setlist-builder .setlist-field textarea{resize:vertical}.setlist-builder .setlist-column-list{background-color:#121212;border:1px dashed #2a2a2a;flex-direction:column;gap:.5rem;min-height:16rem;max-height:32rem;padding:.5rem;display:flex;overflow:auto}.setlist-builder .setlist-column-list.is-dragging-over{border-color:#18c8f8}.setlist-builder .setlist-column-empty{color:#a0a0a0;text-align:center;margin:auto}.setlist-builder .setlist-song-block{background-color:#1e1e1e;border:1px solid #2a2a2a}.setlist-builder .setlist-song-block:hover{background-color:#323232}.setlist-builder .setlist-song-block.is-dragging{background-color:#3d3d3d;border-color:#18c8f8}.setlist-builder .setlist-song-card{align-items:center;gap:.5rem;padding:.75rem;display:flex}.setlist-builder .setlist-song-grip{color:#a0a0a0;cursor:grab;background:0 0;border:0;flex-shrink:0;padding:0;display:inline-flex}.setlist-builder .setlist-notes-toggle{color:#eaeaea;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background-color:#0000;border:1px solid #2a2a2a;border-radius:0;margin-left:auto;padding:.35rem .55rem;font-family:Montserrat,sans-serif;font-size:.7rem;font-weight:700}.setlist-builder .setlist-notes-toggle:hover{color:#18c8f8;border-color:#18c8f8}.setlist-builder .setlist-song-notes{border-top:1px solid #2a2a2a;gap:.5rem;padding:0 .75rem .75rem;display:grid}.setlist-builder .setlist-note-field{color:#a0a0a0;gap:.35rem;font-size:.8rem;display:grid}.setlist-builder .setlist-note-field textarea{width:100%;min-height:4.5rem;box-shadow:none;color:#eaeaea;resize:vertical;background-color:#1e1e1e;border:1px solid #2a2a2a;border-radius:0;padding:.6rem .75rem;font-family:Inter,sans-serif;font-size:.95rem}.setlist-builder .setlist-break-toggle{color:#eaeaea;letter-spacing:.04em;text-transform:uppercase;grid-template-columns:auto 1fr;align-items:center;gap:.55rem;font-family:Montserrat,sans-serif;font-size:.72rem;font-weight:700;display:grid}.setlist-builder .setlist-break-toggle input{accent-color:#18c8f8;width:1rem;height:1rem;margin:0}.setlist-builder .setlist-set-break{color:#18c8f8;letter-spacing:.14em;text-align:center;text-transform:uppercase;border-top:4px solid #18c8f8;border-bottom:4px solid #18c8f8;margin:.35rem .75rem .75rem;padding:.7rem .5rem;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:700}.setlist-builder .setlist-song-grip-icon{width:1rem;height:1rem}.setlist-builder .setlist-song-order{color:#18c8f8;flex-shrink:0;min-width:1.5rem;font-family:Montserrat,sans-serif;font-weight:700}.setlist-builder .setlist-song-copy{gap:.15rem;min-width:0;display:grid}.setlist-builder .setlist-song-title{color:#eaeaea;font-family:Montserrat,sans-serif;font-size:.95rem}.setlist-builder .setlist-song-artist{color:#a0a0a0;font-size:.875rem}.setlist-builder .setlist-save-button{color:#121212;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background-color:#18c8f8;border:none;justify-self:start;padding:.85rem 1.5rem;font-family:Montserrat,sans-serif;font-size:.875rem;font-weight:700}.setlist-builder .setlist-save-button:hover:not(:disabled){background-color:#18c8f8}.setlist-builder .setlist-save-button:disabled{opacity:.6;cursor:wait}.setlist-builder .setlist-save-feedback{color:#18c8f8}@media (width<=50rem){.setlist-builder .setlist-builder-columns{grid-template-columns:1fr}}@keyframes setlist-spin{to{transform:rotate(360deg)}}.live-setlist{color:#eaeaea;background-color:#000;grid-template-rows:auto minmax(0,1fr);height:100dvh;padding:1rem 1.25rem .75rem;display:grid;overflow:hidden}.live-setlist .live-setlist-status{color:#a0a0a0;font-size:1.5rem}.live-setlist .live-setlist-header{align-items:baseline;gap:.75rem;margin-bottom:.65rem;display:flex}.live-setlist .live-setlist-kicker{color:#18c8f8;letter-spacing:.14em;text-transform:uppercase;font-family:Montserrat,sans-serif;font-size:.75rem;font-weight:700}.live-setlist .live-setlist-name{color:#eaeaea;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:Montserrat,sans-serif;font-size:clamp(1rem,2vw,1.45rem);overflow:hidden}.live-setlist .live-parts{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:.85rem 1.5rem;min-height:0;display:grid}.live-setlist .live-parts-single{grid-template-columns:1fr}.live-setlist .live-part{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.live-setlist .live-part-heading{border-bottom:4px solid #18c8f8;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.35rem;display:flex}.live-setlist .live-part-label,.live-setlist .live-part-total{letter-spacing:.06em;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700}.live-setlist .live-part-label{color:#18c8f8;font-size:clamp(.95rem,1.8vw,1.35rem)}.live-setlist .live-part-total{color:#eaeaea;font-variant-numeric:tabular-nums;font-size:clamp(.95rem,1.8vw,1.35rem)}.live-setlist .live-part-songs{grid-template-rows:repeat(var(--part-rows), minmax(0, 1fr));min-height:0;margin:0;padding:0;display:grid}.live-setlist .live-song-row{border-bottom:1px solid #2a2a2a;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.55rem;min-height:0;display:grid;overflow:hidden}.live-setlist .live-song-order,.live-setlist .live-song-title,.live-setlist .live-song-duration{letter-spacing:.02em;text-transform:uppercase;font-family:Montserrat,sans-serif;font-weight:700;line-height:1.05}.live-setlist .live-song-order{color:#18c8f8;font-size:clamp(.75rem, 40vh / var(--live-rows), 1.35rem);font-variant-numeric:tabular-nums}.live-setlist .live-song-copy{min-width:0}.live-setlist .live-song-title{color:#eaeaea;font-size:clamp(.78rem, 42vh / var(--live-rows), 1.45rem);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.live-setlist .live-song-meta{color:#a0a0a0;font-family:Inter,sans-serif;font-size:clamp(.62rem, 24vh / var(--live-rows), .85rem);text-overflow:ellipsis;white-space:nowrap;line-height:1.15;overflow:hidden}.live-setlist .live-song-duration{color:#eaeaea;font-size:clamp(.75rem, 36vh / var(--live-rows), 1.2rem);font-variant-numeric:tabular-nums}
