Update index.html
Browse files- index.html +28 -19
index.html
CHANGED
|
@@ -62,20 +62,15 @@
|
|
| 62 |
}
|
| 63 |
.subtitle { font-size: 0.9rem; color: var(--text-secondary); margin-top: 5px; }
|
| 64 |
|
| 65 |
-
/* کارتها */
|
| 66 |
.card {
|
| 67 |
background: var(--panel-bg);
|
| 68 |
border-radius: var(--radius-card);
|
| 69 |
box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.05);
|
| 70 |
border: 1px solid var(--panel-border);
|
| 71 |
padding: 25px; margin-bottom: 20px;
|
| 72 |
-
transition: transform 0.3s ease;
|
| 73 |
}
|
| 74 |
|
| 75 |
-
.form-label {
|
| 76 |
-
display: flex; align-items: center; gap: 8px;
|
| 77 |
-
font-weight: 700; margin-bottom: 12px; color: #2d3748;
|
| 78 |
-
}
|
| 79 |
.form-label svg { color: var(--accent-primary); width: 20px; }
|
| 80 |
|
| 81 |
textarea, input, select {
|
|
@@ -83,32 +78,47 @@
|
|
| 83 |
border: 2px solid var(--input-border);
|
| 84 |
border-radius: 12px; padding: 15px;
|
| 85 |
font-family: inherit; font-size: 1rem; color: #2d3748;
|
| 86 |
-
outline: none;
|
| 87 |
-
transition: border-color 0.3s;
|
| 88 |
}
|
| 89 |
textarea { min-height: 120px; resize: vertical; }
|
| 90 |
textarea:focus, input:focus, select:focus { border-color: var(--accent-primary); background: #fff; }
|
| 91 |
|
| 92 |
-
/* دکمه اصلی
|
| 93 |
.btn-main {
|
| 94 |
width: 100%; padding: 16px;
|
| 95 |
-
background: linear-gradient(135deg, var(--accent-primary), #3b5bdb);
|
|
|
|
|
|
|
| 96 |
color: #fff; border: none; border-radius: var(--radius-btn);
|
| 97 |
font-size: 1.1rem; font-weight: 700; cursor: pointer;
|
| 98 |
display: flex; justify-content: center; align-items: center; gap: 10px;
|
| 99 |
box-shadow: 0 5px 15px var(--accent-glow);
|
| 100 |
-
transition: all 0.
|
|
|
|
|
|
|
| 101 |
}
|
|
|
|
| 102 |
.btn-main:hover {
|
| 103 |
transform: translateY(-3px);
|
|
|
|
| 104 |
box-shadow: 0 10px 25px rgba(74, 108, 250, 0.35);
|
| 105 |
}
|
| 106 |
.btn-main:hover span {
|
| 107 |
-
transform: translateX(-4px)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 108 |
}
|
| 109 |
-
.btn-main
|
| 110 |
-
|
| 111 |
-
transition:
|
| 112 |
}
|
| 113 |
.btn-main:active { transform: scale(0.98); }
|
| 114 |
.btn-main:disabled { opacity: 0.7; cursor: not-allowed; filter: grayscale(1); }
|
|
@@ -116,6 +126,7 @@
|
|
| 116 |
.btn-outline {
|
| 117 |
background: transparent; border: 2px solid var(--input-border);
|
| 118 |
color: var(--text-secondary); margin-top: 10px;
|
|
|
|
| 119 |
}
|
| 120 |
.btn-outline:hover { border-color: var(--accent-primary); color: var(--accent-primary); }
|
| 121 |
|
|
@@ -341,7 +352,7 @@
|
|
| 341 |
|
| 342 |
mainDownloadLink.href = audioURL;
|
| 343 |
mainDownloadLink.style.display = 'inline-block';
|
| 344 |
-
playerWrapper.innerHTML = `<audio controls autoplay src="${audioURL}"></audio>`;
|
| 345 |
finalLyricsBox.innerHTML = formatLyrics(item.lyrics);
|
| 346 |
|
| 347 |
finalResult.style.display = 'block';
|
|
@@ -411,14 +422,12 @@
|
|
| 411 |
processedUrls.add(fullUrl);
|
| 412 |
hasResult = true;
|
| 413 |
|
| 414 |
-
// برای آهنگ اول، دکمه دانلود اصلی را تنظیم و در سابقه ذخیره کن
|
| 415 |
if (processedUrls.size === 1) {
|
| 416 |
mainDownloadLink.href = fullUrl;
|
| 417 |
mainDownloadLink.style.display = 'inline-block';
|
| 418 |
saveToHistory(idea, lyrics, fullUrl);
|
| 419 |
}
|
| 420 |
-
|
| 421 |
-
// autoplay برای آهنگ جدید اضافه شد
|
| 422 |
playerWrapper.innerHTML += `<div class="audio-item"><audio controls autoplay src="${fullUrl}"></audio></div>`;
|
| 423 |
}
|
| 424 |
|
|
|
|
| 62 |
}
|
| 63 |
.subtitle { font-size: 0.9rem; color: var(--text-secondary); margin-top: 5px; }
|
| 64 |
|
|
|
|
| 65 |
.card {
|
| 66 |
background: var(--panel-bg);
|
| 67 |
border-radius: var(--radius-card);
|
| 68 |
box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.05);
|
| 69 |
border: 1px solid var(--panel-border);
|
| 70 |
padding: 25px; margin-bottom: 20px;
|
|
|
|
| 71 |
}
|
| 72 |
|
| 73 |
+
.form-label { display: flex; align-items: center; gap: 8px; font-weight: 700; margin-bottom: 12px; color: #2d3748; }
|
|
|
|
|
|
|
|
|
|
| 74 |
.form-label svg { color: var(--accent-primary); width: 20px; }
|
| 75 |
|
| 76 |
textarea, input, select {
|
|
|
|
| 78 |
border: 2px solid var(--input-border);
|
| 79 |
border-radius: 12px; padding: 15px;
|
| 80 |
font-family: inherit; font-size: 1rem; color: #2d3748;
|
| 81 |
+
outline: none; transition: border-color 0.3s;
|
|
|
|
| 82 |
}
|
| 83 |
textarea { min-height: 120px; resize: vertical; }
|
| 84 |
textarea:focus, input:focus, select:focus { border-color: var(--accent-primary); background: #fff; }
|
| 85 |
|
| 86 |
+
/* --- دکمه اصلی جدید و جذاب --- */
|
| 87 |
.btn-main {
|
| 88 |
width: 100%; padding: 16px;
|
| 89 |
+
background: linear-gradient(135deg, #3b5bdb, var(--accent-primary), #3b5bdb);
|
| 90 |
+
background-size: 250% 100%;
|
| 91 |
+
background-position: 100% 0;
|
| 92 |
color: #fff; border: none; border-radius: var(--radius-btn);
|
| 93 |
font-size: 1.1rem; font-weight: 700; cursor: pointer;
|
| 94 |
display: flex; justify-content: center; align-items: center; gap: 10px;
|
| 95 |
box-shadow: 0 5px 15px var(--accent-glow);
|
| 96 |
+
transition: all 0.4s ease-out;
|
| 97 |
+
position: relative;
|
| 98 |
+
overflow: hidden; /* برای افکت درخشش */
|
| 99 |
}
|
| 100 |
+
.btn-main span { transition: transform 0.3s ease; display: inline-block; }
|
| 101 |
.btn-main:hover {
|
| 102 |
transform: translateY(-3px);
|
| 103 |
+
background-position: 0% 0;
|
| 104 |
box-shadow: 0 10px 25px rgba(74, 108, 250, 0.35);
|
| 105 |
}
|
| 106 |
.btn-main:hover span {
|
| 107 |
+
transform: translateX(-4px) rotate(-10deg);
|
| 108 |
+
}
|
| 109 |
+
.btn-main::before { /* افکت درخشش */
|
| 110 |
+
content: '';
|
| 111 |
+
position: absolute;
|
| 112 |
+
top: 0;
|
| 113 |
+
left: -100%;
|
| 114 |
+
width: 75%;
|
| 115 |
+
height: 100%;
|
| 116 |
+
background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.35), transparent);
|
| 117 |
+
transition: none;
|
| 118 |
}
|
| 119 |
+
.btn-main:hover::before {
|
| 120 |
+
left: 100%;
|
| 121 |
+
transition: left 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
|
| 122 |
}
|
| 123 |
.btn-main:active { transform: scale(0.98); }
|
| 124 |
.btn-main:disabled { opacity: 0.7; cursor: not-allowed; filter: grayscale(1); }
|
|
|
|
| 126 |
.btn-outline {
|
| 127 |
background: transparent; border: 2px solid var(--input-border);
|
| 128 |
color: var(--text-secondary); margin-top: 10px;
|
| 129 |
+
transition: all 0.2s;
|
| 130 |
}
|
| 131 |
.btn-outline:hover { border-color: var(--accent-primary); color: var(--accent-primary); }
|
| 132 |
|
|
|
|
| 352 |
|
| 353 |
mainDownloadLink.href = audioURL;
|
| 354 |
mainDownloadLink.style.display = 'inline-block';
|
| 355 |
+
playerWrapper.innerHTML = `<audio controls autoplay src="${audioURL}"></audio>`;
|
| 356 |
finalLyricsBox.innerHTML = formatLyrics(item.lyrics);
|
| 357 |
|
| 358 |
finalResult.style.display = 'block';
|
|
|
|
| 422 |
processedUrls.add(fullUrl);
|
| 423 |
hasResult = true;
|
| 424 |
|
|
|
|
| 425 |
if (processedUrls.size === 1) {
|
| 426 |
mainDownloadLink.href = fullUrl;
|
| 427 |
mainDownloadLink.style.display = 'inline-block';
|
| 428 |
saveToHistory(idea, lyrics, fullUrl);
|
| 429 |
}
|
| 430 |
+
|
|
|
|
| 431 |
playerWrapper.innerHTML += `<div class="audio-item"><audio controls autoplay src="${fullUrl}"></audio></div>`;
|
| 432 |
}
|
| 433 |
|