 /* استایل اصلی بدن */
 body {
    background-color: #272F39;
    margin: 0;
    padding: 20px;
    justify-content: flex-end;
}


  /* استایل دکمه قفل - بهبود یافته */
  .wave-lock-container {
    position: relative;
    width: 100%;
}

.wave-lock-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    background: rgba(125, 79, 231, 0.7);
    border: none;
    border-radius: 50%;
    width: 28px;
  
    color: white;
    cursor: pointer;
    z-index: 10; /* مقدار z-index بالاتر */
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    transition: all 0.3s ease;
}

.wave-lock-btn:hover {
    background: rgba(125, 79, 231, 0.9);
    transform: scale(1.1);
}

.waveform-locked {
    pointer-events: none;
    opacity: 0.8;
}

.wave-lock-btn i {
    pointer-events: none;
}
/* استایل دکمه قفل - فقط تغییرات آیکون */
.wave-lock-btn i.fa-lock {
    color: #fff;
    text-shadow: 0 0 3px rgba(0,0,0,0.5);
}

.wave-lock-btn i.fa-lock-open {
    color: #fff;
    transform: rotate(45deg); /* چرخش جزئی برای تفکیک بهتر */
}

.wave-lock-btn:hover i {
    animation: pulse 0.5s ease;
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); }
} 
.search-container {
        margin: 15px;
        position: relative;
        display: flex;
    }
    
    #searchInput {
        padding: 8px 15px;
        border: 1px solid #A695CF;
        border-radius: 20px;
        flex-grow: 1;
        font-family: inherit;
        direction: rtl;
        background: white;
        color: black;
        
    }

    .search-result-item strong {
        color: #000000 !important; /* عنوان مشکی */
    }
    
    #searchButton {
        background: #7D4FE7;
        color: white;
        border: none;
        border-radius: 20px;
        padding: 8px 15px;
        margin-right: 10px;
        cursor: pointer;
    }
    
    .search-results {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        color: #000;
        border: 1px solid #ddd;
        border-radius: 5px;
        padding: 10px;
        margin-top: 5px;
        display: none;
        z-index: 100;
        max-height: 300px;
        overflow-y: auto;
    }
    
    .search-result-item {
        padding: 8px;
        cursor: pointer;
        color: #000 !important;
        border-bottom: 1px solid #eee;
    }
    
    .search-result-item:hover {
        background-color: #f5f5f5;
    }
    
    .search-result-item.highlight {
        background-color: #e0e0ff;
    }
/* استایل پیغام موقت */
.new-user-message {
position: absolute;
top: 55px;
left: 20px;
background-color: #7D4FE7;
color: white;
padding: 8px 15px;
border-radius: 8px;
font-size: 14px;
opacity: 0;
z-index: 10;
box-shadow: 0 4px 12px rgba(125, 79, 231, 0.3);
white-space: nowrap;
direction: rtl;
transition: opacity 0.3s ease; /* انیمیشن نرم */
display: none; /* ابتدا مخفی باشد */
/* ایجاد افکت حباب */
clip-path: polygon(
0% 0%,
100% 0%,
100% 70%,
20% 70%,
10% 100%,
0% 70%
);
animation: fadeInBubble 0.5s ease-out forwards;
}

@keyframes fadeInOut {
0% { opacity: 0; transform: translateY(10px); }
20% { opacity: 1; transform: translateY(0); }
80% { opacity: 1; transform: translateY(0); }
100% { opacity: 0; transform: translateY(-10px); }
}

/* برای موبایل */
@media (max-width: 768px) {
.new-user-message {
top: 45px;
left: 0;
font-size: 12px;
padding: 6px 12px;
white-space: normal;
max-width: 100%;
clip-path: polygon(
    0% 0%,
    100% 0%,
    100% 80%,
    25% 80%,
    15% 100%,
    0% 80%
);
}
}
.download-btn {
background-color: #7D4FE7;
color: white;
border: none;
border-radius: 4px;
padding: 5px 10px;
margin-right: 10px;
cursor: pointer;
font-size: 12px;
transition: background-color 0.3s;
}

