deepsite-project-ibe2q / models.html
thors1's picture
Initial DeepSite commit
1213bc6 verified
Raw
History Blame Contribute Delete
92.5 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>AI Model - DeepSite AI Fashion Platform</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://unpkg.com/lucide@latest"></script>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet">
<style>
body { font-family: 'Inter', sans-serif; }
.glass-panel { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); }
.sidebar-gradient { background: linear-gradient(180deg, #fafafa 0%, #f5f5f5 100%); }
.hover-lift { transition: transform 0.2s, box-shadow 0.2s; }
.hover-lift:hover { transform: translateY(-2px); box-shadow: 0 10px 40px -10px rgba(0,0,0,0.1); }
.animate-fade { animation: fadeIn 0.3s ease-in; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.custom-scrollbar::-webkit-scrollbar { height: 6px; width: 6px; }
.custom-scrollbar::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 3px; }
.custom-scrollbar::-webkit-scrollbar-thumb { background: #c1c1c1; border-radius: 3px; }
.custom-scrollbar::-webkit-scrollbar-thumb:hover { background: #a1a1a1; }
.range-slider { -webkit-appearance: none; appearance: none; height: 4px; background: #e5e7eb; border-radius: 2px; outline: none; }
.range-slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 16px; height: 16px; background: #6366f1; border-radius: 50%; cursor: pointer; }
.toggle-checkbox:checked { right: 0; border-color: #6366f1; }
.toggle-checkbox:checked + .toggle-label { background-color: #6366f1; }
.gradient-text { background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
</style>
</head>
<body class="bg-gray-50 text-gray-900">
<div class="flex h-screen overflow-hidden">
<!-- Sidebar -->
<aside class="w-64 sidebar-gradient border-r border-gray-200 flex flex-col flex-shrink-0">
<div class="p-6 border-b border-gray-200">
<div class="flex items-center gap-3">
<div class="w-8 h-8 bg-indigo-600 rounded-lg flex items-center justify-center">
<i data-lucide="layers" class="w-5 h-5 text-white"></i>
</div>
<span class="font-bold text-xl tracking-tight">DeepSite</span>
</div>
</div>
<nav class="flex-1 p-4 space-y-1 overflow-y-auto">
<div class="text-xs font-semibold text-gray-400 uppercase tracking-wider mb-2 px-2">Platform</div>
<a href="index.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="layout-dashboard" class="w-5 h-5"></i>
Dashboard
</a>
<a href="models.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg bg-indigo-50 text-indigo-700">
<i data-lucide="user" class="w-5 h-5"></i>
AI Models
</a>
<a href="garments.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="shirt" class="w-5 h-5"></i>
Garments
</a>
<div class="text-xs font-semibold text-gray-400 uppercase tracking-wider mt-6 mb-2 px-2">Creation</div>
<a href="lookbook.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="book-open" class="w-5 h-5"></i>
Look Book
</a>
<a href="campaigns.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="megaphone" class="w-5 h-5"></i>
Campaigns
</a>
<div class="text-xs font-semibold text-gray-400 uppercase tracking-wider mt-6 mb-2 px-2">Management</div>
<a href="approvals.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="check-circle" class="w-5 h-5"></i>
Approvals
</a>
<a href="exports.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="download" class="w-5 h-5"></i>
Exports
</a>
<a href="analytics.html" class="flex items-center gap-3 px-3 py-2 text-sm font-medium rounded-lg text-gray-600 hover:bg-gray-100">
<i data-lucide="bar-chart-2" class="w-5 h-5"></i>
Analytics
</a>
</nav>
<div class="p-4 border-t border-gray-200">
<div class="flex items-center gap-3 px-3 py-2">
<img src="http://static.photos/people/200x200/42" alt="User" class="w-8 h-8 rounded-full object-cover">
<div class="flex-1 min-w-0">
<p class="text-sm font-medium text-gray-900 truncate">Sarah Chen</p>
<p class="text-xs text-gray-500 truncate">Creative Director</p>
</div>
</div>
</div>
</aside>
<!-- Main Content -->
<div class="flex-1 flex flex-col overflow-hidden">
<!-- Top Page Header -->
<header class="glass-panel border-b border-gray-200 z-10 flex-shrink-0">
<div class="px-8 py-4">
<!-- Breadcrumb -->
<div class="flex items-center gap-2 text-sm text-gray-600 mb-2">
<span>Platform</span>
<i data-lucide="chevron-right" class="w-4 h-4"></i>
<span class="text-gray-900 font-medium">AI Model</span>
</div>
<div class="flex items-center justify-between">
<div class="flex items-center gap-4">
<div>
<h1 class="text-2xl font-bold text-gray-900">AI Model</h1>
<p class="text-sm text-gray-600 mt-1">Design production-ready synthetic fashion models for ecommerce, campaigns, and virtual try-on workflows.</p>
</div>
<span class="px-2 py-1 bg-indigo-100 text-indigo-700 text-xs font-medium rounded-full border border-indigo-200">Enterprise Studio</span>
<div class="flex items-center gap-1 px-2 py-1 bg-green-50 text-green-700 text-xs font-medium rounded-full border border-green-200">
<div class="w-1.5 h-1.5 bg-green-500 rounded-full animate-pulse"></div>
AI Model Assistant Active
</div>
</div>
<div class="flex items-center gap-3">
<button onclick="openSaveModal()" class="px-4 py-2 border border-gray-300 text-gray-700 text-sm font-medium rounded-lg hover:bg-gray-50 transition-colors flex items-center gap-2">
<i data-lucide="bookmark" class="w-4 h-4"></i>
Save Preset
</button>
<button onclick="openDuplicateModal()" class="px-4 py-2 border border-gray-300 text-gray-700 text-sm font-medium rounded-lg hover:bg-gray-50 transition-colors flex items-center gap-2">
<i data-lucide="copy" class="w-4 h-4"></i>
Duplicate
</button>
<button onclick="openCompareModal()" class="px-4 py-2 border border-gray-300 text-gray-700 text-sm font-medium rounded-lg hover:bg-gray-50 transition-colors flex items-center gap-2">
<i data-lucide="git-compare" class="w-4 h-4"></i>
Compare Variants
</button>
<button onclick="generateModel()" class="px-4 py-2 bg-indigo-600 text-white text-sm font-medium rounded-lg hover:bg-indigo-700 transition-colors flex items-center gap-2">
<i data-lucide="sparkles" class="w-4 h-4"></i>
Generate Model
</button>
<button class="p-2 text-gray-600 hover:bg-gray-100 rounded-lg">
<i data-lucide="more-vertical" class="w-5 h-5"></i>
</button>
</div>
</div>
</div>
</header>
<!-- Main Content Area -->
<main class="flex-1 overflow-y-auto bg-gray-50">
<div class="max-w-[1600px] mx-auto p-8">
<!-- Main Workspace -->
<div class="mb-8 animate-fade">
<div class="flex gap-6 h-[calc(100vh-240px)] min-h-[700px]">
<!-- LEFT PANEL: Configuration Studio -->
<div class="w-[420px] bg-white rounded-xl border border-gray-200 flex flex-col shadow-sm">
<div class="p-4 border-b border-gray-200 flex items-center justify-between bg-gray-50 rounded-t-xl">
<h3 class="font-semibold text-gray-900">Model Configuration</h3>
<button onclick="resetConfiguration()" class="text-xs text-gray-500 hover:text-gray-700">Reset All</button>
</div>
<div class="flex-1 overflow-y-auto custom-scrollbar p-4 space-y-4">
<!-- Identity Profile -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('identity')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="id-card" class="w-4 h-4 text-indigo-600"></i>
<span class="font-medium text-gray-900 text-sm">Identity Profile</span>
</div>
<i data-lucide="chevron-down" id="icon-identity" class="w-4 h-4 text-gray-400 transition-transform"></i>
</button>
<div id="section-identity" class="p-4 space-y-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Model Name</label>
<input type="text" id="modelName" value="Ava Studio Core V2" class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500">
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Internal ID</label>
<input type="text" value="MDL-2026-0847" class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm bg-gray-100 text-gray-600" readonly>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Model Use Case</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-indigo-500">
<option>Ecommerce PDP</option>
<option>Editorial Campaign</option>
<option>Marketplace Listing</option>
<option>Lookbook</option>
<option>Social Ad Creative</option>
<option>Catalog Studio</option>
</select>
</div>
<div class="grid grid-cols-2 gap-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Target Region</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-indigo-500">
<option>North America</option>
<option>Europe</option>
<option>Asia Pacific</option>
<option>Global</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Demographic</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-indigo-500">
<option>Primary (25-34)</option>
<option>Gen Z (18-24)</option>
<option>Mature (35-44)</option>
<option>Luxury (35-55)</option>
</select>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Brand Alignment</label>
<div class="flex flex-wrap gap-2">
<button class="px-2 py-1 bg-indigo-100 text-indigo-700 text-xs rounded-full border border-indigo-200">Premium Casual</button>
<button class="px-2 py-1 border border-gray-300 text-gray-600 text-xs rounded-full hover:border-indigo-500">Luxury</button>
<button class="px-2 py-1 border border-gray-300 text-gray-600 text-xs rounded-full hover:border-indigo-500">Street</button>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Profile Notes</label>
<textarea class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-indigo-500 resize-none" rows="2" placeholder="Add notes about this model...">Primary studio model for Spring 2026 denim campaign.</textarea>
</div>
</div>
</div>
<!-- Appearance -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('appearance')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="face" class="w-4 h-4 text-rose-600"></i>
<span class="font-medium text-gray-900 text-sm">Appearance</span>
</div>
<i data-lucide="chevron-down" id="icon-appearance" class="w-4 h-4 text-gray-400"></i>
</button>
<div id="section-appearance" class="hidden p-4 space-y-3">
<div class="grid grid-cols-2 gap-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Gender Presentation</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Female</option>
<option>Male</option>
<option>Non-Binary</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Age Range</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>25-30</option>
<option>20-25</option>
<option>30-35</option>
<option>35-40</option>
</select>
</div>
</div>
<div class="grid grid-cols-2 gap-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Ethnicity Look</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Mixed/European</option>
<option>East Asian</option>
<option>South Asian</option>
<option>Afro-Caribbean</option>
<option>Latin American</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Skin Tone</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Light-Medium</option>
<option>Light</option>
<option>Medium</option>
<option>Medium-Dark</option>
<option>Dark</option>
</select>
</div>
</div>
<div class="grid grid-cols-3 gap-2">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Hair Color</label>
<select class="w-full px-2 py-1.5 border border-gray-300 rounded text-xs">
<option>Dark Brown</option>
<option>Black</option>
<option>Blonde</option>
<option>Auburn</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Texture</label>
<select class="w-full px-2 py-1.5 border border-gray-300 rounded text-xs">
<option>Straight</option>
<option>Wavy</option>
<option>Curly</option>
<option>Coily</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Length</label>
<select class="w-full px-2 py-1.5 border border-gray-300 rounded text-xs">
<option>Shoulder</option>
<option>Long</option>
<option>Short</option>
<option>Bob</option>
</select>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-2">Facial Symmetry</label>
<div class="flex items-center gap-3">
<input type="range" min="0" max="100" value="85" class="range-slider flex-1">
<span class="text-xs text-gray-600 w-8">85%</span>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-2">Makeup Intensity</label>
<div class="flex items-center gap-3">
<span class="text-xs text-gray-500">Natural</span>
<input type="range" min="0" max="100" value="40" class="range-slider flex-1">
<span class="text-xs text-gray-500">Full</span>
</div>
</div>
<div class="flex items-center justify-between">
<span class="text-sm text-gray-700">Freckles</span>
<button class="w-11 h-6 bg-indigo-600 rounded-full relative transition-colors" onclick="this.classList.toggle('bg-indigo-600'); this.classList.toggle('bg-gray-300')">
<span class="absolute right-1 top-1 w-4 h-4 bg-white rounded-full transition-all"></span>
</button>
</div>
</div>
</div>
<!-- Body Configuration -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('body')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="ruler" class="w-4 h-4 text-amber-600"></i>
<span class="font-medium text-gray-900 text-sm">Body Configuration</span>
</div>
<i data-lucide="chevron-down" id="icon-body" class="w-4 h-4 text-gray-400"></i>
</button>
<div id="section-body" class="hidden p-4 space-y-3">
<div class="grid grid-cols-2 gap-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Height</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>5'9" (175cm)</option>
<option>5'7" (170cm)</option>
<option>5'11" (180cm)</option>
<option>6'0" (183cm)</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Body Type</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Athletic-Slim</option>
<option>Curvy</option>
<option>Straight</option>
<option>Petite</option>
<option>Plus</option>
</select>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-2">Body Realism</label>
<div class="flex items-center gap-3">
<span class="text-xs text-gray-500">Stylized</span>
<input type="range" min="0" max="100" value="75" class="range-slider flex-1">
<span class="text-xs text-gray-500">Photoreal</span>
</div>
</div>
<div class="flex items-center justify-between">
<span class="text-sm text-gray-700">Hand Visibility</span>
<button class="w-11 h-6 bg-indigo-600 rounded-full relative transition-colors">
<span class="absolute right-1 top-1 w-4 h-4 bg-white rounded-full"></span>
</button>
</div>
<div class="p-3 bg-indigo-50 rounded-lg border border-indigo-100">
<div class="flex items-start gap-2">
<i data-lucide="info" class="w-4 h-4 text-indigo-600 mt-0.5"></i>
<p class="text-xs text-indigo-800">Body diversity preset: <span class="font-medium">Inclusive Standard</span></p>
</div>
</div>
</div>
</div>
<!-- Expression & Pose -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('expression')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="smile" class="w-4 h-4 text-emerald-600"></i>
<span class="font-medium text-gray-900 text-sm">Expression & Pose</span>
</div>
<i data-lucide="chevron-down" id="icon-expression" class="w-4 h-4 text-gray-400"></i>
</button>
<div id="section-expression" class="hidden p-4 space-y-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Expression</label>
<div class="grid grid-cols-3 gap-2">
<button class="px-2 py-1.5 bg-indigo-100 text-indigo-700 text-xs rounded-lg border border-indigo-200 font-medium">Soft Smile</button>
<button class="px-2 py-1.5 border border-gray-300 text-gray-600 text-xs rounded-lg hover:border-indigo-500">Neutral</button>
<button class="px-2 py-1.5 border border-gray-300 text-gray-600 text-xs rounded-lg hover:border-indigo-500">Confident</button>
<button class="px-2 py-1.5 border border-gray-300 text-gray-600 text-xs rounded-lg hover:border-indigo-500">Editorial</button>
<button class="px-2 py-1.5 border border-gray-300 text-gray-600 text-xs rounded-lg hover:border-indigo-500">Luxury</button>
<button class="px-2 py-1.5 border border-gray-300 text-gray-600 text-xs rounded-lg hover:border-indigo-500">Energetic</button>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Crop Framing</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>3/4 Body</option>
<option>Full Body</option>
<option>Half Body</option>
<option>Close-up</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Camera Angle</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Eye Level</option>
<option>Slight Low</option>
<option>Slight High</option>
<option>Dutch</option>
</select>
</div>
</div>
</div>
<!-- Fashion Context -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('fashion')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="shirt" class="w-4 h-4 text-purple-600"></i>
<span class="font-medium text-gray-900 text-sm">Fashion Context</span>
</div>
<i data-lucide="chevron-down" id="icon-fashion" class="w-4 h-4 text-gray-400"></i>
</button>
<div id="section-fashion" class="hidden p-4 space-y-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Styling Mode</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Model with Styling References</option>
<option>Model Only</option>
<option>Ecommerce Mannequin Replacement</option>
</select>
</div>
<div class="grid grid-cols-2 gap-3">
<div class="flex items-center justify-between p-2 border rounded-lg">
<span class="text-xs text-gray-700">Accessories</span>
<button class="w-8 h-4 bg-indigo-600 rounded-full relative">
<span class="absolute right-0.5 top-0.5 w-3 h-3 bg-white rounded-full"></span>
</button>
</div>
<div class="flex items-center justify-between p-2 border rounded-lg">
<span class="text-xs text-gray-700">Footwear</span>
<button class="w-8 h-4 bg-gray-300 rounded-full relative">
<span class="absolute left-0.5 top-0.5 w-3 h-3 bg-white rounded-full"></span>
</button>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Seasonal Preset</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Spring/Summer 2026</option>
<option>Fall/Winter 2025</option>
<option>Resort 2026</option>
<option>Holiday 2025</option>
</select>
</div>
</div>
</div>
<!-- Output & Camera -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('output')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="camera" class="w-4 h-4 text-cyan-600"></i>
<span class="font-medium text-gray-900 text-sm">Output & Camera</span>
</div>
<i data-lucide="chevron-down" id="icon-output" class="w-4 h-4 text-gray-400"></i>
</button>
<div id="section-output" class="hidden p-4 space-y-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Output Type</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Ecommerce Clean Studio</option>
<option>Editorial Studio</option>
<option>Campaign Lifestyle</option>
<option>Luxury Brand</option>
<option>Beauty Close-up</option>
</select>
</div>
<div class="grid grid-cols-2 gap-3">
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Aspect Ratio</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>4:5</option>
<option>1:1</option>
<option>3:4</option>
<option>9:16</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Image Count</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>4 variants</option>
<option>1</option>
<option>2</option>
<option>8</option>
</select>
</div>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Lighting Preset</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Soft Studio</option>
<option>High Fashion</option>
<option>Natural Light</option>
<option>Dramatic</option>
</select>
</div>
<div class="flex items-center justify-between">
<span class="text-sm text-gray-700">Background Removal</span>
<button class="w-11 h-6 bg-indigo-600 rounded-full relative transition-colors">
<span class="absolute right-1 top-1 w-4 h-4 bg-white rounded-full"></span>
</button>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-2">Realism Level</label>
<div class="flex items-center gap-3">
<input type="range" min="0" max="100" value="92" class="range-slider flex-1">
<span class="text-xs text-gray-600 w-8">92%</span>
</div>
</div>
</div>
</div>
<!-- Enterprise Controls -->
<div class="border border-gray-200 rounded-lg overflow-hidden">
<button onclick="toggleSection('enterprise')" class="w-full px-4 py-3 flex items-center justify-between bg-gray-50 hover:bg-gray-100 transition-colors">
<div class="flex items-center gap-2">
<i data-lucide="building" class="w-4 h-4 text-gray-600"></i>
<span class="font-medium text-gray-900 text-sm">Enterprise Controls</span>
</div>
<i data-lucide="chevron-down" id="icon-enterprise" class="w-4 h-4 text-gray-400"></i>
</button>
<div id="section-enterprise" class="hidden p-4 space-y-3">
<div class="flex items-center justify-between">
<div>
<span class="text-sm text-gray-700">Approval Required</span>
<p class="text-xs text-gray-500">Route to approval workflow</p>
</div>
<button class="w-11 h-6 bg-indigo-600 rounded-full relative transition-colors">
<span class="absolute right-1 top-1 w-4 h-4 bg-white rounded-full"></span>
</button>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-1">Save to Project</label>
<select class="w-full px-3 py-2 border border-gray-300 rounded-lg text-sm">
<option>Spring 2026 Campaign</option>
<option>Denim Refresh Project</option>
<option>Marketplace Migration</option>
</select>
</div>
<div>
<label class="text-xs font-medium text-gray-700 block mb-2">Speed vs Quality</label>
<div class="flex items-center gap-3">
<span class="text-xs text-gray-500">Fast</span>
<input type="range" min="0" max="100" value="65" class="range-slider flex-1">
<span class="text-xs text-gray-500">Max</span>
</div>
</div>
<div class="p-2 bg-green-50 rounded border border-green-200">
<p class="text-xs text-green-800"><i data-lucide="check-circle" class="w-3 h-3 inline mr-1"></i> Legal Safe preset active</p>
</div>
</div>
</div>
</div>
</div>
<!-- CENTER/RIGHT: Live Preview Studio -->
<div class="flex-1 flex flex-col gap-4">
<!-- Preview Canvas -->
<div class="flex-1 bg-gray-900 rounded-xl border border-gray-800 overflow-hidden relative">
<div class="absolute top-4 left-4 z-10">
<div class="px-3 py-1.5 bg-white/10 backdrop-blur text-white text-xs rounded-full border border-white/20">
Generation Complete
</div>
</div>
<div class="absolute top-4 right-4 z-10 flex gap-2">
<button onclick="toggleFullscreen()" class="p-2 bg-white/10 backdrop-blur text-white rounded-lg hover:bg-white/20">
<i data-lucide="maximize" class="w-4 h-4"></i>
</button>
<button class="p-2 bg-white/10 backdrop-blur text-white rounded-lg hover:bg-white/20">
<i data-lucide="zoom-in" class="w-4 h-4"></i>
</button>
<button class="p-2 bg-white/10 backdrop-blur text-white rounded-lg hover:bg-white/20">
<i data-lucide="share" class="w-4 h-4"></i>
</button>
</div>
<div class="h-full flex items-center justify-center p-8">
<div class="relative">
<img id="mainPreview" src="http://static.photos/fashion/1024x1280/201" alt="AI Model Preview" class="max-h-[600px] w-auto rounded-lg shadow-2xl">
<div class="absolute bottom-4 left-4 right-4">
<div class="flex items-center justify-between">
<div class="px-3 py-1.5 bg-white/90 backdrop-blur rounded-full flex items-center gap-2">
<span class="w-2 h-2 bg-green-500 rounded-full"></span>
<span class="text-xs font-medium text-gray-900">Quality Score: 96.4%</span>
</div>
<div class="flex gap-2">
<button class="px-3 py-1.5 bg-white/90 backdrop-blur text-gray-900 text-xs font-medium rounded-full hover:bg-white">
Regenerate
</button>
<button class="px-3 py-1.5 bg-indigo-600 text-white text-xs font-medium rounded-full hover:bg-indigo-700">
Refine Face
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Preview Controls & Tabs -->
<div class="h-80 bg-white rounded-xl border border-gray-200 flex flex-col shadow-sm">
<div class="px-4 py-3 border-b border-gray-200 flex items-center justify-between">
<div class="flex items-center gap-6">
<button onclick="switchPreviewTab('preview')" id="tab-btn-preview" class="text-sm font-medium text-indigo-600 border-b-2 border-indigo-600 pb-3 -mb-3">Live Preview</button>
<button onclick="switchPreviewTab('variants')" id="tab-btn-variants" class="text-sm font-medium text-gray-600 hover:text-gray-900 pb-3 -mb-3">Variants</button>
<button onclick="switchPreviewTab('details')" id="tab-btn-details" class="text-sm font-medium text-gray-600 hover:text-gray-900 pb-3 -mb-3">Details</button>
<button onclick="switchPreviewTab('usage')" id="tab-btn-usage" class="text-sm font-medium text-gray-600 hover:text-gray-900 pb-3 -mb-3">Usage</button>
</div>
<div class="flex items-center gap-2">
<button class="p-1.5 text-gray-600 hover:bg-gray-100 rounded">
<i data-lucide="heart" class="w-4 h-4"></i>
</button>
<button class="p-1.5 text-gray-600 hover:bg-gray-100 rounded">
<i data-lucide="download" class="w-4 h-4"></i>
</button>
</div>
</div>
<div class="flex-1 overflow-y-auto custom-scrollbar p-4">
<!-- Live Preview Tab -->
<div id="tab-preview" class="tab-panel">
<div class="flex gap-4 h-full">
<div class="w-2/3">
<p class="text-sm text-gray-600 mb-3">Quick adjustments</p>
<div class="grid grid-cols-4 gap-2">
<button class="p-3 border border-gray-200 rounded-lg text-center hover:border-indigo-500 hover:bg-indigo-50 transition-all">
<i data-lucide="refresh-cw" class="w-4 h-4 mx-auto mb-1 text-indigo-600"></i>
<span class="text-xs text-gray-700">Regenerate</span>
</button>
<button class="p-3 border border-gray-200 rounded-lg text-center hover:border-indigo-500 hover:bg-indigo-50 transition-all">
<i data-lucide="user" class="w-4 h-4 mx-auto mb-1 text-indigo-600"></i>
<span class="text-xs text-gray-700">Refine Face</span>
</button>
<button class="p-3 border border-gray-200 rounded-lg text-center hover:border-indigo-500 hover:bg-indigo-50 transition-all">
<i data-lucide="move" class="w-4 h-4 mx-auto mb-1 text-indigo-600"></i>
<span class="text-xs text-gray-700">Adjust Pose</span>
</button>
<button class="p-3 border border-gray-200 rounded-lg text-center hover:border-indigo-500 hover:bg-indigo-50 transition-all">
<i data-lucide="sun" class="w-4 h-4 mx-auto mb-1 text-indigo-600"></i>
<span class="text-xs text-gray-700">Change Light</span>
</button>
</div>
<div class="mt-4 p-3 bg-gray-50 rounded-lg border border-gray-200">
<div class="flex items-center justify-between mb-2">
<span class="text-xs font-medium text-gray-700">Compare with Previous</span>
<button class="w-8 h-4 bg-indigo-600 rounded-full relative">
<span class="absolute right-0.5 top-0.5 w-3 h-3 bg-white rounded-full"></span>
</button>
</div>
<div class="flex gap-2">
<div class="flex-1 h-20 bg-gray-200 rounded border-2 border-indigo-500">
<img src="http://static.photos/fashion/200x250/201" class="w-full h-full object-cover rounded">
</div>
<div class="flex-1 h-20 bg-gray-200 rounded opacity-60">
<img src="http://static.photos/fashion/200x250/202" class="w-full h-full object-cover rounded">
</div>
</div>
</div>
</div>
<div class="w-1/3 border-l border-gray-200 pl-4">
<p class="text-xs font-semibold text-gray-500 uppercase mb-3">Active Preset Summary</p>
<div class="space-y-2 text-sm">
<div class="flex justify-between">
<span class="text-gray-600">Template</span>
<span class="text-gray-900 font-medium">Premium Ecommerce</span>
</div>
<div class="flex justify-between">
<span class="text-gray-600">Output</span>
<span class="text-gray-900 font-medium">4:5 Studio</span>
</div>
<div class="flex justify-between">
<span class="text-gray-600">Lighting</span>
<span class="text-gray-900 font-medium">Soft</span>
</div>
<div class="flex justify-between">
<span class="text-gray-600">Realism</span>
<span class="text-gray-900 font-medium">92%</span>
</div>
</div>
</div>
</div>
</div>
<!-- Variants Tab -->
<div id="tab-variants" class="tab-panel hidden">
<div class="flex items-center justify-between mb-3">
<p class="text-sm text-gray-600">4 variants generated</p>
<div class="flex gap-2">
<button onclick="setVariantView('grid')" id="variant-grid" class="p-1.5 bg-indigo-50 text-indigo-600 rounded">
<i data-lucide="grid" class="w-4 h-4"></i>
</button>
<button onclick="setVariantView('list')" id="variant-list" class="p-1.5 text-gray-600 hover:bg-gray-100 rounded">
<i data-lucide="list" class="w-4 h-4"></i>
</button>
</div>
</div>
<div id="variants-grid-view" class="grid grid-cols-4 gap-3">
<div class="cursor-pointer group" onclick="selectVariant(0)">
<div class="aspect-[4/5] bg-gray-100 rounded-lg overflow-hidden border-2 border-indigo-500 mb-2">
<img src="http://static.photos/fashion/300x375/201" class="w-full h-full object-cover">
</div>
<p class="text-xs font-medium text-gray-900">Variant A</p>
<p class="text-xs text-gray-500">96.4% score</p>
</div>
<div class="cursor-pointer group" onclick="selectVariant(1)">
<div class="aspect-[4/5] bg-gray-100 rounded-lg overflow-hidden border-2 border-transparent hover:border-gray-300 mb-2">
<img src="http://static.photos/fashion/300x375/202" class="w-full h-full object-cover">
</div>
<p class="text-xs font-medium text-gray-900">Variant B</p>
<p class="text-xs text-gray-500">94.2% score</p>
</div>
<div class="cursor-pointer group" onclick="selectVariant(2)">
<div class="aspect-[4/5] bg-gray-100 rounded-lg overflow-hidden border-2 border-transparent hover:border-gray-300 mb-2">
<img src="http://static.photos/fashion/300x375/203" class="w-full h-full object-cover">
</div>
<p class="text-xs font-medium text-gray-900">Variant C</p>
<p class="text-xs text-gray-500">95.8% score</p>
</div>
<div class="cursor-pointer group" onclick="selectVariant(3)">
<div class="aspect-[4/5] bg-gray-100 rounded-lg overflow-hidden border-2 border-transparent hover:border-gray-300 mb-2">
<img src="http://static.photos/fashion/300x375/204" class="w-full h-full object-cover">
</div>
<p class="text-xs font-medium text-gray-900">Variant D</p>
<p class="text-xs text-gray-500">93.1% score</p>
</div>
</div>
</div>
<!-- Details Tab -->
<div id="tab-details" class="tab-panel hidden">
<div class="grid grid-cols-2 gap-6">
<div>
<p class="text-xs font-semibold text-gray-500 uppercase mb-3">Model Metadata</p>
<div class="space-y-2 text-sm">
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Demographic Tags</span>
<span class="text-gray-900">Female, 25-30, Mixed</span>
</div>
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Resolution</span>
<span class="text-gray-900">2048 x 2560</span>
</div>
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Camera Preset</span>
<span class="text-gray-900">85mm Studio</span>
</div>
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Brand Preset</span>
<span class="text-gray-900">Premium Casual</span>
</div>
</div>
</div>
<div>
<p class="text-xs font-semibold text-gray-500 uppercase mb-3">Generation Info</p>
<div class="space-y-2 text-sm">
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Engine</span>
<span class="text-gray-900">DS-Studio V3.2</span>
</div>
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Cost</span>
<span class="text-gray-900">$2.40</span>
</div>
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Approval State</span>
<span class="text-green-600 font-medium">Approved</span>
</div>
<div class="flex justify-between py-1 border-b border-gray-100">
<span class="text-gray-600">Assigned Projects</span>
<span class="text-gray-900">3 active</span>
</div>
</div>
</div>
</div>
</div>
<!-- Usage Tab -->
<div id="tab-usage" class="tab-panel hidden">
<p class="text-sm text-gray-600 mb-3">Active in 3 campaigns</p>
<div class="space-y-2">
<div class="flex items-center justify-between p-3 border border-gray-200 rounded-lg hover:bg-gray-50 cursor-pointer">
<div class="flex items-center gap-3">
<div class="w-10 h-10 bg-indigo-100 rounded-lg flex items-center justify-center">
<i data-lucide="shopping-bag" class="w-5 h-5 text-indigo-600"></i>
</div>
<div>
<p class="text-sm font-medium text-gray-900">Spring Denim PDP Refresh</p>
<p class="text-xs text-gray-500">247 assets • Due Mar 15</p>
</div>
</div>
<span class="text-xs text-green-600 font-medium">On Track</span>
</div>
<div class="flex items-center justify-between p-3 border border-gray-200 rounded-lg hover:bg-gray-50 cursor-pointer">
<div class="flex items-center gap-3">
<div class="w-10 h-10 bg-amber-100 rounded-lg flex items-center justify-center">
<i data-lucide="megaphone" class="w-5 h-5 text-amber-600"></i>
</div>
<div>
<p class="text-sm font-medium text-gray-900">Premium Activewear Launch</p>
<p class="text-xs text-gray-500">48 assets • Due Mar 20</p>
</div>
</div>
<span class="text-xs text-amber-600 font-medium">In Review</span>
</div>
<div class="flex items-center justify-between p-3 border border-gray-200 rounded-lg hover:bg-gray-50 cursor-pointer">
<div class="flex items-center gap-3">
<div class="w-10 h-10 bg-purple-100 rounded-lg flex items-center justify-center">
<i data-lucide="book-open" class="w-5 h-5 text-purple-600"></i>
</div>
<div>
<p class="text-sm font-medium text-gray-900">Marketplace Catalog</p>
<p class="text-xs text-gray-500">156 assets • Due Apr 1</p>
</div>
</div>
<span class="text-xs text-blue-600 font-medium">Planning</span>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- AI ASSISTANT PANEL -->
<div class="w-72 flex flex-col gap-4">
<div class="bg-gradient-to-br from-indigo-50 to-purple-50 rounded-xl border border-indigo-100 p-4">
<div class="flex items-center gap-2 mb-3">
<div class="w-8 h-8 bg-indigo-600 rounded-lg flex items-center justify-center">
<i data-lucide="sparkles" class="w-4 h-4 text-white"></i>
</div>
<div>
<h3 class="text-sm font-bold text-gray-900">AI Assistant</h3>
<p class="text-xs text-gray-500">Real-time insights</p>
</div>
</div>
<div class="space-y-3">
<div class="bg-white/80 rounded-lg p-3 border border-indigo-100">
<p class="text-xs text-indigo-900 leading-relaxed">This model profile has a <span class="font-semibold">14% higher approval score</span> for denim ecommerce assets.</p>
</div>
<div class="bg-white/80 rounded-lg p-3 border border-indigo-100">
<p class="text-xs text-indigo-900 leading-relaxed">Soft studio lighting improves skin realism for this preset. <button class="text-indigo-600 font-medium hover:underline">Apply</button></p>
</div>
<div class="bg-white/80 rounded-lg p-3 border border-indigo-100">
<p class="text-xs text-indigo-900 leading-relaxed">For marketplace listings, full-body 4:5 outputs are your best-performing format.</p>
</div>
<div class="bg-white/80 rounded-lg p-3 border border-indigo-100">
<p class="text-xs text-indigo-900 leading-relaxed">This model can be reused in <span class="font-semibold">3 active projects</span>.</p>
</div>
</div>
</div>
<div class="bg-white rounded-xl border border-gray-200 p-4 shadow-sm">
<h3 class="text-sm font-semibold text-gray-900 mb-3">Quick Stats</h3>
<div class="space-y-3">
<div>
<div class="flex justify-between text-xs mb-1">
<span class="text-gray-600">Generation Cost</span>
<span class="font-medium text-gray-900">$2.40</span>
</div>
<div class="h-1.5 bg-gray-100 rounded-full">
<div class="h-1.5 bg-indigo-500 rounded-full" style="width: 60%"></div>
</div>
</div>
<div>
<div class="flex justify-between text-xs mb-1">
<span class="text-gray-600">Approval Probability</span>
<span class="font-medium text-green-600">94%</span>
</div>
<div class="h-1.5 bg-gray-100 rounded-full">
<div class="h-1.5 bg-green-500 rounded-full" style="width: 94%"></div>
</div>
</div>
<div>
<div class="flex justify-between text-xs mb-1">
<span class="text-gray-600">Brand Alignment</span>
<span class="font-medium text-indigo-600">96%</span>
</div>
<div class="h-1.5 bg-gray-100 rounded-full">
<div class="h-1.5 bg-indigo-500 rounded-full" style="width: 96%"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Template Strip -->
<div class="mb-8">
<div class="flex items-center justify-between mb-4">
<div>
<h2 class="text-lg font-bold text-gray-900">Model Starting Templates</h2>
<p class="text-sm text-gray-600 mt-1">Jumpstart your creation with proven presets</p>
</div>
<div class="flex items-center gap-3">
<div class="flex gap-2">
<button onclick="filterTemplates('all')" class="template-filter px-3 py-1.5 bg-indigo-100 text-indigo-700 text-xs font-medium rounded-full" data-filter="all">All</button>
<button onclick="filterTemplates('recommended')" class="template-filter px-3 py-1.5 text-gray-600 text-xs font-medium rounded-full hover:bg-gray-100" data-filter="recommended">Recommended</button>
<button onclick="filterTemplates('brand')" class="template-filter px-3 py-1.5 text-gray-600 text-xs font-medium rounded-full hover:bg-gray-100" data-filter="brand">Brand Presets</button>
<button onclick="filterTemplates('new')" class="template-filter px-3 py-1.5 text-gray-600 text-xs font-medium rounded-full hover:bg-gray-100" data-filter="new">New</button>
</div>
<div class="relative">
<i data-lucide="search" class="w-4 h-4 absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400"></i>
<input type="text" placeholder="Search templates..." onkeyup="filterTemplateSearch(this.value)" class="pl-9 pr-4 py-2 border border-gray-300 rounded-lg text-sm focus:ring-2 focus:ring-indigo-500 w-48">
</div>
</div>
</div>
<div class="overflow-x-auto custom-scrollbar pb-2">
<div class="flex gap-4" id="templateContainer" style="min-width: max-content;">
<div class="template-card w-64 bg-white rounded-xl border border-gray-200 overflow-hidden hover-lift cursor-pointer group" data-category="recommended">
<div class="aspect-[4/3] bg-gray-100 relative">
<img src="http://static.photos/fashion/400x300/301" class="w-full h-full object-cover">
<div class="absolute top-2 right-2">
<button class="p-1.5 bg-white/90 rounded-full text-gray-400 hover:text-rose-500">
<i data-lucide="heart" class="w-3 h-3"></i>
</button>
</div>
</div>
<div class="p-4">
<div class="flex items-center justify-between mb-1">
<h3 class="font-semibold text-gray-900 text-sm">Luxury Editorial Female</h3>
<span class="text-xs text-gray-500">92%</span>
</div>
<p class="text-xs text-gray-600 mb-3">High-fashion editorial campaigns</p>
<div class="flex flex-wrap gap-1 mb-3">
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">4:5</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Studio</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Female</span>
</div>
<button onclick="applyTemplate('Luxury Editorial Female')" class="w-full py-1.5 bg-indigo-600 text-white text-xs font-medium rounded-lg hover:bg-indigo-700 opacity-0 group-hover:opacity-100 transition-opacity">Apply Template</button>
</div>
</div>
<div class="template-card w-64 bg-white rounded-xl border border-gray-200 overflow-hidden hover-lift cursor-pointer group" data-category="recommended">
<div class="aspect-[4/3] bg-gray-100 relative">
<img src="http://static.photos/fashion/400x300/302" class="w-full h-full object-cover">
<div class="absolute top-2 right-2">
<button class="p-1.5 bg-white/90 rounded-full text-gray-400 hover:text-rose-500">
<i data-lucide="heart" class="w-3 h-3"></i>
</button>
</div>
</div>
<div class="p-4">
<div class="flex items-center justify-between mb-1">
<h3 class="font-semibold text-gray-900 text-sm">Premium Ecommerce Female</h3>
<span class="text-xs text-gray-500">96%</span>
</div>
<p class="text-xs text-gray-600 mb-3">PDP and marketplace listings</p>
<div class="flex flex-wrap gap-1 mb-3">
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">1:1</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Clean</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Female</span>
</div>
<button onclick="applyTemplate('Premium Ecommerce Female')" class="w-full py-1.5 bg-indigo-600 text-white text-xs font-medium rounded-lg hover:bg-indigo-700 opacity-0 group-hover:opacity-100 transition-opacity">Apply Template</button>
</div>
</div>
<div class="template-card w-64 bg-white rounded-xl border border-gray-200 overflow-hidden hover-lift cursor-pointer group" data-category="brand">
<div class="aspect-[4/3] bg-gray-100 relative">
<img src="http://static.photos/fashion/400x300/303" class="w-full h-full object-cover">
<div class="absolute top-2 right-2">
<button class="p-1.5 bg-white/90 rounded-full text-rose-500">
<i data-lucide="heart" class="w-3 h-3 fill-current"></i>
</button>
</div>
</div>
<div class="p-4">
<div class="flex items-center justify-between mb-1">
<h3 class="font-semibold text-gray-900 text-sm">Marketplace Clean Male</h3>
<span class="text-xs text-gray-500">89%</span>
</div>
<p class="text-xs text-gray-600 mb-3">Amazon, Shopify, marketplace</p>
<div class="flex flex-wrap gap-1 mb-3">
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">4:5</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">White BG</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Male</span>
</div>
<button onclick="applyTemplate('Marketplace Clean Male')" class="w-full py-1.5 bg-indigo-600 text-white text-xs font-medium rounded-lg hover:bg-indigo-700 opacity-0 group-hover:opacity-100 transition-opacity">Apply Template</button>
</div>
</div>
<div class="template-card w-64 bg-white rounded-xl border border-gray-200 overflow-hidden hover-lift cursor-pointer group" data-category="recommended">
<div class="aspect-[4/3] bg-gray-100 relative">
<img src="http://static.photos/fashion/400x300/304" class="w-full h-full object-cover">
<div class="absolute top-2 right-2">
<button class="p-1.5 bg-white/90 rounded-full text-gray-400 hover:text-rose-500">
<i data-lucide="heart" class="w-3 h-3"></i>
</button>
</div>
</div>
<div class="p-4">
<div class="flex items-center justify-between mb-1">
<h3 class="font-semibold text-gray-900 text-sm">Streetwear Gen Z Male</h3>
<span class="text-xs text-gray-500">91%</span>
</div>
<p class="text-xs text-gray-600 mb-3">Streetwear campaigns, social</p>
<div class="flex flex-wrap gap-1 mb-3">
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">4:5</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Lifestyle</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Male</span>
</div>
<button onclick="applyTemplate('Streetwear Gen Z Male')" class="w-full py-1.5 bg-indigo-600 text-white text-xs font-medium rounded-lg hover:bg-indigo-700 opacity-0 group-hover:opacity-100 transition-opacity">Apply Template</button>
</div>
</div>
<div class="template-card w-64 bg-white rounded-xl border border-gray-200 overflow-hidden hover-lift cursor-pointer group" data-category="new">
<div class="aspect-[4/3] bg-gray-100 relative">
<img src="http://static.photos/fashion/400x300/305" class="w-full h-full object-cover">
<div class="absolute top-2 left-2">
<span class="px-1.5 py-0.5 bg-green-500 text-white text-[10px] font-medium rounded-full">NEW</span>
</div>
<div class="absolute top-2 right-2">
<button class="p-1.5 bg-white/90 rounded-full text-gray-400 hover:text-rose-500">
<i data-lucide="heart" class="w-3 h-3"></i>
</button>
</div>
</div>
<div class="p-4">
<div class="flex items-center justify-between mb-1">
<h3 class="font-semibold text-gray-900 text-sm">Plus Size Fashion</h3>
<span class="text-xs text-gray-500">94%</span>
</div>
<p class="text-xs text-gray-600 mb-3">Inclusive fashion campaigns</p>
<div class="flex flex-wrap gap-1 mb-3">
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">4:5</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Studio</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Female</span>
</div>
<button onclick="applyTemplate('Plus Size Fashion')" class="w-full py-1.5 bg-indigo-600 text-white text-xs font-medium rounded-lg hover:bg-indigo-700 opacity-0 group-hover:opacity-100 transition-opacity">Apply Template</button>
</div>
</div>
<div class="template-card w-64 bg-white rounded-xl border border-gray-200 overflow-hidden hover-lift cursor-pointer group" data-category="brand">
<div class="aspect-[4/3] bg-gray-100 relative">
<img src="http://static.photos/fashion/400x300/306" class="w-full h-full object-cover">
<div class="absolute top-2 right-2">
<button class="p-1.5 bg-white/90 rounded-full text-gray-400 hover:text-rose-500">
<i data-lucide="heart" class="w-3 h-3"></i>
</button>
</div>
</div>
<div class="p-4">
<div class="flex items-center justify-between mb-1">
<h3 class="font-semibold text-gray-900 text-sm">Activewear Athletic</h3>
<span class="text-xs text-gray-500">93%</span>
</div>
<p class="text-xs text-gray-600 mb-3">Performance athletic wear</p>
<div class="flex flex-wrap gap-1 mb-3">
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">4:5</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Action</span>
<span class="px-1.5 py-0.5 bg-gray-100 text-gray-600 text-[10px] rounded">Diverse</span>
</div>
<button onclick="applyTemplate('Activewear Athletic')" class="w-full py-1.5