@layer properties,theme,base,components,utilities,site-patterns,site-components;@layer site-components{.ft-hero{position:relative;overflow:hidden;padding:calc(var(--nav-height) + var(--space-16)) 0 var(--space-10);text-align:center}.ft-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% -20%,color-mix(in srgb,var(--color-accent-brand) 22%,transparent),transparent 62%);pointer-events:none}.ft-hero>.container{position:relative}.ft-eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);margin:0;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-overlay-subtle);font-size:13px;color:var(--color-text-tertiary)}.ft-eyebrow-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-accent-success)}.ft-hero h1{margin:var(--space-6) 0 var(--space-5);font-size:var(--text-h1);font-weight:500;letter-spacing:-.02em;line-height:1.05;color:var(--color-text-primary);text-wrap:balance}.ft-lede{max-width:620px;margin:0 auto;font-size:var(--text-body);line-height:1.6;color:var(--color-text-secondary);text-wrap:pretty}@media(max-width:520px){.ft-hero{padding:calc(var(--nav-height) + var(--space-12)) 0 var(--space-8)}.ft-hero h1{font-size:var(--text-h2)}}}@layer properties,theme,base,components,utilities,site-patterns,site-components;@layer site-components{.ft-tools-section{padding:var(--space-6) 0 var(--space-16)}.ft-bench{--ft-hue-amber: var(--color-accent-warning);--ft-hue-red: var(--color-accent-danger);--ft-hue-green: var(--color-accent-success);--ft-hue-blue: var(--color-accent-info);--ft-hue-purple: var(--color-accent-brand);--ft-hue-lilac: var(--color-accent-brand-light);--ft-hue-pink: oklch(.78 .17 350)}.ft-tabs-wrap{position:relative;margin-bottom:var(--space-8);border-bottom:1px solid var(--color-border-subtle)}.ft-tabs{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth}.ft-tabs::-webkit-scrollbar{display:none}.ft-tabs-wrap:before,.ft-tabs-wrap:after{content:"";position:absolute;top:0;bottom:1px;width:72px;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:1}.ft-tabs-wrap:before{left:0;background:linear-gradient(to right,var(--color-bg-base),transparent)}.ft-tabs-wrap:after{right:0;background:linear-gradient(to left,var(--color-bg-base),transparent)}.ft-tabs-wrap.can-left:before,.ft-tabs-wrap.can-right:after{opacity:1}.ft-tabs-arrow{position:absolute;top:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;transform:translateY(-50%);background:var(--color-surface-1);border:1px solid var(--color-border-muted);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.ft-tabs-arrow:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}.ft-tabs-arrow.is-left{left:0}.ft-tabs-arrow.is-right{right:0}.ft-tabs-arrow svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ft-tab{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);background:transparent;border:0;border-bottom:2px solid transparent;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-tertiary);white-space:nowrap;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.ft-tab:hover{color:var(--color-text-primary)}.ft-tab.is-active{color:var(--color-text-primary);border-bottom-color:var(--color-accent-brand)}.ft-tab .n{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--color-accent-success)}.ft-bench{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-10);padding:var(--space-8);background:var(--color-surface-overlay-muted);border:1px solid var(--color-border-muted);border-radius:var(--radius-md)}.ft-bench-side{display:flex;flex-direction:column;gap:var(--space-4);padding-left:var(--space-10);border-left:1px solid var(--color-border-subtle)}.ft-bench-side h3{margin:0;font-size:var(--text-h4);font-weight:500}.ft-bench-side p{margin:0;font-size:14px;line-height:1.7;color:var(--color-text-secondary)}.ft-mkt{display:flex;flex-direction:column;gap:var(--space-1)}.ft-mkt label,.ft-mkt-label{font-size:13px;font-weight:500;color:var(--color-text-secondary)}.ft-mkt-fixed{display:flex;align-items:center;min-height:44px;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-subtle);font-size:17px;color:var(--color-text-primary)}.ft-mkt select{appearance:none;min-height:44px;padding:var(--space-2) var(--space-8) var(--space-2) var(--space-3);background:color-mix(in srgb,var(--color-bg-base) 45%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%23a1a1a1' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right var(--space-3) center;border:0;border-bottom:1px solid var(--color-border-strong);border-radius:var(--radius-sm) var(--radius-sm) 0 0;font:inherit;font-size:17px;color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ft-mkt select:hover{border-bottom-color:var(--color-text-tertiary)}.ft-mkt select:focus-visible{outline:none;border-bottom-color:var(--color-accent-brand);box-shadow:0 1px 0 0 var(--color-accent-brand)}.ft-mkt-hint{margin:0;font-size:13px;color:var(--color-text-tertiary)}.ft-tool{scroll-margin-top:calc(var(--nav-height) + var(--space-6));text-align:left}.ft-tool-head{display:flex;align-items:baseline;gap:var(--space-3);margin:0 0 var(--space-2)}.ft-tool-num{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:.04em;color:var(--color-accent-success)}.ft-tool-title{margin:0;font-size:var(--text-h3);font-weight:500;letter-spacing:-.02em;line-height:1.2;color:var(--color-text-primary)}.ft-tool-desc{margin:0 0 var(--space-5);max-width:62ch;font-size:15px;line-height:1.6;color:var(--color-text-secondary);text-wrap:pretty}.ft-notice{margin:calc(-1 * var(--space-3)) 0 var(--space-6);font-size:13px;color:var(--color-text-tertiary)}.ft-url-bar{display:flex;align-items:center;gap:var(--space-5);margin:0 0 var(--space-8);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-5);background:var(--color-bg-base);border:1px solid var(--color-border-muted);border-radius:var(--radius-lg)}.ft-url{flex:1 1 auto;min-width:0;margin:0;padding:var(--space-2) 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:1.6}.ft-seg,.ft-blk{display:inline-block;max-width:100%;overflow-wrap:anywhere}.ft-seg{color:var(--color-text-tertiary)}.ft-blk{color:var(--hue);font-weight:600;border-bottom:1px solid transparent;transition:border-color var(--transition-fast)}.ft-blk.is-ghost{color:color-mix(in srgb,var(--hue) 55%,var(--color-text-tertiary))}.ft-blk.is-empty{color:color-mix(in srgb,var(--hue) 65%,var(--color-text-tertiary));font-style:italic}.ft-blk.is-live{border-bottom-color:var(--hue)}.ft-blk.is-missing{color:var(--color-text-danger);border-bottom:1px dashed var(--color-text-danger);animation:ft-nudge var(--transition-medium) var(--ease-spring)}.ft-url-actions{flex:none;align-self:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-1)}.ft-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--color-surface-overlay-subtle);border:1px solid var(--color-border-muted);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;text-decoration:none;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast) var(--ease-spring)}.ft-icon-btn:hover{color:var(--color-text-primary);background:var(--color-surface-overlay-muted);border-color:var(--color-border-strong)}.ft-icon-btn:active{transform:scale(.9)}.ft-icon-btn.is-incomplete{color:var(--color-text-tertiary)}.ft-icon-btn.is-done,.ft-icon-btn.is-done:hover{color:var(--color-accent-success);border-color:color-mix(in srgb,var(--color-accent-success) 50%,transparent);background:color-mix(in srgb,var(--color-accent-success) 12%,transparent)}.ft-icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ft-icon-btn .ic{position:absolute;inset:0;display:grid;place-items:center;transition:transform var(--transition-medium) var(--ease-spring),opacity var(--transition-fast)}.ft-icon-btn .ic-check,.ft-icon-btn.is-done .ic-copy{transform:scale(.4);opacity:0}.ft-icon-btn.is-done .ic-check{transform:scale(1);opacity:1}.ft-icon-btn .ic-open svg{transition:transform var(--transition-fast) var(--ease-spring)}.ft-icon-btn:hover .ic-open svg{transform:translate(1px,-1px)}.ft-tip{position:absolute;bottom:calc(100% + 6px);left:50%;padding:3px 8px;border-radius:var(--radius-xs);background:var(--color-text-primary);color:var(--color-text-on-accent);font-family:var(--font-sans);font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;pointer-events:none;transform:translate(-50%,4px);opacity:0;transition:transform var(--transition-medium) var(--ease-spring),opacity var(--transition-fast)}.ft-icon-btn.is-done .ft-tip{transform:translate(-50%);opacity:1}.ft-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-6)}.ft-field{display:flex;flex-direction:column}.ft-field.is-wide{grid-column:1 / -1}.ft-field.is-wide textarea{width:calc(50% - var(--space-3))}.ft-field.is-lead{grid-column:1 / -1;padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border-subtle)}.ft-field.is-lead input{width:calc(50% - var(--space-3))}.ft-field label{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);font-size:13px;font-weight:500;color:var(--color-text-secondary)}.ft-swatch{flex:none;width:10px;height:10px;border-radius:var(--radius-xs);background:var(--hue)}.ft-field input,.ft-field textarea{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);background:color-mix(in srgb,var(--color-bg-base) 45%,transparent);border:0;border-bottom:1px solid var(--color-border-strong);border-radius:var(--radius-sm) var(--radius-sm) 0 0;font-family:var(--font-sans);font-size:17px;line-height:normal;color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ft-field textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;line-height:1.5;resize:vertical}.ft-field input:hover,.ft-field textarea:hover{border-bottom-color:var(--color-text-tertiary)}.ft-field input:focus-visible,.ft-field textarea:focus-visible{outline:none;border-bottom-color:var(--hue, var(--color-accent-brand));box-shadow:0 1px 0 0 var(--hue, var(--color-accent-brand))}.ft-field input::placeholder,.ft-field textarea::placeholder{color:var(--color-text-tertiary);opacity:1}.ft-field.is-invalid input,.ft-field.is-invalid textarea{border-bottom-color:var(--color-accent-danger)}.ft-field.is-missing input,.ft-field.is-missing textarea{border-bottom-color:var(--color-accent-danger);box-shadow:0 1px 0 0 var(--color-accent-danger)}.ft-field.is-missing{animation:ft-nudge var(--transition-medium) var(--ease-spring)}@keyframes ft-nudge{0%,to{transform:translate(0)}20%{transform:translate(-4px)}50%{transform:translate(4px)}80%{transform:translate(-2px)}}.ft-step{align-self:flex-start;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-1);background:color-mix(in srgb,var(--color-bg-base) 45%,transparent);border-radius:var(--radius-sm) var(--radius-sm) 0 0;border-bottom:1px solid var(--color-border-strong);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ft-step:hover{border-bottom-color:var(--color-text-tertiary)}.ft-step:focus-within{border-bottom-color:var(--hue, var(--color-accent-brand));box-shadow:0 1px 0 0 var(--hue, var(--color-accent-brand))}.ft-field.is-invalid .ft-step{border-bottom-color:var(--color-accent-danger)}.ft-field.is-missing .ft-step{border-bottom-color:var(--color-accent-danger);box-shadow:0 1px 0 0 var(--color-accent-danger)}.ft-step input{flex:0 0 auto;width:4.5ch;min-width:0;padding-left:var(--space-1);padding-right:var(--space-1);background:transparent;border-bottom:0;border-radius:0;text-align:center;font-variant-numeric:tabular-nums}.ft-step input:hover,.ft-step input:focus-visible{border-bottom-color:transparent;box-shadow:none}.ft-field.is-invalid .ft-step input,.ft-field.is-missing .ft-step input{border-bottom-color:transparent;box-shadow:none}.ft-step-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--color-border-muted);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast) var(--ease-spring)}.ft-step-btn:hover{color:var(--color-text-primary);border-color:var(--color-border-strong);background:var(--color-surface-overlay-subtle)}.ft-step-btn:active{transform:scale(.9)}.ft-step-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.ft-step-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.ft-add-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4)}.ft-add{justify-self:start;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0;background:transparent;border:0;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast)}.ft-add:hover{color:var(--color-text-primary)}.ft-add svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.ft-add-hint{font-size:13px;color:var(--color-text-tertiary)}.ft-remove{margin-left:var(--space-1);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:0;border-radius:var(--radius-xs);color:var(--color-text-tertiary);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.ft-remove:hover{color:var(--color-text-primary);background:var(--color-surface-overlay-subtle)}.ft-remove svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.ft-hint{margin:var(--space-1) 0 0;font-size:13px;line-height:1.5;color:var(--color-text-tertiary)}.ft-hint.is-lead{margin:calc(-1 * var(--space-3)) 0 var(--space-6)}.ft-error{margin:var(--space-1) 0 0;font-size:13px;color:var(--color-text-danger)}@media(prefers-reduced-motion:reduce){.ft-field.is-missing,.ft-blk.is-missing{animation:none}}@media(max-width:760px){.ft-bench{grid-template-columns:minmax(0,1fr)}.ft-bench-side{padding-left:0;padding-top:var(--space-6);border-left:0;border-top:1px solid var(--color-border-subtle)}}@media(max-width:520px){.ft-tools-section{padding:var(--space-4) 0 var(--space-12)}.ft-form{grid-template-columns:minmax(0,1fr)}.ft-field.is-wide textarea,.ft-field.is-lead input{width:100%}.ft-url-bar{flex-direction:column;align-items:stretch;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md)}.ft-url-actions{align-self:flex-end}}}@layer properties,theme,base,components,utilities,site-patterns,site-components;@layer site-components{.ft-benefits{padding:var(--space-16) 0;border-top:1px solid var(--color-border-subtle)}.ft-benefits-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:var(--space-16);align-items:center}.ft-benefits .ft-eyebrow-text{margin:0 0 var(--space-5);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-success)}.ft-benefits .ft-lede-text{max-width:52ch;margin:0 0 var(--space-8);font-size:var(--text-body);line-height:1.6;color:var(--color-text-secondary);text-wrap:pretty}.ft-benefits h2{margin:0 0 var(--space-6);font-size:var(--text-h3);font-weight:500;letter-spacing:-.02em;line-height:1.15;color:var(--color-text-primary);text-wrap:balance}.ft-benefits-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-8);margin:0;padding:0;list-style:none}.ft-benefits-list li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:var(--space-3);align-items:start}.ft-benefits-list li div{display:flex;flex-direction:column;gap:var(--space-1)}.ft-benefits-list svg{width:18px;height:18px;margin-top:2px;fill:none;stroke:var(--color-accent-brand-light);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ft-benefits-list strong{display:block;font-size:15px;font-weight:500;color:var(--color-text-primary)}.ft-benefits-list span{font-size:13px;line-height:1.6;color:var(--color-text-secondary)}.ft-benefits-figure{position:relative;aspect-ratio:5 / 4}.ft-benefits-figure img{width:100%;height:100%;object-fit:contain}@media(max-width:760px){.ft-benefits{padding:var(--space-12) 0}.ft-benefits-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.ft-benefits-figure{order:-1}.ft-benefits-list{grid-template-columns:minmax(0,1fr)}.ft-benefits h2{font-size:var(--text-h4)}}}@layer properties,theme,base,components,utilities,site-patterns,site-components;@layer site-components{.ft-clean-section{padding:var(--space-16) 0;border-top:1px solid var(--color-border-subtle)}.ft-clean-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-16);align-items:center}.ft-clean-copy{order:1}.ft-clean-copy .ft-eyebrow-text{margin:0 0 var(--space-5);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent-success)}.ft-clean-copy .ft-lede-text{max-width:52ch;margin:0;font-size:var(--text-body);line-height:1.6;color:var(--color-text-secondary);text-wrap:pretty}.ft-clean-copy h2{margin:0 0 var(--space-6);font-size:var(--text-h3);font-weight:500;letter-spacing:-.02em;line-height:1.15;color:var(--color-text-primary);text-wrap:balance}.ft-clean{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-6);background:var(--color-surface-overlay-muted);border:1px solid var(--color-border-muted);border-radius:var(--radius-md)}.ft-clean-row{display:flex;flex-direction:column;gap:var(--space-2)}.ft-clean-label{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary)}.ft-clean-label .ok{color:var(--color-accent-success)}.ft-clean-url{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-bg-base) 45%,transparent);border:1px solid var(--color-border-subtle);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.7;color:var(--color-text-primary);overflow-wrap:anywhere}.ft-clean-url .t{padding:1px 2px;border-radius:3px;background:color-mix(in srgb,var(--color-accent-danger) 16%,transparent);color:var(--color-text-danger)}.ft-clean-url .k{color:var(--hue);font-weight:600}.ft-clean-url.is-clean{border-color:color-mix(in srgb,var(--color-accent-success) 35%,transparent)}.ft-clean-mid{display:flex;align-items:center;gap:var(--space-3);font-size:13px;color:var(--color-text-secondary)}.ft-clean-mid svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--color-text-tertiary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ft-clean-note{margin:0;font-size:13px;line-height:1.6;color:var(--color-text-tertiary)}@media(max-width:760px){.ft-clean-section{padding:var(--space-12) 0}.ft-clean-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}.ft-clean-copy{order:0}.ft-clean-copy h2{font-size:var(--text-h4)}}}@layer properties,theme,base,components,utilities,site-patterns,site-components;@layer site-components{.ft-faq{padding:var(--space-16) 0;border-top:1px solid var(--color-border-subtle)}.ft-section-header{margin-bottom:var(--space-10)}.ft-section-header h2{margin-top:0;margin-bottom:0}.ft-faq-list{max-width:760px;margin:0 auto}.ft-faq .faq-accordion-question{line-height:1.6}@media(max-width:520px){.ft-faq{padding:var(--space-12) 0}}}@layer properties,theme,base,components,utilities,site-patterns,site-components;@layer site-components{.free-tools-page a{color:var(--color-text-primary)}.free-tools-page a:hover{color:var(--color-text-secondary)}.free-tools-page a.btn-primary,.free-tools-page a.btn-primary:hover{color:var(--color-text-on-accent)}.free-tools-page a.cs-btn-ghost,.free-tools-page a.cs-btn-ghost:hover{color:var(--color-text-primary)}.free-tools-page .cs-cta-section{padding:var(--space-16) var(--space-6) var(--space-20)}@media(max-width:520px){.free-tools-page .cs-cta-section{padding:var(--space-16) var(--space-4)}}}
