.download-form[data-v-2c6f3dff]{margin-bottom:var(--space-xl)}form[data-v-2c6f3dff]{display:flex;gap:var(--space-sm)}input[type=url][data-v-2c6f3dff]{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-main);font:var(--p-sm);font-family:inherit;transition:border-color .15s ease-out,box-shadow .15s ease-out}input[type=url][data-v-2c6f3dff]:hover{border-color:var(--border-hover)}input[type=url][data-v-2c6f3dff]:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--blue-focus)}input[type=url][data-v-2c6f3dff]::placeholder{color:var(--text-muted)}input[type=url].warning[data-v-2c6f3dff]{border-color:var(--yellow-warn)}input[type=url].warning[data-v-2c6f3dff]:focus{box-shadow:0 0 0 3px var(--yellow-focus)}.preview[data-v-2c6f3dff]{margin-top:var(--space-md);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md);box-shadow:var(--shadow-card);transition:border-color .15s ease-out}.preview[data-v-2c6f3dff]:hover{border-color:var(--blue-soft-border)}.preview-thumb[data-v-2c6f3dff]{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-sm)}.preview-body[data-v-2c6f3dff]{display:flex;flex-direction:column;gap:var(--space-xs)}.preview-title[data-v-2c6f3dff]{font-weight:500;font:var(--p-sm);color:var(--text-main);line-height:1.4}.preview-duration[data-v-2c6f3dff]{font:var(--p-xs);color:var(--text-sub)}.checkbox[data-v-2c6f3dff]{display:flex;align-items:center;gap:var(--space-sm);font:var(--p-sm);color:var(--text-main);cursor:pointer}.checkbox input[type=checkbox][data-v-2c6f3dff]{width:16px;height:16px;accent-color:var(--blue-info);cursor:pointer}.quality-row[data-v-2c6f3dff]{display:flex;align-items:center;gap:var(--space-sm)}.select-label[data-v-2c6f3dff]{font:var(--p-xs);font-weight:500;color:var(--text-sub);white-space:nowrap}.select-wrapper[data-v-2c6f3dff]{flex:1}.select-wrapper select[data-v-2c6f3dff]{width:100%;padding:var(--space-xs) var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-main);font:var(--p-sm);font-family:inherit;cursor:pointer;transition:border-color .15s ease-out,box-shadow .15s ease-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-sm) center;padding-right:var(--space-lg)}.select-wrapper select[data-v-2c6f3dff]:hover{border-color:var(--border-hover)}.select-wrapper select[data-v-2c6f3dff]:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--blue-focus)}.btn-download[data-v-2c6f3dff]{width:100%;padding:var(--space-sm) var(--space-md);border:none;border-radius:var(--radius-md);background:var(--blue-info);color:#fff;font:var(--p-sm);font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s ease-out,transform .1s ease-out,opacity .15s ease-out}.btn-download[data-v-2c6f3dff]:hover:not(:disabled){filter:brightness(.9)}.btn-download[data-v-2c6f3dff]:active:not(:disabled){transform:scale(.98)}.btn-download[data-v-2c6f3dff]:disabled{opacity:.5;cursor:not-allowed}.btn-download.loading[data-v-2c6f3dff]{position:relative;color:transparent;pointer-events:none}.btn-download.loading[data-v-2c6f3dff]:after{content:"";position:absolute;width:16px;height:16px;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;border-radius:50%;animation:spin-2c6f3dff .6s linear infinite}@keyframes shimmer-2c6f3dff{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin-2c6f3dff{to{transform:rotate(360deg)}}.skeleton[data-v-2c6f3dff]>*{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--border) 25%,var(--bg-hover) 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer-2c6f3dff 1.5s ease-in-out infinite}.skeleton-thumb[data-v-2c6f3dff]{width:100%;aspect-ratio:16 / 9}.skeleton-body[data-v-2c6f3dff]{display:flex;flex-direction:column;gap:var(--space-sm)}.skeleton-line[data-v-2c6f3dff]{height:14px;border-radius:var(--space-xs)}.skeleton-line.wide[data-v-2c6f3dff]{width:80%}.skeleton-line.narrow[data-v-2c6f3dff]{width:40%}.skeleton-line.short[data-v-2c6f3dff]{width:60px}.skeleton-line.tiny[data-v-2c6f3dff]{width:50px}.skeleton-row[data-v-2c6f3dff]{display:flex;align-items:center;gap:var(--space-sm)}.skeleton-check[data-v-2c6f3dff]{width:16px;height:16px;border-radius:3px}.skeleton-select[data-v-2c6f3dff]{flex:1;height:36px;border-radius:var(--radius-sm)}.skeleton-btn[data-v-2c6f3dff]{width:100%;height:44px;border-radius:var(--radius-md)}@property --progress{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.progress-bar[data-v-b50cf25f]{position:relative;border-radius:var(--radius-md);margin-bottom:var(--space-md)}.progress-ring[data-v-b50cf25f]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-md);background:conic-gradient(var(--blue-info) var(--progress),transparent var(--progress));transition:--progress 80ms linear}.progress-fill[data-v-b50cf25f]{position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:calc(var(--radius-md) - 2px);background:var(--bg-card)}.progress-content[data-v-b50cf25f]{position:relative;padding:var(--space-lg);display:flex;align-items:center;gap:var(--space-md)}.progress-bar:not(.downloading):not(.processing):not(.completed):not(.failed) .progress-ring[data-v-b50cf25f]{display:none}.progress-bar.completed .progress-ring[data-v-b50cf25f]{background:conic-gradient(var(--green-ok) var(--progress),transparent var(--progress))}.progress-bar.processing .progress-ring[data-v-b50cf25f]{background:conic-gradient(var(--yellow-warn) var(--progress),transparent var(--progress))}.progress-bar.failed .progress-ring[data-v-b50cf25f]{background:conic-gradient(var(--red-alert) var(--progress),transparent var(--progress))}.progress-bar:not(.downloading):not(.processing):not(.completed):not(.failed) .progress-fill[data-v-b50cf25f]{display:none}.progress-bar:not(.downloading):not(.processing):not(.completed):not(.failed) .progress-content[data-v-b50cf25f]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.details[data-v-b50cf25f]{flex:1;min-width:0}.title[data-v-b50cf25f]{display:block;font-weight:500;font:var(--p-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-main)}.meta[data-v-b50cf25f]{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xs)}.status-badge[data-v-b50cf25f]{font:var(--p-xs);font-weight:500;padding:2px var(--space-sm);border-radius:9999px;background:var(--bg-hover);color:var(--text-sub)}.status-badge.downloading[data-v-b50cf25f]{background:var(--blue-soft-bg);color:var(--blue-info)}.status-badge.processing[data-v-b50cf25f]{background:var(--yellow-soft-bg);color:var(--yellow-warn)}.status-badge.completed[data-v-b50cf25f]{background:var(--green-soft-bg);color:var(--green-ok)}.status-badge.failed[data-v-b50cf25f]{background:var(--red-soft-bg);color:var(--red-alert)}.percent[data-v-b50cf25f]{font:var(--p-xs);font-weight:600;color:var(--blue-info)}.speed[data-v-b50cf25f],.eta[data-v-b50cf25f]{font:var(--p-xs);color:var(--text-sub)}.download-link[data-v-b50cf25f]{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:var(--blue-soft-bg);color:var(--blue-info);text-decoration:none;border-radius:var(--radius-sm);font:var(--p-xs);font-weight:500;flex-shrink:0;transition:background .15s ease-out,color .15s ease-out}.download-link[data-v-b50cf25f]:hover{background:var(--blue-info);color:#fff}.download-list[data-v-7542da55]{margin-top:var(--space-xl)}h2[data-v-7542da55]{font:var(--p-xs);font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.item[data-v-7542da55]{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-sm);box-shadow:var(--shadow-card);transition:border-color .15s ease-out}.item[data-v-7542da55]:hover{border-color:var(--blue-soft-border)}.thumb[data-v-7542da55]{width:112px;height:64px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.info[data-v-7542da55]{flex:1;min-width:0}.title[data-v-7542da55]{display:block;font-weight:500;font:var(--p-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-main)}.meta[data-v-7542da55]{display:block;font:var(--p-xs);color:var(--text-sub);margin-top:var(--space-xs)}.btn-download[data-v-7542da55]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--blue-soft-bg);color:var(--blue-info);text-decoration:none;border-radius:var(--radius-sm);flex-shrink:0;transition:background .15s ease-out,color .15s ease-out}.btn-download[data-v-7542da55]:hover{background:var(--blue-info);color:#fff}.btn-delete[data-v-7542da55]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-muted);border:none;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;transition:background .15s ease-out,color .15s ease-out}.btn-delete[data-v-7542da55]:hover{background:var(--red-soft-bg);color:var(--red-alert)}.btn-share[data-v-7542da55]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-muted);border:none;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;transition:background .15s ease-out,color .15s ease-out}.btn-share[data-v-7542da55]:hover{background:var(--blue-soft-bg);color:var(--blue-info)}.btn-share.disabled[data-v-7542da55]{opacity:.4;cursor:not-allowed}.btn-share.disabled[data-v-7542da55]:hover{background:transparent;color:var(--text-muted)}.toast[data-v-7542da55]{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--bg-card);color:var(--text-main);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font:var(--p-xs);z-index:1000;animation:fadeInOut-7542da55 2s ease-in-out}@keyframes fadeInOut-7542da55{0%{opacity:0;transform:translate(-50%) translateY(8px)}15%{opacity:1;transform:translate(-50%) translateY(0)}85%{opacity:1}to{opacity:0}}:root{--ff: "Inter", -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;--display: bold 1.5rem/1.15em var(--ff);--h1: bold 1.5rem/1.2em var(--ff);--h2: bold 1.25rem/1.3em var(--ff);--h3: 600 1.125rem/1.3em var(--ff);--p: 1rem/1.4em var(--ff);--p-sm: .875rem/1.4em var(--ff);--p-xs: .75rem/1.4em var(--ff);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 40px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--shadow-card: 0 1px 3px rgba(0, 0, 0, .05), 0 4px 16px rgba(0, 0, 0, .08);--shadow-dropdown: 0 4px 24px rgba(0, 0, 0, .1), 0 8px 32px rgba(0, 0, 0, .08);--bg-page: hsl(220, 15%, 97%);--bg-card: hsl(0, 0%, 100%);--bg-elevated: hsl(0, 0%, 100%);--bg-input: hsl(0, 0%, 100%);--bg-hover: hsl(220, 15%, 96%);--text-main: hsl(220, 15%, 10%);--text-sub: hsl(220, 10%, 45%);--text-muted: hsl(220, 10%, 65%);--border: hsl(220, 15%, 90%);--border-hover: hsl(220, 15%, 80%);--border-focus: hsl(215, 90%, 60%);--blue-info: hsl(215, 90%, 60%);--blue-soft-bg: hsl(215, 90%, 96%);--blue-soft-border: hsl(215, 80%, 90%);--blue-focus: hsla(215, 90%, 60%, .25);--green-ok: hsl(145, 70%, 45%);--green-soft-bg: hsl(145, 70%, 95%);--red-alert: hsl(355, 80%, 55%);--red-soft-bg: hsl(355, 80%, 96%);--yellow-warn: hsl(40, 95%, 50%);--yellow-soft-bg: hsl(40, 95%, 95%);--yellow-focus: hsla(40, 95%, 50%, .25)}.dark{--bg-page: hsl(220, 15%, 4%);--bg-card: hsl(220, 15%, 10%);--bg-elevated: hsl(220, 15%, 14%);--bg-input: hsl(220, 15%, 12%);--bg-hover: hsl(220, 15%, 16%);--text-main: hsl(0, 0%, 100%);--text-sub: hsl(0, 0%, 65%);--text-muted: hsl(0, 0%, 45%);--border: hsl(0, 0%, 20%);--border-hover: hsl(0, 0%, 28%);--border-focus: hsl(215, 90%, 55%);--blue-info: hsl(215, 90%, 65%);--blue-soft-bg: hsla(215, 90%, 65%, .12);--blue-soft-border: hsla(215, 90%, 65%, .2);--blue-focus: hsla(215, 90%, 65%, .3);--green-ok: hsl(145, 70%, 55%);--green-soft-bg: hsla(145, 70%, 55%, .12);--red-alert: hsl(355, 80%, 60%);--red-soft-bg: hsla(355, 80%, 60%, .12);--yellow-warn: hsl(40, 95%, 55%);--yellow-soft-bg: hsla(40, 95%, 55%, .12);--yellow-focus: hsla(40, 95%, 55%, .3);--shadow-card: 0 1px 3px rgba(0, 0, 0, .2), 0 4px 16px rgba(0, 0, 0, .15);--shadow-dropdown: 0 4px 24px rgba(0, 0, 0, .25), 0 8px 32px rgba(0, 0, 0, .18)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--ff);background:var(--bg-page);color:var(--text-main);min-height:100vh;-webkit-font-smoothing:antialiased}.app{max-width:720px;margin:0 auto;padding:var(--space-xl) var(--space-md)}header{text-align:center;margin-bottom:var(--space-2xl)}header h1{font:var(--h1);letter-spacing:-.02em;color:var(--text-main)}header p{color:var(--text-sub);margin-top:var(--space-xs);font:var(--p-sm)}@media(min-width:640px){.app{padding:var(--space-2xl) var(--space-lg)}header h1{font:var(--display);letter-spacing:-.025em}}.active-tasks{margin-bottom:var(--space-lg)}.active-tasks h2{font:var(--p-xs);font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);margin-top:var(--space-2xl);padding-top:var(--space-lg);border-top:1px solid var(--border)}.toggle-label{font-size:16px;line-height:1;opacity:.6}.toggle-track{position:relative;width:44px;height:24px;background:var(--border);border:none;border-radius:12px;cursor:pointer;transition:background .2s ease;padding:0}.toggle-track.active{background:var(--blue-info)}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #00000026}.toggle-track.active .toggle-thumb{transform:translate(20px)}.toggle-track:hover{opacity:.9}.toggle-track:active .toggle-thumb{width:24px}.toggle-track.active:active .toggle-thumb{transform:translate(16px)}.error-banner{display:flex;align-items:flex-start;gap:var(--space-sm);margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--red-soft-bg);border:1px solid var(--red-alert);border-radius:var(--radius-sm);font:var(--p-sm);color:var(--red-alert);animation:error-in .2s ease-out}.error-banner-icon{flex-shrink:0;line-height:1}.error-banner-text{flex:1;min-width:0}.error-banner-close{flex-shrink:0;background:none;border:none;color:var(--red-alert);cursor:pointer;padding:0;line-height:1;opacity:.6;transition:opacity .15s}.error-banner-close:hover{opacity:1}@keyframes error-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
