.party-current-track-display{padding:24px;border-radius:8px;background:var(--bg-secondary, #f5f5f5)}.party-current-track-prev,.party-current-track-next{padding-top:16px;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.party-current-track-prev:first-child{padding-top:0}.party-current-track-adjacent-label{font-size:11px;color:var(--text-tertiary, #999);display:block;margin-bottom:4px}.party-current-track-adjacent-name-wrapper{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;width:100%}.party-current-track-adjacent-name{flex:1;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:var(--text-secondary, #666);text-align:right}.party-current-track-adjacent-name--expanded{white-space:normal;word-break:break-word;text-align:right}.party-current-track-adjacent-time{flex-shrink:0;font-size:12px;color:var(--text-tertiary, #999);margin-left:8px}.party-current-track-expand-btn{flex-shrink:0;padding:2px 4px;min-width:20px;border-radius:4px;border:none;background:transparent;color:var(--text-tertiary, #999);font-size:14px;cursor:pointer;line-height:1}.party-current-track-expand-btn:hover{color:var(--text-primary, #000);background:var(--bg-hover, #eee)}.party-current-track-current{margin-top:8px}.party-current-track-empty{text-align:center;color:var(--text-secondary, #666666);padding:32px 16px;font-size:14px}.party-current-track-info{margin-bottom:12px}.party-current-track-name-wrapper{display:flex;align-items:center;gap:6px;min-width:0;margin-bottom:8px}.party-current-track-name{flex:1;min-width:0;font-size:18px;font-weight:600;color:var(--text-primary, #000000);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-current-track-name--expanded{white-space:normal;word-break:break-word}.party-current-track-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-secondary, #666666)}.party-current-track-status{font-weight:500}.party-current-track-time{margin-left:auto}.party-current-track-progress{width:100%;height:6px;background:var(--bg-tertiary, #e0e0e0);border-radius:3px;overflow:hidden}.party-current-track-progress-bar{height:100%;background:var(--accent-primary, #2196f3);transition:width .3s ease}.party-playlist-item{display:flex;flex-direction:column;transition:background-color .2s;border-left:3px solid transparent}.party-playlist-item:hover{background-color:var(--bg-hover, #f0f0f0)}.party-playlist-item--current{background-color:var(--accent-primary-light, #e3f2fd);font-weight:500}.party-playlist-item--played{opacity:.6}.party-playlist-item--disabled{opacity:.4;text-decoration:line-through}.party-playlist-item-row{display:flex;align-items:center;gap:12px;padding:12px 24px;min-width:0}.party-playlist-item-state{display:flex;align-items:center;justify-content:center;flex-shrink:0}.party-playlist-item-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;background:var(--bg-tertiary, #e0e0e0);color:var(--text-secondary, #666666)}.party-playlist-item-circle[data-state=current]{background:var(--accent-primary, #2196f3);color:#fff}.party-playlist-item-circle[data-state=played]{background:var(--border-color, #e0e0e0);color:var(--text-secondary, #666666)}.party-playlist-item-circle[data-state=disabled]{background:var(--bg-tertiary, #e0e0e0);color:var(--text-tertiary, #999999)}.party-playlist-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.party-playlist-item-name-wrap{display:flex;align-items:center;gap:6px;min-width:0}.party-playlist-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.party-playlist-item-name--expanded{white-space:normal;word-break:break-word}.party-playlist-item-expand{padding:2px 4px;min-width:20px;border-radius:4px;flex-shrink:0;font-size:14px;cursor:pointer;border:none;background:transparent;color:var(--text-tertiary, #999999)}.party-playlist-item-expand:hover{color:var(--text-primary, #000);background:var(--bg-hover, #eee)}.party-playlist-item-artist,.party-playlist-item-path{font-size:12px;margin-top:1px;color:var(--text-secondary, #666666);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-playlist-item-duration{flex-shrink:0;color:var(--text-secondary, #666666);font-size:13px;margin-left:12px}.party-playlist-item-content{display:flex;align-items:center;width:100%}.party-playlist-item-main{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.party-playlist-view{display:flex;flex-direction:column;height:100%;background:var(--bg-primary, #ffffff);color:var(--text-primary, #000000)}.party-playlist-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:20px 24px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #f5f5f5)}.party-playlist-header-title{display:flex;align-items:center;gap:8px;min-width:0}.party-playlist-header-icon{display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666666)}.party-playlist-header-label{font-weight:600;font-size:1rem}.party-playlist-stats{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary, #666666)}.party-playlist-stats-remaining-label{color:var(--text-secondary, #666666)}.party-playlist-stats-not-yet-played{font-weight:600;color:var(--text-primary, #000000)}.party-playlist-stats-separator{color:var(--text-tertiary, #999999)}.party-playlist-items{flex:1;overflow-y:auto;padding:8px 0}.party-playlist-empty{display:flex;align-items:center;justify-content:center;min-height:200px;padding:24px 16px;color:var(--text-secondary, #666666)}.party-playlist-empty p{margin:0}.party-playlist-group-items{margin-top:4px}.party-display{display:flex;flex-direction:column;height:100%;width:100%;min-height:100vh;position:relative}.party-display-main{display:flex;flex-direction:column;flex:1;width:100%;padding:32px 16px;gap:24px;max-width:min(100%,1200px);margin-left:auto;margin-right:auto;box-sizing:border-box}.party-display-header{padding:0;display:flex;align-items:center;justify-content:center}.party-display-header-text{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0;text-align:center}.party-display-title{margin:0;font-size:clamp(22px,5vw,32px);font-weight:700}.party-display-subtitle{margin:0;font-size:clamp(14px,3vw,18px);color:var(--text-secondary, rgba(255, 255, 255, .8))}.party-display-session-indicator{display:flex;align-items:center;gap:8px;margin-top:12px}.party-display-session-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-primary, #2196f3);flex-shrink:0}.party-display-session-label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, rgba(255, 255, 255, .8))}.party-display-container{display:flex;flex-direction:column;flex:1;width:100%;padding:0;min-height:0;gap:16px}.party-display-player{flex-shrink:0;border-radius:8px;overflow:hidden}.party-display-playlist-wrapper{border-radius:8px;overflow:hidden;flex:1;min-height:0;display:flex;flex-direction:column}.party-display-playlist{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.form-label{font-size:14px;font-weight:500;color:var(--text-primary, #333)}.form-input{padding:12px 16px;border:1px solid var(--ui-border, #ddd);border-radius:8px;font-size:16px;transition:border-color .2s;background-color:var(--bg-primary, #fff);color:var(--text-primary, #333)}.form-input:focus{outline:none;border-color:var(--accent-primary, #667eea)}.form-input:disabled{background-color:var(--bg-disabled, #f5f5f5);cursor:not-allowed}.form-input--error{border-color:var(--state-error, #d32f2f)}.form-hint{font-size:12px;color:var(--text-secondary, #999)}.form-error{font-size:12px;color:var(--state-error, #d32f2f)}.form-button{padding:14px 20px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.form-button--full-width{width:100%}.form-button--primary{background:var(--accent-primary, #667eea);color:#fff}.form-button--primary:hover:not(:disabled){background:var(--accent-primary-hover, #5568d3);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.form-button--primary:active:not(:disabled){transform:translateY(0)}.form-button--secondary{background:var(--bg-secondary, #f5f5f5);color:var(--text-primary, #333)}.form-button--secondary:hover:not(:disabled){background:var(--bg-secondary-hover, #e0e0e0)}.form-button--outline{background:transparent;border:1px solid var(--ui-border, #ddd);color:var(--text-primary, #333)}.form-button--outline:hover:not(:disabled){border-color:var(--accent-primary, #667eea);color:var(--accent-primary, #667eea)}.form-button:disabled{background:var(--bg-disabled, #999);cursor:not-allowed;transform:none;opacity:.6}.form-button--loading{cursor:wait}.error-message{padding:12px;background:var(--state-error-bg, rgba(211, 47, 47, .1));border:1px solid var(--state-error-border, rgba(211, 47, 47, .3));border-radius:8px;color:var(--state-error, #d32f2f);font-size:14px;margin-bottom:16px}.email-auth-form{width:100%}.email-auth-form-tabs{display:flex;gap:8px;margin-bottom:16px;border-bottom:1px solid var(--ui-border, #ddd)}.email-auth-form-tab{flex:1;padding:8px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #666);cursor:pointer;font-size:14px;transition:color .2s,border-color .2s}.email-auth-form-tab:hover{color:var(--text-primary, #333)}.email-auth-form-tab--active{color:var(--accent-primary, #667eea);border-bottom-color:var(--accent-primary, #667eea)}.email-auth-form-content{display:flex;flex-direction:column;gap:16px}.oauth-buttons{display:flex;flex-direction:column;gap:12px}.oauth-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:1px solid var(--ui-border, #ddd);border-radius:8px;background:var(--bg-primary, #fff);color:var(--text-primary, #333);font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.oauth-button:hover:not(:disabled){background:var(--bg-secondary, #f5f5f5);border-color:var(--accent-primary, #667eea)}.oauth-button:disabled{opacity:.6;cursor:not-allowed}.oauth-button-icon{font-size:20px}.auth-form-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;padding:var(--spacing-md, 16px)}.auth-form-container--compact{padding:var(--spacing-sm, 8px);min-height:auto}.auth-form-card{max-width:420px;width:100%;background-color:var(--bg-secondary, #fff);border:1px solid var(--ui-border, #ddd);border-radius:8px;padding:var(--spacing-lg, 20px);box-shadow:0 4px 16px var(--ui-shadow, rgba(0, 0, 0, .1))}.auth-form-title{margin-top:0;margin-bottom:var(--spacing-sm, 8px);text-align:center;font-size:var(--font-size-heading, 20px);font-weight:var(--font-weight-heading, 600);color:var(--text-primary, #333)}.auth-form-description{margin:0 0 var(--spacing-md, 16px);text-align:center;font-size:var(--font-size-body, 14px);color:var(--text-secondary, #666)}.auth-form-warning{padding:var(--spacing-md, 16px);margin-bottom:var(--spacing-lg, 16px);background-color:#ffc1071a;color:#ffc107;border-radius:4px;border:1px solid rgba(255,193,7,.3)}.auth-form-warning strong{display:block;margin-bottom:var(--spacing-xs, 4px)}.auth-form-warning p{margin:var(--spacing-xs, 4px) 0 0 0;font-size:var(--font-size-body, 14px);color:var(--text-secondary, #666)}.auth-form-error{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);margin-bottom:var(--spacing-md, 16px);background-color:#d32f2f1a;color:var(--state-error, #d32f2f);border-radius:4px;border:1px solid rgba(211,47,47,.3);font-size:var(--font-size-body, 14px)}.auth-form-tabs{display:flex;gap:var(--spacing-xs, 8px);margin-bottom:var(--spacing-md, 16px);border-bottom:1px solid var(--ui-border, #ddd)}.auth-form-tab{flex:1;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #666);cursor:pointer;font-size:var(--font-size-body, 14px);transition:color .2s,border-color .2s}.auth-form-tab:hover{color:var(--text-primary, #333)}.auth-form-tab--active{color:var(--accent-primary, #667eea);border-bottom-color:var(--accent-primary, #667eea)}.cabinet-page{min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);color:var(--text-primary);padding:24px 20px;box-sizing:border-box}.cabinet-container{max-width:800px;margin:0 auto;background:#ffffff0d;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 24px var(--shadow);box-sizing:border-box}.cabinet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.cabinet-header h1{margin:0;font-size:28px;font-weight:700;color:var(--text-primary)}.logout-button{padding:10px 20px;background:#dc354533;color:#ff6b6b;border:1px solid rgba(255,107,107,.5);border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.logout-button:hover{background:#dc354559;border-color:#ff6b6b}.organizer-info{margin-bottom:24px}.organizer-logo{width:100px;height:100px;border-radius:50%;object-fit:cover;margin-bottom:20px;border:2px solid rgba(255,255,255,.2)}.organizer-info h2{margin:0 0 20px;font-size:24px;color:var(--text-primary)}.organizer-links{margin:20px 0}.organizer-links h3{margin:0 0 10px;font-size:18px;color:var(--text-secondary)}.organizer-links ul{list-style:none;padding:0;margin:0}.organizer-links li{margin:8px 0}.organizer-links a{color:#0cf;text-decoration:none}.organizer-links a:hover{text-decoration:underline;color:#0f8}.organizer-meta{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color);color:var(--text-tertiary);font-size:14px}.cabinet-parties{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-color)}.cabinet-parties-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cabinet-parties-header h3{margin:0;font-size:20px;color:var(--text-primary)}.cabinet-btn{padding:8px 16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff14;color:var(--text-primary);cursor:pointer;font-size:14px;transition:all .2s ease}.cabinet-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--selected-border)}.cabinet-btn-primary{background:#00ff0026;color:#0f8;border-color:#0f06}.cabinet-btn-primary:hover:not(:disabled){background:#00ff0040;border-color:#0f09}.cabinet-btn-sm{padding:4px 10px;font-size:13px}.cabinet-btn-danger{color:#ff6b6b;border-color:#ff6b6b80;background:transparent}.cabinet-btn-danger:hover:not(:disabled){background:var(--state-error-bg);border-color:#ff6b6b}.cabinet-error{padding:12px;margin-bottom:16px;background:var(--state-error-bg);color:var(--state-error-text);border:1px solid rgba(255,107,107,.4);border-radius:var(--radius-md);font-size:14px}.cabinet-form{padding:20px;margin-bottom:16px;background:#ffffff0a;border:1px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box}.cabinet-form h4{margin:0 0 12px;font-size:17px;font-weight:600;color:var(--text-primary)}.cabinet-form label{display:block;font-size:14px;color:var(--text-secondary)}.cabinet-form label:not(.cabinet-checkbox){margin-bottom:10px}.cabinet-form label:not(.cabinet-checkbox) input,.cabinet-form label:not(.cabinet-checkbox) select,.cabinet-form label:not(.cabinet-checkbox) textarea{display:block;width:100%;max-width:400px;margin-top:4px;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;background:#ffffff0f;color:var(--text-primary)}.cabinet-form label:not(.cabinet-checkbox) input::placeholder,.cabinet-form label:not(.cabinet-checkbox) textarea::placeholder{color:var(--text-disabled)}.cabinet-form label:not(.cabinet-checkbox) input:focus,.cabinet-form label:not(.cabinet-checkbox) select:focus,.cabinet-form label:not(.cabinet-checkbox) textarea:focus{outline:none;border-color:#00ff0080;box-shadow:0 0 0 2px #00ff0026}.cabinet-char-count{display:block;margin-top:2px;font-size:12px;color:var(--text-tertiary)}.cabinet-form-field{margin-bottom:14px}.cabinet-form-field-label{display:block;font-size:14px;color:var(--text-secondary);margin-bottom:6px}.cabinet-dance-tags-predefined{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.cabinet-tag-btn{padding:6px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffff0f;color:var(--text-primary);font-size:13px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.cabinet-tag-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--selected-border)}.cabinet-tag-btn--selected{background:#00ff0026;border-color:#0f06;color:#0f8}.cabinet-tag-btn:disabled{opacity:.6;cursor:not-allowed}.cabinet-dance-tags-custom{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;max-width:400px}.cabinet-dance-tags-custom--inline{margin-bottom:0;flex:1;min-width:120px}.cabinet-dance-tags-custom--inline .cabinet-tag-input{min-width:100px}.cabinet-dance-tags-custom-hint{font-size:12px;color:var(--text-secondary, #888)}.cabinet-tag-input{flex:1;min-width:0;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;background:#ffffff0f;color:var(--text-primary)}.cabinet-tag-input:focus{outline:none;border-color:#00ff0080;box-shadow:0 0 0 2px #00ff0026}.cabinet-tag-input::placeholder{color:var(--text-disabled)}.cabinet-dance-tags-list{display:flex;flex-wrap:wrap;gap:6px}.cabinet-tag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#ffffff14;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:13px;color:var(--text-primary)}.cabinet-tag-remove{padding:0 2px;margin:0;border:none;background:none;color:var(--text-tertiary);font-size:16px;line-height:1;cursor:pointer;border-radius:2px}.cabinet-tag-remove:hover{color:#ff6b6b;background:#ff6b6b26}.cabinet-form input[type=datetime-local]{color-scheme:dark}.cabinet-form input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.8;cursor:pointer}.cabinet-form label:not(.cabinet-checkbox) select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.cabinet-form label:not(.cabinet-checkbox) select option{background:var(--bg-secondary);color:var(--text-primary);padding:8px 12px}.cabinet-form label:not(.cabinet-checkbox) select:hover{border-color:var(--selected-border)}.cabinet-form label:not(.cabinet-checkbox) select:active{border-color:#00ff0080}.cabinet-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.cabinet-checkbox input{width:18px;height:18px;min-width:18px;margin:0;cursor:pointer;accent-color:#00cc88}.cabinet-form-actions{margin-top:16px;display:flex;gap:8px}.cabinet-loading,.cabinet-empty{color:var(--text-tertiary);font-size:14px}.cabinet-party-list{list-style:none;padding:0;margin:0}.cabinet-party-item{padding:14px 16px;margin-bottom:10px;background:#ffffff0a;border:1px solid var(--border-color);border-radius:var(--radius-md);transition:background .2s ease,border-color .2s ease;box-sizing:border-box}.cabinet-party-item:last-child{margin-bottom:0}.cabinet-party-item--expanded .cabinet-party-actions{margin-bottom:0}.cabinet-party-edit{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color)}.cabinet-party-item:hover{background:var(--bg-hover);border-color:var(--selected-border)}.cabinet-party-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.cabinet-party-name{font-weight:600;color:var(--text-primary)}.cabinet-party-short{color:var(--text-tertiary);font-family:monospace}.cabinet-party-link{color:#0cf;font-size:14px;text-decoration:none}.cabinet-party-link:hover{color:#0f8;text-decoration:underline}.cabinet-party-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:2px}.cabinet-toggle-label{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-secondary);margin:0;cursor:pointer;-webkit-user-select:none;user-select:none}.cabinet-toggle-label input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:0;cursor:pointer;accent-color:#00cc88;flex-shrink:0}.cabinet-toggle-label input[type=checkbox]:disabled{opacity:.6;cursor:not-allowed}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);padding:20px}.login-page-form{max-width:500px;width:100%;background:#ffffff0d;padding:32px;border-radius:var(--radius-md);border:1px solid var(--border-color)}.login-page-form .auth-form-card{background:#ffffff0d;border-color:var(--border-color)}.login-page-form .form-group input{background:#ffffff0f;border-color:var(--border-color);color:var(--text-primary)}.login-page-form .auth-form-tabs,.login-page-form .email-auth-form-tabs{border-bottom-color:var(--border-color)}.login-page-form .auth-form-tab,.login-page-form .email-auth-form-tab{color:var(--text-secondary)}.login-page-form .auth-form-tab:hover,.login-page-form .email-auth-form-tab:hover{color:var(--text-primary)}.login-page-form .auth-form-tab--active,.login-page-form .email-auth-form-tab--active{color:var(--text-primary);border-bottom-color:#0f89}.login-container h1{margin:0 0 10px;font-size:24px;font-weight:600;color:var(--text-primary);text-align:center}.login-subtitle{margin:0 0 30px;color:var(--text-secondary);text-align:center;font-size:14px}.login-buttons{display:flex;flex-direction:column;gap:12px}.login-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;color:var(--text-primary);background:var(--bg-secondary)}.login-button:hover{background:var(--bg-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.login-button:active{transform:translateY(0)}.login-button-telegram{background:var(--bg-secondary)}.login-button-telegram:hover{background:var(--bg-hover)}.login-button-vk{background:var(--bg-secondary)}.login-button-vk:hover{background:var(--bg-hover)}.login-button-mailru{background:var(--bg-secondary)}.login-button-mailru:hover{background:var(--bg-hover)}.login-button-icon{font-size:20px}.oauth-buttons{display:flex;flex-direction:column;gap:10px}.oauth-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff0f;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background .2s,border-color .2s}.oauth-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--selected-border)}.oauth-button-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:18px}.vkid-widget-container{min-height:50px;display:flex;align-items:center;justify-content:center;margin:12px 0}.vkid-widget-container:empty{display:none}.auth-mode-switcher{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid var(--border-color)}.auth-mode-button{flex:1;padding:10px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.auth-mode-button:hover{color:var(--text-primary)}.auth-mode-button.active{color:var(--text-primary);border-bottom-color:var(--text-primary)}.email-login-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.form-group input{padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:16px;transition:border-color .2s;background:var(--bg-tertiary);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--text-primary)}.form-group input:disabled{background-color:var(--bg-secondary);cursor:not-allowed;opacity:.5}.login-button-email{background:var(--bg-secondary);margin-top:8px}.login-button-email:hover{background:var(--bg-hover)}.login-button-email:disabled{background:var(--bg-secondary);cursor:not-allowed;transform:none;opacity:.5}.error-message{padding:12px;background:var(--state-error-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--state-error-text);font-size:14px}.register-link{text-align:center;font-size:14px;color:var(--text-secondary);margin-top:8px}.register-link a{color:var(--text-primary);text-decoration:none;font-weight:500}.register-link a:hover{text-decoration:underline}.party-info-page{min-height:100vh;padding:4rem 2rem 2rem;background:var(--bg-primary, #1a1a1a);color:var(--text-primary, #ffffff);transition:background-color .2s ease,color .2s ease;position:relative;box-sizing:border-box}.party-info-page[data-theme=spring-cross-step]{padding:0}.party-info-page-header{position:absolute;top:0;right:0;z-index:10;display:flex;align-items:center;justify-content:flex-end;padding:1rem 2rem}.party-info-page[data-theme=spring-cross-step] .party-info-page-header{padding:1rem 1.5rem}.party-info-page-header-controls{display:flex;align-items:center;gap:1rem}.party-info-page-back-btn,.party-info-page-playlist-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;background:var(--bg-tertiary, rgba(0, 0, 0, .4));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-primary, #ffffff);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:inherit}.party-info-page-playlist-btn{text-decoration:none}.party-info-page-back-btn:hover,.party-info-page-playlist-btn:hover{background:var(--bg-hover, rgba(0, 0, 0, .6));border-color:var(--accent-primary, rgba(255, 255, 255, .3));transform:translateY(-2px);color:var(--text-primary, #ffffff)}.party-info-page-back-btn:hover{transform:translate(-2px)}.party-info-container{max-width:640px;margin:0 auto;background:var(--bg-secondary, #2a2a2a);border-radius:12px;padding:32px;border:1px solid var(--border-color, rgba(255, 255, 255, .1));box-shadow:0 4px 24px #0000004d}.party-info-title{margin:0 0 24px;font-size:28px;font-weight:700;color:var(--text-primary, #ffffff);letter-spacing:-.02em;line-height:1.2}.party-info-section{margin-bottom:24px}.party-info-description{margin:0;font-size:16px;line-height:1.6;color:var(--text-secondary, rgba(255, 255, 255, .85));white-space:pre-wrap}.party-info-meta{margin-bottom:24px;padding-top:16px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.party-info-meta p{margin:8px 0;font-size:15px;color:var(--text-secondary, rgba(255, 255, 255, .8))}.party-info-meta strong{color:var(--text-primary, #ffffff);font-weight:600}.party-info-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.party-info-link-btn{display:inline-block;padding:12px 24px;background:var(--accent-primary, #4a9eff);color:#fff;border-radius:8px;text-decoration:none;font-weight:600;border:1px solid var(--border-color, transparent);transition:background .2s ease,transform .2s ease}.party-info-link-btn:hover{background:var(--accent-primary-light, rgba(74, 158, 255, .9));transform:translateY(-1px)}.party-info-link-back{color:var(--text-secondary, rgba(255, 255, 255, .7));text-decoration:none;font-size:14px;transition:color .2s ease}.party-info-link-back:hover{color:var(--accent-primary, #4a9eff)}.party-info-error{color:#ff6b6b;margin-bottom:12px;font-weight:500}.party-info-page a[href="/"]{color:var(--accent-primary, #4a9eff);text-decoration:none}.party-info-page a[href="/"]:hover{text-decoration:underline}.error-message-container{display:flex;align-items:center;justify-content:center;min-height:50vh;padding:2rem}.error-message{text-align:center;max-width:500px;padding:2rem;background:#ffffff0d;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color)}.error-message-icon{font-size:4rem;margin-bottom:1rem}.error-message-title{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.error-message-text{color:var(--text-secondary);font-size:1rem;margin:0 0 1.5rem;line-height:1.5}.error-message-retry{padding:.75rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:var(--text-primary);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.error-message-retry:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.error-message-retry:active{transform:translateY(0)}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1.5rem}.loading-spinner{position:relative}.spinner{width:60px;height:60px;border:4px solid var(--border-color);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner-message{color:var(--text-secondary);font-size:1.125rem;margin:0}.party-list-page{min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);color:var(--text-primary);padding:20px}.party-list-container{max-width:1200px;margin:0 auto}.party-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid rgba(255,255,255,.1)}.party-list-title{font-size:32px;font-weight:700;margin:0;color:var(--text-primary)}.party-list-header-actions{display:flex;align-items:center;gap:12px}.party-list-login-link{background:#ffffff1a;border:1px solid var(--border-color);color:var(--text-primary);padding:8px 16px;border-radius:var(--radius-md);text-decoration:none;font-size:14px;font-weight:500;transition:all .3s ease;display:inline-block}.party-list-login-link:hover{background:var(--bg-hover);border-color:var(--selected-border);transform:translateY(-1px)}.party-list-refresh-btn{background:#ffffff1a;border:1px solid var(--border-color);color:var(--text-primary);font-size:24px;width:40px;height:40px;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.party-list-refresh-btn:hover{background:var(--bg-hover);transform:rotate(180deg)}.party-list-empty{text-align:center;padding:60px 20px;color:var(--text-tertiary)}.party-list-empty p{margin:10px 0;font-size:18px}.party-list-empty-hint{font-size:14px;color:var(--text-disabled)}.party-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.party-list-card{background:#ffffff0d;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:20px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.party-list-card:hover{background:#ffffff1a;border-color:#00ff0080;transform:translateY(-4px);box-shadow:0 8px 24px #0f03}.party-list-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.party-list-card-title{font-size:20px;font-weight:600;margin:0;color:var(--text-primary);flex:1}.party-list-card-body{display:flex;flex-direction:column;gap:12px}.party-list-card-description{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.4}.party-list-card-tags{display:flex;flex-wrap:wrap;gap:6px}.party-list-card-tag{display:inline-block;padding:4px 10px;border-radius:var(--radius-sm);font-size:12px;background:#ffffff1a;border:1px solid var(--border-color);color:var(--text-secondary)}.party-list-card-external-link{color:#08c;text-decoration:none;font-size:14px}.party-list-card-external-link:hover{text-decoration:underline}.party-list-card-external-link--text{cursor:default}.party-list-card-external-link--text:hover{text-decoration:none}.party-list-card-info{display:flex;flex-direction:column;gap:8px}.party-list-card-info-item{display:flex;justify-content:space-between;align-items:center;font-size:14px}.party-list-card-info-label{color:var(--text-secondary)}.party-list-card-info-value{color:var(--text-primary);font-weight:500}.party-list-filters{background:#ffffff0d;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:16px;margin-bottom:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.party-list-filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.party-list-filters-toggle{background:transparent;border:none;color:var(--text-primary);font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;padding:8px 0;transition:color .3s ease}.party-list-filters-toggle:hover{color:#0f0c}.party-list-filters-toggle-icon{font-size:12px;transition:transform .3s ease}.party-list-filters-clear{background:#ffffff1a;border:1px solid var(--border-color);color:var(--text-primary);font-size:14px;padding:6px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .3s ease}.party-list-filters-clear:hover{background:var(--bg-hover);border-color:#ff000080}.party-list-filters-content{display:flex;flex-direction:column;gap:16px;padding-top:16px;border-top:1px solid var(--border-color)}.party-list-filters-group{display:flex;flex-direction:column;gap:8px}.party-list-filters-label{color:var(--text-secondary);font-size:14px;font-weight:500}.party-list-filters-input{background:#ffffff1a;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;padding:8px 12px;transition:all .3s ease}.party-list-filters-input:focus{outline:none;border-color:#00ff0080;background:var(--bg-hover)}.party-list-filters-days{display:flex;gap:8px;flex-wrap:wrap}.party-list-filters-day{background:#ffffff1a;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;font-weight:500;padding:8px 12px;cursor:pointer;transition:all .3s ease;min-width:40px;text-align:center}.party-list-filters-day:hover{background:var(--bg-hover);border-color:#00ff004d}.party-list-filters-day--active{background:#0f03;border-color:#00ff0080;color:#0f0}.party-list-empty-clear{background:#ffffff1a;border:1px solid var(--border-color);color:var(--text-primary);font-size:14px;padding:8px 16px;border-radius:var(--radius-sm);cursor:pointer;margin-top:16px;transition:all .3s ease}.party-list-empty-clear:hover{background:var(--bg-hover)}@media (max-width: 768px){.party-list-grid{grid-template-columns:1fr}.party-list-title{font-size:24px}.party-list-card{padding:16px}.party-list-filters-content{gap:12px}.party-list-filters-days{gap:6px}.party-list-filters-day{padding:6px 10px;font-size:12px;min-width:36px}}.party-view{min-height:100vh;display:flex;flex-direction:column}.party-view-container{display:flex;flex-direction:column;flex:1;position:relative}.party-view-header{position:absolute;top:0;right:0;z-index:10;display:flex;align-items:center;justify-content:flex-end;padding:1rem 2rem}.party-view-header-controls{display:flex;align-items:center;gap:1rem}.party-view-back-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;background:var(--bg-tertiary, rgba(0, 0, 0, .4));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-primary, #ffffff);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s ease}.party-view-back-btn:hover{background:var(--bg-hover, rgba(0, 0, 0, .6));border-color:var(--accent-primary, rgba(255, 255, 255, .3));transform:translate(-2px)}.party-view-info-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;background:var(--bg-tertiary, rgba(0, 0, 0, .4));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-primary, #ffffff);border-radius:8px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .3s ease}.party-view-info-btn:hover{background:var(--bg-hover, rgba(0, 0, 0, .6));border-color:var(--accent-primary, rgba(255, 255, 255, .3));transform:translateY(-2px)}.party-view-start-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;background:var(--accent-primary-light, rgba(102, 126, 234, .2));color:var(--accent-primary, #667eea);border:1px solid var(--border-color, rgba(102, 126, 234, .4));border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.party-view-start-button:hover:not(:disabled){transform:translateY(-2px);background:var(--accent-primary, #667eea);color:var(--bg-primary, #ffffff)}.party-view-start-button:active:not(:disabled){transform:translateY(0)}.party-view-start-button:disabled{opacity:.6;cursor:not-allowed}.party-view-streaming-icon{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--accent-primary-light, rgba(0, 255, 0, .1));border:1px solid var(--border-color, rgba(0, 255, 0, .3));border-radius:12px;font-size:.875rem;font-weight:600;color:var(--accent-primary, #00ff00)}.party-view-streaming-dot{width:8px;height:8px;background:var(--accent-primary, #00ff00);border-radius:50%;animation:pulse 2s ease-in-out infinite;box-shadow:0 0 10px var(--accent-primary, rgba(0, 255, 0, .8))}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.party-view-streaming-text{text-transform:uppercase;letter-spacing:.5px}.party-view-connection-status{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:12px;font-size:.875rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.party-view-connection-status--connected{background:var(--accent-primary-light, rgba(0, 255, 0, .1));border:1px solid var(--border-color, rgba(0, 255, 0, .3));color:var(--accent-primary, #00ff00)}.party-view-connection-status--connecting{background:var(--bg-tertiary, rgba(255, 255, 0, .1));border:1px solid var(--border-color, rgba(255, 255, 0, .3));color:var(--text-secondary, #ffff00)}.party-view-connection-status--disconnected{background:var(--bg-tertiary, rgba(255, 255, 255, .1));border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-tertiary, rgba(255, 255, 255, .6))}.party-view-connection-dot{width:8px;height:8px;border-radius:50%}.party-view-connection-dot--connected{background:var(--accent-primary, #00ff00);box-shadow:0 0 10px var(--accent-primary, rgba(0, 255, 0, .8))}.party-view-connection-dot--connecting{background:var(--text-secondary, #ffff00);animation:pulse 2s ease-in-out infinite;box-shadow:0 0 10px var(--text-secondary, rgba(255, 255, 0, .8))}.party-view-connection-dot--disconnected{background:var(--text-tertiary, rgba(255, 255, 255, .4))}.party-view-connection-text{text-transform:uppercase;letter-spacing:.5px}.party-view-demo-badge{display:inline-flex;align-items:center;padding:.5rem 1rem;background:var(--accent-primary-light, rgba(102, 126, 234, .2));border:1px solid var(--border-color, rgba(102, 126, 234, .4));border-radius:20px;font-size:.875rem;font-weight:600;color:var(--accent-primary, #667eea);text-transform:uppercase;letter-spacing:.5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.party-view-content{flex:1;display:flex;flex-direction:column}.party-view-content .party-display{flex:1}.party-view-current-track{position:relative;background:var(--bg-tertiary, rgba(255, 255, 255, .03));border-radius:12px;padding:1rem;border:1px solid var(--border-color, rgba(255, 255, 255, .1))}.party-view-status-badge{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.party-view-status-online{background:var(--accent-primary-light, rgba(0, 255, 0, .2));color:var(--accent-primary, #00ff00);border:1px solid var(--border-color, rgba(0, 255, 0, .3))}.party-view-status-offline{background:var(--bg-tertiary, rgba(255, 255, 255, .1));color:var(--text-tertiary, rgba(255, 255, 255, .6));border:1px solid var(--border-color, rgba(255, 255, 255, .2))}@media (max-width: 768px){.party-view-header{padding:.75rem 1rem}.party-view-header-controls{flex-wrap:wrap;gap:.5rem}.party-view-back-btn{padding:.4rem .75rem;font-size:.8rem}.party-view-start-button{width:100%;padding:.875rem 1.5rem}}[data-theme=cyberpunk] .party-playlist-view{background:#0a0a0a;color:#0f0;font-family:Courier New,monospace}[data-theme=cyberpunk] .party-playlist-header{background:#1a1a1a;border-bottom:3px solid var(--accent-color, #00ff00);box-shadow:0 0 16px #0f06,inset 0 0 8px #00000080;padding:24px 32px;position:relative}[data-theme=cyberpunk] .party-playlist-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-color, #00ff00),transparent);animation:scan 2s linear infinite}[data-theme=cyberpunk] .party-playlist-stats{color:#0f0;text-shadow:0 0 8px var(--accent-color, #00ff00);font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase}[data-theme=cyberpunk] .party-playlist-stats-separator{color:#0f8;margin:0 12px;font-weight:400}[data-theme=cyberpunk] .party-playlist-items{background:#0a0a0a;padding:16px 0}[data-theme=cyberpunk] .party-playlist-empty{color:#666;text-shadow:none;padding:56px 32px;text-align:center;font-size:15px;font-family:Courier New,monospace}[data-theme=cyberpunk] .party-playlist-group-items{border-left:2px solid rgba(0,255,0,.3);margin-left:24px;padding-left:24px;margin-top:12px}[data-theme=cyberpunk] .party-playlist-item{background:#0a0a0a;border-bottom:1px solid rgba(0,255,0,.1);border-left:2px solid transparent;transition:all .2s ease;padding:14px 24px;margin:6px 20px;cursor:pointer;position:relative}[data-theme=cyberpunk] .party-playlist-item--group{background:#00ff0014;border-left:3px solid rgba(0,255,0,.3);font-weight:700}[data-theme=cyberpunk] .party-playlist-item--track{background:#0a0a0a}[data-theme=cyberpunk] .party-playlist-item:before{content:">";position:absolute;left:8px;opacity:0;transition:opacity .2s;color:var(--accent-color, #00ff00);font-weight:700}[data-theme=cyberpunk] .party-playlist-item:hover{background:#1a1a1a;box-shadow:0 0 12px #00ff004d;border-left:4px solid var(--accent-color, #00ff00);transform:translate(4px)}[data-theme=cyberpunk] .party-playlist-item--group:hover{background:#00ff001f;border-left-color:#00ff0080}[data-theme=cyberpunk] .party-playlist-item:hover:before{opacity:1}[data-theme=cyberpunk] .party-playlist-item--current{background:#00ff0026;border-left:5px solid var(--accent-color, #00ff00);box-shadow:0 0 20px rgba(0,255,0,calc(var(--glow-intensity, .5) * 1.2));font-weight:700;text-shadow:0 0 8px var(--accent-color, #00ff00);padding:18px 28px;margin:8px 16px}[data-theme=cyberpunk] .party-playlist-item--played{opacity:.45;color:#666}[data-theme=cyberpunk] .party-playlist-item--disabled{opacity:.35;text-decoration:line-through;color:#444;cursor:not-allowed}[data-theme=cyberpunk] .party-playlist-item-name{color:#0f0;font-weight:500;font-size:15px;line-height:1.5;margin-bottom:4px;letter-spacing:.5px;padding-left:16px}[data-theme=cyberpunk] .party-playlist-item--group .party-playlist-item-name{padding-left:8px}[data-theme=cyberpunk] .party-playlist-item-group-icon{margin-right:10px}[data-theme=cyberpunk] .party-playlist-item-duration{color:#0f8;font-size:13px;font-weight:500;letter-spacing:.5px}[data-theme=cyberpunk] .party-current-track-display{background:#1a1a1a;border-bottom:3px solid var(--accent-color, #00ff00);box-shadow:0 0 20px #0f06,inset 0 0 12px #00000080;padding:28px 32px;border-radius:8px 8px 0 0;position:relative}[data-theme=cyberpunk] .party-current-track-display:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-color, #00ff00),transparent);animation:scan 3s linear infinite}@keyframes scan{0%{transform:translate(-100%)}to{transform:translate(100%)}}[data-theme=cyberpunk] .party-current-track-empty{color:#666;padding:40px 32px;text-align:center;font-size:15px;font-family:Courier New,monospace}[data-theme=cyberpunk] .party-current-track-name{color:#0f0;font-weight:800;text-shadow:0 0 12px var(--accent-color, #00ff00),0 0 24px var(--accent-color, #00ff00);letter-spacing:2px;font-size:22px;margin-bottom:16px;text-transform:uppercase;line-height:1.3}[data-theme=cyberpunk] .party-current-track-meta{color:#0f8;font-size:15px;margin-bottom:20px;display:flex;align-items:center;gap:16px;font-family:Courier New,monospace}[data-theme=cyberpunk] .party-current-track-status{color:var(--accent-color, #00ff00);text-shadow:0 0 8px var(--accent-color, #00ff00);font-weight:700;padding:6px 14px;background:#00ff001a;border:1px solid rgba(0,255,0,.4);border-radius:4px;font-size:12px;text-transform:uppercase;letter-spacing:1px;font-family:Courier New,monospace}[data-theme=cyberpunk] .party-current-track-time{color:#0f8;font-family:Courier New,monospace;font-weight:600;font-size:15px;letter-spacing:1px}[data-theme=cyberpunk] .party-current-track-progress{background:#0a0a0a;border:1px solid rgba(0,255,0,.3);box-shadow:inset 0 0 5px #0f03}[data-theme=cyberpunk] .party-current-track-progress-bar{background:linear-gradient(90deg,var(--accent-color, #00ff00),#00ff88);box-shadow:0 0 10px var(--accent-color, #00ff00);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.party-info-display{min-height:100vh;padding:0;background:var(--bg-primary, #1a1a1a);color:var(--text-primary, #ffffff);transition:background-color .2s ease,color .2s ease;box-sizing:border-box}.party-info-display-container{width:100%;box-sizing:border-box;background:var(--bg-secondary, #2a2a2a);border-radius:12px;padding:32px;border:1px solid var(--border-color, rgba(255, 255, 255, .1));box-shadow:0 4px 24px #0000004d}.party-info-display-inner{padding:24px 24px 32px;box-sizing:border-box}.party-info-display-meta--top{margin-top:0;padding-top:0;border-top:none;margin-bottom:20px}.party-info-display-title{margin:0 0 24px;font-size:28px;font-weight:700;color:var(--text-primary, #ffffff);letter-spacing:-.02em;line-height:1.2}.party-info-display-section{margin-bottom:24px}.party-info-display-description{margin:0;font-size:16px;line-height:1.6;color:var(--text-secondary, rgba(255, 255, 255, .85));white-space:pre-wrap}.party-info-display-meta{margin-bottom:24px;padding-top:16px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.party-info-display-meta p{margin:8px 0;font-size:15px;color:var(--text-secondary, rgba(255, 255, 255, .8))}.party-info-display-meta strong{color:var(--text-primary, #ffffff);font-weight:600}.party-info-display-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.party-info-display-link-btn{display:inline-block;padding:12px 24px;background:var(--accent-primary, #4a9eff);color:#fff;border-radius:8px;text-decoration:none;font-weight:600;border:1px solid var(--border-color, transparent);transition:background .2s ease,transform .2s ease;cursor:pointer;font-size:14px}.party-info-display-link-btn:hover{background:var(--accent-primary-light, rgba(74, 158, 255, .9));transform:translateY(-1px)}.party-info-display-link-back{color:var(--text-secondary, rgba(255, 255, 255, .7));text-decoration:none;font-size:14px;transition:color .2s ease;background:none;border:none;cursor:pointer;padding:0}.party-info-display-link-back:hover{color:var(--accent-primary, #4a9eff)}[data-theme=cyberpunk] .party-info-display{background:linear-gradient(135deg,#0a0a0a,#1a1a1a);color:var(--text-primary)}[data-theme=cyberpunk] .party-info-display-container{background:#1a1a1af2;border:2px solid var(--border-color);box-shadow:0 0 20px #0f03,0 4px 24px #00000080}[data-theme=cyberpunk] .party-info-display-title{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 10px rgba(0,255,0,.3);filter:drop-shadow(0 0 5px rgba(0,255,0,.5))}[data-theme=cyberpunk] .party-info-display-description{color:var(--text-secondary);text-shadow:0 0 5px rgba(0,255,136,.2)}[data-theme=cyberpunk] .party-info-display-meta{border-top-color:var(--border-color)}[data-theme=cyberpunk] .party-info-display-meta strong{color:var(--accent-primary);text-shadow:0 0 5px rgba(0,255,0,.3)}[data-theme=cyberpunk] .party-info-display-link-btn{background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 0 10px #00ff004d;text-transform:uppercase;letter-spacing:.5px}[data-theme=cyberpunk] .party-info-display-link-btn:hover{box-shadow:0 0 15px #00ff0080;transform:translateY(-2px)}[data-theme=cyberpunk] .party-info-display-link-back:hover{color:var(--accent-primary);text-shadow:0 0 5px rgba(0,255,0,.3)}[data-theme=cyberpunk]{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--bg-tertiary: rgba(0, 0, 0, .6);--bg-hover: #252525;--text-primary: #00ff00;--text-secondary: #00ff88;--text-tertiary: #666666;--accent-primary: var(--accent-color, #00ff00);--accent-primary-light: rgba(0, 255, 0, .1);--border-color: rgba(0, 255, 0, .3);--glow-intensity: var(--glow-intensity, .5);background:linear-gradient(135deg,#0a0a0a,#1a1a1a);color:var(--text-primary)}[data-theme=cyberpunk] .party-display{background:transparent;color:var(--text-primary)}[data-theme=cyberpunk] .party-display-title{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 20px rgba(0,255,0,calc(var(--glow-intensity) * .5));font-size:3rem;font-weight:900;letter-spacing:.1em;margin-bottom:.75rem;text-transform:uppercase}[data-theme=cyberpunk] .party-playlist-view{background:var(--bg-primary);color:var(--text-primary);border:2px solid rgba(0,255,0,.2);border-radius:8px;overflow:hidden;box-shadow:0 0 24px #0f03,inset 0 0 16px #00000080}[data-theme=cyberpunk] .party-current-track-display{background:var(--bg-secondary);color:var(--text-primary);border-radius:8px 8px 0 0}[data-theme=sakura] .party-playlist-view{background:linear-gradient(135deg,#fff5f5,#ffeef0);color:#8b4a6b;font-family:Georgia,Times New Roman,serif}[data-theme=sakura] .party-playlist-header{background:#ffffffd9;border-bottom:3px solid rgba(255,182,193,.5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 16px #ffb6c140;padding:28px 36px}[data-theme=sakura] .party-playlist-stats{color:#d4a5a5;font-style:italic;font-size:16px;font-weight:500}[data-theme=sakura] .party-playlist-stats-separator{color:#ffb3d9;margin:0 12px;font-weight:400}[data-theme=sakura] .party-playlist-items{background:transparent;padding:20px 0}[data-theme=sakura] .party-playlist-empty{color:#d4a5a5;padding:64px 36px;text-align:center;font-size:16px;font-style:italic}[data-theme=sakura] .party-playlist-group-items{border-left:3px solid rgba(255,182,193,.4);margin-left:24px;padding-left:24px;margin-top:16px}[data-theme=sakura] .party-playlist-item{background:#fff9;border-bottom:1px solid rgba(255,182,193,.25);border-left:3px solid transparent;transition:all .3s ease;border-radius:12px;margin:8px 24px;padding:16px 24px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=sakura] .party-playlist-item--group{background:#ffb6c126;border-left:4px solid rgba(255,182,193,.4);font-weight:700}[data-theme=sakura] .party-playlist-item--track{background:#fff9}[data-theme=sakura] .party-playlist-item:hover{background:#ffffffe6;box-shadow:0 4px 16px #ffb6c166;transform:translate(6px) translateY(-2px);border-left-color:#ffb6c199}[data-theme=sakura] .party-playlist-item--group:hover{background:#ffb6c138;border-left-color:#ffb6c199}[data-theme=sakura] .party-playlist-item--current{background:#ffb6c140;border-left:5px solid var(--pink-tint, #ffb3d9);box-shadow:0 6px 20px #ffb6c180;font-weight:700;padding:20px 28px;margin:10px 20px;border-radius:16px}[data-theme=sakura] .party-playlist-item--played{opacity:.65;color:#b88a9e}[data-theme=sakura] .party-playlist-item--disabled{opacity:.45;text-decoration:line-through;color:#c4a5b5;cursor:not-allowed}[data-theme=sakura] .party-playlist-item-name{color:#8b4a6b;font-weight:500;font-size:16px;line-height:1.6;margin-bottom:6px;padding-left:16px}[data-theme=sakura] .party-playlist-item--group .party-playlist-item-name{padding-left:8px}[data-theme=sakura] .party-playlist-item-group-icon{margin-right:10px}[data-theme=sakura] .party-playlist-item-duration{color:#d4a5a5;font-size:14px;font-style:italic;font-weight:500}[data-theme=sakura] .party-current-track-display{background:rgba(255,255,255,calc(var(--background-opacity, .9) * 1));border-bottom:3px solid rgba(255,182,193,.5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 6px 24px #ffb6c159;padding:32px 36px;border-radius:20px 20px 0 0}[data-theme=sakura] .party-current-track-empty{color:#d4a5a5;font-style:italic;padding:48px 36px;text-align:center;font-size:16px}[data-theme=sakura] .party-current-track-name{color:#8b4a6b;font-weight:800;font-style:italic;text-shadow:0 2px 6px rgba(255,182,193,.4);font-size:24px;margin-bottom:16px;line-height:1.4}[data-theme=sakura] .party-current-track-meta{color:#a85c7a;font-size:16px;margin-bottom:20px;display:flex;align-items:center;gap:16px;font-style:italic}[data-theme=sakura] .party-current-track-status{color:var(--pink-tint, #ffb3d9);font-style:italic;font-weight:600;padding:6px 16px;background:#ffb6c133;border:1px solid rgba(255,182,193,.4);border-radius:16px;font-size:13px}[data-theme=sakura] .party-current-track-time{color:#d4a5a5;font-family:Georgia,serif;font-weight:500;font-size:15px;font-style:italic}[data-theme=sakura] .party-current-track-progress{background:#ffffff80;border:1px solid rgba(255,182,193,.3);border-radius:10px;box-shadow:inset 0 2px 4px #ffb6c133}[data-theme=sakura] .party-current-track-progress-bar{background:linear-gradient(90deg,var(--pink-tint, #ffb3d9),#ff91c7);border-radius:10px;box-shadow:0 2px 8px #ffb6c180}[data-theme=sakura] .party-info-display{background:linear-gradient(135deg,#ffeef7,#fff5f9);color:var(--text-primary)}[data-theme=sakura] .party-info-display-container{background:#ffffffe6;border:2px solid rgba(255,179,217,.3);box-shadow:0 4px 24px #ffb3d933}[data-theme=sakura] .party-info-display-title{color:var(--accent-primary);font-weight:600;text-shadow:0 2px 4px rgba(255,179,217,.2)}[data-theme=sakura] .party-info-display-description{color:var(--text-secondary)}[data-theme=sakura] .party-info-display-meta{border-top-color:#ffb3d933}[data-theme=sakura] .party-info-display-meta strong{color:var(--accent-primary)}[data-theme=sakura] .party-info-display-link-btn{background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 2px 8px #ffb3d94d}[data-theme=sakura] .party-info-display-link-btn:hover{box-shadow:0 4px 12px #ffb3d966}[data-theme=sakura] .party-info-display-link-back:hover{color:var(--accent-primary)}[data-theme=sakura]{--bg-primary: #fff5f5;--bg-secondary: rgba(255, 255, 255, .8);--bg-tertiary: rgba(255, 220, 230, .6);--bg-hover: rgba(255, 200, 220, .4);--text-primary: #8b4a6b;--text-secondary: #d4a5a5;--text-tertiary: #b88a9e;--accent-primary: var(--pink-tint, #ffb3d9);--accent-primary-light: rgba(255, 182, 193, .2);--border-color: rgba(255, 182, 193, .5);--background-opacity: var(--background-opacity, .9);background:linear-gradient(135deg,#ffeef5,#fff5f5,#ffeef0);color:var(--text-primary)}[data-theme=sakura] .party-display{background:transparent;color:var(--text-primary)}[data-theme=sakura] .party-display-title{color:var(--text-primary);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--text-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:3rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem}[data-theme=sakura] .party-playlist-view{background:var(--bg-primary);color:var(--text-primary);border-radius:20px;overflow:hidden;box-shadow:0 8px 32px #ffb6c133;border:1px solid rgba(255,182,193,.3)}[data-theme=sakura] .party-current-track-display{background:var(--bg-secondary);color:var(--text-primary);border-radius:20px 20px 0 0}[data-theme=art-deco] .party-playlist-view{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);color:#d4af37;font-family:Playfair Display,Georgia,serif}[data-theme=art-deco] .party-playlist-header{background:linear-gradient(180deg,#2d2d2d,#1a1a1a);border-bottom:1px solid var(--border-color);box-shadow:0 4px 20px #d4af374d;position:relative;padding:20px 24px 16px}[data-theme=art-deco] .party-playlist-stats{color:#d4af37;font-weight:600;letter-spacing:2px;text-transform:uppercase;font-size:13px}[data-theme=art-deco] .party-playlist-stats-separator{color:#b8941f;margin:0 12px;font-weight:400}[data-theme=art-deco] .party-playlist-items{background:transparent;padding:8px 0}[data-theme=art-deco] .party-playlist-empty{color:#8b6914;font-style:italic;padding:48px 24px;text-align:center;font-size:15px}[data-theme=art-deco] .party-playlist-group-items{border-left:2px solid var(--border-color);margin-left:20px;padding-left:20px;margin-top:8px}@media (max-width: 480px){[data-theme=art-deco] .party-playlist-stats{justify-content:center}[data-theme=art-deco] .party-playlist-stats-remaining-label{max-width:5.5em;word-break:keep-all}}[data-theme=art-deco] .party-playlist-item{background:#1a1a1ab3;border-bottom:none;border-left:3px solid transparent;transition:all .3s ease;position:relative;padding:0;margin:6px 16px;border-radius:4px;cursor:pointer}[data-theme=art-deco] .party-playlist-item-row{padding:12px 24px;gap:12px}[data-theme=art-deco] .party-playlist-item--group{background:#d4af371f;border-left-color:#d4af3766;font-weight:700}[data-theme=art-deco] .party-playlist-item--track{background:#1a1a1ab3}[data-theme=art-deco] .party-playlist-item:hover{background:#2d2d2de6;box-shadow:0 6px 20px #d4af374d;border-left-color:#d4af3780;transform:translate(6px)}[data-theme=art-deco] .party-playlist-item--group:hover{background:#d4af372e;border-left-color:#d4af3799}[data-theme=art-deco] .party-playlist-item--current{background:var(--selected-bg);border-left-width:3px;border-left-color:var(--selected-border);box-shadow:0 0 24px #d4af3780;font-weight:700}[data-theme=art-deco] .party-playlist-item--played{opacity:.55;color:var(--text-tertiary);border-left-color:var(--border-color)}[data-theme=art-deco] .party-playlist-item--disabled{opacity:.35;text-decoration:line-through;color:#5a4a1a;cursor:not-allowed}[data-theme=art-deco] .party-playlist-item-circle{width:28px;height:28px;font-size:12px;background:var(--bg-tertiary);color:var(--text-secondary)}[data-theme=art-deco] .party-playlist-item-circle[data-state=current]{background:var(--accent-primary);color:#1a1a1a}[data-theme=art-deco] .party-playlist-item-circle[data-state=played]{background:var(--border-color);color:var(--text-secondary)}[data-theme=art-deco] .party-playlist-item-circle[data-state=disabled]{background:var(--bg-tertiary);color:var(--text-tertiary)}[data-theme=art-deco] .party-playlist-item-name{color:var(--text-primary);font-weight:600;letter-spacing:.8px;font-size:14px;line-height:1.5}[data-theme=art-deco] .party-playlist-item--group .party-playlist-item-name{padding-left:0}[data-theme=art-deco] .party-playlist-item-expand{padding:2px 4px;min-width:20px;border-radius:4px}[data-theme=art-deco] .party-playlist-item-expand:hover{color:var(--text-primary);background:var(--bg-hover)}[data-theme=art-deco] .party-playlist-item-duration{color:var(--text-secondary);font-size:13px;font-weight:500;letter-spacing:.5px;margin-left:12px}[data-theme=art-deco] .party-playlist-item-group-icon{margin-right:10px}[data-theme=art-deco] .party-current-track-display{background:linear-gradient(180deg,#2d2d2d,#1a1a1a);box-shadow:0 4px 20px #d4af374d;position:relative;overflow:hidden;padding:24px;border-radius:8px}[data-theme=art-deco] .party-current-track-empty{color:var(--text-tertiary);font-style:italic;padding:32px 16px;font-size:14px;text-align:center}[data-theme=art-deco] .party-current-track-prev,[data-theme=art-deco] .party-current-track-next{align-items:flex-end;text-align:right}[data-theme=art-deco] .party-current-track-adjacent-label{font-size:11px;color:var(--text-tertiary)}[data-theme=art-deco] .party-current-track-adjacent-name{font-size:14px;color:var(--text-secondary)}[data-theme=art-deco] .party-current-track-adjacent-time{font-size:12px;margin-left:8px;color:var(--text-tertiary)}[data-theme=art-deco] .party-current-track-name{color:var(--text-primary);font-weight:800;text-transform:uppercase;letter-spacing:3px;text-shadow:0 2px 10px rgba(212,175,55,.5);font-size:18px;line-height:1.3}[data-theme=art-deco] .party-current-track-meta{color:var(--text-secondary);font-weight:600;letter-spacing:1.5px;font-size:12px}[data-theme=art-deco] .party-current-track-status{color:var(--accent-primary);text-transform:uppercase;font-weight:700;letter-spacing:2px;padding:6px 16px;background:#d4af3726;border:1px solid rgba(212,175,55,.3);border-radius:8px;font-size:12px}[data-theme=art-deco] .party-current-track-time{color:var(--text-secondary);font-family:Courier New,monospace;font-weight:600;font-size:12px;letter-spacing:1px}[data-theme=art-deco] .party-current-track-progress{background:#1a1a1acc;border:2px solid rgba(212,175,55,.3);border-radius:0;height:6px;box-shadow:inset 0 2px 8px #00000080;position:relative;overflow:hidden}[data-theme=art-deco] .party-current-track-progress:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(90deg,transparent,transparent 4px,rgba(212,175,55,.1) 4px,rgba(212,175,55,.1) 8px)}[data-theme=art-deco] .party-current-track-progress-bar{background:linear-gradient(90deg,var(--accent-primary),#f4d03f);box-shadow:0 0 15px #d4af3799;position:relative;z-index:1}[data-theme=art-deco] .party-current-track-progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}[data-theme=art-deco] .party-current-track-expand-btn:hover{color:var(--text-primary);background:var(--bg-hover)}[data-theme=art-deco] .party-info-display{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);color:var(--text-primary)}[data-theme=art-deco] .party-info-display-container{background:#1a1a1af2;border:2px solid var(--accent-primary);box-shadow:0 4px 24px #d4af3733;position:relative}[data-theme=art-deco] .party-info-display-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent)}[data-theme=art-deco] .party-info-display-inner{padding:24px 24px 32px}[data-theme=art-deco] .party-info-display-title{color:var(--accent-primary);font-weight:700;letter-spacing:.05em;text-transform:uppercase}[data-theme=art-deco] .party-info-display-description{color:var(--text-secondary)}[data-theme=art-deco] .party-info-display-meta{margin:8px 0;font-size:15px;border-top-color:#d4af374d}[data-theme=art-deco] .party-info-display-meta--top{margin-bottom:20px}[data-theme=art-deco] .party-info-display-meta strong{color:var(--accent-primary)}[data-theme=art-deco] .party-info-display-link-btn{background:var(--accent-primary);border-color:var(--accent-primary);box-shadow:0 2px 8px #d4af374d;text-transform:uppercase;letter-spacing:.5px}[data-theme=art-deco] .party-info-display-link-btn:hover{box-shadow:0 4px 12px #d4af3780}[data-theme=art-deco] .party-info-display-link-back:hover{color:var(--accent-primary)}[data-theme=art-deco]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: rgba(0, 0, 0, .6);--bg-hover: rgba(60, 50, 30, .4);--text-primary: #d4af37;--text-secondary: #b8941f;--text-tertiary: #8b6914;--accent-primary: var(--gold-color, #d4af37);--accent-primary-light: rgba(212, 175, 55, .15);--border-color: rgba(212, 175, 55, .3);--selected-bg: rgba(212, 175, 55, .2);--selected-border: var(--gold-color, #d4af37);--pattern-style: var(--pattern-style, "geometric");background:linear-gradient(135deg,#0f0f0f,#1a1a1a,#0f0f0f);color:var(--text-primary);position:relative}[data-theme=art-deco] .party-display{background:transparent;color:var(--text-primary);position:relative}[data-theme=art-deco] .party-display-title{color:var(--accent-primary);background:linear-gradient(135deg,var(--accent-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 30px rgba(212,175,55,.3);font-size:clamp(22px,5vw,32px);font-weight:800;letter-spacing:.05em;margin-bottom:.75rem}[data-theme=art-deco] .party-playlist-view{background:var(--bg-primary);color:var(--text-primary);border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #0006;border:2px solid rgba(212,175,55,.2)}[data-theme=art-deco] .party-current-track-display{background:var(--bg-secondary);color:var(--text-primary);border-radius:8px}[data-theme=basic] .party-playlist-view{background:var(--bg-secondary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}[data-theme=basic] .party-playlist-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);padding:20px 24px 16px;box-shadow:0 1px #ffffff0d}[data-theme=basic] .party-playlist-stats{color:var(--text-primary);font-size:15px;font-weight:600;letter-spacing:.01em}[data-theme=basic] .party-playlist-stats-separator{color:var(--text-tertiary);margin:0 8px;font-weight:400}[data-theme=basic] .party-playlist-items{background:var(--bg-secondary);padding:12px 0}[data-theme=basic] .party-playlist-empty{color:var(--text-tertiary);padding:48px 24px;text-align:center;font-size:15px}[data-theme=basic] .party-playlist-group-items{border-left:2px solid var(--border-color);margin-left:20px;padding-left:20px;margin-top:8px}[data-theme=basic] .party-playlist-item{background:var(--bg-tertiary);border:1px solid transparent;border-radius:8px;margin:6px 16px;padding:0;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;cursor:pointer}[data-theme=basic] .party-playlist-item--group{background:#4a9eff14;border:1px solid rgba(74,158,255,.2);font-weight:600}[data-theme=basic] .party-playlist-item--track{background:var(--bg-tertiary)}[data-theme=basic] .party-playlist-item:hover{background:var(--bg-hover);border-color:var(--border-color);transform:translate(4px);box-shadow:0 2px 8px #00000026}[data-theme=basic] .party-playlist-item--group:hover{background:#4a9eff1f;border-color:#4a9eff4d}[data-theme=basic] .party-playlist-item--current{background:var(--selected-bg);border:2px solid var(--selected-border);border-left-color:var(--selected-border);box-shadow:0 4px 12px #6495ed66;font-weight:600;margin:8px 12px}[data-theme=basic] .party-playlist-item--current .party-playlist-item-row{padding:16px 24px}[data-theme=basic] .party-playlist-item--played{opacity:.65;color:var(--text-tertiary);border-left-color:var(--border-color)}[data-theme=basic] .party-playlist-item--disabled{opacity:.45;text-decoration:line-through;color:var(--text-tertiary);cursor:not-allowed}[data-theme=basic] .party-playlist-item-name{color:var(--text-primary);font-weight:500;font-size:15px;line-height:1.5;margin-bottom:4px;padding-left:12px}[data-theme=basic] .party-playlist-item--group .party-playlist-item-name{padding-left:8px}[data-theme=basic] .party-playlist-item-group-icon{margin-right:8px}[data-theme=basic] .party-playlist-item-expand{color:var(--text-tertiary)}[data-theme=basic] .party-playlist-item-expand:hover{color:var(--text-primary);background:var(--bg-hover)}[data-theme=basic] .party-playlist-item-duration{color:var(--text-secondary);font-size:13px;font-weight:500;margin-top:2px}[data-theme=basic] .party-current-track-display{background:var(--bg-secondary);padding:24px;border-radius:8px}[data-theme=basic] .party-current-track-empty{color:var(--text-tertiary);padding:32px 24px;font-size:15px}[data-theme=basic] .party-current-track-name{color:var(--text-primary);font-weight:700;font-size:20px;margin-bottom:12px;letter-spacing:-.01em}[data-theme=basic] .party-current-track-meta{color:var(--text-secondary);font-size:14px;margin-bottom:16px;display:flex;align-items:center;gap:12px}[data-theme=basic] .party-current-track-status{color:var(--accent-primary);font-weight:600;padding:4px 12px;background:var(--accent-primary-light);border-radius:8px;font-size:13px}[data-theme=basic] .party-current-track-time{color:var(--text-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:500;font-size:14px}[data-theme=basic] .party-current-track-progress{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;height:6px;overflow:hidden;box-shadow:inset 0 1px 3px #0003}[data-theme=basic] .party-current-track-progress-bar{background:linear-gradient(90deg,var(--accent-primary),#5fb3ff);border-radius:6px;box-shadow:0 0 8px #4a9eff66;transition:width .2s ease}[data-theme=basic] .party-current-track-adjacent-label{color:var(--text-tertiary)}[data-theme=basic] .party-current-track-adjacent-name{color:var(--text-secondary)}[data-theme=basic] .party-current-track-adjacent-time,[data-theme=basic] .party-current-track-expand-btn{color:var(--text-tertiary)}[data-theme=basic] .party-current-track-expand-btn:hover{color:var(--text-primary);background:var(--bg-hover)}[data-theme=basic] .party-info-display,.party-info-display[data-theme=basic]{background:var(--bg-primary, #1a1a1a);color:var(--text-primary)}[data-theme=basic] .party-info-display-container,.party-info-display[data-theme=basic] .party-info-display-container{background:var(--bg-secondary, #2a2a2a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));box-shadow:0 4px 24px #0000004d}[data-theme=basic] .party-info-display-title{color:var(--text-primary)}[data-theme=basic] .party-info-display-description{color:var(--text-secondary)}[data-theme=basic] .party-info-display-meta{border-top-color:#ffffff1a}[data-theme=basic] .party-info-display-meta strong{color:var(--text-primary)}[data-theme=basic] .party-info-display-link-btn{background:var(--accent-primary);border-color:var(--accent-primary)}[data-theme=basic] .party-info-display-link-btn:hover{background:var(--accent-primary-light)}[data-theme=basic] .party-info-display-link-back:hover{color:var(--accent-primary)}[data-theme=basic]{--bg-primary: #1a1a1a;--bg-secondary: #2a2a2a;--bg-tertiary: #333333;--bg-hover: #3d3d3d;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-tertiary: #808080;--accent-primary: #4a9eff;--accent-primary-light: rgba(74, 158, 255, .15);--border-color: rgba(74, 158, 255, .3);--selected-bg: #3a4a5a;--selected-border: #6495ed;background:var(--bg-primary);color:var(--text-primary)}[data-theme=basic] .party-display{background:transparent;color:var(--text-primary)}[data-theme=basic] .party-display-title{color:var(--text-primary);font-weight:700;font-size:clamp(22px,5vw,32px);letter-spacing:-.02em}[data-theme=basic] .party-playlist-view{background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;overflow:hidden;box-shadow:0 4px 16px #0003}[data-theme=basic] .party-current-track-display{background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;box-shadow:0 2px 8px #00000026}[data-theme=spring-cross-step] .party-display-main--spring-cross-step{position:relative;z-index:1;display:flex;flex-direction:column;gap:24px;padding:32px 16px;max-width:min(100%,1200px);margin-left:auto;margin-right:auto;width:100%;box-sizing:border-box}[data-theme=spring-cross-step] .party-display-header--spring-cross-step{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}[data-theme=spring-cross-step] .party-display-poster,[data-theme=spring-cross-step] .party-display-poster-placeholder{position:relative;width:180px;height:180px;border-radius:20px;border:3px solid rgba(26,92,46,.2);overflow:hidden;flex-shrink:0;box-shadow:0 10px 40px #1a5c2e14}[data-theme=spring-cross-step] .party-display-poster-placeholder{background:var(--bg-secondary)}[data-theme=spring-cross-step] .party-display-poster-img{width:100%;height:100%;object-fit:cover;display:block}[data-theme=spring-cross-step] .party-display-header-text{display:flex;flex-direction:column;align-items:center;gap:0}[data-theme=spring-cross-step] .party-display-title--spring-cross-step{margin:0;font-size:clamp(22px,5vw,32px);font-weight:800;line-height:1.15;letter-spacing:-.02em;color:var(--accent-primary);text-wrap:balance}[data-theme=spring-cross-step] .party-display-subtitle{margin:2px 0 0;font-size:clamp(14px,3vw,18px);font-weight:600;color:var(--accent-primary-light)}[data-theme=spring-cross-step] .party-display-session-indicator{margin-top:12px}[data-theme=spring-cross-step] .party-display-session-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-primary-light)}[data-theme=spring-cross-step] .party-display-player--spring-cross-step{flex-shrink:0}[data-theme=spring-cross-step] .party-display-playlist-wrapper--spring-cross-step{overflow:hidden;border-radius:16px;background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 4px 24px #1a5c2e0f;width:100%;max-width:100%;min-width:0;align-self:stretch}[data-theme=spring-cross-step] .party-playlist-view{background:var(--bg-primary);border-radius:16px;padding:0;overflow:hidden;width:100%;text-align:left}[data-theme=spring-cross-step] .party-playlist-header{padding:20px 24px 16px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}[data-theme=spring-cross-step] .party-playlist-header-title{display:flex;align-items:center;gap:8px}[data-theme=spring-cross-step] .party-playlist-header-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--accent-primary)}[data-theme=spring-cross-step] .party-playlist-header-label{font-weight:600;font-size:15px;color:var(--text-primary)}[data-theme=spring-cross-step] .party-playlist-stats{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-tertiary)}[data-theme=spring-cross-step] .party-playlist-stats-remaining-label{flex-shrink:0}@media (max-width: 480px){[data-theme=spring-cross-step] .party-playlist-stats{justify-content:center}[data-theme=spring-cross-step] .party-playlist-stats-remaining-label{flex-shrink:1;max-width:5.5em;word-break:keep-all}[data-theme=spring-cross-step] .party-playlist-stats-not-yet-played{text-align:center}}[data-theme=spring-cross-step] .party-playlist-stats-not-yet-played{font-weight:700}[data-theme=spring-cross-step] .party-playlist-items{padding:8px 0;display:flex;flex-direction:column;width:100%;align-items:stretch;text-align:left}[data-theme=spring-cross-step] .party-playlist-empty{padding:48px 24px;text-align:center;color:var(--text-tertiary);font-style:italic}[data-theme=spring-cross-step] .party-playlist-group-items{display:flex;flex-direction:column}[data-theme=spring-cross-step] .party-playlist-item,[data-theme=spring-cross-step] .party-playlist-item--track,[data-theme=spring-cross-step] .party-playlist-item--group{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px 24px;cursor:pointer;transition:all .25s ease;border-left:3px solid transparent;position:relative;box-sizing:border-box;width:100%;text-align:left}[data-theme=spring-cross-step] .party-playlist-item:hover,[data-theme=spring-cross-step] .party-playlist-item--track:hover,[data-theme=spring-cross-step] .party-playlist-item--group:hover{background:var(--bg-hover);border-left-color:var(--leaf-green)}[data-theme=spring-cross-step] .party-playlist-item--current{background:var(--selected-bg);border-left-color:var(--accent-primary)}[data-theme=spring-cross-step] .party-playlist-item--current .party-playlist-item-name{color:var(--accent-primary);font-weight:600}[data-theme=spring-cross-step] .party-playlist-item--played{opacity:.5}[data-theme=spring-cross-step] .party-playlist-item--played .party-playlist-item-name{text-decoration:line-through;text-decoration-color:var(--text-tertiary)}[data-theme=spring-cross-step] .party-playlist-item--disabled.party-playlist-item--played .party-playlist-item-name{text-decoration-color:var(--canceled-track)}[data-theme=spring-cross-step] .party-playlist-item--disabled.party-playlist-item--played .party-playlist-item-duration{text-decoration:line-through;text-decoration-color:var(--canceled-track);color:var(--canceled-track-text)}[data-theme=spring-cross-step] .party-playlist-item--disabled{opacity:.85;pointer-events:auto}[data-theme=spring-cross-step] .party-playlist-item--disabled .party-playlist-item-name,[data-theme=spring-cross-step] .party-playlist-item--disabled .party-playlist-item-duration{color:var(--canceled-track-text);text-decoration:line-through;text-decoration-color:var(--canceled-track);text-decoration-thickness:1px}[data-theme=spring-cross-step] .party-playlist-item-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto;justify-content:flex-start}[data-theme=spring-cross-step] .party-playlist-item-circle-wrapper{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:none;background:none;padding:0;cursor:pointer}[data-theme=spring-cross-step] .party-playlist-item-circle-wrapper:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:50%}[data-theme=spring-cross-step] .party-playlist-item-circle{width:28px;height:28px;min-width:28px;min-height:28px;border-radius:50%;font-size:12px;font-weight:600;flex-shrink:0;display:flex;align-items:center;justify-content:center}[data-theme=spring-cross-step] .party-playlist-item-circle[data-state=current]{background:var(--accent-primary);color:var(--flower-white)}[data-theme=spring-cross-step] .party-playlist-item-circle[data-state=played]{background:var(--bg-tertiary);color:var(--text-tertiary)}[data-theme=spring-cross-step] .party-playlist-item-circle[data-state=upcoming]{background:var(--bg-secondary);color:var(--text-tertiary)}[data-theme=spring-cross-step] .party-playlist-item-circle[data-state=disabled]{background:var(--canceled-track);color:var(--flower-white)}[data-theme=spring-cross-step] .party-playlist-item-info{min-width:0;flex:1 1 auto}[data-theme=spring-cross-step] .party-playlist-item-name-wrapper{display:flex;align-items:baseline;gap:6px;min-width:0;flex-wrap:nowrap}[data-theme=spring-cross-step] .party-playlist-item-name{font-size:14px;font-weight:500;color:var(--text-primary);transition:color .2s ease;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}[data-theme=spring-cross-step] .party-playlist-item-name--inline-ellipsis{text-overflow:clip}[data-theme=spring-cross-step] .party-playlist-item-name--expanded{white-space:normal;overflow:visible;text-overflow:unset}[data-theme=spring-cross-step] .party-playlist-item-expand-btn{flex-shrink:0;font-size:14px;font-weight:500;line-height:1;color:var(--accent-primary-light);background:transparent;border:none;cursor:pointer;padding:2px 4px;border-radius:4px;min-width:20px;transition:background .2s,color .2s}[data-theme=spring-cross-step] .party-playlist-item-expand-btn:hover{background:#1a5c2e1a;color:var(--accent-primary)}[data-theme=spring-cross-step] .party-playlist-item-expand-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}[data-theme=spring-cross-step] .party-playlist-item-artist{font-size:12px;color:var(--text-tertiary);margin-top:1px;line-height:1.3}[data-theme=spring-cross-step] .party-playlist-item-duration{font-size:13px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:12px}[data-theme=spring-cross-step] .party-playlist-item-cancel-tooltip{padding:4px 8px;font-size:11px;font-weight:500;color:var(--flower-white);background:var(--canceled-track);border-radius:4px;white-space:nowrap;pointer-events:none;z-index:100;box-shadow:0 2px 6px #0000001f}[data-theme=spring-cross-step] .party-playlist-item-cancel-tooltip:not(.party-playlist-item-cancel-tooltip--portal){position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-4px)}[data-theme=spring-cross-step] .party-playlist-item-cancel-tooltip--portal{position:fixed}[data-theme=spring-cross-step] .party-current-track-display{background:var(--bg-secondary);border-radius:16px;padding:24px;position:relative;overflow:hidden}[data-theme=spring-cross-step] .party-current-track-display:before{content:"";position:absolute;top:-30px;right:-30px;width:120px;height:120px;background:radial-gradient(circle,rgba(124,179,66,.15) 0%,transparent 70%);border-radius:50%}[data-theme=spring-cross-step] .party-current-track-empty{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-style:italic}[data-theme=spring-cross-step] .party-current-track-empty-icon{display:block;font-size:32px;margin:0 auto 12px;opacity:.6}[data-theme=spring-cross-step] .party-current-track-status-icon{display:inline-block;font-size:12px}[data-theme=spring-cross-step] .party-current-track-name-wrapper,[data-theme=spring-cross-step] .party-current-track-adjacent-name-wrapper{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:nowrap}[data-theme=spring-cross-step] .party-current-track-name{font-size:18px;font-weight:700;color:var(--accent-primary);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}[data-theme=spring-cross-step] .party-current-track-name--inline-ellipsis{text-overflow:clip}[data-theme=spring-cross-step] .party-current-track-name--expanded{white-space:normal;overflow:visible;text-overflow:unset}[data-theme=spring-cross-step] .party-current-track-expand-btn{flex-shrink:0;font-size:14px;font-weight:500;line-height:1;color:var(--accent-primary-light);background:transparent;border:none;cursor:pointer;padding:2px 4px;border-radius:4px;min-width:20px;transition:background .2s,color .2s}[data-theme=spring-cross-step] .party-current-track-expand-btn:hover{background:#1a5c2e1a;color:var(--accent-primary)}[data-theme=spring-cross-step] .party-current-track-expand-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}[data-theme=spring-cross-step] .party-current-track-meta{font-size:14px;color:var(--text-secondary);margin-bottom:16px}[data-theme=spring-cross-step] .party-current-track-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-primary-light);margin-bottom:12px}[data-theme=spring-cross-step] .party-current-track-time{display:flex;justify-content:space-between;font-size:12px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-bottom:8px}[data-theme=spring-cross-step] .party-current-track-progress{width:100%;height:6px;background:#1a5c2e1f;border-radius:3px;overflow:hidden}[data-theme=spring-cross-step] .party-current-track-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--leaf-green));border-radius:3px;transition:width .3s ease;position:relative}[data-theme=spring-cross-step] .party-current-track-progress-bar:after{content:"";position:absolute;right:-3px;top:-3px;width:12px;height:12px;background:var(--leaf-green);border-radius:50%;box-shadow:0 0 8px #7cb34280}[data-theme=spring-cross-step] .party-current-track-prev,[data-theme=spring-cross-step] .party-current-track-next{font-size:14px;opacity:.75;color:var(--text-secondary)}[data-theme=spring-cross-step] .party-current-track-prev{text-align:right}[data-theme=spring-cross-step] .party-current-track-prev .party-current-track-adjacent-name-wrapper{justify-content:flex-end}[data-theme=spring-cross-step] .party-current-track-next{padding-top:16px;text-align:right}[data-theme=spring-cross-step] .party-current-track-next .party-current-track-adjacent-name-wrapper{justify-content:flex-end}[data-theme=spring-cross-step] .party-current-track-adjacent-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:4px}[data-theme=spring-cross-step] .party-current-track-adjacent-name{font-size:14px;font-weight:500;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}[data-theme=spring-cross-step] .party-current-track-adjacent-name--inline-ellipsis{text-overflow:clip}[data-theme=spring-cross-step] .party-current-track-adjacent-name--expanded{white-space:normal;overflow:visible;text-overflow:unset}[data-theme=spring-cross-step] .party-current-track-adjacent-meta{font-size:12px;color:var(--text-tertiary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=spring-cross-step] .party-current-track-adjacent-time{flex-shrink:0;font-size:12px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}[data-theme=spring-cross-step] .party-info-display,.party-info-display[data-theme=spring-cross-step]{background:var(--bg-primary);color:var(--text-primary)}[data-theme=spring-cross-step] .party-info-display-container,.party-info-display[data-theme=spring-cross-step] .party-info-display-container{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 4px 24px #1a5c2e0f}[data-theme=spring-cross-step] .party-info-display-title{color:var(--accent-primary)}[data-theme=spring-cross-step] .party-info-display-description{color:var(--text-secondary)}[data-theme=spring-cross-step] .party-info-display-meta{border-top-color:var(--border-color)}[data-theme=spring-cross-step] .party-info-display-meta strong{color:var(--text-primary)}[data-theme=spring-cross-step] .party-info-display-link-btn{background:var(--accent-primary);border-color:var(--accent-primary)}[data-theme=spring-cross-step] .party-info-display-link-btn:hover{background:var(--accent-primary-light)}[data-theme=spring-cross-step] .party-info-display-link-back:hover{color:var(--accent-primary)}[data-theme=spring-cross-step] .party-info-display-container--spring-cross-step{padding:0;overflow:hidden}[data-theme=spring-cross-step] .party-info-display-inner{padding:24px 24px 32px}[data-theme=spring-cross-step] .party-info-display-inner .party-info-display-section{margin-bottom:20px}[data-theme=spring-cross-step] .party-info-display-inner .party-info-display-description{margin:0;font-size:16px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap}[data-theme=spring-cross-step] .party-info-display-inner .party-info-display-meta{margin:0;padding-top:16px;border-top:1px solid var(--border-color)}[data-theme=spring-cross-step] .party-info-display-inner .party-info-display-meta--top{padding-top:0;border-top:none;margin-bottom:20px}[data-theme=spring-cross-step] .party-info-display-inner .party-info-display-meta p{margin:8px 0;font-size:15px;color:var(--text-secondary)}[data-theme=spring-cross-step] .party-info-display-inner .party-info-display-meta strong{color:var(--text-primary);font-weight:600}[data-theme=spring-cross-step]{--bg-primary: #f9fcf7;--bg-secondary: #f2f9ec;--bg-tertiary: #e7f4df;--bg-hover: rgba(45, 122, 63, .08);--text-primary: #1a3c1a;--text-secondary: #3d7a4a;--text-tertiary: #6b9b6b;--accent-primary: #1a5c2e;--accent-primary-light: #2d7a3f;--border-color: rgba(26, 92, 46, .15);--selected-bg: rgba(45, 122, 63, .12);--selected-border: #2d7a3f;--flower-white: #fdf5f0;--leaf-green: #7cb342;--canceled-track: #c97a82;--canceled-track-text: rgba(26, 60, 26, .4);background:var(--bg-primary);color:var(--text-primary)}[data-theme=spring-cross-step] .party-display{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;position:relative;overflow:hidden}[data-theme=spring-cross-step] .party-display-title{font-weight:700;color:var(--accent-primary);letter-spacing:-.02em}[data-theme=spring-cross-step] .party-display-session-indicator{display:flex;align-items:center;gap:6px}[data-theme=spring-cross-step] .party-display-session-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-primary-light);animation:spring-pulse 2s ease-in-out infinite}@keyframes spring-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes leaf-float{0%{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(5deg)}75%{transform:translateY(4px) rotate(-3deg)}to{transform:translateY(0) rotate(0)}}@keyframes petal-fall{0%{transform:translate3d(0,-20px,0) rotate(0);opacity:0}10%{opacity:.4}12.5%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * .6),12.5vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .125turn))}18%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * .8),18vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .18turn))}21%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * .9),21vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .21turn))}25%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px)),25vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .25turn));opacity:.7}29%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * .96),29vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .29turn))}32%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * .85),32vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .32turn))}37.5%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * .65),37.5vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .375turn))}50%{transform:translate3d(0,50vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .5turn));opacity:.5}62.5%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -.65),62.5vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .625turn))}68%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -.85),68vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .68turn))}72%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -.96),72vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .72turn))}75%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -1),75vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .75turn));opacity:.6}78%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -.96),78vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .78turn))}82%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -.85),82vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .82turn))}87.5%{transform:translate3d(calc(var(--petal-sway-direction, 1) * var(--petal-sway-amplitude, 96px) * -.65),92vh,0) rotate(calc(var(--petal-rotation-turns, 2) * .875turn))}to{transform:translate3d(0,110vh,0) rotate(calc(var(--petal-rotation-turns, 2) * 1turn));opacity:0}}[data-theme=spring-cross-step] .party-display-floating-petals{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:3;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 0%,rgba(0,0,0,1) 65%,rgba(0,0,0,0) 92%,rgba(0,0,0,0) 100%);mask-image:linear-gradient(to bottom,#000,#000 65%,#0000 92%,#0000);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}[data-theme=spring-cross-step] .spring-petal{position:absolute;pointer-events:none;opacity:0;animation:petal-fall linear infinite;mix-blend-mode:screen;will-change:transform,opacity}[data-theme=spring-cross-step] .spring-leaf-decoration{animation:leaf-float 4s linear infinite}.app-container{min-height:100vh;display:flex;flex-direction:column}:root{--bg-primary: #1e1e1e;--bg-secondary: #252525;--bg-tertiary: #2a2a2a;--bg-hover: #323232;--text-primary: #fff;--text-secondary: #b0b0b0;--text-tertiary: rgba(255, 255, 255, .5);--text-disabled: #666;--border-color: rgba(255, 255, 255, .1);--state-error-bg: rgba(255, 255, 255, .08);--state-error-text: rgba(255, 255, 255, .9);--state-success: #4caf50;--state-warning: #ff9800;--state-info: #2196f3;--selected-bg: #3a4a5a;--selected-border: rgba(255, 255, 255, .2);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow: rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);min-height:100vh;overflow-x:hidden}#root{min-height:100vh}
