@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Roboto+Mono:wght@400;500&display=swap";.uploader[data-v-0329f264]{padding:var(--spacing-2xl);border:2px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--bg-glass);backdrop-filter:blur(12px);cursor:pointer;transition:all var(--transition-base);text-align:center;position:relative}.uploader[data-v-0329f264]:hover:not(.uploader--disabled){border-color:var(--color-primary);box-shadow:var(--shadow-glow)}.uploader--dragover[data-v-0329f264]{border-color:var(--color-primary);background:var(--color-primary-glow);box-shadow:var(--shadow-glow-strong)}.uploader--disabled[data-v-0329f264]{opacity:.5;cursor:not-allowed}.uploader__input[data-v-0329f264]{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.uploader__content[data-v-0329f264]{align-items:center;gap:var(--spacing-sm);pointer-events:none;flex-direction:column;display:flex}.uploader__icon[data-v-0329f264]{width:48px;height:48px;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.uploader__icon svg[data-v-0329f264]{width:100%;height:100%}.uploader__title[data-v-0329f264]{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.uploader__subtitle[data-v-0329f264]{font-size:var(--text-base);color:var(--text-secondary);margin:0}.uploader__link[data-v-0329f264]{color:var(--color-primary);text-decoration:underline}.uploader__hint[data-v-0329f264]{font-size:var(--text-xs);color:var(--text-muted);margin:var(--spacing-sm) 0 0}.conversion-mode[data-v-b9aa45bb]{margin-bottom:var(--spacing-lg)}.conversion-mode__label[data-v-b9aa45bb]{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-sm);font-weight:500;display:block}.conversion-mode__options[data-v-b9aa45bb]{gap:var(--spacing-sm);flex-direction:column;display:flex}.conversion-mode__option[data-v-b9aa45bb]{align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);cursor:pointer;transition:all var(--transition-base);display:flex}.conversion-mode__option[data-v-b9aa45bb]:hover{border-color:var(--border-color-hover)}.conversion-mode__option--active[data-v-b9aa45bb]{border-color:var(--color-primary);background:var(--color-primary-glow)}.conversion-mode__radio[data-v-b9aa45bb]{flex-shrink:0;margin-top:2px}.conversion-mode__content[data-v-b9aa45bb]{flex-direction:column;gap:2px;display:flex}.conversion-mode__title[data-v-b9aa45bb]{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.conversion-mode__desc[data-v-b9aa45bb]{font-size:var(--text-xs);color:var(--text-muted)}.quality-slider[data-v-09b3e764]{margin-bottom:var(--spacing-lg)}.quality-slider--disabled[data-v-09b3e764]{opacity:.5}.quality-slider__header[data-v-09b3e764]{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.quality-slider__label[data-v-09b3e764]{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.quality-slider__value[data-v-09b3e764]{font-size:var(--text-sm);color:var(--color-primary);font-weight:600;font-family:var(--font-mono)}.quality-slider__input-wrapper[data-v-09b3e764]{margin-bottom:var(--spacing-md)}.quality-slider__input[data-v-09b3e764]{width:100%}.quality-slider__presets[data-v-09b3e764]{gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);display:flex}.quality-slider__preset[data-v-09b3e764]{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.quality-slider__preset[data-v-09b3e764]:hover:not(:disabled){border-color:var(--border-color-hover);background:var(--bg-tertiary)}.quality-slider__preset--active[data-v-09b3e764]{border-color:var(--color-primary);background:var(--color-primary-glow)}.quality-slider__preset[data-v-09b3e764]:disabled{cursor:not-allowed;opacity:.5}.quality-slider__preset-label[data-v-09b3e764]{font-size:var(--text-xs);color:var(--text-primary);font-weight:500}.quality-slider__preset-desc[data-v-09b3e764]{color:var(--text-muted);font-size:10px}.quality-slider__hint[data-v-09b3e764]{font-size:var(--text-xs);color:var(--text-muted);margin:0}.watermark-panel[data-v-e1874b8f]{margin-bottom:var(--spacing-lg)}.watermark-panel__header[data-v-e1874b8f]{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.watermark-panel__label[data-v-e1874b8f]{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.toggle-switch[data-v-e1874b8f]{align-items:center;gap:var(--spacing-sm);cursor:pointer;display:flex}.toggle-switch input[data-v-e1874b8f]{display:none}.toggle-slider[data-v-e1874b8f]{background:var(--bg-tertiary);border-radius:var(--radius-full);width:48px;height:26px;transition:all var(--transition-base);position:relative}.toggle-slider[data-v-e1874b8f]:before{content:"";background:var(--text-secondary);width:20px;height:20px;transition:all var(--transition-base);border-radius:50%;position:absolute;top:3px;left:3px}.toggle-switch input:checked+.toggle-slider[data-v-e1874b8f]{background:var(--color-primary-glow)}.toggle-switch input:checked+.toggle-slider[data-v-e1874b8f]:before{background:var(--color-primary);transform:translate(22px)}.toggle-label[data-v-e1874b8f]{font-size:var(--text-xs);color:var(--text-secondary);min-width:48px}.watermark-panel__content[data-v-e1874b8f]{gap:var(--spacing-md);flex-direction:column;display:flex}.watermark-panel__type[data-v-e1874b8f]{gap:var(--spacing-sm);display:flex}.watermark-panel__type button[data-v-e1874b8f]{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex:1;display:flex}.watermark-panel__type button svg[data-v-e1874b8f]{width:16px;height:16px}.watermark-panel__type button.active[data-v-e1874b8f]{border-color:var(--color-primary);background:var(--color-primary-glow);color:var(--text-primary)}.watermark-panel__section[data-v-e1874b8f]{gap:var(--spacing-md);flex-direction:column;display:flex}.form-group[data-v-e1874b8f]{gap:var(--spacing-xs);flex-direction:column;display:flex}.form-group label[data-v-e1874b8f]{font-size:var(--text-xs);color:var(--text-muted)}.form-row[data-v-e1874b8f]{gap:var(--spacing-md);grid-template-columns:1fr 1fr;display:grid}.color-group[data-v-e1874b8f]{flex-direction:column;display:flex}.color-picker-wrapper[data-v-e1874b8f]{align-items:center;gap:var(--spacing-sm);display:flex}.color-picker-wrapper input[type=color][data-v-e1874b8f]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);cursor:pointer;width:40px;height:36px;padding:2px}.color-value[data-v-e1874b8f]{font-size:var(--text-xs);color:var(--text-secondary);font-family:var(--font-mono)}.file-upload[data-v-e1874b8f]{cursor:pointer;position:relative}.file-upload input[data-v-e1874b8f]{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.file-upload__content[data-v-e1874b8f]{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border:2px dashed var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);transition:all var(--transition-base);display:flex}.file-upload:hover .file-upload__content[data-v-e1874b8f]{border-color:var(--color-primary);background:var(--color-primary-glow)}.file-upload__content svg[data-v-e1874b8f]{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.file-upload__content span[data-v-e1874b8f]{font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rotation-presets[data-v-e1874b8f]{gap:var(--spacing-xs);margin-top:var(--spacing-xs);display:flex}.rotation-presets button[data-v-e1874b8f]{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);padding:4px 12px}.rotation-presets button[data-v-e1874b8f]:hover{border-color:var(--color-primary);color:var(--color-primary)}.position-grid[data-v-e1874b8f]{gap:var(--spacing-xs);grid-template-columns:repeat(3,1fr);display:grid}.position-grid button[data-v-e1874b8f]{padding:var(--spacing-xs);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast)}.position-grid button.active[data-v-e1874b8f]{border-color:var(--color-primary);background:var(--color-primary-glow);color:var(--text-primary)}.position-hint[data-v-e1874b8f]{color:var(--text-muted);margin:var(--spacing-xs) 0 0;font-size:11px}.watermark-preview[data-v-a5917ac7]{background:var(--bg-glass);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.preview-header[data-v-a5917ac7]{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.preview-title[data-v-a5917ac7]{font-size:var(--text-base);color:var(--text-primary);margin:0;font-weight:600}.preview-filename[data-v-a5917ac7]{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.preview-canvas-wrapper[data-v-a5917ac7]{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);justify-content:center;min-height:200px;display:flex;position:relative}.preview-canvas[data-v-a5917ac7]{border-radius:var(--radius-sm);cursor:move;max-width:100%;max-height:400px;box-shadow:var(--shadow-md)}.drag-overlay[data-v-a5917ac7]{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-glow);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-xs);pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-toolbar[data-v-a5917ac7]{justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.toolbar-btn[data-v-a5917ac7]{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);display:flex}.toolbar-btn[data-v-a5917ac7]:hover{border-color:var(--color-primary);color:var(--color-primary)}.toolbar-btn svg[data-v-a5917ac7]{width:14px;height:14px}.position-info[data-v-a5917ac7]{font-size:var(--text-xs);color:var(--color-primary);font-family:var(--font-mono)}.result-preview[data-v-125b9d3e]{background:var(--bg-glass);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.preview-header[data-v-125b9d3e]{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.preview-title[data-v-125b9d3e]{font-size:var(--text-base);color:var(--text-primary);margin:0;font-weight:600}.preview-filename[data-v-125b9d3e]{font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.preview-image-wrapper[data-v-125b9d3e]{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);justify-content:center;align-items:center;min-height:200px;max-height:400px;display:flex;overflow:auto}.preview-image[data-v-125b9d3e]{border-radius:var(--radius-sm);max-width:100%;max-height:360px;box-shadow:var(--shadow-md);object-fit:contain}.preview-info[data-v-125b9d3e]{gap:var(--spacing-sm);margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);grid-template-columns:repeat(2,1fr);display:grid}.info-item[data-v-125b9d3e]{font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.info-label[data-v-125b9d3e]{color:var(--text-secondary)}.info-value[data-v-125b9d3e]{color:var(--text-primary);font-weight:500;font-family:var(--font-mono)}.info-value--success[data-v-125b9d3e]{color:var(--color-success)}.info-value--primary[data-v-125b9d3e]{color:var(--color-primary)}.preview-toolbar[data-v-125b9d3e]{justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.toolbar-btn[data-v-125b9d3e]{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);display:flex}.toolbar-btn[data-v-125b9d3e]:hover{border-color:var(--color-primary);color:var(--color-primary)}.toolbar-btn--primary[data-v-125b9d3e]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.toolbar-btn--primary[data-v-125b9d3e]:hover{background:var(--color-primary-light);border-color:var(--color-primary-light);color:#fff}.toolbar-btn svg[data-v-125b9d3e]{width:14px;height:14px}.process-queue[data-v-9a06409b]{background:var(--bg-glass);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.process-queue__header[data-v-9a06409b]{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;display:flex}.process-queue__title[data-v-9a06409b]{font-size:var(--text-base);color:var(--text-primary);margin:0;font-weight:600}.process-queue__count[data-v-9a06409b]{color:var(--text-muted);font-weight:400}.process-queue__stats[data-v-9a06409b]{gap:var(--spacing-sm);display:flex}.stat[data-v-9a06409b]{font-size:var(--text-xs);border-radius:var(--radius-full);padding:2px 8px}.stat--success[data-v-9a06409b]{background:var(--color-success-glow);color:var(--color-success)}.stat--processing[data-v-9a06409b]{background:var(--color-warning-glow);color:var(--color-warning)}.stat--error[data-v-9a06409b]{background:var(--color-error-glow);color:var(--color-error)}.process-queue__list[data-v-9a06409b]{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-direction:column;max-height:300px;display:flex;overflow-y:auto}.queue-item[data-v-9a06409b]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-base);display:flex}.queue-item--processing[data-v-9a06409b]{border-color:var(--color-warning);background:var(--color-warning-glow)}.queue-item--completed[data-v-9a06409b]{border-color:var(--color-success)}.queue-item--failed[data-v-9a06409b]{border-color:var(--color-error)}.queue-item__info[data-v-9a06409b]{flex:1;min-width:0}.queue-item__name[data-v-9a06409b]{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;display:block;overflow:hidden}.queue-item__meta[data-v-9a06409b]{align-items:center;gap:var(--spacing-xs);font-size:var(--text-xs);color:var(--text-muted);display:flex}.queue-item__arrow[data-v-9a06409b]{color:var(--text-secondary)}.queue-item__compressed[data-v-9a06409b]{color:var(--color-success)}.queue-item__ratio[data-v-9a06409b]{color:var(--color-primary)}.queue-item__status[data-v-9a06409b]{flex-shrink:0;width:80px}.queue-item__progress[data-v-9a06409b]{align-items:center;gap:var(--spacing-xs);display:flex}.progress-bar[data-v-9a06409b]{background:var(--bg-tertiary);border-radius:var(--radius-full);flex:1;height:4px;overflow:hidden}.progress-bar__fill[data-v-9a06409b]{background:linear-gradient(90deg, var(--color-primary), var(--color-primary-light));border-radius:var(--radius-full);height:100%;transition:width var(--transition-base)}.progress-text[data-v-9a06409b]{font-size:var(--text-xs);color:var(--text-secondary);font-family:var(--font-mono);min-width:32px}.status-icon[data-v-9a06409b]{text-align:center;font-size:var(--text-base);display:block}.status-icon--pending[data-v-9a06409b]{color:var(--text-muted)}.status-icon--success[data-v-9a06409b]{color:var(--color-success)}.status-icon--error[data-v-9a06409b]{color:var(--color-error)}.queue-item__actions[data-v-9a06409b]{gap:var(--spacing-xs);display:flex}.action-btn[data-v-9a06409b]{border-radius:var(--radius-sm);background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.action-btn[data-v-9a06409b]:hover:not(:disabled){background:var(--color-primary);color:var(--text-primary)}.action-btn[data-v-9a06409b]:disabled{opacity:.3;cursor:not-allowed}.action-btn--preview[data-v-9a06409b]{color:var(--color-primary)}.action-btn--preview[data-v-9a06409b]:hover:not(:disabled){background:var(--color-primary);color:#fff}.action-btn--preview[data-v-9a06409b]:disabled{color:var(--text-muted)}.action-btn--result[data-v-9a06409b]{color:var(--color-success)}.action-btn--result[data-v-9a06409b]:hover{background:var(--color-success);color:#fff}.process-queue__actions[data-v-9a06409b]{gap:var(--spacing-sm);display:flex}.process-queue__actions .glass-button[data-v-9a06409b]{flex:1}:root{--color-primary:#3b82f6;--color-primary-light:#60a5fa;--color-primary-dark:#2563eb;--color-primary-glow:#3b82f666;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-glass:#1e293bb3;--bg-glass-light:#33415580;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--border-color:#ffffff1a;--border-color-hover:#fff3;--border-glow:#3b82f64d;--color-success:#10b981;--color-success-glow:#10b9814d;--color-warning:#f59e0b;--color-warning-glow:#f59e0b4d;--color-error:#ef4444;--color-error-glow:#ef44444d;--color-info:#3b82f6;--shadow-sm:0 2px 8px #0003;--shadow-md:0 8px 32px #0000004d;--shadow-lg:0 16px 48px #0006;--shadow-glow:0 0 20px #3b82f633;--shadow-glow-strong:0 0 30px #3b82f666;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"Roboto Mono", "Fira Code", monospace;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:24px;--text-2xl:32px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--transition-bounce:.3s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-primary);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--color-primary-glow);color:var(--text-primary)}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.glass-panel-hover:hover{border-color:var(--border-color-hover);box-shadow:var(--shadow-glow)}.glass-button{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);backdrop-filter:blur(4px);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-bounce);background:linear-gradient(135deg,#3b82f6cc,#2563ebe6);border:1px solid #fff3;font-weight:500;display:inline-flex}.glass-button:hover{box-shadow:var(--shadow-glow-strong);transform:translateY(-2px)}.glass-button:active{transform:translateY(0)}.glass-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.glass-button-secondary{background:var(--bg-glass-light);border:1px solid var(--border-color)}.glass-button-secondary:hover{background:var(--bg-tertiary);box-shadow:var(--shadow-sm)}.glass-button-danger{background:linear-gradient(135deg,#ef4444cc,#dc2626e6)}.glass-button-danger:hover{box-shadow:0 0 20px var(--color-error-glow)}input,textarea,select{font-family:inherit;font-size:var(--text-base);color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-base)}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-glow);outline:none}input::placeholder,textarea::placeholder{color:var(--text-muted)}input[type=range]{appearance:none;background:var(--bg-tertiary);border-radius:var(--radius-full);cursor:pointer;width:100%;height:6px;padding:0}input[type=range]::-webkit-slider-thumb{appearance:none;background:linear-gradient(135deg, var(--color-primary-light), var(--color-primary));cursor:pointer;width:18px;height:18px;transition:all var(--transition-base);border-radius:50%;box-shadow:0 2px 8px #0000004d}input[type=range]::-webkit-slider-thumb:hover{box-shadow:var(--shadow-glow);transform:scale(1.1)}input[type=range]::-moz-range-thumb{background:linear-gradient(135deg, var(--color-primary-light), var(--color-primary));cursor:pointer;border:none;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 8px #0000004d}input[type=radio],input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs);font-weight:500;display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease-out}.animate-pulse{animation:2s infinite pulse}.animate-spin{animation:1s linear infinite spin}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.font-mono{font-family:var(--font-mono)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.w-full{width:100%}.h-full{height:100%}.hidden{display:none}.app{background:var(--bg-primary);flex-direction:column;min-height:100vh;display:flex}.app-header{padding:var(--spacing-xl);background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);border-bottom:1px solid var(--border-color)}.app-header__content{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;display:flex}.app-header__logo{align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex}.app-header__logo svg{width:40px;height:40px;color:var(--color-primary)}.app-header__logo h1{font-size:var(--text-xl);color:var(--text-primary);margin:0;font-weight:700}.app-header__nav{align-items:center;gap:var(--spacing-md);display:flex}.app-header__nav-link{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-sm);transition:all var(--transition-fast);text-decoration:none;display:flex}.app-header__nav-link:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-glow)}.app-header__nav-link svg{width:18px;height:18px}.app-header__subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0}.app-main{gap:var(--spacing-xl);width:100%;max-width:1400px;padding:var(--spacing-xl);flex:1;grid-template-columns:320px 1fr;margin:0 auto;display:grid}.app-sidebar{top:var(--spacing-xl);height:fit-content;position:sticky}.app-sidebar__content{padding:var(--spacing-lg)}.app-sidebar__title{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);font-weight:600}.settings-actions{gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);display:flex}.settings-reset-btn{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);flex:1;display:flex}.settings-reset-btn:hover{border-color:var(--color-warning);color:var(--color-warning);background:var(--color-warning-glow)}.settings-reset-btn svg{width:14px;height:14px}.app-content{gap:var(--spacing-lg);flex-direction:column;display:flex}.project-info{padding:var(--spacing-lg)}.project-info__title{align-items:center;gap:var(--spacing-sm);font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);font-weight:600;display:flex}.project-info__title svg{width:20px;height:20px;color:var(--color-primary)}.project-info__body{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7}.project-info__body p{margin:0 0 var(--spacing-md)}.project-info__body strong{color:var(--color-primary-light)}.project-info__features{gap:var(--spacing-sm);grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.project-info__features li{align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);display:flex}.project-info__features li svg{width:16px;height:16px;color:var(--color-success);flex-shrink:0}.error-toast{justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-error-glow);border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error);animation:fadeIn var(--transition-base);display:flex}.error-toast button{color:var(--color-error);cursor:pointer;font-size:var(--text-base);background:0 0;border:none}.app-footer{padding:var(--spacing-lg);text-align:center;border-top:1px solid var(--border-color)}.app-footer p{font-size:var(--text-sm);color:var(--text-muted);margin:0}@media (width<=1024px){.app-main{grid-template-columns:1fr}.app-sidebar{order:2;position:static}.app-content{order:1}}@media (width<=640px){.app-header{padding:var(--spacing-md)}.app-header__logo h1{font-size:var(--text-lg)}.app-main{padding:var(--spacing-md)}.project-info__features{grid-template-columns:1fr}}
