:root{--black:#0a0a0a;--gray-700:#404040;--gray-600:#525252;--gray-500:#737373;--gray-400:#a3a3a3;--gray-300:#d4d4d4;--gray-200:#e5e5e5;--gray-100:#f5f5f5;--gray-50:#fafafa;--white:#fff;--purple:#673ab7;--purple-dark:#5e35b1;--purple-bg:#673ab714;--green:#4a9e8e;--green-dark:#3d8578;--green-bg:#4a9e8e14;--amber:#b8914a;--amber-dark:#9a7a3e;--amber-bg:#b8914a14;--red:#c45b5b;--red-dark:#a84c4c;--red-bg:#c45b5b14;--surface-page:#fff;--surface-card:#fff;--surface-inset:#fafafa;--surface-dark:#1a1a1a;--surface-hover:#00000004;--surface-active:#00000008;--border-default:#d4d4d4;--border-subtle:#0000000a;--border-focus:#673ab7;--shadow-container:0 0 0 1px #0000000a;--shadow-elevated:0 0 0 1px #0000000a, 0 1px 3px #0000000f;--shadow-focus:0 0 0 2px #673ab733;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--radius:4px;--radius-sm:2px;--ease-default:.1s ease;--ease-slow:.2s ease;--font-heading:"Space Grotesk", sans-serif;--font-mono:"JetBrains Mono", monospace;--font-body:"Inter", sans-serif}[data-theme=dark]{--black:#fafafa;--gray-700:#a3a3a3;--gray-600:#a3a3a3;--gray-500:#737373;--gray-400:#525252;--gray-300:#404040;--gray-200:#2a2a2a;--gray-100:#1f1f1f;--gray-50:#171717;--white:#0a0a0a;--surface-page:#0a0a0a;--surface-card:#141414;--surface-inset:#1a1a1a;--border-default:#2a2a2a;--border-subtle:#ffffff0f;--surface-hover:#ffffff08;--surface-active:#ffffff0f;--purple-bg:#673ab726;--green-bg:#4a9e8e26;--amber-bg:#b8914a26;--red-bg:#c45b5b26;--shadow-container:0 0 0 1px var(--border-default);--shadow-elevated:0 0 0 1px var(--border-default);--shadow-focus:0 0 0 2px #673ab74d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);color:var(--black);background:var(--surface-page);font-size:14px;line-height:1.6}.btn{font-family:var(--font-heading);border-radius:var(--radius);cursor:pointer;height:36px;transition:background var(--ease-default), color var(--ease-default);white-space:nowrap;border:none;align-items:center;gap:6px;padding:0 20px;font-size:14px;font-weight:500;display:inline-flex}.btn svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;fill:none;width:14px;height:14px}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover{background:var(--purple-dark)}.btn-secondary{color:var(--black);box-shadow:inset 0 0 0 1px var(--border-default);background:0 0}.btn-secondary:hover{background:var(--surface-hover)}.btn-ghost{color:var(--gray-700);text-underline-offset:2px;background:0 0;text-decoration:underline}.btn-ghost:hover{background:var(--surface-hover);color:var(--black)}.btn-danger{color:var(--red);background:0 0;box-shadow:inset 0 0 0 1px #c45b5b4d}.btn-danger:hover{background:var(--red-bg)}.btn-sm{height:28px;padding:6px 12px;font-size:12px}.btn[disabled]{opacity:.35;pointer-events:none}.input{font-family:var(--font-mono);border:1px solid var(--border-default);border-radius:var(--radius);background:var(--white);height:32px;color:var(--black);outline:none;padding:6px 12px;font-size:13px}.input::placeholder{color:var(--gray-400)}.input:focus{border-color:var(--purple);box-shadow:var(--shadow-focus)}.dropzone{border:1px dashed var(--border-default);border-radius:var(--radius);padding:var(--sp-10) var(--sp-6);text-align:center;cursor:pointer;transition:border-color var(--ease-default), background var(--ease-default)}.dropzone:hover,.dropzone.drag-over{border-color:var(--purple);background:var(--purple-bg)}.dropzone-icon{width:32px;height:32px;color:var(--purple);margin:0 auto var(--sp-3)}.dropzone-text{font-family:var(--font-heading);color:var(--gray-600);font-size:13px}.dropzone-hint{font-family:var(--font-heading);color:var(--gray-400);margin-top:var(--sp-1);font-size:11px}.dropzone-file{justify-content:center;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);font-family:var(--font-mono);color:var(--black);font-size:12px;display:flex}.dropzone-file svg{width:14px;height:14px;color:var(--purple)}.card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius);padding:var(--sp-4);transition:border-color var(--ease-default), box-shadow var(--ease-default), transform var(--ease-default)}.card:hover{border-color:var(--purple);box-shadow:var(--shadow-elevated);transform:translateY(-2px)}.card-title{font-family:var(--font-mono);color:var(--black);font-size:13px;font-weight:500}.card-subtitle{font-family:var(--font-body);color:var(--gray-600);text-align:left;font-size:12px;font-weight:400}.toast{font-family:var(--font-mono);background:var(--surface-dark);color:#fff;border-radius:var(--radius);min-width:240px;padding:var(--sp-2) var(--sp-4);z-index:9999;opacity:0;border-left:3px solid #0000;font-size:12px;transition:transform .2s,opacity .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(100px)}.toast.toast-visible{opacity:1;transform:translate(-50%)translateY(0)}.toast-success{border-left-color:var(--green)}.toast-error{border-left-color:var(--red)}.toast-info{border-left-color:var(--purple)}.code-pane{background:var(--surface-dark);padding:var(--sp-6);border-radius:var(--radius);overflow:auto}.code-pane pre{font-family:var(--font-mono);color:#d4d4d4;white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.7}.cta-strip{background:var(--purple-bg);border-top:1px solid var(--border-default);justify-content:center;align-items:center;gap:var(--sp-3);height:48px;padding:0 var(--sp-6);display:flex}.cta-text{font-family:var(--font-heading);color:var(--gray-600);font-size:14px;font-weight:500}.cta-link{font-family:var(--font-heading);color:var(--purple);font-size:13px;font-weight:500;text-decoration:none}.cta-link:hover{text-decoration:underline}.page-wrapper,.above-fold{flex-direction:column;min-height:100vh;display:flex}.above-fold-content{flex-direction:column;flex:1;justify-content:center;display:flex}.container{max-width:1200px;padding:0 var(--sp-6);width:100%;margin:0 auto}.container-wide{padding:0 var(--sp-6);width:100%;margin:0 auto}.header{border-bottom:1px solid var(--border-default);height:48px;padding:0 var(--sp-6);background:var(--surface-page);z-index:100;align-items:center;display:flex;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;width:100%;display:flex}.header-left{align-items:center;gap:var(--sp-3);display:flex}.header-wordmark{align-items:center;text-decoration:none;display:flex}.header-logo{width:auto;height:20px;transition:filter var(--ease-default);display:block}[data-theme=dark] .header-logo{filter:invert()}.header-divider{background:var(--border-default);width:1px;height:20px}.header-tool-name{font-family:var(--font-heading);color:var(--gray-600);cursor:pointer;background:0 0;border:none;padding:0;font-size:16px;font-weight:500;text-decoration:none}.header-tool-name:hover{color:var(--black)}.header-right{align-items:center;gap:var(--sp-2);display:flex}.theme-toggle{cursor:pointer;padding:var(--sp-1);color:var(--gray-500);border-radius:var(--radius);transition:color var(--ease-default);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{color:var(--black)}.theme-toggle svg{width:16px;height:16px}.hero{padding:var(--sp-8) 0 var(--sp-6);text-align:left}.hero h1{font-family:var(--font-heading);color:var(--black);margin-bottom:var(--sp-2);font-size:32px;font-weight:600}.hero-subtitle{font-family:var(--font-heading);color:var(--gray-600);white-space:nowrap;max-width:100%;font-size:14px}.tool-interface{padding:0 0 var(--sp-8)}.tool-actions{justify-content:center;align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);display:flex}.processing-state{padding:var(--sp-10) var(--sp-6);align-items:center;gap:var(--sp-3);flex-direction:column;display:flex}.spinner{border:3px solid var(--gray-200);border-top-color:var(--purple);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.processing-text{font-family:var(--font-heading);color:var(--black);font-size:15px;font-weight:500}.processing-hint{font-family:var(--font-heading);color:var(--gray-400);font-size:12px}.output-area{margin-top:var(--sp-6)}.output-header{margin-bottom:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.output-label{font-family:var(--font-mono);color:var(--gray-700);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:600}.output-actions{align-items:center;gap:var(--sp-2);display:flex}.output-content{background:var(--surface-dark);border-radius:var(--radius);padding:var(--sp-6);max-height:500px;overflow:auto}.output-content pre{font-family:var(--font-mono);color:#d4d4d4;white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px;line-height:1.7}.markdown-preview{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius);padding:var(--sp-6);max-height:500px;font-family:var(--font-body);color:var(--black);font-size:14px;line-height:1.7;overflow:auto}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4{font-family:var(--font-heading);color:var(--black);margin:1.2em 0 .5em;font-weight:600}.markdown-preview h1{font-size:20px}.markdown-preview h2{font-size:17px}.markdown-preview h3{font-size:15px}.markdown-preview p{margin:.6em 0}.markdown-preview ul,.markdown-preview ol{margin:.5em 0;padding-left:1.5em}.markdown-preview li{margin:.25em 0}.markdown-preview code{font-family:var(--font-mono);background:var(--surface-inset);border-radius:var(--radius-sm);padding:2px 6px;font-size:12px}.markdown-preview pre{background:var(--surface-dark);border-radius:var(--radius);padding:var(--sp-4);margin:.8em 0;overflow-x:auto}.markdown-preview pre code{color:#d4d4d4;background:0 0;padding:0;font-size:13px}.markdown-preview table{border-collapse:collapse;width:100%;margin:.8em 0;font-size:13px}.markdown-preview th,.markdown-preview td{padding:var(--sp-2) var(--sp-3);text-align:left;border-bottom:1px solid var(--border-subtle)}.markdown-preview th{font-family:var(--font-mono);color:var(--gray-500);border-bottom:1px solid var(--border-default);font-size:12px;font-weight:500}.markdown-preview blockquote{border-left:3px solid var(--purple);padding-left:var(--sp-4);color:var(--gray-600);margin:.8em 0}.markdown-preview a{color:var(--purple);text-decoration:none}.markdown-preview a:hover{text-decoration:underline}.markdown-preview hr{border:none;border-top:1px solid var(--border-subtle);margin:1.5em 0}.view-toggle{background:var(--surface-inset);border:1px solid var(--border-default);border-radius:var(--radius);display:flex;overflow:hidden}.view-toggle button{font-family:var(--font-mono);color:var(--gray-600);cursor:pointer;transition:background var(--ease-default), color var(--ease-default);background:0 0;border:none;padding:6px 14px;font-size:12px;font-weight:500}.view-toggle button:hover{background:var(--surface-hover);color:var(--black)}.view-toggle button.active{background:var(--surface-card);color:var(--black);box-shadow:var(--shadow-elevated)}.error-state{padding:var(--sp-8) var(--sp-6);align-items:center;gap:var(--sp-3);text-align:center;flex-direction:column;display:flex}.error-icon{width:32px;height:32px;color:var(--red)}.error-message{font-family:var(--font-body);color:var(--gray-600);max-width:400px;font-size:14px}.inline-error{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:var(--red-bg);border:1px solid var(--red);border-radius:var(--radius);font-family:var(--font-body);color:var(--red-dark);font-size:13px;display:flex}.inline-error svg{color:var(--red);flex-shrink:0}.section{padding:var(--sp-10) 0}.section-eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--gray-600);margin-bottom:var(--sp-3);font-size:11px;font-weight:600}.section-heading{font-family:var(--font-heading);color:var(--black);margin-bottom:var(--sp-6);font-size:24px;font-weight:600}.steps{gap:var(--sp-6);grid-template-columns:repeat(3,1fr);display:grid}.step{text-align:center}.step-icon{width:40px;height:40px;color:var(--purple);margin:0 auto var(--sp-3)}.step-number{font-family:var(--font-mono);color:var(--purple);margin-bottom:var(--sp-1);font-size:11px;font-weight:500}.step-title{font-family:var(--font-heading);color:var(--black);margin-bottom:var(--sp-2);font-size:15px;font-weight:500}.step-desc{font-family:var(--font-body);color:var(--gray-600);text-align:left;font-size:13px;line-height:1.5}.faq-list{flex-direction:column;display:flex}.faq-item{border-bottom:1px solid var(--border-subtle)}.faq-question{font-family:var(--font-heading);color:var(--black);padding:var(--sp-4) 0;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;font-size:16px;font-weight:600;display:flex}.faq-question svg{width:16px;height:16px;color:var(--gray-400);transition:transform var(--ease-default);margin-left:var(--sp-4);flex-shrink:0}.faq-question[aria-expanded=true] svg{transform:rotate(180deg)}.faq-answer{font-family:var(--font-body);color:var(--gray-600);padding:0 0 var(--sp-4);font-size:14px;line-height:1.6;display:none}.faq-answer.open{display:block}.faq-list-plain{gap:var(--sp-6);flex-direction:column;display:flex}.faq-question-plain{font-family:var(--font-heading);color:var(--black);margin-bottom:var(--sp-2);font-size:16px;font-weight:600}.faq-answer-plain{font-family:var(--font-body);color:var(--gray-600);text-align:left;font-size:14px;line-height:1.6}.prose-block{gap:var(--sp-4);flex-direction:column;display:flex}.prose-text{font-family:var(--font-body);color:var(--gray-600);font-size:14px;line-height:1.7}.value-props{gap:var(--sp-6);margin-top:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.value-prop{padding:var(--sp-4);border:1px solid var(--border-default);border-radius:var(--radius)}.value-prop-title{font-family:var(--font-heading);color:var(--black);margin-bottom:var(--sp-2);font-size:15px;font-weight:500}.value-prop-desc{font-family:var(--font-body);color:var(--gray-600);font-size:13px;line-height:1.6}.tools-grid{gap:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.tool-card{cursor:pointer;flex-direction:column;text-decoration:none;display:flex}.tool-card .card-title{margin-bottom:var(--sp-2);justify-content:space-between;align-items:center;display:flex}.tool-card .card-title:after{content:"→";color:var(--gray-400);transition:color var(--ease-default), transform var(--ease-default);font-size:14px}.tool-card:hover .card-title:after{color:var(--purple);transform:translate(3px)}.tool-card:hover .card-title{color:var(--purple)}.upsell{text-align:center;padding:var(--sp-16) 0}.upsell-heading{font-family:var(--font-heading);color:var(--black);margin-bottom:var(--sp-3);font-size:24px;font-weight:600}.upsell-body{font-family:var(--font-body);color:var(--gray-600);max-width:560px;margin:0 auto var(--sp-6);font-size:14px;line-height:1.6}.upsell-secondary{font-family:var(--font-body);color:var(--gray-400);margin-top:var(--sp-3);font-size:12px}.footer{background:var(--surface-dark);padding:var(--sp-4) var(--sp-6);margin-top:auto}.footer-inner{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;max-width:1200px;margin:0 auto;display:flex}.footer-wordmark{font-family:var(--font-heading);color:#fff;font-size:14px;font-weight:600;text-decoration:none}.footer-copy{font-family:var(--font-body);color:var(--gray-500);font-size:13px}.footer-link{font-family:var(--font-body);color:var(--gray-500);font-size:13px;text-decoration:none}.footer-link:hover{color:#fff}.footer-privacy{font-family:var(--font-body);color:var(--gray-500);font-size:13px}.footer-cta-link{font-family:var(--font-heading);color:var(--purple);font-size:14px;font-weight:500;text-decoration:none}.footer-cta-link:hover{text-decoration:underline}.supporting-line{font-family:var(--font-heading);color:var(--gray-400);text-align:left;margin-top:var(--sp-3);font-size:12px}.privacy-note{font-family:var(--font-heading);color:var(--gray-400);text-align:left;margin-top:var(--sp-2);font-size:11px}@media (max-width:768px){.steps{gap:var(--sp-8);grid-template-columns:1fr}.value-props{grid-template-columns:1fr}.tools-grid{gap:var(--sp-3);grid-template-columns:1fr}.footer-inner{text-align:center;flex-direction:column}.header-tool-name{font-size:14px}.container{padding:0 var(--sp-4)}}@media (max-width:480px){.hero h1{font-size:18px}.output-header{align-items:flex-start;gap:var(--sp-2);flex-direction:column}.output-actions{width:100%}.output-actions .btn{flex:1;justify-content:center}}
