.ts{--ts-accent:#5b50d6;--ts-accent-dark:#4338ca;--ts-ink:#0f172a;--ts-text:#334155;--ts-muted:#64748b;--ts-line:#e2e8f0;--ts-soft:#f9fafb;color:var(--ts-text);font-family:var(--font-family,inherit)}.ts-section{background:#fff;padding:2rem 16px}.ts-section--gray{background:var(--ts-soft)}.ts-inner{width:min(100%,1100px);margin:0 auto}.ts-narrow{width:min(100%,800px);margin:0 auto}.ts-title{color:var(--ts-ink);text-align:center;margin:0 0 1.5rem;font-size:clamp(1.625rem,3.2vw,2.5rem);font-weight:700;line-height:1.2}.ts-heading{color:var(--ts-ink);margin:0 0 1.25rem;font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;line-height:1.3}.ts-lede{max-width:650px;color:var(--ts-muted);text-align:center;margin:-.5rem auto 1.75rem}.ts p{margin:0;font-size:1.0625rem;line-height:1.7}.ts p+p{margin-top:1rem}.ts-list{margin:.75rem 0 0;padding-left:1.5rem;line-height:1.8}.ts-small{color:#94a3b8;margin-top:1rem;font-size:.875rem!important;line-height:1.6!important}.ts-italic{color:#94a3b8;text-align:center;margin:1.25rem auto 0;font-style:italic;font-size:.9rem!important}.ts-link{color:var(--ts-accent);text-underline-offset:2px;font-weight:600;text-decoration:underline}.ts-link:hover{color:var(--ts-accent-dark)}.ts-steps{justify-content:center;align-items:stretch;gap:2rem;margin:0;padding:0;list-style:none;display:flex}.ts-step{border:1px solid var(--ts-line);text-align:center;background:#fff;border-radius:14px;flex-direction:column;flex:1;align-items:center;min-width:0;padding:1.75rem 1.25rem 1.5rem;transition:box-shadow .3s,transform .3s;display:flex;position:relative;box-shadow:0 2px 8px #0000000a}.ts-step:hover{transform:translateY(-2px);box-shadow:0 4px 16px #5b50d61a}.ts-step:not(:last-child):after{content:"";border-top:2px dashed #cbd5e1;width:2rem;position:absolute;top:calc(1.75rem + 21px);right:-1rem}.ts-step-number{background:linear-gradient(135deg, var(--ts-accent), var(--ts-accent-dark));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto .75rem;font-size:1.125rem;font-weight:700;display:flex}.ts .ts-step p{font-size:.9375rem;line-height:1.55}.ts-example-label{font-weight:600;margin-top:1.25rem!important}.ts-code{border:1px solid var(--ts-line);color:#1e293b;white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f5f9;border-radius:8px;margin-top:.5rem;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem;line-height:1.8;display:block}.ts-table-wrap{border:1px solid var(--ts-line);background:#fff;border-radius:12px;margin-top:1.5rem;overflow-x:auto}.ts-table{border-collapse:collapse;width:100%;min-width:560px}.ts-table th,.ts-table td{text-align:left;vertical-align:top;padding:.875rem 1.25rem;line-height:1.5}.ts-table th{border-bottom:2px solid var(--ts-line);color:#1e293b;background:#f5f3ff;font-weight:700}.ts-table td{border-bottom:1px solid var(--ts-line);color:var(--ts-text)}.ts-table tr:last-child td{border-bottom:0}.ts-table td:first-child{color:var(--ts-accent);font-weight:600}.ts-carousel{width:min(100%,1100px);margin:0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 3% 97%,#0000);mask-image:linear-gradient(90deg,#0000,#000 3% 97%,#0000)}.ts-carousel-track{width:max-content;animation:ts-scroll var(--ts-duration,40s) linear infinite;gap:1.25rem;display:flex}.ts-carousel:hover .ts-carousel-track,.ts-carousel:focus-within .ts-carousel-track{animation-play-state:paused}.ts-card{border:1px solid var(--ts-line);text-align:left;border-radius:14px;flex:0 0 320px;padding:1.5rem}.ts-card h3{color:#1e293b;margin:0 0 .75rem;font-size:1rem;font-weight:700}.ts .ts-card p{font-size:.9375rem;line-height:1.6}.ts-card-code{color:var(--ts-text);white-space:pre-wrap;overflow-wrap:anywhere;background:#ffffffb3;border-radius:8px;padding:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;line-height:1.7;display:block}.ts-card--0{background:linear-gradient(135deg,#eef2ff,#fff);border-color:#c7d2fe}.ts-card--1{background:linear-gradient(135deg,#fef3c7,#fff);border-color:#fde68a}.ts-card--2{background:linear-gradient(135deg,#dcfce7,#fff);border-color:#bbf7d0}.ts-card--3{background:linear-gradient(135deg,#f3e8ff,#fff);border-color:#ddd6fe}@keyframes ts-scroll{to{transform:translate(-50%)}}.ts-numbered{flex-direction:column;gap:2rem;width:min(100%,900px);margin:0 auto;padding:0;list-style:none;display:flex}.ts-numbered li{align-items:flex-start;gap:1.5rem;display:flex}.ts-numbered .ts-step-number{width:48px;height:48px;margin:0;font-size:1.25rem}.ts-numbered h3{color:var(--ts-ink);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.ts .ts-numbered p{font-size:1rem;line-height:1.6}.ts-versus{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;width:min(100%,1000px);margin:0 auto;display:grid}.ts-versus-card{border:1px solid var(--ts-line);background:var(--ts-soft);border-radius:12px;flex-direction:column;padding:2rem;display:flex}.ts-versus-card--highlight{border:2px solid var(--ts-accent);background:linear-gradient(#f5f3ff,#fff)}.ts-versus-card h3{color:var(--ts-ink);margin:0 0 .75rem;font-size:1.125rem;font-weight:700}.ts .ts-versus-card p{font-size:.95rem;line-height:1.6}.ts-callout{text-align:center;background:#f5f3ff;border:1px solid #5b50d626;border-radius:10px;margin-top:1.5rem;padding:1rem 1.25rem}.ts .ts-callout p{font-size:.95rem}.ts-related{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;width:min(100%,1000px);margin:0 auto;display:grid}.ts-related a{border:1px solid var(--ts-line);background:var(--ts-soft);border-radius:12px;flex-direction:column;padding:2rem;text-decoration:none;transition:border-color .3s,box-shadow .3s,transform .3s;display:flex}.ts-related a:hover{border-color:var(--ts-accent);transform:translateY(-2px);box-shadow:0 4px 16px #5b50d61a}.ts-related h3{color:var(--ts-ink);margin:0 0 .5rem;font-size:1.125rem;font-weight:700}.ts .ts-related p{flex:1;margin:0 0 1rem;font-size:.9375rem;line-height:1.55}.ts-related span{color:var(--ts-accent);font-size:.875rem;font-weight:600}.ts-cta{background:linear-gradient(135deg, var(--ts-accent), var(--ts-accent-dark));color:#fff;text-align:center;padding:3rem 16px;position:relative;overflow:hidden}.ts-cta-inner{width:min(100%,800px);margin:0 auto}.ts-cta h2{color:#fff;margin:0 0 1rem;font-size:clamp(1.75rem,3.4vw,2.5rem);font-weight:700;line-height:1.2}.ts .ts-cta p{color:#fff;font-size:clamp(1rem,1.6vw,1.2rem);font-weight:500}.ts-cta-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem 1.5rem;margin-top:2rem;display:flex}.ts-cta-primary{color:#111827;background:#fff;border-radius:12px;padding:1.1rem 2.25rem;font-size:1.1rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 8px 25px #0f0f0f40}.ts-cta-primary:hover{color:#0f172a;transform:translateY(-2px);box-shadow:0 12px 35px #0f0f0f59}.ts-cta-secondary{color:#ffffffeb;font-weight:600;text-decoration:none}.ts-cta-secondary:hover{color:#fff;text-decoration:underline}.ts .ts-cta-note{color:#ffffffc7;margin-top:1.25rem;font-size:.95rem}.ts-cta-note a{color:#fff;text-decoration:underline}@media (max-width:900px){.ts-steps{flex-direction:column;gap:1rem;width:min(100%,440px);margin:0 auto}.ts-step{text-align:left;flex-direction:row;align-items:flex-start;gap:1rem;padding:1.25rem 1rem}.ts-step:not(:last-child):after{display:none}.ts-step .ts-step-number{margin:0}.ts-versus,.ts-related{grid-template-columns:1fr;gap:1rem}}@media (max-width:640px){.ts-card{flex-basis:270px}.ts-numbered li{gap:1rem}.ts-versus-card,.ts-related a{padding:1.5rem}}@media (prefers-reduced-motion:reduce){.ts-carousel{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.ts-carousel-track{animation:none}.ts-card[aria-hidden=true]{display:none}.ts-step,.ts-related a,.ts-cta-primary{transition:none}}@media print{.ts-carousel-track{flex-wrap:wrap;width:auto;animation:none}.ts-card[aria-hidden=true],.ts-cta{display:none}}