.download-btn:hover {
background-color: #5D3AC7;
}

.download-btn i {
margin-left: 5px;
}

/* استایل عنوان آهنگ */
.song-title-container {
max-width: 100%;
margin-bottom: -10px;
padding: 15px;
border-radius: 12px;
color: #fff;

}

.song-title {
color: #a695cf85;
font-size: 18px;
margin: 0;
direction: rtl;
}

@media (max-width: 768px) {
.song-title {
font-size: 14px;
}
}
/* استایل باکس متن آهنگ */
.lyrics-container {
max-width: 100%;
margin: 20px auto 40px;
background-color: #1E1E2D;
padding: 15px;
border-radius: 12px;
color: #fff;
direction: rtl;
}

.lyrics-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
padding-bottom: 8px;
border-bottom: 1px solid #3A3A4A;
}

.lyrics-title {
color: #A695CF;
font-size: 16px;
margin: 0;
}

.lyrics-content {
max-height: 250px;
overflow-y: auto;
padding: 10px 15px;
background-color: #2A2A3A;
border-radius: 8px;
white-space: pre-line;
line-height: 1.8;
font-size: 19px;
text-align: center;
}

.lyrics-content::-webkit-scrollbar {
width: 6px;
}

.lyrics-content::-webkit-scrollbar-track {
background: #2A2A3A;
border-radius: 3px;
}

.lyrics-content::-webkit-scrollbar-thumb {
background-color: #7D4FE7;
border-radius: 3px;
}
 /* استایل loader */
.loading-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.7);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
z-index: 1000;
color: white;
font-family: Arial;
font-size: 18px;
gap: 15px;
}

.loading-spinner {
width: 50px;
height: 50px;
border: 5px solid rgba(255, 255, 255, 0.3);
border-radius: 50%;
border-top-color: #7D4FE7;
animation: spin 1s ease-in-out infinite;
}

@keyframes spin {
to { transform: rotate(360deg); }
}
/* استایل‌های جدید برای لیست پخش */
.track-count {
color: #D496B8;
font-size: 0.8em;
margin-right: 8px;
font-weight: normal;
}
.playlist-container {
    margin-bottom: 15px;
max-width: 100%;
background-color: #1E1E2D;
padding: 15px;
border-radius: 12px;
}

.playlist-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.playlist-title {
    color: #A695CF;
    font-size: 18px;
    margin: 0;
}



.track-list {
list-style-type: none;
padding: 0;
margin: 0;
max-height: 220px; 
overflow-y: auto;
scrollbar-width: thin;
scrollbar-color: #7D4FE7 #2A2A3A;
background-color: #2A2A3A; /* اضافه کنید */
border-radius: 8px; /* اضافه کنید */
}

/* وبکیت (کروم، سافاری، اج) */
.track-list::-webkit-scrollbar {
width: 6px; /* هماندازه باکس متن آهنگ */
}

.track-list::-webkit-scrollbar-track {
background: #2A2A3A; 
border-radius: 3px;
}

.track-list::-webkit-scrollbar-thumb {
background-color: #7D4FE7;
border-radius: 3px;
}



.track-item {
    padding: 12px 15px;
    margin-right: 3px !important;
    margin-left: 3px !important;
    margin-bottom: 8px;
    background-color: #2A2A3A;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.track-item:hover {
    background-color: #3A3A4A;
}

.track-item.active {
    background-color: #4A4A5A;
    border-right: 4px solid #7D4FE7;
}

.track-info {
    display: flex;
    align-items: center;
    gap: 10px;
    
}

.track-number {
    color: #A695CF;
    font-weight: bold;
    min-width: 20px;
}

.track-name {
    color: #fff;
}

.track-duration {
    color: #D496B8;
    font-size: 13px;
}

.waveform-wrapper {
position: relative; /* مهم! */
width: 1000px; /* عرض شکل موج */
height: 80px; /* ارتفاع شکل موج */
}

/* شکل موج */
#waveform1,
#waveform2 {
width: 100%; /* عرض کامل کانتینر */
height: 100%; /* ارتفاع کامل کانتینر */
background-color: #181327;
border-radius: 8px;
}

