:root{--bg:#f8fafc;--surface:#fff;--primary:#4f46e5;--primary-light:#6366f1;--text:#1e293b;--text-secondary:#64748b;--border:#e2e8f0;--radius:14px;--shadow-card:0 6px 20px #0000000a}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text);background:linear-gradient(135deg,#f0f4ff 0%,#f8fafc 100%);justify-content:center;min-height:100vh;padding:2rem 1rem;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex}.app{width:100%;max-width:1200px}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header{text-align:center;margin-bottom:2.5rem}.header h1{background:linear-gradient(135deg, var(--primary), #a855f7);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.4rem;font-size:2.5rem;font-weight:800}.header p{color:var(--text-secondary);font-size:1.15rem}.mode-switcher,.subpanel{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:2rem;display:flex}.mode-btn,.sub-btn,.sub-btn-rev{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:#fff;border-radius:30px;padding:.85rem 2rem;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #00000005}.mode-btn.active,.sub-btn.active,.sub-btn-rev.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 8px 20px #4f46e533}.sub-btn.active,.sub-btn-rev.active{color:var(--primary);border:1px solid var(--border);background:#fff}.panel{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-card);border:1px solid var(--border);text-align:center;margin-bottom:1.5rem;padding:2rem;display:none}.panel.active{display:block}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;background:#f9fafb;margin-bottom:1.8rem;padding:3rem 2rem;transition:all .3s}.drop-zone.dragover{border-color:var(--primary);background:#eef2ff}.drop-zone .icon{margin-bottom:.5rem;font-size:2.8rem}.file-list{flex-wrap:wrap;gap:1rem;margin:1rem 0;display:flex}.preview-card{border:1px solid var(--border);cursor:grab;background:#fff;border-radius:10px;flex-direction:column;align-items:center;width:120px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 5px #0000000d}.preview-card:active{cursor:grabbing}.preview-card.dragging{opacity:.5;transform:scale(1.05);box-shadow:0 5px 15px #00000026}.preview-card.drag-over{border-color:var(--primary);border-style:dashed}.preview-card .preview-img-container{border-bottom:1px solid var(--border);background:#f8fafc;justify-content:center;align-items:center;width:100%;height:100px;display:flex;overflow:hidden}.preview-card .preview-img-container img,.preview-card .preview-img-container canvas{object-fit:contain;max-width:100%;max-height:100%}.preview-card .preview-icon{font-size:3rem}.preview-card .preview-title{text-align:center;white-space:nowrap;text-overflow:ellipsis;width:100%;color:var(--text);padding:.5rem;font-size:.75rem;overflow:hidden}.preview-card .preview-remove{color:#fff;cursor:pointer;opacity:0;background:#ef4444e6;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;transition:opacity .2s;display:flex;position:absolute;top:5px;right:5px}.preview-card:hover .preview-remove{opacity:1}.btn.convert-action{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.5rem;margin-top:1rem;padding:.8rem 2rem;font-size:1rem;font-weight:600;transition:background .2s,transform .1s;display:inline-flex;box-shadow:0 4px 12px #4f46e526}.btn.convert-action:hover:not(:disabled){background:var(--primary-light);transform:translateY(-1px)}.btn.convert-action:disabled{opacity:.6;cursor:not-allowed}.progress{background:#e2e8f0;border-radius:5px;width:100%;height:10px;margin:1.2rem 0;display:none;overflow:hidden}.progress .progress-bar{background:linear-gradient(90deg, var(--primary), #a855f7);width:0%;height:100%;transition:width .3s}.options-bar{margin:1rem 0}select,input[type=range]{border:1px solid var(--border);background:#fff;border-radius:8px;margin-left:.5rem;padding:.5rem 1rem;font-family:inherit}.result-item{border:1px solid var(--border);background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:.6rem;padding:.8rem 1.2rem;display:flex}.result-item .btn{background:var(--surface);color:var(--primary);border:1px solid var(--border);box-shadow:none;padding:.5rem 1rem;text-decoration:none}.result-item .btn:hover{background:var(--bg)}.footer{text-align:center;color:var(--text-secondary);margin-top:2rem;font-size:.85rem}.seo-content{border-radius:var(--radius);border:1px solid var(--border);background:#fff;margin-top:4rem;padding:3rem 1rem;box-shadow:0 4px 20px #00000008}.seo-content .seo-container{max-width:900px;margin:0 auto}.seo-content h2{color:var(--text);text-align:center;margin-bottom:1rem;font-size:2rem;font-weight:800}.seo-content .seo-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:3rem;font-size:1.1rem}.seo-content .seo-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:4rem;display:grid}.seo-content .seo-grid .feature{border:1px solid var(--border);background:#f8fafc;border-radius:12px;padding:1.5rem}.seo-content .seo-grid .feature h3{color:var(--primary);margin-bottom:.8rem;font-size:1.1rem}.seo-content .seo-grid .feature p{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.seo-content .howto-section{margin-bottom:4rem}.seo-content .howto-section h2{text-align:left;font-size:1.8rem}.seo-content .howto-section .steps-list{padding-left:1.5rem;list-style-type:decimal}.seo-content .howto-section .steps-list li{color:var(--text-secondary);margin-bottom:1rem;font-size:1.05rem;line-height:1.5}.seo-content .howto-section .steps-list li strong{color:var(--text)}.seo-content .faq-section h2{text-align:left;margin-bottom:2rem;font-size:1.8rem}.seo-content .faq-section .faq-item{border-bottom:1px solid var(--border);margin-bottom:1.5rem;padding-bottom:1.5rem}.seo-content .faq-section .faq-item:last-child{border-bottom:none}.seo-content .faq-section .faq-item h3{color:var(--text);margin-bottom:.5rem;font-size:1.15rem}.seo-content .faq-section .faq-item p{color:var(--text-secondary);font-size:1rem;line-height:1.6}@media (width<=768px){.mode-switcher,.subpanel{flex-direction:column;align-items:stretch}}
