*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,h4,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root{--bg: #f6f8fc;--surface: #ffffff;--surface-2: #f1f5f9;--text: #111827;--text-secondary: #64748b;--border: #e2e8f0;--accent: #635bff;--accent-2: #14b8a6;--accent-gradient: linear-gradient(135deg, #635bff, #14b8a6);--error: #dc2626;--warning: #d97706;--success: #059669;--shadow: 0 8px 30px rgba(15, 23, 42, .06);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .04);--radius-card: 18px;--radius-control: 11px;--radius-cta: 13px;--header-h: 64px;--left-w: 260px;--right-w: 340px;--max-w: 1600px;--font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--checker-a: #e8edf5;--checker-b: #ffffff;--transition: .18s ease}[data-theme=dark]{--bg: #080b14;--surface: #101522;--surface-2: #151c2c;--text: #f8fafc;--text-secondary: #94a3b8;--border: rgba(255, 255, 255, .1);--shadow: 0 8px 30px rgba(0, 0, 0, .35);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--checker-a: #1a2233;--checker-b: #101522}@media(prefers-reduced-motion:reduce){:root{--transition: 0ms}}html,body{min-height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(1200px 600px at 10% -10%,rgba(99,91,255,.08),transparent 60%),radial-gradient(900px 500px at 90% 0%,rgba(20,184,166,.07),transparent 55%),var(--bg)}[data-theme=dark] body:before{background:radial-gradient(1000px 500px at 15% -10%,rgba(99,91,255,.16),transparent 60%),radial-gradient(800px 400px at 90% 0%,rgba(20,184,166,.1),transparent 55%),var(--bg)}#app{min-height:100vh;display:flex;flex-direction:column}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.noscript{max-width:640px;margin:2rem auto;padding:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);text-align:center}.app-header{position:sticky;top:0;z-index:40;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.25rem;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:.75rem;min-width:0}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--accent-gradient);flex-shrink:0}.brand-text{display:flex;flex-direction:column;min-width:0}.brand-name{font-weight:700;font-size:1rem;letter-spacing:-.02em;white-space:nowrap}.brand-sub{font-size:.72rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{display:flex;align-items:center;gap:.25rem}.nav a,.nav button.nav-link{padding:.5rem .75rem;border-radius:10px;color:var(--text-secondary);font-size:.9rem;min-height:44px;display:inline-flex;align-items:center}.nav a:hover,.nav button.nav-link:hover,.nav a.is-active{color:var(--text);background:var(--surface-2)}.header-actions{display:flex;align-items:center;gap:.5rem}.icon-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);transition:transform var(--transition),background var(--transition)}.icon-btn:hover{color:var(--text);background:var(--surface-2)}.privacy-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border-radius:999px;font-size:.78rem;color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent);border:1px solid color-mix(in srgb,var(--success) 25%,transparent)}.main-shell{flex:1;width:min(100%,var(--max-w));margin:0 auto;padding:1rem}.landing{display:grid;gap:1.5rem;padding:1.5rem 0 3rem}.hero{text-align:center;max-width:720px;margin:0 auto;display:grid;gap:.75rem}.hero h1{font-size:clamp(1.75rem,4vw,2.6rem);letter-spacing:-.03em;line-height:1.15}.hero p{color:var(--text-secondary);font-size:1.05rem}.seo-content{max-width:800px;margin:3rem auto 2rem;display:grid;gap:2rem;color:var(--text-secondary)}.seo-content h2{color:var(--text);font-size:1.35rem;margin-bottom:.5rem}.seo-content h3{color:var(--text);font-size:1.05rem;margin:1rem 0 .35rem}.studio{display:none;height:calc(100vh - var(--header-h) - 2rem);min-height:520px;border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden;background:var(--surface);box-shadow:var(--shadow);grid-template-columns:var(--left-w) 1fr var(--right-w)}body.is-studio .landing{display:none}body.is-studio .studio{display:grid}body.is-studio .seo-content{display:none}.site-contacts{margin-top:2.5rem;padding:0 1.25rem}.site-contacts-inner{max-width:860px;margin:0 auto;padding:1.75rem;border-radius:var(--radius-card);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm)}.site-contacts h2{font-size:1.35rem;letter-spacing:-.02em;margin-bottom:.65rem}.site-contacts-lead{color:var(--text-secondary);line-height:1.65;font-size:.95rem;max-width:68ch;margin-bottom:1.25rem}.contact-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.contact-btn{display:flex;align-items:center;gap:.75rem;min-height:56px;padding:.75rem .9rem;border-radius:var(--radius-control);border:1px solid var(--border);background:var(--surface-2);color:var(--text);text-decoration:none;transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background var(--transition)}.contact-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.contact-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-btn-icon{flex-shrink:0;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:#fff}.contact-btn-body{display:grid;gap:.1rem;min-width:0}.contact-btn-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.contact-btn-text{font-size:.92rem;font-weight:600;line-height:1.25;word-break:break-word}.contact-btn--consult{grid-column:1 / -1;background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.contact-btn--consult .contact-btn-icon{background:var(--accent-gradient)}.contact-btn--max .contact-btn-icon{background:linear-gradient(135deg,#7c3aed,#a855f7)}.contact-btn--vk .contact-btn-icon{background:linear-gradient(135deg,#2563eb,#3b82f6)}.contact-btn--tg .contact-btn-icon{background:linear-gradient(135deg,#0ea5e9,#38bdf8)}.contact-btn--mail .contact-btn-icon{background:linear-gradient(135deg,#635bff,#818cf8)}.contact-btn--phone .contact-btn-icon{background:linear-gradient(135deg,#059669,#14b8a6)}.contact-btn--max:hover{border-color:color-mix(in srgb,#7c3aed 45%,var(--border))}.contact-btn--vk:hover{border-color:color-mix(in srgb,#2563eb 45%,var(--border))}.contact-btn--tg:hover{border-color:color-mix(in srgb,#0ea5e9 45%,var(--border))}.contact-btn--mail:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.contact-btn--phone:hover{border-color:color-mix(in srgb,var(--success) 45%,var(--border))}@media(max-width:640px){.contact-buttons{grid-template-columns:1fr}.contact-btn--consult{grid-column:auto}}.site-footer{margin-top:1.5rem;padding:1.75rem 1.25rem 2.5rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,transparent)}.site-footer-inner{max-width:860px;margin:0 auto;display:grid;gap:1rem}.site-footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;font-size:.92rem}.site-footer-links a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.site-footer-links a:hover{color:var(--accent-2)}.site-footer-sep{color:var(--text-secondary)}.site-footer-note{font-size:.88rem;line-height:1.65;color:var(--text-secondary);max-width:72ch}.site-footer-note a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}body.is-studio .site-footer,body.is-studio .site-contacts{margin-top:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;padding:.6rem 1rem;border-radius:var(--radius-cta);border:1px solid transparent;font-weight:600;transition:transform var(--transition),opacity var(--transition),background var(--transition)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:var(--accent-gradient);box-shadow:0 6px 18px #635bff47}.btn-primary:hover:not(:disabled){transform:translateY(-1px)}.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--surface-2)}.btn-ghost{color:var(--text-secondary)}.btn-danger{color:var(--error);border-color:color-mix(in srgb,var(--error) 30%,var(--border))}.field{display:grid;gap:.35rem;margin-bottom:.85rem}.field label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.field input,.field select,.field textarea{min-height:44px;padding:.55rem .75rem;border-radius:var(--radius-control);border:1px solid var(--border);background:var(--surface-2)}.field input[type=range]{min-height:28px;padding:0;accent-color:var(--accent)}.field-row{display:flex;gap:.5rem;align-items:center;justify-content:space-between}.checkbox{display:flex;align-items:center;gap:.5rem;min-height:44px;font-size:.9rem}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.25rem;padding:.25rem;background:var(--surface-2);border-radius:var(--radius-control);border:1px solid var(--border)}.segmented button{min-height:40px;border-radius:9px;font-size:.82rem;color:var(--text-secondary)}.segmented button.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.toast-root{position:fixed;right:1rem;bottom:1rem;z-index:80;display:grid;gap:.5rem;width:min(360px,calc(100vw - 2rem));pointer-events:none}.toast{pointer-events:auto;padding:.85rem 1rem;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);animation:toast-in var(--transition) ease}.toast.is-error{border-color:color-mix(in srgb,var(--error) 40%,var(--border))}.toast.is-success{border-color:color-mix(in srgb,var(--success) 40%,var(--border))}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.modal-backdrop{position:fixed;inset:0;z-index:70;background:#080b148c;display:flex;align-items:center;justify-content:center;padding:1rem}.modal{width:min(920px,100%);max-height:min(90vh,900px);overflow:auto;background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--border);box-shadow:var(--shadow);padding:1.25rem}.modal h2{margin-bottom:.75rem}.modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.progress{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.progress>span{display:block;height:100%;width:0%;background:var(--accent-gradient);transition:width .16s ease}.badge{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:6px;font-size:.72rem;font-weight:600;background:var(--surface-2);color:var(--text-secondary)}.badge-done{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.badge-error{color:var(--error);background:color-mix(in srgb,var(--error) 12%,transparent)}.badge-processing{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.warning-box{padding:.75rem;border-radius:var(--radius-control);background:color-mix(in srgb,var(--warning) 12%,transparent);border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border));color:var(--text);font-size:.88rem;margin-bottom:.75rem}.code-block{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-control);padding:.85rem;overflow:auto;white-space:pre}.dropzone{position:relative;border:2px dashed color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:calc(var(--radius-card) + 4px);background:color-mix(in srgb,var(--surface) 80%,transparent);padding:3rem 1.5rem;text-align:center;transition:border-color var(--transition),background var(--transition),transform var(--transition);max-width:860px;margin:0 auto;width:100%}.dropzone.is-dragging{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface));transform:scale(1.01)}.dropzone-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.dropzone-formats{margin-top:1rem;color:var(--text-secondary);font-size:.9rem;letter-spacing:.04em}.dropzone-paste{margin-top:.75rem;color:var(--text-secondary);font-size:.9rem}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;max-width:860px;margin:0 auto}.benefit{padding:1rem;border-radius:var(--radius-card);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.benefit strong{display:block;margin-bottom:.25rem}.benefit span{color:var(--text-secondary);font-size:.88rem}.panel{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border)}.panel-right{border-right:none;border-left:1px solid var(--border)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.85rem;border-bottom:1px solid var(--border)}.panel-header h2{font-size:.92rem}.panel-body{flex:1;overflow:auto;padding:.75rem}.file-card{display:grid;grid-template-columns:48px 1fr auto;gap:.6rem;padding:.55rem;border-radius:12px;border:1px solid transparent;cursor:pointer;margin-bottom:.4rem}.file-card:hover{background:var(--surface-2)}.file-card.is-active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.file-thumb{width:48px;height:48px;border-radius:8px;background:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%) 0 0 / 8px 8px,linear-gradient(-45deg,var(--checker-a) 25%,transparent 25%) 0 4px / 8px 8px,var(--checker-b);overflow:hidden}.file-thumb img{width:100%;height:100%;object-fit:cover}.file-meta{min-width:0}.file-name{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-sub{font-size:.72rem;color:var(--text-secondary)}.preview-pane{display:flex;flex-direction:column;min-width:0;background:var(--bg)}.preview-toolbar{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:space-between;padding:.65rem .85rem;border-bottom:1px solid var(--border);background:var(--surface)}.preview-stage{position:relative;flex:1;overflow:hidden;background:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%) 0 0 / 16px 16px,linear-gradient(-45deg,var(--checker-a) 25%,transparent 25%) 0 8px / 16px 16px,var(--checker-b);cursor:grab}.preview-stage:active{cursor:grabbing}.preview-canvas-wrap{position:absolute;inset:0;display:grid;place-items:center}.preview-image{max-width:100%;max-height:100%;image-rendering:auto;user-select:none;pointer-events:none}.compare-wrap{position:absolute;inset:0;overflow:hidden}.compare-after,.compare-before{position:absolute;inset:0;display:grid;place-items:center}.compare-before{clip-path:inset(0 50% 0 0)}.compare-handle{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;box-shadow:0 0 0 1px #00000040;transform:translate(-50%);cursor:ew-resize;z-index:2}.compare-handle:after{content:"";position:absolute;top:50%;left:50%;width:28px;height:28px;border-radius:50%;transform:translate(-50%,-50%);background:var(--accent-gradient);box-shadow:var(--shadow-sm)}.result-summary{padding:.75rem;border-top:1px solid var(--border);background:var(--surface);display:grid;gap:.35rem;font-size:.85rem}.result-summary strong{color:var(--success)}.result-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.settings-section{border-bottom:1px solid var(--border);padding-bottom:.75rem;margin-bottom:.75rem}.settings-section h3{font-size:.85rem;margin-bottom:.6rem}.sticky-cta{display:none;position:sticky;bottom:0;padding:.75rem;background:color-mix(in srgb,var(--surface) 92%,transparent);border-top:1px solid var(--border);gap:.5rem}.inspector{font-size:.78rem;color:var(--text-secondary);display:grid;gap:.25rem}.inspector dt{color:var(--text-secondary)}.inspector dd{color:var(--text);margin:0 0 .35rem;font-weight:500}.race-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.race-card{border:1px solid var(--border);border-radius:14px;padding:.85rem;background:var(--surface-2)}.race-card.is-recommended{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}.advanced-details summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}.compare-modes{display:flex;gap:.25rem;flex-wrap:wrap}.diff-caption{position:absolute;left:.75rem;bottom:.75rem;z-index:3;padding:.3rem .55rem;border-radius:8px;background:#080b14a6;color:#fff;font-size:.75rem}.quality-score{display:flex;align-items:baseline;gap:.35rem}.quality-score .value{font-size:1.25rem;font-weight:700}.quality-score .hint{font-size:.75rem;color:var(--text-secondary)}.graph-svg{width:100%;height:180px;background:var(--surface-2);border-radius:12px;border:1px solid var(--border)}@media(max-width:1100px){.studio{grid-template-columns:72px 1fr var(--right-w)}.studio.is-left-collapsed{grid-template-columns:0 1fr var(--right-w)}.file-card{grid-template-columns:1fr;justify-items:center;text-align:center}.file-meta,.panel-header h2,.panel-header .btn{display:none}.benefits{grid-template-columns:1fr}.nav{display:none}}@media(max-width:860px){.studio{height:auto;min-height:unset;grid-template-columns:1fr;grid-template-rows:auto}.panel,.panel-right{border:none;border-top:1px solid var(--border)}.preview-pane{order:-1;min-height:280px}.sticky-cta{display:flex}.race-grid{grid-template-columns:1fr}.privacy-chip,.brand-sub{display:none}}@media(max-width:520px){.dropzone{padding:2rem 1rem}.app-header{padding:0 .75rem}}[data-theme=dark] .btn-primary{box-shadow:0 6px 18px #635bff59}[data-theme=dark] .dropzone{background:color-mix(in srgb,var(--surface) 90%,transparent)}.settings-section.is-emphasized{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:4px;border-radius:var(--radius-control);background:color-mix(in srgb,var(--accent) 6%,var(--surface));padding:.75rem}
