*{margin:0;padding:0;box-sizing:border-box}.hidden{display:none!important}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;overflow:hidden;height:100vh;position:relative;background:#1a1a1a}#gradient-bg{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:-2;transition:background 2s ease}#gradient-bg:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:1}#gradient-bg.show-overlay:before{opacity:1}#visualizer-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0;transition:opacity .5s ease}#visualizer-canvas.hidden{opacity:0}#dj-names-container{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:1;pointer-events:none;overflow:hidden}#dj-names-container .dj-name{position:absolute;font-size:8rem;font-weight:900;color:#ffffff1a;white-space:nowrap;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.1em;pointer-events:auto;cursor:pointer;transition:color .3s ease}#dj-names-container .dj-name:hover{color:#ffffff4d}#dj-names-container .dj-name.dj-active{color:#ffffff80}#disc-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;height:400px;z-index:10;cursor:pointer}#disc-canvas{width:100%;height:100%;display:block}#circular-nav{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;z-index:15;opacity:0;pointer-events:none}#circular-nav.hidden{pointer-events:none}.nav-word-wrapper{text-decoration:none;pointer-events:all}.nav-letter{display:inline-block;-webkit-user-select:none;user-select:none;will-change:transform;position:relative;letter-spacing:.05em;line-height:1;vertical-align:baseline}.nav-letter:before{content:"";position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px;cursor:pointer}#player-info{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#000000b3;padding:10px 20px;border-radius:20px;z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .3s ease}#player-info.hidden{opacity:0;pointer-events:none}.player-status{color:#fff;font-size:.9rem;text-align:center}#chat-panel{position:fixed;top:0;right:0;width:400px;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;display:flex;flex-direction:column;transform:translate(100%);transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}#chat-panel.chat-visible{transform:translate(0);box-shadow:-5px 0 20px #00000080}#chat-panel.chat-hidden{transform:translate(100%);box-shadow:none}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.chat-header h2{color:#fff;font-size:1.5rem;margin:0;font-family:Nunito,sans-serif}.chat-close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease}.chat-close-btn:hover{opacity:.7}.auth-section{flex:1;display:flex;flex-direction:column;padding:20px}.auth-intro{margin-bottom:20px}.auth-intro p{color:#fff;font-family:Nunito,sans-serif;font-size:.95rem;line-height:1.6;margin:0 0 10px}.auth-intro h3{color:#fff;font-size:1.3rem;margin-bottom:10px;font-family:Nunito,sans-serif}.auth-toggle{display:flex;gap:10px;margin-bottom:20px}.auth-tab{flex:1;padding:10px;background:#ffffff1a;border:none;color:#fff;cursor:pointer;border-radius:5px;transition:all .3s ease;font-family:Nunito,sans-serif}.auth-tab:hover{background:#fff3}.auth-tab.hidden{display:none}.auth-form{display:flex;flex-direction:column;gap:15px}.auth-form input{padding:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:5px;color:#fff;font-size:1rem;font-family:Nunito,sans-serif}.auth-form input::placeholder{color:#ffffff80}.auth-submit{padding:12px;background:#fff3;border:none;border-radius:5px;color:#fff;font-size:1rem;cursor:pointer;transition:background .3s ease;font-family:Nunito,sans-serif}.auth-submit:hover{background:#ffffff4d}.consent-checkbox{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:#fffc;font-family:Nunito,sans-serif;line-height:1.4}.consent-checkbox input[type=checkbox]{margin-top:3px;width:18px;height:18px;cursor:pointer;flex-shrink:0}.consent-checkbox label{cursor:pointer;-webkit-user-select:none;user-select:none}.auth-links{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.9rem;color:#ffffffb3;font-family:Nunito,sans-serif}.auth-link{color:#ffffffe6;text-decoration:none;cursor:pointer;transition:color .2s ease}.auth-link:hover{color:#fff;text-decoration:underline}.auth-separator{color:#ffffff80}.chat-section{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-user-info{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 15px;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}#chat-username{color:#fff;font-weight:700;font-family:Nunito,sans-serif}.logout-btn{padding:8px 16px;background:#ffffff1a;border:none;border-radius:5px;color:#fff;cursor:pointer;transition:background .3s ease;font-family:Nunito,sans-serif}.logout-btn:hover{background:#fff3}.load-more-btn{margin:10px 20px;padding:10px 20px;background:#4ecdc433;border:1px solid rgba(78,205,196,.5);border-radius:5px;color:#4ecdc4;cursor:pointer;transition:all .3s ease;font-family:Nunito,sans-serif;font-size:.9rem;text-align:center;flex-shrink:0}.load-more-btn:hover{background:#4ecdc44d;border-color:#4ecdc4}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.messages-container{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:10px;padding:20px 15px 20px 20px;min-height:0}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.messages-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.message{padding:10px;background:#ffffff0d;border-radius:8px;animation:slideIn .3s ease;margin-bottom:10px;max-width:85%;width:fit-content}.message-dj{background:#ffa50026;margin-left:auto;margin-right:0}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-author{font-weight:700;color:#fffc;font-size:.9rem;margin-bottom:5px;font-family:Nunito,sans-serif;display:flex;align-items:center;gap:8px}.role-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.role-badge-dj{background:#ffa5004d;color:#ffc864;border:1px solid rgba(255,165,0,.5)}.message-text{color:#fff;font-size:.95rem;word-wrap:break-word;font-family:Nunito,sans-serif}.message-time{font-size:.75rem;color:#fff6;margin-top:5px;font-family:Nunito,sans-serif}.message-form{display:flex;gap:10px;padding:15px 20px 20px;background:#0000004d;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}#message-input{flex:1;padding:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:5px;color:#fff;font-size:1rem;font-family:Nunito,sans-serif}#message-input::placeholder{color:#ffffff80}.send-btn{padding:12px 20px;background:#fff3;border:none;border-radius:5px;color:#fff;cursor:pointer;transition:background .3s ease;font-family:Nunito,sans-serif}.send-btn:hover{background:#ffffff4d}#schedule-panel{position:fixed;top:0;left:0;width:400px;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}#schedule-panel.schedule-visible{transform:translate(0);box-shadow:5px 0 20px #00000080}#schedule-panel.schedule-hidden{transform:translate(-100%);box-shadow:none}.schedule-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.schedule-header h2{color:#fff;font-size:1.5rem;margin:0;font-family:Nunito,sans-serif}.schedule-close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease}.schedule-close-btn:hover{opacity:.7}.schedule-loading,.schedule-error{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;color:#ffffffb3;font-family:Nunito,sans-serif;text-align:center}.schedule-content{flex:1;overflow-y:auto;padding:20px}.schedule-content::-webkit-scrollbar{width:6px}.schedule-content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.schedule-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.schedule-day{margin-bottom:30px}.schedule-day-header{color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.2);font-family:Nunito,sans-serif}.schedule-event{background:#ffffff0d;border-radius:8px;padding:12px;margin-bottom:10px;animation:slideIn .3s ease}.schedule-event-time{color:#fff9;font-size:.85rem;margin-bottom:5px;font-family:Nunito,sans-serif}.schedule-event-title{color:#fff;font-size:1rem;font-weight:700;margin-bottom:5px;font-family:Nunito,sans-serif}.schedule-event-description{color:#ffffffb3;font-size:.9rem;margin-top:5px;font-family:Nunito,sans-serif}.schedule-event.current{background:#4caf5033}#support-panel{position:fixed;top:0;right:0;width:400px;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;display:flex;flex-direction:column;transform:translate(100%);transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}#support-panel.support-visible{transform:translate(0);box-shadow:-5px 0 20px #00000080}#support-panel.support-hidden{transform:translate(100%);box-shadow:none}.support-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.support-header h2{color:#fff;font-size:1.5rem;margin:0;font-family:Nunito,sans-serif}.support-close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease}.support-close-btn:hover{opacity:.7}.support-amount-section{flex:1;display:flex;flex-direction:column;padding:20px;overflow-y:auto}.support-amount-form{display:flex;flex-direction:column;gap:20px}#support-email-input{width:100%;padding:12px;background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-family:Nunito,sans-serif;font-size:1rem;box-sizing:border-box}#support-email-input::placeholder{color:#ffffff80}#support-email-input:focus{outline:none;border-color:#ffffff80;background:#ffffff1a}.support-auth-section{flex:1;display:flex;flex-direction:column;padding:20px;overflow-y:auto}.support-auth-section .auth-form{padding:20px;background:#0003;border-radius:8px;margin-top:10px}.support-auth-section h3{margin-top:0;margin-bottom:20px;font-size:1.5rem;text-align:center}.support-auth-section .payment-cancel-btn{flex:none;max-width:200px;align-self:center;margin-top:20px}.support-payment-section{flex:1;display:flex;flex-direction:column;padding:20px;overflow-y:auto}.support-account-section{flex:1;display:flex;flex-direction:column;padding:20px}.support-success-message{background:#4caf5033;border:2px solid rgba(76,175,80,.5);border-radius:8px;padding:20px;margin-bottom:20px;text-align:center}.support-success-message h3{color:#4caf50;font-size:1.8rem;margin:0 0 10px;font-family:Nunito,sans-serif}.support-success-message p{color:#fff;font-size:1rem;margin:0;font-family:Nunito,sans-serif}.support-content-section{flex:1;display:flex;flex-direction:column;overflow-y:auto}.support-user-info{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid rgba(255,255,255,.1)}#support-username{color:#fff;font-weight:700;font-family:Nunito,sans-serif}.support-content{padding:20px}.support-intro{margin-bottom:30px}.support-intro h3{color:#fff;font-size:1.3rem;margin-bottom:10px;font-family:Nunito,sans-serif}.support-intro p{color:#ffffffb3;line-height:1.6;font-family:Nunito,sans-serif}.support-options{display:flex;flex-direction:column;gap:15px;opacity:0;animation:fadeInSupport .3s ease-in .1s forwards}@keyframes fadeInSupport{to{opacity:1}}.support-option-btn{background:#ffffff0d;border:2px solid rgba(255,255,255,.2);border-radius:8px;padding:20px;cursor:pointer;transition:all .3s ease;display:flex;justify-content:space-between;align-items:center}.support-option-btn:hover{background:#ffffff1a;border-color:#fff6;transform:translateY(-2px)}.support-amount{color:#fff;font-size:1.5rem;font-weight:700;font-family:Nunito,sans-serif}.support-desc{color:#ffffffb3;font-size:.9rem;font-family:Nunito,sans-serif}.support-message{margin-top:20px;padding:15px;background:#4caf5033;border:1px solid rgba(76,175,80,.5);border-radius:8px;color:#fff;text-align:center;font-family:Nunito,sans-serif;animation:slideIn .3s ease}.payment-form-container{margin-top:20px;animation:slideIn .3s ease}.payment-amount-header{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.2)}.payment-amount-header h4{color:#fff;font-size:1.2rem;font-family:Nunito,sans-serif;margin:0}.payment-amount-header span{color:#4caf50}.payment-form{display:flex;flex-direction:column;gap:20px}.card-element{padding:15px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:8px}.card-errors{color:#ff6b6b;font-size:.9rem;min-height:20px;font-family:Nunito,sans-serif}.payment-buttons{display:flex;gap:10px}.payment-cancel-btn,.payment-submit-btn{flex:1;padding:12px;border:none;border-radius:8px;font-size:1rem;font-family:Nunito,sans-serif;cursor:pointer;transition:all .3s ease}.payment-cancel-btn{background:#ffffff1a;color:#fff}.payment-cancel-btn:hover{background:#fff3}.payment-submit-btn{background:#4caf50;color:#fff;font-weight:700}.payment-submit-btn:hover{background:#45a049}.payment-submit-btn:disabled{background:#4caf5080;cursor:not-allowed}#archive-panel{position:fixed;top:0;left:0;width:400px;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}#archive-panel.archive-visible{transform:translate(0);box-shadow:5px 0 20px #00000080}#archive-panel.archive-hidden{transform:translate(-100%);box-shadow:none}.archive-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.archive-header h2{color:#fff;font-size:1.5rem;margin:0;font-family:Nunito,sans-serif}.archive-close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease}.archive-close-btn:hover{opacity:.7}.archive-content-section{flex:1;display:flex;flex-direction:column;padding:20px;overflow-y:auto}.archive-user-info{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:15px}#archive-username{color:#fff;font-weight:700;font-family:Nunito,sans-serif}.archive-recordings{display:flex;flex-direction:column;gap:15px}.archive-recording{background:#ffffff0d;border-radius:8px;padding:15px;display:flex;gap:15px;align-items:center;animation:slideIn .3s ease;transition:background .3s ease}.archive-recording:hover{background:#ffffff14}.archive-recording-artwork{width:80px;height:80px;border-radius:6px;object-fit:cover;flex-shrink:0}.archive-recording-info{flex:1;min-width:0}.archive-recording-title{color:#fff;font-size:1rem;font-weight:700;margin-bottom:5px;font-family:Nunito,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-recording-meta{color:#fff9;font-size:.85rem;margin-bottom:3px;font-family:Nunito,sans-serif}.archive-recording-date{color:#fff6;font-size:.75rem;font-family:Nunito,sans-serif}.archive-play-btn{padding:8px 16px;background:#fff3;border:none;border-radius:5px;color:#fff;cursor:pointer;transition:background .3s ease;font-family:Nunito,sans-serif;text-decoration:none;font-size:.9rem;white-space:nowrap;flex-shrink:0}.archive-play-btn:hover{background:#ffffff4d}.archive-play-btn.playing{background:#4caf5080}.archive-play-btn.playing:hover{background:#4caf5099}#family-panel{position:fixed;top:0;left:0;width:400px;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;display:flex;flex-direction:column;transform:translate(-100%);transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}#family-panel.family-visible{transform:translate(0);box-shadow:5px 0 20px #00000080}#family-panel.family-hidden{transform:translate(-100%);box-shadow:none}.family-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.family-header h2{margin:0;color:#fff;font-size:1.5rem;font-family:Nunito,sans-serif}.family-close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.family-close-btn:hover{transform:scale(1.2)}.family-content{flex:1;overflow-y:auto;padding:20px}.family-djs{display:flex;flex-direction:column;gap:20px}.dj-card{background:#ffffff0d;border-radius:10px;overflow:hidden;transition:background .3s ease}.dj-card:hover{background:#ffffff14}.dj-header{display:flex;align-items:center;gap:15px;padding:15px;cursor:pointer;transition:background .2s ease}.dj-header:hover{background:#ffffff0d}.dj-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;font-weight:700;font-family:Nunito,sans-serif}.dj-info{flex:1;display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:0}.dj-name{margin:0;color:#fff;font-size:1.1rem;font-weight:700;font-family:Nunito,sans-serif}.dj-role{margin:0;color:#fff9;font-size:.85rem;font-family:Nunito,sans-serif}.dj-arrow-indicator{color:#ffffff80;font-size:1.2rem;flex-shrink:0;transition:transform .2s ease,color .2s ease}.dj-card:hover .dj-arrow-indicator{color:#ffffffe6;transform:translate(5px)}#dj-detail-panel{position:fixed;top:0;right:0;width:calc(100% - 400px);height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1001;display:flex;flex-direction:column;transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}.dj-detail-hidden{transform:translate(100%);box-shadow:none}.dj-detail-visible{transform:translate(0);box-shadow:-5px 0 20px #00000080}.dj-detail-header{display:flex;justify-content:space-between;align-items:center;padding:30px;border-bottom:1px solid rgba(255,255,255,.1)}.dj-detail-header h2{margin:0;color:#fff;font-family:Nunito,sans-serif;font-size:2rem;font-weight:200}.dj-detail-close-btn{background:none;border:none;color:#ffffffb3;font-size:2.5rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.dj-detail-close-btn:hover{transform:scale(1.2)}.dj-detail-content{flex:1;overflow-y:auto;padding:30px}.dj-detail-photo{width:100%;margin-bottom:30px;position:relative}.dj-detail-photo-img{width:100%;height:auto;border-radius:15px;box-shadow:0 10px 40px #00000080;display:block}.dj-detail-photo.dj-photo-placeholder{min-height:300px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:5rem;font-weight:700;font-family:Nunito,sans-serif;border-radius:15px;box-shadow:0 10px 40px #00000080}.dj-detail-tagline{color:#ffffffb3;font-family:Nunito,sans-serif;font-size:1.3rem;font-style:italic;margin-bottom:15px;text-align:center;display:none}.dj-detail-socials{display:none;justify-content:center;gap:15px;margin-bottom:20px;flex-wrap:wrap}.dj-social-link{display:inline-flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:50%;background:#ffffff1a;color:#fff;font-size:1.5rem;text-decoration:none;transition:all .3s ease;border:2px solid rgba(255,255,255,.2)}.dj-social-link:hover{background:#4ecdc4;border-color:#4ecdc4;transform:translateY(-3px);box-shadow:0 5px 15px #4ecdc466}.dj-detail-bio{color:#ffffffe6;font-family:Nunito,sans-serif;font-size:1.1rem;line-height:1.8;white-space:pre-wrap;margin-bottom:20px}.dj-detail-mixcloud{margin-top:20px;padding:15px;background:#0000004d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.dj-detail-mixcloud iframe{border-radius:4px}.mixcloud-player-section{margin-bottom:20px}.mixcloud-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;margin-top:15px}.mixcloud-show-card{background:#0006;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;border:2px solid transparent;position:relative}.mixcloud-show-card:hover{transform:translateY(-5px);border-color:#4ecdc4;box-shadow:0 5px 20px #4ecdc44d}.mixcloud-show-card.selected{border-color:#4ecdc4;box-shadow:0 0 20px #4ecdc480}.mixcloud-thumbnail{width:100%;aspect-ratio:1;object-fit:cover;display:block}.mixcloud-show-info{padding:10px}.mixcloud-show-name{color:#ffffffe6;font-size:.9rem;font-weight:600;margin-bottom:5px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mixcloud-show-date{color:#ffffff80;font-size:.8rem}.dj-schedule-link{display:inline-block;color:#4ecdc4;text-decoration:none;font-weight:600;font-size:1.2rem;padding:10px 20px;border:2px solid #4ECDC4;border-radius:8px;margin-bottom:20px;transition:all .3s ease}.dj-schedule-link:hover{background:#4ecdc4;color:#000;transform:translateY(-2px)}#partners-panel{position:fixed;top:0;left:0;width:400px;height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;flex-direction:column;transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}#partners-panel.partners-visible{transform:translate(0);box-shadow:5px 0 20px #00000080}#partners-panel.partners-hidden{transform:translate(-100%);box-shadow:none}.partners-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.partners-header h2{margin:0;color:#fff;font-size:1.5rem;font-family:Nunito,sans-serif}.partners-close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.partners-close-btn:hover{transform:scale(1.2)}.partners-content{flex:1;overflow-y:auto;padding:20px}.partners-list{display:flex;flex-direction:column;gap:20px}.partner-card{background:#ffffff0d;border-radius:10px;overflow:hidden;transition:background .3s ease}.partner-card:hover{background:#ffffff14}.partner-header{display:flex;align-items:center;gap:15px;padding:15px;cursor:pointer;transition:background .2s ease}.partner-header:hover{background:#ffffff0d}.partner-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#f093fb,#f5576c);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;font-weight:700;font-family:Nunito,sans-serif}.partner-info{flex:1;display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:0}.partner-name{margin:0;color:#fff;font-size:1.1rem;font-weight:700;font-family:Nunito,sans-serif}.partner-arrow-indicator{color:#ffffff80;font-size:1.2rem;flex-shrink:0;transition:transform .2s ease,color .2s ease}.partner-card:hover .partner-arrow-indicator{color:#ffffffe6;transform:translate(5px)}#partner-detail-panel{position:fixed;top:0;right:0;width:calc(100% - 400px);height:100vh;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1001;display:flex;flex-direction:column;transition:transform .5s ease,box-shadow .5s ease;box-shadow:none}.partner-detail-hidden{transform:translate(100%);box-shadow:none}.partner-detail-visible{transform:translate(0);box-shadow:-5px 0 20px #00000080}.partner-detail-header{display:flex;justify-content:space-between;align-items:center;padding:30px;border-bottom:1px solid rgba(255,255,255,.1)}.partner-detail-header h2{margin:0;color:#fff;font-family:Nunito,sans-serif;font-size:2rem;font-weight:200}.partner-detail-close-btn{background:none;border:none;color:#ffffffb3;font-size:2.5rem;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.partner-detail-close-btn:hover{transform:scale(1.2)}.partner-detail-content{flex:1;overflow-y:auto;padding:30px}.partner-detail-logo{width:100%;max-width:300px;margin:0 auto 30px;position:relative}.partner-detail-logo-img{width:100%;height:auto;border-radius:15px;box-shadow:0 10px 40px #00000080;display:block}.partner-detail-logo.partner-logo-placeholder{height:200px;background:linear-gradient(135deg,#f093fb,#f5576c);display:flex;align-items:center;justify-content:center;color:#fff;font-size:4rem;font-weight:700;font-family:Nunito,sans-serif;border-radius:15px;box-shadow:0 10px 40px #00000080}.partner-detail-description{color:#ffffffe6;font-family:Nunito,sans-serif;font-size:1.1rem;line-height:1.8;margin-bottom:30px;white-space:pre-wrap}.partner-detail-website{display:inline-block;color:#f5576c;text-decoration:none;font-weight:600;font-size:1.2rem;padding:15px 30px;border:2px solid #f5576c;border-radius:8px;transition:all .3s ease;font-family:Nunito,sans-serif}.partner-detail-website:hover{background:#f5576c;color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #f5576c66}.drawer-footer{padding:20px;text-align:center;margin-top:auto}.drawer-footer a{color:#fff;text-decoration:none;font-family:Nunito,sans-serif;font-size:.9rem;opacity:.7;transition:opacity .3s ease}.drawer-footer a:hover{opacity:1}@media (max-width: 768px){#disc-container{width:300px;height:300px}#dj-names-container .dj-name{font-size:4rem}#circular-nav{width:400px;height:400px}.nav-letter{font-size:1rem}#chat-panel,#schedule-panel,#support-panel,#partners-panel,#family-panel{width:100%}#dj-detail-panel,#partner-detail-panel{width:100%;left:0;right:auto}.partner-detail-header h2{font-size:1.5rem}.partner-detail-content{padding:20px}.partner-detail-description{font-size:1rem}.dj-detail-photo{height:300px}.dj-detail-header h2{font-size:1.5rem}.dj-detail-content{padding:20px}.dj-detail-bio{font-size:1rem}#dj-names-container{display:none}}
