diff --git a/assets/css/custom.css b/assets/css/custom.css
new file mode 100644
index 0000000..65eb75e
--- /dev/null
+++ b/assets/css/custom.css
@@ -0,0 +1,113 @@
+
+:root {
+ --primary-color: #5E5CE6;
+ --secondary-color: #00C4CC;
+ --background-color: #F2F2F7;
+ --surface-color: #FFFFFF;
+ --text-color: #1C1C1E;
+ --light-gray-color: #E5E5EA;
+ --border-radius: 12px;
+ --font-family: 'system-ui', -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
+}
+
+body {
+ background-color: var(--background-color);
+ font-family: var(--font-family);
+ color: var(--text-color);
+ margin: 0;
+ line-height: 1.6;
+}
+
+.container {
+ max-width: 960px;
+ margin: 0 auto;
+ padding: 0 15px;
+}
+
+.hero {
+ background: linear-gradient(135deg, var(--primary-color), #A450E4);
+ color: white;
+ padding: 100px 0;
+ text-align: center;
+ border-bottom-left-radius: var(--border-radius);
+ border-bottom-right-radius: var(--border-radius);
+}
+
+.hero h1 {
+ font-size: 3.5rem;
+ font-weight: 700;
+ margin-bottom: 0.5rem;
+}
+
+.hero p {
+ font-size: 1.25rem;
+ margin-bottom: 2rem;
+ opacity: 0.9;
+}
+
+.cta-button {
+ background-color: var(--secondary-color);
+ color: var(--text-color);
+ font-size: 1.1rem;
+ font-weight: 600;
+ padding: 15px 35px;
+ border-radius: var(--border-radius);
+ text-decoration: none;
+ transition: transform 0.2s, box-shadow 0.2s;
+ display: inline-flex;
+ align-items: center;
+ gap: 10px;
+ border: none;
+ cursor: pointer;
+}
+
+.cta-button:hover {
+ transform: translateY(-3px);
+ box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
+}
+
+.upload-section {
+ padding: 60px 0;
+ text-align: center;
+}
+
+#upload-card {
+ background-color: var(--surface-color);
+ padding: 40px;
+ border-radius: var(--border-radius);
+ box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
+ max-width: 600px;
+ margin: 0 auto;
+}
+
+#file-input {
+ display: none;
+}
+
+#processing-status {
+ text-align: left;
+}
+
+.progress-bar-container {
+ background-color: var(--light-gray-color);
+ border-radius: 5px;
+ height: 10px;
+ margin: 15px 0;
+}
+
+.progress-bar {
+ width: 0;
+ height: 100%;
+ background-color: var(--secondary-color);
+ border-radius: 5px;
+ transition: width 0.5s ease-in-out;
+}
+
+#status-text {
+ font-weight: 500;
+ margin-bottom: 1rem;
+}
+
+.hidden {
+ display: none;
+}
diff --git a/assets/js/main.js b/assets/js/main.js
new file mode 100644
index 0000000..7dc4538
--- /dev/null
+++ b/assets/js/main.js
@@ -0,0 +1,46 @@
+
+document.addEventListener('DOMContentLoaded', () => {
+ const uploadButton = document.getElementById('uploadButton');
+ const fileInput = document.getElementById('fileInput');
+ const uploadCard = document.getElementById('upload-card');
+ const processingStatus = document.getElementById('processing-status');
+ const progressBar = document.querySelector('.progress-bar');
+ const statusText = document.getElementById('status-text');
+ const fileNameText = document.getElementById('file-name');
+ const nextStepButton = document.getElementById('nextStepButton');
+
+ uploadButton.addEventListener('click', () => {
+ fileInput.click();
+ });
+
+ fileInput.addEventListener('change', () => {
+ if (fileInput.files.length > 0) {
+ const file = fileInput.files[0];
+ fileNameText.textContent = `File: ${file.name}`;
+
+ uploadCard.classList.add('hidden');
+ processingStatus.classList.remove('hidden');
+
+ let progress = 0;
+ statusText.textContent = 'Uploading...';
+ progressBar.style.width = '0%';
+ nextStepButton.classList.add('hidden');
+
+ const interval = setInterval(() => {
+ progress += 10;
+ progressBar.style.width = `${progress}%`;
+
+ if (progress >= 50 && progress < 100) {
+ statusText.textContent = 'AI is analyzing your video...';
+ }
+
+ if (progress >= 100) {
+ clearInterval(interval);
+ statusText.textContent = 'Highlights are ready!';
+ progressBar.style.width = '100%';
+ nextStepButton.classList.remove('hidden');
+ }
+ }, 300);
+ }
+ });
+});
diff --git a/index.php b/index.php
index 7205f3d..f56e26f 100644
--- a/index.php
+++ b/index.php
@@ -1,150 +1,49 @@
-
-
+
-
-
- New Style
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+ Viral Video Clipper
+
+
+
-
-
-
Analyzing your requirements and generating your website…
-
- Loading…
-
-
= ($_SERVER['HTTP_HOST'] ?? '') === 'appwizzy.com' ? 'AppWizzy' : 'Flatlogic' ?> AI is collecting your requirements and applying the first changes.
-
This page will update automatically as the plan is implemented.
-
Runtime: PHP = htmlspecialchars($phpVersion) ?> — UTC = htmlspecialchars($now) ?>
+
+
+
+
Turn Your Long Videos into Viral Highlights
+
Our AI automatically finds the most engaging moments and turns them into shareable short clips.
+
-
-
+
+
+
+
+
+
+
+
+
+
+
Processing...
+
+
+
+
+
+
+
+
-
+