*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Courier New,monospace;line-height:1.5;font-weight:400;color:#fff;background-color:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{min-height:100vh;background:#000}body{margin:0}#root{min-height:100vh}::selection{background:#fff;color:#000}@font-face{font-family:Open Sans;font-style:normal;font-weight:100 900;font-display:block;src:url(/fonts/OpenSans-VariableFont_wdth,wght.ttf) format("truetype")}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#1a1a1a}.login-box{background:#2a2a2a;padding:2rem;border-radius:8px;width:100%;max-width:400px}.login-box h1{text-align:center;margin-bottom:2rem;color:#fdf9f3;font-family:IBM Plex Mono,monospace}.admin-layout{min-height:100vh;background:#1a1a1a;color:#fdf9f3}.admin-nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:#2a2a2a;border-bottom:1px solid #3a3a3a}.admin-nav-brand a{font-size:1.5rem;font-weight:700;color:#fdf9f3;text-decoration:none;font-family:IBM Plex Mono,monospace}.admin-nav-links{display:flex;gap:2rem}.admin-nav-links a{color:#bbb;text-decoration:none;transition:color .2s}.admin-nav-links a:hover,.admin-nav-links a.active{color:#fdf9f3}.admin-nav-user{display:flex;align-items:center;gap:1rem}.admin-nav-user span{color:#bbb}.admin-nav-user button{background:transparent;border:1px solid #777;color:#bbb;padding:.5rem 1rem;cursor:pointer;transition:all .2s}.admin-nav-user button:hover{border-color:#fdf9f3;color:#fdf9f3}.admin-content{padding:2rem;max-width:1400px;margin:0 auto}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:#bbb}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;color:#fdf9f3;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#fdf9f3}.form-group.checkbox{display:flex;align-items:center}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.form-group.checkbox input{width:auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}button{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.btn-primary{background:#fdf9f3;color:#1a1a1a}.btn-primary:hover{background:#fff}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.btn-warning{background:#f39c12;color:#fff}.btn-warning:hover{background:#d68910}.btn-icon{padding:.5rem;background:#3a3a3a;border:none;border-radius:4px;color:#bbb;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover{background:#4a4a4a;color:#fdf9f3}.btn-icon.danger:hover{background:#e74c3c;color:#fff}.btn-primary svg{margin-right:.5rem}.dashboard h1{margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:#2a2a2a;padding:1.5rem;border-radius:8px}.stat-card h3{color:#bbb;font-size:.9rem;margin-bottom:.5rem}.stat-number{font-size:2.5rem;font-weight:700}.stat-number.highlight{color:#2ecc71}.upcoming-section h2{margin-bottom:1rem}.events-list .event-card{display:flex;gap:1rem;padding:1rem;background:#2a2a2a;margin-bottom:.5rem;border-radius:4px}.event-card .event-date{color:#bbb;min-width:60px}.event-card .event-title{flex:1}.event-card .event-year{color:#bbb}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:2rem;overflow-y:auto;overscroll-behavior:contain}.modal{background:#2a2a2a;padding:2rem;border-radius:8px;width:100%;max-width:600px;margin:auto;position:relative;overscroll-behavior:contain}.modal h2{margin-bottom:1.5rem}.modal-overlay::-webkit-scrollbar{width:8px}.modal-overlay::-webkit-scrollbar-track{background:#0000004d}.modal-overlay::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:4px}.modal-overlay::-webkit-scrollbar-thumb:hover{background:#5a5a5a}.artist-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;max-height:200px;overflow-y:auto;background:#1a1a1a;padding:1rem;border-radius:4px}.artist-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem}.artist-checkbox input{width:auto}.events-list-admin .year-group{margin-bottom:2rem}.events-list-admin .year-group h2{color:#bbb;margin-bottom:1rem;font-size:1.2rem}.event-row-admin{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#2a2a2a;margin-bottom:.5rem;border-radius:4px;border-left:3px solid transparent}.event-row-admin.upcoming{border-left-color:#2ecc71}.event-row-admin.past{opacity:.7}.event-info{display:flex;align-items:center;gap:1rem}.event-info .event-date{color:#bbb;min-width:50px}.event-info .event-artists-count{color:#bbb;font-size:.85rem}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;text-transform:uppercase}.badge.upcoming{background:#2ecc71;color:#fff}.event-actions{display:flex;gap:.5rem}.event-actions button{padding:.5rem 1rem;font-size:.85rem;background:#3a3a3a;color:#fdf9f3}.event-actions button:hover{background:#4a4a4a}.search-bar{margin-bottom:1.5rem}.search-bar input{width:100%;max-width:400px;padding:.75rem 1rem;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px;color:#fdf9f3;font-size:1rem}.artists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.artist-card{background:#2a2a2a;padding:1rem;border-radius:8px;display:flex;justify-content:space-between;align-items:center}.artist-info h3{margin:0 0 .5rem;font-size:1rem}.platform-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;background:#3a3a3a;color:#bbb;margin-right:.5rem}.platform-badge.soundcloud{background:#f50;color:#fff}.platform-badge.facebook{background:#1877f2;color:#fff}.platform-badge.youtube{background:red;color:#fff}.profile-link{display:inline-block;color:#bbb;font-size:.85rem;text-decoration:none}.profile-link:hover{color:#fdf9f3}.artist-actions{display:flex;gap:.5rem}.artist-actions button{padding:.4rem .8rem;font-size:.85rem;background:#3a3a3a;color:#fdf9f3}.settings-page h1{margin-bottom:2rem}.settings-section{background:#2a2a2a;padding:2rem;border-radius:8px;margin-bottom:2rem}.settings-section h2{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #3a3a3a}.settings-section .btn-primary{margin-top:1rem}.danger-zone{border:1px solid #e74c3c}.danger-zone h2{color:#e74c3c}.button-group{display:flex;gap:1rem;margin-top:1rem}.message{margin-top:1rem;padding:.75rem;background:#3a3a3a;border-radius:4px}.error{color:#e74c3c;margin-bottom:1rem}.faq-list-admin{display:flex;flex-direction:column;gap:.5rem}.faq-row-admin{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#2a2a2a;border-radius:4px;border-left:3px solid #2ecc71}.faq-row-admin.draft{border-left-color:#555;opacity:.7}.faq-info{display:flex;align-items:center;gap:1rem;min-width:0}.faq-order{color:#777;font-size:.85rem;min-width:30px}.faq-question-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge.draft{background:#555;color:#bbb}.rich-editor{border:1px solid #3a3a3a;border-radius:4px;overflow:hidden}.rich-editor-toolbar{display:flex;align-items:center;gap:.25rem;padding:.4rem;background:#1a1a1a;border-bottom:1px solid #3a3a3a;flex-wrap:wrap}.rich-editor-toolbar .btn-icon{padding:.35rem .5rem;font-size:.85rem;background:transparent}.rich-editor-toolbar .btn-icon:hover{background:#3a3a3a}.rich-editor-toolbar .btn-icon.active{background:#4a4a4a;color:#fdf9f3}.rich-editor-toolbar .btn-icon:disabled{opacity:.3;cursor:not-allowed}.toolbar-divider{width:1px;height:20px;background:#3a3a3a;margin:0 .25rem}.rich-editor-content{min-height:180px;max-height:400px;overflow-y:auto}.rich-editor-content .tiptap{padding:.75rem;color:#fdf9f3;font-size:.95rem;line-height:1.6;outline:none;min-height:180px}.rich-editor-content .tiptap p{margin:0 0 .5rem}.rich-editor-content .tiptap p:last-child{margin-bottom:0}.rich-editor-content .tiptap strong{color:#fff}.rich-editor-content .tiptap a{color:#6fa8dc;text-decoration:underline}.rich-editor-content .tiptap ul,.rich-editor-content .tiptap ol{padding-left:1.5rem;margin:.5rem 0}.rich-editor-content .tiptap li{margin-bottom:.25rem}.rich-editor-content .tiptap img{max-width:100%;height:auto;border-radius:4px;margin:.5rem 0;display:block}.rich-editor-content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#555;pointer-events:none;float:left;height:0}.faq-image-count{display:inline-flex;align-items:center;gap:.25rem;color:#777;font-size:.8rem}@media(max-width:768px){.admin-nav{flex-direction:column;gap:1rem}.admin-nav-links{flex-wrap:wrap;justify-content:center;gap:1rem}.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;gap:1rem;align-items:stretch}.modal-overlay{padding:1rem}.modal{padding:1.5rem}}.news-list-admin{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.news-row-admin{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:4px}.news-row-admin.draft{opacity:.6}.news-row-thumb{width:80px;height:60px;object-fit:cover;border-radius:2px;flex-shrink:0}.news-row-info{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.news-row-title{color:#fdf9f3;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.news-row-meta{color:#888;font-size:.8rem}.news-cover-uploader{display:flex;align-items:center;gap:1rem}.news-cover-preview{position:relative;display:inline-block}.news-cover-preview img{max-width:240px;max-height:140px;display:block;border-radius:4px;border:1px solid #3a3a3a}.news-cover-preview .btn-icon{position:absolute;bottom:6px;right:6px;background:#000000b3;width:auto;padding:.25rem .6rem;font-size:.75rem;color:#fdf9f3;border:1px solid #555}.rich-editor-content .tiptap div[data-embed]{margin:1rem 0;border:1px dashed #555;padding:.5rem;background:#ffffff0a}.rich-editor-content .tiptap div[data-embed] iframe{max-width:100%}.msg-page{width:100vw;height:100vh;background:#000;overflow:hidden;position:relative;cursor:default}.msg-nav{position:absolute;top:2rem;left:2rem;display:flex;align-items:center;gap:1rem;z-index:20;-webkit-user-select:none;user-select:none}.msg-nav-link{font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.2em;color:#bbb;text-decoration:none;transition:color .3s ease}.msg-nav-link:hover{color:#fff}.msg-nav-divider{color:#777}.msg-item{position:absolute;max-width:300px;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;padding:.5rem .6rem}.msg-item.dragging{cursor:grabbing;z-index:10}.msg-meta{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.15rem}.msg-date{font-family:Courier New,monospace;font-size:.8rem;color:#bbb;letter-spacing:.08em}.msg-author{font-family:Courier New,monospace;font-size:.8rem;color:#aaa}.msg-text{font-family:Courier New,monospace;font-size:.95rem;color:#fff;line-height:1.45;word-break:break-word;letter-spacing:.02em}.msg-form{position:absolute;bottom:2rem;right:2rem;display:flex;flex-direction:column;gap:.5rem;width:280px;z-index:20}.msg-input{background:transparent;border:none;border-bottom:1px solid #555;color:#fff;font-family:Courier New,monospace;font-size:.85rem;padding:.5rem 0;resize:none;outline:none;line-height:1.4;letter-spacing:.02em}.msg-input:focus{border-bottom-color:#bbb}.msg-input::placeholder{color:#999}.msg-form-row{display:flex;gap:.8rem;align-items:baseline}.msg-name-input{flex:1;background:transparent;border:none;border-bottom:1px solid #555;color:#fff;font-family:Courier New,monospace;font-size:.8rem;padding:.4rem 0;outline:none;letter-spacing:.08em}.msg-name-input:focus{border-bottom-color:#bbb}.msg-name-input::placeholder{color:#999}.msg-send{background:transparent;border:none;color:#bbb;font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.2em;padding:0;cursor:pointer;transition:color .3s ease}.msg-send:hover{color:#fff}@media(max-width:768px){.msg-label{top:1.5rem;right:1.5rem}.msg-form{bottom:1.5rem;right:1.5rem;width:260px}}@media(max-width:480px){.msg-nav{top:1rem;left:1rem;gap:.75rem}.msg-nav-link{font-size:.75rem}.msg-form{left:1rem;right:1rem;bottom:1rem;width:auto}.msg-item{max-width:220px}.msg-date,.msg-author{font-size:.7rem}.msg-text{font-size:.85rem}}.glr-page{min-height:100vh;background:#000;padding:5rem 2rem 4rem;box-sizing:border-box}.glr-nav{position:fixed;top:2rem;left:2rem;display:flex;align-items:center;gap:1rem;z-index:100;-webkit-user-select:none;user-select:none}.glr-nav-link{font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.2em;color:#aaa;text-decoration:none;transition:color .3s ease}.glr-nav-link:hover{color:#fff}.glr-nav-divider{color:#666}.glr-grid{columns:3;column-gap:1.2rem;max-width:1100px;margin:0 auto}.glr-item{break-inside:avoid;margin-bottom:1.2rem;position:relative;cursor:pointer;transform:rotate(var(--rot, 0deg));transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .4s ease;opacity:0;animation:glr-fade-in .6s ease forwards}.glr-item:nth-child(1){animation-delay:.05s}.glr-item:nth-child(2){animation-delay:.1s}.glr-item:nth-child(3){animation-delay:.15s}.glr-item:nth-child(4){animation-delay:.2s}.glr-item:nth-child(5){animation-delay:.25s}.glr-item:nth-child(6){animation-delay:.3s}.glr-item:nth-child(7){animation-delay:.35s}.glr-item:nth-child(8){animation-delay:.4s}.glr-item:nth-child(9){animation-delay:.45s}.glr-item:nth-child(10){animation-delay:.5s}.glr-item:nth-child(n+11){animation-delay:.55s}@keyframes glr-fade-in{to{opacity:1}}.glr-item:hover{transform:rotate(var(--rot, 0deg)) scale(1.03);z-index:10}.glr-item img{display:block;width:100%;height:auto;border-radius:2px;box-shadow:0 2px 16px #00000080;transition:box-shadow .3s ease}.glr-item:hover img{box-shadow:0 8px 32px #000000b3}.glr-caption{position:absolute;bottom:0;left:0;right:0;padding:.4rem .5rem;font-family:Courier New,monospace;font-size:.65rem;letter-spacing:.05em;color:#999;background:linear-gradient(transparent,#000c);border-radius:0 0 2px 2px;opacity:0;transition:opacity .3s ease}.glr-item:hover .glr-caption{opacity:1}.glr-empty{text-align:center;color:#666;font-family:Courier New,monospace;font-size:1.2rem;margin-top:30vh}.glr-lightbox{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;animation:glr-lb-in .25s ease;touch-action:pan-y}.glr-lb-backdrop{position:absolute;inset:0;background:#000000eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@keyframes glr-lb-in{0%{opacity:0}to{opacity:1}}.glr-lb-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;pointer-events:none}.glr-lb-content img{max-width:85vw;max-height:80vh;object-fit:contain;border-radius:2px;box-shadow:0 0 60px #00000080;pointer-events:auto}.glr-lb-caption{margin-top:1rem;font-family:Courier New,monospace;font-size:.8rem;letter-spacing:.1em;color:#bbb}.glr-lb-counter{margin-top:.5rem;font-family:Courier New,monospace;font-size:.65rem;letter-spacing:.15em;color:#777}.glr-lb-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:none;border:none;color:#999;font-size:3rem;font-family:Courier New,monospace;cursor:pointer;padding:1rem;line-height:1;transition:color .2s ease;-webkit-user-select:none;user-select:none}.glr-lb-arrow:hover{color:#fff}.glr-lb-prev{left:1rem}.glr-lb-next{right:1rem}.glr-lb-close{position:absolute;top:1.5rem;right:1.5rem;z-index:2;background:none;border:none;color:#999;font-size:1.8rem;font-family:Courier New,monospace;cursor:pointer;line-height:1;transition:color .2s ease;-webkit-user-select:none;user-select:none}.glr-lb-close:hover{color:#fff}@media(max-width:768px){.glr-page{padding:4rem 1rem 3rem}.glr-grid{columns:2;column-gap:.8rem}.glr-item{margin-bottom:.8rem}.glr-nav{top:1rem;left:1rem;gap:.75rem}.glr-nav-link{font-size:.75rem}}@media(max-width:480px){.glr-grid{columns:1;max-width:400px}}.faq-page{min-height:100vh;background:#000;color:#fff;font-family:Courier New,monospace;padding:3rem 1.5rem}.faq-content{max-width:700px;margin:0 auto;padding-top:2rem}.faq-title{font-size:clamp(1.2rem,3vw,1.8rem);letter-spacing:.5em;text-align:center;margin-bottom:3rem;color:#fff}.faq-loading,.faq-empty{text-align:center;color:#777;letter-spacing:.1em}.faq-item{border-bottom:1px solid #2a2a2a}.faq-item:first-child{border-top:1px solid #2a2a2a}.faq-question{padding:1.2rem 0;cursor:pointer;letter-spacing:.04em;font-size:clamp(.85rem,2vw,1rem);color:#ccc;list-style:none;display:flex;justify-content:space-between;align-items:center;transition:color .2s}.faq-question:hover{color:#fff}.faq-question:after{content:"+";font-size:1.2rem;color:#555;flex-shrink:0;margin-left:1rem;transition:transform .2s}.faq-item[open]>.faq-question:after{content:"−";color:#aaa}.faq-question::-webkit-details-marker{display:none}.faq-answer{padding:0 0 1.5rem;color:#999;font-size:clamp(.8rem,1.8vw,.95rem);line-height:1.7;letter-spacing:.02em;animation:faq-fade-in .2s ease}.faq-answer p{margin:0 0 1rem}.faq-answer p:last-child{margin-bottom:0}.faq-answer strong{color:#ddd}.faq-answer a{color:#bbb;text-decoration:underline;text-underline-offset:2px;transition:color .2s}.faq-answer a:hover{color:#fff}.faq-answer ul{margin:0 0 1rem;padding-left:1.5rem}.faq-answer li{margin-bottom:.3rem}.faq-answer img{max-width:100%;height:auto;border-radius:2px;margin:.8rem 0;display:block}@keyframes faq-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.faq-page{padding:2rem 1rem}.faq-content{padding-top:1.5rem}.faq-title{margin-bottom:2rem}.faq-question{padding:1rem 0}}.news-page{min-height:100vh;background:#000;color:#fff;font-family:Courier New,monospace;padding:3rem 1.5rem}.news-content{max-width:1100px;margin:0 auto;padding-top:2rem}.news-title{font-size:clamp(1.2rem,3vw,1.8rem);letter-spacing:.5em;text-align:center;margin-bottom:3rem;color:#fff}.news-loading,.news-empty{text-align:center;color:#777;letter-spacing:.1em}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.news-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:#0a0a0a;border:1px solid #1f1f1f;transition:border-color .2s,transform .2s}.news-card:hover{border-color:#444;transform:translateY(-2px)}.news-card-cover{aspect-ratio:16 / 10;overflow:hidden;background:#111}.news-card-cover img{width:100%;height:100%;object-fit:cover;display:block}.news-card-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.5rem}.news-card-date{font-size:.75rem;color:#777;letter-spacing:.1em;text-transform:uppercase}.news-card-title{font-size:1rem;color:#fff;margin:0;letter-spacing:.02em;line-height:1.4}.news-card-excerpt{font-size:.85rem;color:#aaa;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:480px){.news-page{padding:2rem 1rem}.news-content{padding-top:1.5rem}.news-title{margin-bottom:2rem}.news-grid{grid-template-columns:1fr;gap:1rem}}.news-article-page{min-height:100vh;background:#000;color:#fff;font-family:Courier New,monospace;padding:3rem 1.5rem 5rem}.news-article-content{max-width:760px;margin:0 auto;padding-top:2rem}.news-article-header{text-align:center;margin-bottom:2rem}.news-article-date{display:block;font-size:.8rem;color:#888;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1rem}.news-article-title{font-size:clamp(1.4rem,4vw,2.2rem);letter-spacing:.05em;color:#fff;margin:0 0 1rem;line-height:1.25}.news-article-excerpt{font-size:1rem;color:#bbb;line-height:1.6;max-width:600px;margin:0 auto}.news-article-cover{margin:2rem 0}.news-article-cover img{width:100%;height:auto;display:block;border:1px solid #1a1a1a}.news-article-body{font-size:1rem;line-height:1.75;color:#d0d0d0;letter-spacing:.01em}.news-article-body p{margin:0 0 1rem}.news-article-body strong{color:#fff}.news-article-body a{color:#fff;text-decoration:underline;text-underline-offset:3px}.news-article-body a:hover{color:#aaa}.news-article-body ul,.news-article-body ol{margin:0 0 1rem;padding-left:1.5rem}.news-article-body li{margin-bottom:.4rem}.news-article-body img{max-width:100%;height:auto;display:block;margin:1.5rem 0}.news-article-body div[data-embed]{margin:1.5rem 0}.news-article-body div[data-embed] iframe{max-width:100%;width:100%;border:none;aspect-ratio:16 / 9}.news-article-body div[data-embed] iframe[src*=soundcloud],.news-article-body div[data-embed] iframe[src*=spotify]{aspect-ratio:auto;height:166px}.news-article-share{margin-top:3rem;padding-top:2rem;border-top:1px solid #222;display:flex;flex-direction:column;gap:.8rem;align-items:center}.share-label{color:#777;letter-spacing:.25em;font-size:.7rem;text-transform:uppercase}.share-buttons{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}.share-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid #333;border-radius:50%;color:#aaa;cursor:pointer;transition:color .2s,border-color .2s,background .2s,transform .2s;padding:0}.share-btn:hover{color:#fff;border-color:#fff;transform:translateY(-2px)}.share-btn:active{transform:translateY(0)}.news-article-back{margin-top:2rem;text-align:center}.back-link{color:#aaa;text-decoration:none;letter-spacing:.1em;font-size:.85rem;text-transform:uppercase;transition:color .2s}.back-link:hover{color:#fff}.news-loading,.news-article-empty{text-align:center;color:#777;padding:4rem 1rem;letter-spacing:.1em}@media(max-width:480px){.news-article-page{padding:2rem 1rem 3rem}}.app{min-height:100vh;position:relative}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.corner-nav{position:fixed;top:2rem;left:2rem;display:flex;align-items:center;gap:1rem;z-index:50}.corner-link{font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.2em;color:#aaa;text-decoration:none;transition:color .3s ease}.corner-link:hover{color:#fff}.corner-link-active{color:#fff;cursor:default}.corner-divider{color:#666}@media(max-width:480px){.corner-nav{top:1rem;left:1rem;gap:.75rem}.corner-link{font-size:.75rem}}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:2rem;box-sizing:border-box}.main{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0}.hero-links{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding-bottom:1rem}.hero-nav{display:flex;justify-content:center;align-items:center;gap:1rem}.nav-link{font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.2em;color:#aaa;text-decoration:none;transition:color .3s ease}.nav-link:hover{color:#fff}.nav-divider{color:#666}.upcoming-events{display:flex;flex-direction:column;align-items:center;gap:.8rem}.upcoming-events .event-item{opacity:1}.upcoming-events .event-title,.upcoming-events .event-title-link{color:#fff}.archive-section{min-height:100vh;padding:4rem 2rem;box-sizing:border-box;display:flex;flex-direction:column}.footer{display:flex;flex-direction:column;align-items:center;gap:.8rem;padding:4rem 0 2rem;margin-top:auto}.footer-link{font-family:Courier New,monospace;font-size:.8rem;letter-spacing:.2em;color:#999;text-decoration:none;transition:color .3s ease}.footer-link:hover{color:#fff}.ascii-container{display:flex;justify-content:center;align-items:center}.ascii-text{font-family:Courier New,monospace;font-size:clamp(.4rem,1.5vw,.9rem);line-height:1.1;white-space:pre;color:#fff;text-align:center;letter-spacing:.05em}.ascii-text.waves{animation:subtle-glow 4s ease-in-out infinite}@keyframes subtle-glow{0%,to{text-shadow:0 0 10px rgba(255,255,255,.1)}50%{text-shadow:0 0 20px rgba(255,255,255,.2)}}.cursor{animation:blink 1s step-end infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.events{padding:3rem 0;max-width:600px;margin:0 auto}.events-section{margin-bottom:4rem}.events-section:last-child{margin-bottom:0}.events-header{font-family:Courier New,monospace;font-size:.75rem;letter-spacing:.4em;color:#999;margin-bottom:2.5rem;text-align:center;text-transform:uppercase}.events-list{display:flex;flex-direction:column;gap:1.2rem;align-items:center}.events-year-group{width:100%;display:flex;flex-direction:column;gap:.6rem;align-items:center;margin-bottom:2rem}.events-year-group:last-child{margin-bottom:0}.events-year{font-family:Courier New,monospace;font-size:.7rem;letter-spacing:.5em;color:#aaa;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #2a2a2a;width:fit-content}.event-item{font-family:Courier New,monospace;font-size:.95rem;letter-spacing:.08em;display:flex;flex-direction:column;gap:.3rem;align-items:center;transition:opacity .3s ease;padding:.6rem 0}.event-row{display:flex;gap:.8rem;align-items:baseline}.event-item.past{opacity:.7}.event-date{color:#bbb;font-size:.85rem;min-width:3.5rem}.event-divider{color:#777}.event-title,.event-title-link{color:#ccc;font-weight:400;text-decoration:none;transition:color .2s ease}.event-title-link:hover{color:#fff}.event-item:not(.past) .event-title,.event-item:not(.past) .event-title-link{color:#fff}.event-artists{color:#bbb;font-size:.8rem;letter-spacing:.05em;text-align:center;max-width:500px}.artist-link{color:#bbb;text-decoration:none;transition:color .2s ease}.artist-link:hover{color:#fff}.social-links{display:flex;justify-content:center;align-items:center;gap:1rem;padding:2rem 0}.social-link{font-family:Courier New,monospace;font-size:.85rem;letter-spacing:.2em;color:#aaa;text-decoration:none;transition:color .3s ease}.social-link:hover{color:#fff}.social-divider{color:#666}@media(max-width:768px){.hero{padding:1.5rem;min-height:100svh}.hero-links{gap:1rem}.ascii-text{font-size:clamp(.25rem,2.5vw,.6rem)}.event-item{font-size:.85rem}.archive-section{padding:3rem 1.5rem}}@media(max-width:480px){.hero{padding:1rem;min-height:100svh;gap:0}.main{flex:1;min-height:200px;max-height:50vh}.hero-links{gap:.75rem;padding-bottom:.5rem}.hero-nav{gap:.75rem}.nav-link{font-size:.75rem}.upcoming-events{gap:.5rem}.upcoming-events .event-item{padding:.3rem 0}.event-item{font-size:.75rem;gap:.2rem;padding:.4rem 0}.event-date{font-size:.7rem;min-width:3rem}.event-artists{font-size:.7rem}.archive-section{padding:2rem 1rem}.footer{padding:2rem 0 1rem;gap:.6rem}.footer-link{font-size:.7rem}}