/* CurrentTime و HoverTime */
#currentTime {
font-size: 13px;
color: #fff;
font-family: Arial;
text-align: center;
position: absolute;
top: -50px; /* موقعیت عمودی */
left: 0;
width: fit-content;
background: #7D4FE7;
padding: 2.5px 7px;
border-radius: 9px;
transition: left 0.15s ease; /* حرکت نرم */
z-index: 2;

}

#hoverTime {
font-size: 13px;
color: #fff;
font-family: Arial;
text-align: center;
position: absolute;
top: -50px; /* موقعیت عمودی */
left: 0;
width: fit-content;
padding: 2.5px 7px;
border-radius: 9px;

z-index: 10;
display: none; /* ابتدا مخفی است */
background: #A695CF; /* رنگ متفاوت برای HoverTime */
}

.volume-value {
font-size: 13px;
color: #fff;
font-family: Arial;
margin-left: -350px;

background: rgba(255, 255, 255, 0.1);
padding: 2px 8px;
border-radius: 5px;
display: none; /* ابتدا مخفی است */
position: absolute;
bottom: 0px; /* موقعیت نمایش مقدار ولوم */
left: 50%;
transform: translateX(-50%);
white-space: nowrap;
transition: opacity 0.3s ease;
}
.wave-container {
    position: relative; /* مهم! */
}

.wave-label {
    color: #fff; /* رنگ روشن‌تر برای عنوان */
}

/* کانتینر شکل موج */
.wave-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 30px;
    margin: 10px auto;
    padding: 10px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 12px;
    max-width: 100%;
}

/* کنترل‌های صدا */
.volume-controls {
    display: flex;
    align-items: center;
    gap: 15px;
}

.controls-group {
    display: flex;
    align-items: center; /* عنوان و دکمه‌ها در یک خط */
    gap: 25px; /* فاصله بین عنوان و دکمه‌ها */
}

.separator {
    width: 0.8px;
    height: 30px; /* ارتفاع جداکننده */
    background-color: #fff; /* رنگ جداکننده */
    margin: 0 5px; /* حاشیه برای جداکننده */
}

/* اسلایدر ولوم */
.volume-slider {
    width: 100px !important;
    height: 5px;
    -webkit-appearance: none;
    transform: rotate(180deg);
    background: linear-gradient(to right, #7D4FE7 0%, #444 100%) !important;
    border-radius: 5px;
    outline: none;
    border: none !important;

}

/* برای مرورگرهای وبکیت (کروم، سافاری) */
.volume-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 17px;
    height: 17px;
    background: #fff;
    border-radius: 50%;
    border: 2px solid #7D4FE7;
    cursor: pointer;
    margin-top: -5.5px;
    transition: transform 0.2s;
}

.volume-slider::-webkit-slider-runnable-track {
    -webkit-appearance: none;
    width: 100%;
    height: 5px;
    background: linear-gradient(
        to right,
        #7D4FE7 var(--volume-percent),
        #444 var(--volume-percent)
    );
    border-radius: 5px;
}

/* برای فایرفاکس */
.volume-slider::-moz-range-thumb {
    width: 17px;
    height: 17px;
    background: #fff;
    border-radius: 50%;
    border: 2px solid #7D4FE7;
    cursor: pointer;
}

.volume-slider::-moz-range-track {
    width: 100%;
    height: 5px;
    background: linear-gradient(
        to right,
        #7D4FE7 var(--volume-percent),
        #444 var(--volume-percent)
    );
    border-radius: 5px;
}

