:root{--bg: #f4f6fb;--bg-grad: radial-gradient(1000px 500px at 85% -10%, rgba(99, 102, 241, .1), transparent 60%), radial-gradient(800px 480px at -10% 0%, rgba(139, 92, 246, .08), transparent 55%);--surface: #ffffff;--surface-2: #f8fafc;--border: #e7eaf1;--border-strong: #d3d8e3;--text: #171b26;--text-muted: #5f6879;--text-faint: #98a0b0;--accent: #6366f1;--accent-strong: #4f46e5;--accent-soft: #eef2ff;--accent-grad: linear-gradient(135deg, #6366f1, #8b5cf6);--success: #10b981;--danger: #ef4444;--radius: 14px;--radius-sm: 9px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .06);--shadow-md: 0 6px 20px rgba(16, 24, 40, .08);--shadow-lg: 0 16px 48px rgba(16, 24, 40, .14);--ring: 0 0 0 3px rgba(99, 102, 241, .28);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Roboto,Helvetica,Arial,sans-serif}@media (prefers-color-scheme: dark){:root{--bg: #0d1017;--bg-grad: radial-gradient(1000px 500px at 85% -10%, rgba(99, 102, 241, .16), transparent 60%), radial-gradient(800px 480px at -10% 0%, rgba(139, 92, 246, .12), transparent 55%);--surface: #161a23;--surface-2: #1c2130;--border: #262c3a;--border-strong: #343c4e;--text: #e8ebf2;--text-muted: #a6aebe;--text-faint: #6b7488;--accent: #818cf8;--accent-strong: #a5b4fc;--accent-soft: #1e2440;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 6px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .5);--ring: 0 0 0 3px rgba(129, 140, 248, .35)}}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%}body{margin:0;background:var(--bg);background-image:var(--bg-grad);background-attachment:fixed;color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:#6366f140}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: no-preference){.hero,.workspace,.article{animation:rise .45s ease both}}.seo-shell{max-width:720px;margin:0 auto;padding:48px 24px;color:var(--text)}.seo-shell-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px;margin-bottom:32px;font-size:15px;color:var(--text-muted)}.seo-shell-header strong{color:var(--text);font-size:18px}.seo-shell-langs{margin-left:auto;font-size:13px}.seo-shell-main h1{font-size:36px;line-height:1.2;letter-spacing:-.02em;margin:0 0 16px}.seo-shell-main h1 span{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.seo-shell-main p{color:var(--text-muted);line-height:1.6;font-size:17px}.seo-shell-main ul{padding-left:1.2em;color:var(--text-muted);line-height:1.7}.seo-shell-switch{margin-top:24px;font-size:14px}.app{min-height:100%;display:flex;flex-direction:column}.header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 78%,transparent);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border)}.header-inner{max-width:1200px;margin:0 auto;padding:0 32px;height:64px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;color:var(--text);text-decoration:none}.brand:hover{text-decoration:none}.brand-mark{color:var(--accent);display:flex;transition:transform .25s ease}.brand:hover .brand-mark{transform:rotate(-6deg) scale(1.05)}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-text strong{font-size:17px;letter-spacing:-.01em}.brand-text small{font-size:11px;color:var(--text-muted)}.header-nav{display:flex;align-items:center;gap:6px}.link-btn{appearance:none;background:transparent;border:1px solid transparent;color:var(--text-muted);font-size:14px;padding:8px 13px;border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;transition:background .14s,color .14s,border-color .14s}.link-btn:hover{background:var(--surface-2);border-color:var(--border);color:var(--text);text-decoration:none}.lang-switch{display:inline-flex;align-items:center;gap:2px;margin-left:4px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}.lang-btn{appearance:none;border:none;background:transparent;color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.02em;padding:5px 11px;border-radius:999px;cursor:pointer;line-height:1;transition:color .12s,background .12s,box-shadow .12s}.lang-btn:hover{color:var(--text)}.lang-btn.is-active{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-sm)}.main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:48px 32px 32px}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center;padding:clamp(16px,4vh,48px) 0 16px}.hero-text h1{font-size:clamp(32px,4.4vw,50px);line-height:1.07;margin:0 0 20px;letter-spacing:-.032em;text-wrap:balance}.hero-text .accent{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-lead{font-size:clamp(16px,1.4vw,19px);color:var(--text-muted);margin:0 0 30px;line-height:1.62;max-width:44ch;text-wrap:pretty}.hero-feats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px;color:var(--text);font-size:14px}.hero-feats li{display:flex;align-items:center;gap:11px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:11px 13px;box-shadow:var(--shadow-sm);line-height:1.35;transition:transform .16s,box-shadow .16s,border-color .16s}.hero-feats li:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--border-strong)}.feat-icon{flex-shrink:0;color:var(--accent-strong);background:var(--accent-soft);border-radius:7px;padding:5px;width:30px;height:30px}.dropzone{position:relative;background:var(--surface);border:2px dashed var(--border-strong);border-radius:var(--radius);padding:56px 32px;text-align:center;cursor:pointer;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s;outline:none;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-shadow:var(--shadow-sm)}.dropzone:before{content:"";position:absolute;inset:10px;border-radius:calc(var(--radius) - 6px);background:var(--accent-soft);opacity:0;transition:opacity .18s;pointer-events:none}.dropzone:hover,.dropzone:focus-visible{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.dropzone:hover:before,.dropzone:focus-visible:before{opacity:.5}.dropzone.is-dragging{border-color:var(--accent);border-style:solid;box-shadow:var(--shadow-lg);transform:scale(1.015)}.dropzone.is-dragging:before{opacity:.8}.dropzone-icon{color:var(--accent);margin-bottom:10px;display:inline-flex;padding:16px;border-radius:50%;background:var(--accent-soft);transition:transform .2s ease}.dropzone:hover .dropzone-icon,.dropzone.is-dragging .dropzone-icon{transform:translateY(-3px) scale(1.06)}.dropzone h2{margin:0;font-size:19px;letter-spacing:-.01em}.dropzone p{margin:2px 0;color:var(--text-muted);font-size:14px}.dropzone-hint{font-size:12.5px!important;color:var(--text-faint)!important;margin-top:14px!important}.dropzone .dropzone-error{width:min(100%,420px);margin:10px 0 0;padding:9px 12px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger);font-size:12.5px;line-height:1.45}.dropzone-example{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;margin-top:10px;color:var(--text-faint);font-size:12.5px}.dropzone-example button{appearance:none;padding:3px 5px;border:0;background:transparent;color:var(--accent-strong);font:inherit;font-weight:700;cursor:pointer}.dropzone-example button:hover{text-decoration:underline}.workspace{display:grid;grid-template-columns:336px minmax(0,1fr);gap:28px;align-items:start}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:4px;position:sticky;top:88px;max-height:calc(100vh - 112px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.panel::-webkit-scrollbar{width:8px}.panel::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.panel-section{padding:18px;border-bottom:1px solid var(--border)}.panel-section:last-child{border-bottom:none}.panel-section h3{margin:0 0 14px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint)}.preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.preset-btn{appearance:none;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 4px;font-size:13px;color:var(--text);cursor:pointer;transition:all .13s}.preset-btn:hover{border-color:var(--border-strong);transform:translateY(-1px)}.preset-btn.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong);font-weight:600;box-shadow:var(--shadow-sm)}.field{margin-bottom:18px}.field:last-child{margin-bottom:0}.field-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;gap:8px}.field-label{font-size:13px;font-weight:500}.field-value{font-size:12.5px;color:var(--accent-strong);font-variant-numeric:tabular-nums;font-weight:700;background:var(--accent-soft);padding:1px 8px;border-radius:999px}.field-hint{margin:7px 0 0;font-size:11.5px;color:var(--text-faint);line-height:1.45}.segmented{display:flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;gap:2px}.seg-btn{flex:1;appearance:none;background:transparent;border:none;border-radius:7px;padding:7px 8px;font-size:13px;color:var(--text-muted);cursor:pointer;transition:all .13s;white-space:nowrap}.seg-btn:hover{color:var(--text)}.seg-btn.is-active{background:var(--surface);color:var(--accent-strong);font-weight:600;box-shadow:var(--shadow-sm)}.slider{-webkit-appearance:none;appearance:none;width:100%;height:5px;border-radius:3px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--fill, 50%),var(--border) var(--fill, 50%),var(--border) 100%);outline:none;margin:4px 0 0;cursor:pointer}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:17px;height:17px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 1px 4px #00000038;cursor:pointer;transition:transform .12s,box-shadow .12s}.slider::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 2px 8px #6366f173}.slider:active::-webkit-slider-thumb{transform:scale(1.1)}.slider::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 1px 4px #00000038;cursor:pointer}.preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--surface-2)}.preview-toolbar .segmented{width:auto}.preview-actions{display:flex;gap:8px}.btn{appearance:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 15px;font-size:13px;font-weight:600;cursor:pointer;transition:all .14s;background:var(--surface);color:var(--text)}.btn:hover:not(:disabled){border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:var(--surface)}.btn-primary{background:var(--accent-grad);border:none;color:#fff;box-shadow:0 2px 8px #6366f159}.btn-primary:hover:not(:disabled){filter:brightness(1.07);box-shadow:0 4px 14px #6366f173}.preview-stage{position:relative;min-height:440px;display:flex;align-items:center;justify-content:center;gap:16px;padding:24px;background:repeating-conic-gradient(var(--surface-2) 0 25%,var(--surface) 0 50%) 50% / 24px 24px}.pane{display:flex;align-items:center;justify-content:center;max-width:100%;max-height:72vh}.pane-before,.pane-after{flex:1}.preview-stage:has(.pane-before:not([hidden])):has(.pane-after:not([hidden])) .pane{flex:1 1 0}.pane-img{max-width:100%;max-height:72vh;object-fit:contain;border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.pane-svg{max-width:100%;max-height:72vh;width:auto;height:auto;background:var(--surface);border-radius:var(--radius-sm);box-shadow:var(--shadow-md)}.preview-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--surface) 70%,transparent);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.progress-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:22px 30px;min-width:290px;text-align:center}.progress-label{font-size:14px;font-weight:600;margin-bottom:14px;color:var(--text)}.progress-bar{height:7px;background:var(--border);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--accent-grad);border-radius:4px;transition:width .15s ease}.error-card{background:var(--surface);border:1px solid var(--danger);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:22px 30px;max-width:380px;text-align:center;color:var(--danger)}.error-card>strong{display:block;margin-bottom:8px}.error-card>p{margin:0 0 8px;font-size:13px;line-height:1.5}.error-card .error-hint{margin-bottom:18px;color:var(--text-muted)}.error-actions{display:flex;justify-content:center;gap:8px}.preview-empty{color:var(--text-faint);font-size:14px}.preview-meta{display:flex;gap:18px;padding:11px 18px;border-top:1px solid var(--border);font-size:12.5px;color:var(--text-muted);background:var(--surface-2);font-variant-numeric:tabular-nums}.article,.seo-shell-article{max-width:100%;margin:56px 0 0;padding:56px 0 80px;color:var(--text);border-top:1px solid var(--border)}.article-intro,.seo-shell-article .article-intro{font-size:18.5px;line-height:1.68;color:var(--text-muted);margin:0 0 8px;text-wrap:pretty}.article h2,.seo-shell-article h2{font-size:clamp(22px,2.4vw,27px);line-height:1.22;letter-spacing:-.02em;margin:56px 0 16px;text-wrap:balance}.article h3,.seo-shell-article h3{font-size:17.5px;line-height:1.4;margin:0 0 7px;letter-spacing:-.01em}.article p,.seo-shell-article p{font-size:15.5px;line-height:1.8;color:var(--text-muted);margin:0 0 16px;text-wrap:pretty}.article-lead{font-size:16px!important}.article-heading,.seo-shell-article .article-heading{margin-top:56px}.article-heading h2,.seo-shell-article .article-heading h2{margin:0 0 12px}.article-heading .article-lead,.seo-shell-article .article-heading .article-lead{margin:0}.article-copy-section,.seo-shell-article .article-copy-section{padding:28px 0 30px;border-top:1px solid var(--border)}.article-copy-section>h3,.seo-shell-article .article-copy-section>h3{margin:0 0 14px;color:var(--text)}.article-copy-body,.seo-shell-article .article-copy-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,52px);row-gap:16px}.article-copy-body>p,.seo-shell-article .article-copy-body>p{margin:0}.article-copy-body:has(>p:nth-child(3):last-child)>p:first-child,.seo-shell-article .article-copy-body:has(>p:nth-child(3):last-child)>p:first-child{grid-column:1 / -1}.article-steps ol,.seo-shell-article ol{list-style:none;counter-reset:step;padding:0;margin:10px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.article-steps li,.seo-shell-article ol li{counter-increment:step;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm);transition:transform .16s,box-shadow .16s}.article-steps li:hover,.seo-shell-article ol li:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.article-steps li:before,.seo-shell-article ol li:before{content:counter(step);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--accent-grad);color:#fff;font-weight:700;font-size:13.5px;margin-bottom:12px;box-shadow:0 2px 6px #6366f159}.article-steps li p,.seo-shell-article ol li p{margin:0;font-size:14px}.article-faq details,.seo-shell-article details{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:4px 20px;margin-bottom:10px;transition:border-color .15s,box-shadow .15s}.article-faq details:hover,.seo-shell-article details:hover{border-color:var(--border-strong)}.article-faq details[open],.seo-shell-article details[open]{border-color:var(--accent);box-shadow:var(--shadow-sm)}.article-faq summary,.seo-shell-article summary{cursor:pointer;list-style:none;padding:14px 0;display:flex;align-items:center}.article-faq summary::-webkit-details-marker,.seo-shell-article summary::-webkit-details-marker{display:none}.article-faq summary h3,.seo-shell-article summary h3{margin:0;font-size:15.5px;font-weight:600;flex:1}.article-faq summary:after,.seo-shell-article summary:after{content:"+";color:var(--accent);font-size:22px;font-weight:400;margin-left:12px;line-height:1;transition:transform .18s}.article-faq details[open] summary:after,.seo-shell-article details[open] summary:after{content:"–"}.article-faq details p,.seo-shell-article details p{margin:0 0 15px}.site-footer{border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 54%,transparent)}.site-footer-inner{width:100%;max-width:1200px;margin:0 auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.privacy-note{display:flex;align-items:center;gap:11px;min-width:0;color:var(--accent-strong)}.privacy-note svg{flex:0 0 auto}.privacy-note div{display:flex;flex-direction:column;gap:2px}.privacy-note strong{color:var(--text);font-size:13px}.privacy-note span{color:var(--text-muted);font-size:12px;line-height:1.45}.footer-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 16px}.footer-links button{appearance:none;padding:3px 0;border:0;background:transparent;color:var(--text-muted);font:inherit;font-size:12px;cursor:pointer}.footer-links button:hover{color:var(--text);text-decoration:underline}.footer-copy{color:var(--text-muted);font-size:12px;line-height:1.45;white-space:nowrap}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#090c147a;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.privacy-modal{width:min(100%,480px);padding:28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-lg);text-align:left}.privacy-modal-icon{display:inline-flex;padding:10px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong)}.privacy-modal h2{margin:16px 0 10px;font-size:22px;letter-spacing:-.02em}.privacy-modal p{margin:0 0 22px;color:var(--text-muted);font-size:14px;line-height:1.7}@media (max-width: 1024px){.workspace{grid-template-columns:300px minmax(0,1fr);gap:22px}}@media (max-width: 960px){.main{padding-top:32px}.hero{grid-template-columns:1fr;gap:32px;padding-top:8px}.hero-lead{max-width:60ch}.workspace{grid-template-columns:1fr}.panel{position:static;max-height:none}.preview-stage{min-height:340px}}@media (max-width: 720px){.main{padding:24px 20px}.header-inner{padding:0 20px}.hero-feats,.article-steps ol,.seo-shell-article ol{grid-template-columns:1fr}.article,.seo-shell-article{padding:40px 0 56px}.article-heading,.seo-shell-article .article-heading{margin-top:44px}.article-copy-body,.seo-shell-article .article-copy-body{grid-template-columns:1fr}.article-copy-body:has(>p:nth-child(3):last-child)>p:first-child,.seo-shell-article .article-copy-body:has(>p:nth-child(3):last-child)>p:first-child{grid-column:auto}.site-footer-inner{padding:22px 20px;align-items:flex-start;flex-direction:column}.footer-links{justify-content:flex-start}}@media (max-width: 560px){.main{padding:20px 16px}.header-inner{padding:0 16px}.preview-toolbar{flex-wrap:wrap}.dropzone{min-height:300px;padding:40px 22px}}
