@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary: #0284c7;--primary-light: #e0f2fe;--primary-dark: #0369a1;--accent: #0ea5e9;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--bg-page: #f8fafc;--card-bg: #ffffff;--text-main: #0f172a;--text-muted: #64748b;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--radius-lg: 16px;--radius-md: 12px;--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background-color:var(--bg-page);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-heading);margin:0;color:var(--text-main)}.glass{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.glass:hover{box-shadow:var(--shadow)}.container{max-width:1280px;margin:0 auto;padding:0 2rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:var(--radius-md);font-weight:600;font-size:.875rem;cursor:pointer;border:none;gap:.5rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #0284c733}.btn-secondary{background:var(--primary-light);color:var(--primary)}.btn-secondary:hover{background:#bae6fd}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp .6s cubic-bezier(.16,1,.3,1) forwards}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-page)}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.dialog-overlay.svelte-soyp9r{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.dialog-content.svelte-soyp9r{width:100%;max-width:550px;background:#fff;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.dialog-header.svelte-soyp9r{padding:1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color)}.dialog-header.svelte-soyp9r h2:where(.svelte-soyp9r){font-size:1.25rem;font-weight:700}.close-btn.svelte-soyp9r{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:50%;transition:background .2s}.close-btn.svelte-soyp9r:hover{background:#f1f5f9;color:var(--text-main)}.tabs.svelte-soyp9r{display:flex;padding:.5rem;background:#f8fafc;margin:1.5rem 1.5rem 0;border-radius:12px;gap:.25rem}.tab-btn.svelte-soyp9r{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;border:none;background:none;font-size:.875rem;font-weight:600;color:var(--text-muted);border-radius:8px;cursor:pointer;transition:all .2s}.tab-btn.active.svelte-soyp9r{background:#fff;color:var(--primary);box-shadow:var(--shadow-sm)}.dialog-body.svelte-soyp9r{padding:1.5rem;overflow-y:auto;max-height:70vh}.upload-zone.svelte-soyp9r{width:100%;border:2px dashed var(--border-color);background:#f8fafc;border-radius:12px;padding:2.5rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-muted);margin-bottom:1.5rem;transition:all .2s}.upload-zone.svelte-soyp9r:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.preview-container.svelte-soyp9r{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.preview-box.svelte-soyp9r{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16/9;background:#0f172a;cursor:zoom-in;display:flex;align-items:center;justify-content:center}.preview-box.svelte-soyp9r img:where(.svelte-soyp9r){max-width:100%;max-height:100%;object-fit:contain}.zoom-hint.svelte-soyp9r{position:absolute;inset:0;background:#0006;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;font-size:.8125rem;font-weight:600;opacity:0;transition:opacity .2s}.preview-box.svelte-soyp9r:hover .zoom-hint:where(.svelte-soyp9r){opacity:1}.zoom-overlay.svelte-soyp9r{position:fixed;inset:0;background:#000000e6;z-index:2000;display:flex;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out}.full-img.svelte-soyp9r{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 0 40px #00000080}.zoom-close.svelte-soyp9r{position:absolute;top:2rem;right:2rem;background:none;border:none;color:#fff;cursor:pointer;opacity:.7}.zoom-close.svelte-soyp9r:hover{opacity:1}.re-upload.svelte-soyp9r{position:absolute;bottom:.75rem;left:50%;transform:translate(-50%);background:#ffffffe6;border:none;padding:.375rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow)}.form.svelte-soyp9r{display:flex;flex-direction:column;gap:1rem}.status-msg.svelte-soyp9r{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;padding:.5rem .75rem;border-radius:8px}.processing.svelte-soyp9r{background:#f1f5f9;color:var(--text-muted)}.success.svelte-soyp9r{background:#f0fdf4;color:#16a34a}.error.svelte-soyp9r{background:#fef2f2;color:#dc2626}.field.svelte-soyp9r label:where(.svelte-soyp9r){display:block;font-size:.8125rem;font-weight:600;color:var(--text-muted);margin-bottom:.375rem}.field.svelte-soyp9r input:where(.svelte-soyp9r){width:100%;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:10px;font-size:1rem;background:#f8fafc}.field.svelte-soyp9r input:where(.svelte-soyp9r):focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #0284c71a}.dialog-footer.svelte-soyp9r{padding:1.5rem;display:flex;gap:1rem;border-top:1px solid var(--border-color)}.dialog-footer.svelte-soyp9r .btn:where(.svelte-soyp9r){flex:1}.btn-ai-start.svelte-soyp9r{background:#f0f7ff;color:#0284c7;border:2px dashed #bae6fd;padding:1rem;border-radius:12px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:.75rem;cursor:pointer;transition:all .2s;width:100%}.btn-ai-start.svelte-soyp9r:hover:not(:disabled){background:#e0f2fe;border-color:#0284c7;transform:translateY(-2px)}.btn-ai-start.svelte-soyp9r:disabled{opacity:.7;cursor:not-allowed;background:#f8fafc}.spin.svelte-soyp9r{animation:svelte-soyp9r-spin 1s linear infinite}@keyframes svelte-soyp9r-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.batch-upload-container.svelte-soyp9r{display:flex;flex-direction:column;gap:1rem}.batch-control.svelte-soyp9r{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8fafc;border-radius:12px;border:1px solid var(--border-color);gap:1rem}.batch-stats.svelte-soyp9r{display:flex;flex-direction:column;font-size:.875rem}.batch-stats.svelte-soyp9r .count:where(.svelte-soyp9r){color:var(--text-main);font-weight:600}.batch-stats.svelte-soyp9r .success-count:where(.svelte-soyp9r){font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.batch-actions.svelte-soyp9r{display:flex;align-items:center;gap:.5rem}.btn-batch-add.svelte-soyp9r{background:#fff;border:1px solid var(--border-color);color:var(--text-main);padding:.5rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.25rem;transition:all .2s}.btn-batch-add.svelte-soyp9r:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.batch-list.svelte-soyp9r{display:flex;flex-direction:column;gap:.75rem;max-height:320px;overflow-y:auto;padding-right:.25rem}.batch-item.svelte-soyp9r{display:grid;grid-template-columns:48px 1fr auto 32px;align-items:center;gap:1rem;padding:.75rem;background:#fff;border-radius:12px;border:1px solid var(--border-color);transition:all .2s}.batch-item.waiting.svelte-soyp9r{border-left:4px solid #94a3b8}.batch-item.optimizing.svelte-soyp9r,.batch-item.processing.svelte-soyp9r{border-left:4px solid #3b82f6;background:#eff6ff}.batch-item.success.svelte-soyp9r{border-left:4px solid #10b981;background:#f0fdf4}.batch-item.error.svelte-soyp9r{border-left:4px solid #ef4444;background:#fef2f2}.item-img-preview.svelte-soyp9r{width:48px;height:48px;border-radius:8px;overflow:hidden;background:#f1f5f9;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color)}.item-img-preview.svelte-soyp9r img:where(.svelte-soyp9r){width:100%;height:100%;object-fit:cover}.placeholder-icon.svelte-soyp9r{color:#94a3b8}.item-info-row.svelte-soyp9r{display:flex;flex-direction:column;overflow:hidden}.item-info-row.svelte-soyp9r .file-name:where(.svelte-soyp9r){font-size:.875rem;font-weight:600;color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.item-info-row.svelte-soyp9r .status-badge:where(.svelte-soyp9r){font-size:.75rem;font-weight:500;margin-top:.25rem}.status-badge.waiting.svelte-soyp9r{color:#64748b}.status-badge.optimizing.svelte-soyp9r{color:#3b82f6}.status-badge.processing.svelte-soyp9r{color:#2563eb}.status-badge.success.svelte-soyp9r{color:#16a34a}.status-badge.error.svelte-soyp9r{color:#dc2626}.item-results.svelte-soyp9r{display:flex;align-items:center}.result-badge.svelte-soyp9r{background:#dcfce7;color:#15803d;font-weight:700;font-size:.8125rem;padding:.25rem .5rem;border-radius:6px;border:1px solid #bbf7d0}.item-delete-btn.svelte-soyp9r{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.item-delete-btn.svelte-soyp9r:hover:not(:disabled){background:#f1f5f9;color:#ef4444}.item-delete-btn.svelte-soyp9r:disabled{opacity:.5;cursor:not-allowed}.login-container.svelte-12qhfyh{position:fixed;inset:0;background:radial-gradient(circle at top right,#e0f2fe,#f8fafc);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1.5rem}.login-card.svelte-12qhfyh{width:100%;max-width:420px;background:#fff;padding:3rem 2rem;text-align:center}.login-header.svelte-12qhfyh{margin-bottom:2.5rem}.lock-icon.svelte-12qhfyh{width:64px;height:64px;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;border-radius:20px;margin:0 auto 1.5rem}.login-header.svelte-12qhfyh h1:where(.svelte-12qhfyh){font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.login-header.svelte-12qhfyh p:where(.svelte-12qhfyh){color:var(--text-muted);font-size:.9375rem;line-height:1.6}.input-group.svelte-12qhfyh{position:relative;display:flex;gap:.5rem}.input-group.svelte-12qhfyh input:where(.svelte-12qhfyh){flex:1;padding:1rem 1.25rem;border:2px solid var(--border-color);border-radius:12px;font-size:1rem;transition:all .2s;text-align:center;letter-spacing:.2em}.input-group.svelte-12qhfyh input:where(.svelte-12qhfyh):focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #0284c71a}.submit-btn.svelte-12qhfyh{background:var(--primary);color:#fff;border:none;width:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.submit-btn.svelte-12qhfyh:hover:not(:disabled){background:var(--primary-dark);transform:scale(1.05)}.submit-btn.svelte-12qhfyh:disabled{opacity:.5;cursor:not-allowed}.error-msg.svelte-12qhfyh{margin-top:1rem;color:var(--danger);font-size:.875rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem}.login-footer.svelte-12qhfyh{margin-top:3rem;font-size:.8125rem;color:var(--text-muted)}.app-layout.svelte-12qhfyh{display:flex;min-height:100vh;background:var(--bg-page)}.sidebar.svelte-12qhfyh{width:260px;background:#fff;border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:1.5rem;position:sticky;top:0;height:100vh}.logo.svelte-12qhfyh{display:flex;align-items:center;gap:.75rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color);margin-bottom:2rem}.logo-icon.svelte-12qhfyh{background:var(--primary);color:#fff;padding:.5rem;border-radius:12px;display:flex;align-items:center;justify-content:center}.logo.svelte-12qhfyh h2:where(.svelte-12qhfyh){font-size:1.1rem;font-weight:700;color:var(--primary);letter-spacing:-.02em}.side-nav.svelte-12qhfyh{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.nav-item.svelte-12qhfyh{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:10px;color:var(--text-muted);text-decoration:none;font-weight:500;transition:all .2s;border:none;background:none;width:100%;cursor:pointer}.nav-item.svelte-12qhfyh:hover{background:var(--primary-light);color:var(--primary)}.nav-item.active.svelte-12qhfyh{background:var(--primary);color:#fff}.logout-btn.svelte-12qhfyh{color:var(--danger);margin-bottom:.5rem}.logout-btn.svelte-12qhfyh:hover{background:#fef2f2;color:var(--danger)}.sidebar-footer.svelte-12qhfyh{border-top:1px solid var(--border-color);padding-top:1.5rem}.main-content.svelte-12qhfyh{flex-grow:1;display:flex;flex-direction:column;width:calc(100% - 260px)}.top-header.svelte-12qhfyh{height:70px;background:#fff;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;position:sticky;top:0;z-index:10}.header-breadcrumb.svelte-12qhfyh{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-muted)}.separator.svelte-12qhfyh{color:#cbd5e1}.header-breadcrumb.svelte-12qhfyh .active:where(.svelte-12qhfyh){color:var(--text-main);font-weight:600}@keyframes svelte-12qhfyh-pulse{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 6px #10b98100}to{box-shadow:0 0 #10b98100}}.page-body.svelte-12qhfyh{padding:2rem;flex-grow:1}.menu-toggle.svelte-12qhfyh{display:none;background:none;border:none;color:var(--text-main);cursor:pointer;padding:.5rem;margin-right:.5rem}.mobile-overlay.svelte-12qhfyh{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100}.mobile-sidebar.svelte-12qhfyh{display:flex!important;position:fixed;left:0;top:0;bottom:0;z-index:101;box-shadow:20px 0 50px #0000001a;width:280px}@media(max-width:1024px){.sidebar.svelte-12qhfyh:not(.mobile-sidebar){display:none}.main-content.svelte-12qhfyh{width:100%}.menu-toggle.svelte-12qhfyh{display:block}.top-header.svelte-12qhfyh{padding:0 1rem}.page-body.svelte-12qhfyh{padding:1.5rem 1rem}}@media(max-width:640px){.header-breadcrumb.svelte-12qhfyh{display:none}}.global-lightbox.svelte-12qhfyh{position:fixed;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out}.lightbox-content.svelte-12qhfyh{position:relative;max-width:95vw;max-height:95vh;background:#fff;padding:10px;border-radius:16px;box-shadow:0 40px 100px -20px #00000080;cursor:default}.lightbox-content.svelte-12qhfyh img:where(.svelte-12qhfyh){display:block;max-width:100%;max-height:85vh;border-radius:12px;object-fit:contain}.lightbox-close.svelte-12qhfyh{position:absolute;top:2rem;right:2rem;background:#fff3;border:none;color:#fff;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s}.lightbox-close.svelte-12qhfyh:hover{background:#fff6;transform:rotate(90deg)}.animate-zoom-in.svelte-12qhfyh{animation:svelte-12qhfyh-zoomIn .3s cubic-bezier(.16,1,.3,1)}@keyframes svelte-12qhfyh-zoomIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}