/* آیکون‌ها */
.volume-icon {
    font-size: 17px;
    color: #fff;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* حالت میت برای شکل موج */
.waveform-muted {
    background-color: #444 !important; /* رنگ پس‌زمینه شکل موج در حالت میوت */
}

/* کنترل‌های اصلی */
.controls {
    display: flex;
    justify-content: flex-end;
    text-align: left;
    margin-top: 0px;
    gap: 8px;
}

button {
    margin: 0px 0;
    padding: 14px 23px;
    font-size: 16px;
    border-radius: 12px;
    background-color: #7D4FE7;
    color: white;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px; /* فاصله بین آیکون و متن (اگر متن داشته باشد) */
}

/* استایل آیکون‌ها */
button i {
    font-size: 16px;
}
.lyrics-toggle {
cursor: pointer;
transition: all 0.3s ease;
color: #A695CF;
}

.lyrics-toggle:hover {
color: #7D4FE7;
}

.lyrics-toggle i {
margin-left: 8px;
transition: transform 0.3s ease;
}

.lyrics-content.collapsed {
max-height: 0;
padding: 0;
overflow: hidden;
transition: all 0.3s ease;
}
/* استایل دکمه فیلتر */
.filter-btn {
cursor: pointer;
color: #D496B8;
font-size: 14px;
margin-right: 10px;
padding: 3px 8px;
border-radius: 4px;
background-color: rgba(125, 79, 231, 0.2);
transition: all 0.3s ease;
}

.filter-btn:hover {
background-color: rgba(125, 79, 231, 0.4);
}

.filter-btn.active {
background-color: #7D4FE7;
color: white;
}
/* واکنش‌گرایی */
@media (max-width: 768px) {
                #hoverTime {
        display: none !important; /* غیرفعال کردن hoverTime در موبایل */
    }
    
    .filter-btn {
        margin-top: 15px;
}
    .lyrics-container {
margin: 15px auto 30px;
padding: 10px;
}
.playlist-title {
margin-top: 15px;
}
.lyrics-content {
max-height: 220px;
padding: 8px 12px;
font-size: 17px;
}
.track-list {
max-height: 180px;
overflow-y: auto; /* مطمئن شوید auto است */
}

.playlist-container {
margin-bottom: 15px; /* فاصله کمتر در موبایل */


padding: 0px;
}
.playlist-header {
padding-right: 15px; /* حرکت به سمت چپ */
}

    
    .track-item {
padding: 14px;
flex-direction: row; /* تغییر از column به row */
align-items: center; /* تراز عمودی وسط */
gap: 8px;
}

.track-info {
width: 100%;
justify-content: flex-start; /* تراز به راست برای زبان فارسی */
flex-direction: row; /* نمایش افقی */
align-items: center;
}

.track-name {
font-size: 14px;
text-align: right; /* متن تراز راست برای فارسی */
margin-right: 0px; /* فاصله از عناصر دیگر */
}

.track-duration {
margin-right: auto; /* فاصله از نام ترک */
}
    .wave-container {
        flex-direction: column;
        gap: 15px;
    }

    /* گروه کنترل‌ها در موبایل */
    .controls-group {
        display: flex;
        align-items: center;
        gap: 15px;
        width: 100%;
        margin-left: 10px;
        justify-content: space-between; /* توزیع یکنواخت */
    }
    
   .wave-container {
flex-direction: column; /* عناصر در یک ستون قرار بگیرند */
gap: 15px; /* فاصله بین عناصر */
}

.waveform-wrapper {
width: 100%; /* عرض کامل در موبایل */
height: auto; /* ارتفاع خودکار */
}

#waveform1,
#waveform2 {
width: 100%; /* عرض کامل در موبایل */
height: 80px; /* ارتفاع کمتر برای موبایل */
}

    .separator {
        width: 0.8px;
        height: 30px; /* ارتفاع جداکننده */
        background-color: #fff; /* رنگ جداکننده */
        margin: 0 5px; /* حاشیه برای جداکننده */
    }

    /* کاهش اندازه دکمه‌ها در موبایل */
    button {
padding: 15px 25px;
margin-right: auto;
    }
    .volume-value {
display: none; /* ابتدا مخفی است */
font-size: 14px;
color: #fff;
font-family: Arial;
 margin-left: 90px;
  margin-bottom: -20px;
text-align: center; /* متن وسط‌چین */
background: rgba(255, 255, 255, 0.1);
padding: 5px 10px;
border-radius: 5px;
} 
.volume-slider {
width: 55% !important; /* عرض کامل */

margin-left: 35px;
     margin-right: 15px;
}

}