:root{color-scheme: light;--bg: #f6f7fa;--bg-2: #eef0f5;--paper: #ffffff;--ink: #121212;--ink-2: rgba(0,0,0,0.64);--ink-3: rgba(0,0,0,0.5);--hair: rgba(0,0,0,0.08);--accent: #0070ff;--accent-2: #005cf2;--link: #0062e0;--btn: linear-gradient(180deg,#388cff,#005cf2);--violet: #6848d1;--orange: #e68a21;--blue: #0469eb;--brand: linear-gradient(95deg,#0469eb 0%,#6848d1 55%,#e2742a 100%);--maxw: 1080px;--gutter: 22px;--radius: 22px;--font: -apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue","PingFang SC","Hiragino Sans GB","Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono: ui-monospace,"SF Mono",SFMono-Regular,Menlo,monospace;--ease-out: cubic-bezier(0.22,1,0.36,1);--spring: cubic-bezier(0.2,0.9,0.25,1.12)}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: 64px;background: var(--bg)}body{margin: 0;background: var(--bg);color: var(--ink);font-family: var(--font);font-size: 17px;line-height: 1.5;letter-spacing: -0.012em;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow-x: clip}:lang(zh) body,body:lang(zh){letter-spacing: 0}img,svg{display: block;max-width: 100%}a{color: var(--link);text-decoration: none}a:hover{text-decoration: underline}:focus-visible{outline: 3px solid var(--accent);outline-offset: 3px;border-radius: 6px}h1,h2,h3,p{margin: 0}kbd{display: inline-grid;place-items: center;min-width: 1.7em;height: 1.7em;padding: 0 0.45em;border-radius: 0.42em;font: 600 0.82em/1 var(--font);color: var(--ink);background: linear-gradient(180deg,#fff,#f1f2f5);box-shadow: inset 0 0 0 1px rgba(0,0,0,0.12),0 1px 0 rgba(0,0,0,0.12);vertical-align: 0.08em;white-space: nowrap}.visually-hidden{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0}.skip-link{position: absolute;left: 12px;top: -60px;z-index: 100;background: var(--ink);color: #fff;padding: 10px 16px;border-radius: 10px;font-size: 14px}.skip-link:focus{top: 12px}.wrap{position: relative;z-index: 1;max-width: var(--maxw);margin: 0 auto;padding: 0 var(--gutter)}.center{text-align: center}.section{position: relative;padding: clamp(80px,10vw,140px) 0;overflow: hidden}.section.tight{padding: clamp(28px,4vw,48px) 0;overflow: visible}.section-2{background: var(--bg-2)}.section-dark{background: #0f1116;color: #fff}.section-dark .eyebrow{color: #6fb1ff}.section-dark .subhead{color: rgba(255,255,255,0.7)}.eyebrow{font-size: 15px;font-weight: 600;color: var(--accent);margin-bottom: 12px}.headline{font-size: clamp(36px,5.6vw,64px);line-height: 1.06;font-weight: 700;letter-spacing: -0.03em;text-wrap: balance}.h2{font-size: clamp(24px,2.6vw,30px);line-height: 1.15;font-weight: 700;letter-spacing: -0.02em;margin-bottom: 18px}.subhead{font-size: clamp(18px,1.8vw,22px);line-height: 1.45;font-weight: 500;color: var(--ink-2);max-width: 720px;margin-top: 18px;text-wrap: pretty}.center .subhead{margin-left: auto;margin-right: auto}.fine{margin-top: 22px;font-size: 15px;color: var(--ink-3)}:lang(zh) .headline,:lang(zh) .h2,:lang(zh) .hero-title{letter-spacing: 0;line-break: strict}.btn{display: inline-flex;align-items: center;justify-content: center;border-radius: 980px;background: var(--btn);color: #fff;font-weight: 600;font-size: 16px;padding: 11px 22px;box-shadow: 0 6px 16px -6px rgba(0,77,230,0.6),inset 0 1px 0 rgba(255,255,255,0.25);transition: filter 0.15s,transform 0.15s}.btn:hover{text-decoration: none;filter: brightness(1.06)}.btn:active{transform: scale(0.98)}.btn-sm{font-size: 12px;padding: 5px 14px}.btn-ghost{background: transparent;color: var(--link);box-shadow: inset 0 0 0 1.5px currentColor}.appstore-badge{display: inline-block;border-radius: 12px;transition: transform 0.2s var(--ease-out)}.appstore-badge img{height: 54px;width: auto}.appstore-badge:hover{transform: translateY(-1px)}.appstore-badge.badge-fallback{padding: 15px 26px;background: #000;color: #fff;font-weight: 600;text-decoration: none}.cta-note{font-size: 14px;color: var(--ink-3)}.pro-tag,.free-tag{display: inline-flex;align-items: center;padding: 2px 8px;border-radius: 99px;font-size: 11px;font-weight: 700;letter-spacing: 0.02em;vertical-align: 0.15em;color: #6b4b00;background: rgba(230,138,33,0.16)}.free-tag{color: #075e2c;background: rgba(40,180,90,0.15)}.link-arrow{font-size: 17px;font-weight: 600}.orn{position: absolute;z-index: 0;pointer-events: none;opacity: 0.07}.orn svg{width: 100%;height: auto}.o-hero-ruler{width: 1300px;left: 50%;top: 640px;transform: translateX(-60%) rotate(-11deg)}.o-hero-caliper{width: 760px;right: -260px;top: 40px;transform: rotate(52deg)}.o-hero-prot{width: 620px;left: -260px;top: 120px;transform: rotate(18deg)}.o-tools-square{width: 560px;right: -160px;bottom: -120px;transform: rotate(-8deg)}.o-styles-gauge{width: 520px;left: -200px;top: 30px}.o-prec-ruler{width: 1100px;right: -380px;bottom: 60px;transform: rotate(8deg)}.o-kb-caliper{width: 900px;left: -300px;bottom: -40px;transform: rotate(-6deg);opacity: 0.09}.o-kb-caliper svg *{stroke: #9fc4ff}.o-kb-caliper text{fill: #9fc4ff}.o-pro-prot{width: 640px;right: -200px;top: 40px;transform: rotate(-16deg)}.o-final-ruler{width: 1200px;left: 50%;bottom: 30px;transform: translateX(-50%) rotate(-4deg)}.o-final-gauge{width: 460px;right: -140px;top: -120px}.o-tool{width: 760px;right: -260px;top: 0;transform: rotate(-14deg)}.lang-banner{position: relative;background: #fff;border-bottom: 1px solid var(--hair);font-size: 14px;text-align: center;padding: 12px 52px}.lang-banner[hidden]{display: none}.lang-banner a{white-space: nowrap;margin-left: 4px}.lang-banner a::after{content: " ›"}.lang-banner-close{position: absolute;right: 12px;top: 50%;width: 30px;height: 30px;margin-top: -15px;border: 0;border-radius: 50%;background: transparent;color: var(--ink-2);cursor: pointer;display: grid;place-items: center}.lang-banner-close svg{width: 14px;height: 14px;fill: none;stroke: currentColor;stroke-width: 2.2;stroke-linecap: round}.nav{position: sticky;top: 0;z-index: 60;height: 52px;background: rgba(246,247,250,0.78);-webkit-backdrop-filter: saturate(180%) blur(20px);backdrop-filter: saturate(180%) blur(20px);border-bottom: 1px solid var(--hair)}.nav-inner{max-width: var(--maxw);height: 100%;margin: 0 auto;padding: 0 var(--gutter);display: flex;align-items: center;gap: 24px}.brand{display: inline-flex;align-items: center;gap: 9px;color: var(--ink);font-size: 19px;font-weight: 700;letter-spacing: -0.01em;white-space: nowrap}.brand:hover{text-decoration: none}.nav-links{margin: 0 0 0 auto;padding: 0;list-style: none;display: flex;gap: 22px;font-size: 12.5px}.nav-links a{color: var(--ink-2);white-space: nowrap}.nav-links a:hover{color: var(--ink);text-decoration: none}@media (max-width: 860px){.nav-links{display: none}.nav-inner>.btn{margin-left: auto}}.hero{position: relative;overflow: hidden;padding: clamp(40px,6vw,80px) 0 clamp(60px,8vw,110px);text-align: center;background: radial-gradient(42% 46% at 18% 18%,rgba(115,158,255,0.42),transparent 70%),radial-gradient(36% 40% at 86% 20%,rgba(255,158,122,0.34),transparent 70%),radial-gradient(46% 50% at 60% 72%,rgba(189,133,255,0.28),transparent 72%),linear-gradient(180deg,#f8f9fa,#eff0f3)}.hero h1{display: flex;flex-direction: column;align-items: center;gap: 10px;margin-top: 10px}.hero-name{font-size: clamp(22px,2.4vw,30px);font-weight: 700}.hero-title{font-size: clamp(46px,8.2vw,96px);line-height: 1.02;font-weight: 700;letter-spacing: -0.035em;text-wrap: balance;background: var(--brand);-webkit-background-clip: text;background-clip: text;color: transparent;padding-bottom: 0.06em}.hero .subhead{margin: 22px auto 0}.hero-cta{margin-top: 30px;display: flex;flex-direction: column;align-items: center;gap: 12px}.hero-cta.left{align-items: flex-start}.hero-visual{position: relative;z-index: 1;margin-top: clamp(48px,6vw,80px)}.icon-stage{position: relative;width: clamp(150px,17vw,210px);aspect-ratio: 1;margin: 0 auto;cursor: pointer}.icon-svg,.icon-final{position: absolute;inset: 0;width: 100%;height: 100%}.icon-svg{overflow: visible}.icon-svg .L{transform-box: fill-box;transform-origin: center}.icon-final{opacity: 0}.js .icon-stage.play .L-plate{animation: ic-plate 0.6s var(--ease-out) both}.js .icon-stage.play .L-prot{animation: ic-prot 1s var(--spring) 0.3s both}.js .icon-stage.play .L-gauge{animation: ic-gauge 1.1s var(--spring) 0.5s both}.js .icon-stage.play .L-ruler{animation: ic-ruler 1.05s var(--spring) 0.78s both}.js .icon-stage.play .ic-arrow{transform-box: fill-box;transform-origin: center;animation: ic-arrow 0.6s var(--ease-out) 1.55s both}.js .icon-stage.play .ic-glint{animation: ic-glint 0.9s ease-in-out 1.75s both}.js .icon-stage.play .icon-final{animation: ic-final 0.7s ease 2.55s both}.js .icon-stage.done{animation: float 6s ease-in-out infinite}.js .icon-stage.done .icon-final{opacity: 1}@keyframes ic-plate{from{opacity: 0;transform: scale(0.86)}}@keyframes ic-prot{from{opacity: 0;transform: translate(40px,300px) rotate(-26deg)}}@keyframes ic-gauge{from{opacity: 0;transform: translate(-300px,-170px) rotate(-150deg) scale(0.9)}}@keyframes ic-ruler{from{opacity: 0;transform: translate(420px,-240px) rotate(34deg)}}@keyframes ic-arrow{from{transform: scaleX(0)}}@keyframes ic-glint{from{transform: translateX(0);opacity: 0}30%{opacity: 1}to{transform: translateX(560px);opacity: 0}}@keyframes ic-final{from{opacity: 0}to{opacity: 1}}@keyframes float{50%{transform: translateY(-5px)}}.device{max-width: 1100px;margin: 0 auto;padding: 0 var(--gutter)}.device-screen{position: relative;width: 90%;margin: 0 auto;padding: clamp(5px,1.05%,13px);padding-bottom: clamp(7px,1.6%,20px);background: #0b0b0f;border-radius: clamp(12px,2.2%,26px) clamp(12px,2.2%,26px) 0 0;box-shadow: 0 0 0 1px #2c2c33,0 0 0 2px #b9bcc6,0 40px 80px -30px rgba(20,40,110,0.45)}.device-base{position: relative;height: clamp(9px,1.6vw,20px);background: linear-gradient(180deg,#dcdee5 0%,#b3b6c1 45%,#8a8d99 100%);border-radius: 2px 2px 50% 50% / 2px 2px 100% 100%}.device-base::before{content: "";position: absolute;left: 50%;top: 0;width: 15%;height: 42%;transform: translateX(-50%);background: linear-gradient(180deg,#9b9eaa,#c6c8d0);border-radius: 0 0 10px 10px}@media (max-width: 700px){.device-screen{width: 100%}}.stage{position: relative;border-radius: clamp(4px,0.8%,8px) clamp(4px,0.8%,8px) 0 0;overflow: hidden;background: #f3f5f9}.scene{width: 100%;height: auto;overflow: visible}.stage-svg{overflow: hidden}.stage-svg .layer{opacity: 0;transform-box: view-box;transform-origin: center;transform: translateY(-4px) scale(1.012);transition: opacity 0.42s var(--ease-out),transform 0.5s var(--spring)}.stage-svg .layer.on{opacity: 1;transform: none}.no-js .stage-svg .layer[data-tool="ruler"],html:not(.js) .stage-svg .layer[data-tool="ruler"]{opacity: 1;transform: none}.rail{position: absolute;left: 50%;bottom: 3.5%;transform: translateX(-50%);display: flex;gap: clamp(1px,0.4vw,4px);padding: clamp(2px,0.5vw,6px);border-radius: 99px;background: rgba(255,255,255,0.82);-webkit-backdrop-filter: blur(16px) saturate(1.6);backdrop-filter: blur(16px) saturate(1.6);box-shadow: 0 10px 30px -8px rgba(10,30,80,0.35),inset 0 0 0 1px rgba(0,0,0,0.08)}.rail-btn{appearance: none;border: 0;background: transparent;width: clamp(21px,3.8vw,40px);height: clamp(21px,3.8vw,40px);border-radius: 99px;display: grid;place-items: center;color: rgba(0,0,0,0.62);cursor: pointer;transition: background 0.2s,color 0.2s}.rail-btn .tg{width: 62%;height: 62%}.rail-btn:hover{background: rgba(0,0,0,0.06)}.rail-btn.on{color: #fff;background: var(--btn);box-shadow: inset 0 1px 0 rgba(255,255,255,0.3)}.stage-caption{max-width: 760px;margin: 22px auto 0;padding: 0 var(--gutter);min-height: 3em;font-size: 17px;color: var(--ink-2)}.stage-caption b{color: var(--ink)}.tgrid{margin-top: clamp(40px,5vw,64px);display: grid;grid-template-columns: repeat(auto-fill,minmax(230px,1fr));gap: 18px}.tgrid.small{grid-template-columns: repeat(auto-fill,minmax(220px,1fr))}.tcard{display: flex;flex-direction: column;gap: 8px;padding: 18px 18px 20px;border-radius: var(--radius);background: var(--paper);color: var(--ink);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25);transition: transform 0.25s var(--ease-out),box-shadow 0.25s}.tcard:hover{text-decoration: none;transform: translateY(-3px);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 18px 40px -18px rgba(20,40,100,0.35)}.tmini{height: 132px;display: grid;place-items: center;margin-bottom: 6px;border-radius: 14px;background: linear-gradient(180deg,#f6f8fc,#eef1f7);overflow: hidden}.tmini svg{width: 92%;height: 92%}.tname{display: flex;align-items: center;gap: 8px}.tname .tg{width: 22px;height: 22px;color: var(--accent);flex: none}.tname h2,.tname h3{font-size: 18px;line-height: 1.2;font-weight: 700}.tname .pro-tag,.tname .free-tag{margin-left: auto}.tdesc{font-size: 15px;color: var(--ink-2);line-height: 1.4}.tmore{margin-top: auto;padding-top: 4px;font-size: 14px;font-weight: 600;color: var(--link)}.more-link{margin-top: 34px}.steps{list-style: none;margin: clamp(40px,5vw,64px) 0 0;padding: 0;display: grid;grid-template-columns: repeat(3,1fr);gap: 18px}.step{padding: 28px 26px 30px;border-radius: var(--radius);background: var(--paper);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25)}.step-n{display: grid;place-items: center;width: 32px;height: 32px;border-radius: 50%;background: var(--btn);color: #fff;font-weight: 700;margin-bottom: 16px}.step h3{font-size: 22px;margin-bottom: 6px}.step p{color: var(--ink-2)}@media (max-width: 820px){.steps{grid-template-columns: 1fr}}.styles{margin-top: clamp(40px,5vw,64px);display: grid;grid-template-columns: repeat(2,1fr);gap: 18px}.style-card{margin: 0;padding: 26px 24px 22px;border-radius: var(--radius);background: var(--paper);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25)}.style-vis{display: grid;place-items: center;height: 170px;border-radius: 14px;background: linear-gradient(180deg,#f3f5fa,#e9ecf4)}.style-midnight .style-vis{background: linear-gradient(180deg,#2a2f3b,#161a22)}.style-vis svg{width: 88%;height: auto;max-height: 150px}.style-card figcaption{display: flex;flex-wrap: wrap;align-items: baseline;gap: 4px 10px;margin-top: 16px}.style-card b{font-size: 20px}.style-card figcaption span:not(.pro-tag):not(.free-tag){color: var(--ink-2);font-size: 15px}.style-card .pro-tag,.style-card .free-tag{margin-left: auto}@media (max-width: 760px){.styles{grid-template-columns: 1fr}}.prec{margin-top: clamp(40px,5vw,64px);display: grid;grid-template-columns: 1.15fr 1fr;gap: 28px;align-items: center}.prec-vis{margin: 0;border-radius: var(--radius);overflow: hidden;box-shadow: 0 30px 60px -30px rgba(20,40,100,0.4),0 0 0 1px var(--hair)}.prec-list{display: grid;gap: 22px}.prec-item h3{font-size: 20px;margin-bottom: 4px}.prec-item p{color: var(--ink-2)}@media (max-width: 860px){.prec{grid-template-columns: 1fr}}.bigkeys{display: flex;justify-content: center;gap: 12px;margin-top: 34px}.bigkeys kbd{font-size: clamp(28px,4vw,40px);color: #fff;background: linear-gradient(180deg,#2b2f39,#1c1f27);box-shadow: inset 0 0 0 1px rgba(255,255,255,0.14),0 4px 0 #000,0 12px 30px -10px rgba(0,112,255,0.5);border-radius: 0.3em}.kb-table{margin: clamp(36px,5vw,56px) auto 0;max-width: 860px;display: grid;grid-template-columns: 1fr 1fr;gap: 4px 36px}.kb-table>div{display: flex;align-items: center;gap: 14px;padding: 10px 0;border-bottom: 1px solid rgba(255,255,255,0.1)}.kb-table dt{min-width: 108px;display: flex;justify-content: flex-end}.kb-table dd{margin: 0;color: rgba(255,255,255,0.8);font-size: 15.5px}.section-dark kbd{color: #fff;background: linear-gradient(180deg,#353a46,#262a33);box-shadow: inset 0 0 0 1px rgba(255,255,255,0.14),0 1px 0 #000}.keys{display: inline-flex;gap: 4px;flex-wrap: wrap;justify-content: flex-end}.kb-table.compact{margin: 0;grid-template-columns: 1fr}.kb-table.compact>div{border-bottom: 1px solid var(--hair)}.kb-table.compact dd{color: var(--ink-2)}@media (max-width: 700px){.kb-table{grid-template-columns: 1fr}}.facts{margin-top: clamp(40px,5vw,64px);display: grid;grid-template-columns: repeat(4,1fr);gap: 18px}.fact{padding: 26px 24px;border-radius: var(--radius);background: var(--paper);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25)}.fact h3{font-size: 19px;margin-bottom: 6px}.fact p{color: var(--ink-2);font-size: 15.5px}@media (max-width: 960px){.facts{grid-template-columns: 1fr 1fr}}@media (max-width: 560px){.facts{grid-template-columns: 1fr}}.plans{margin-top: clamp(40px,5vw,64px);display: grid;grid-template-columns: 1fr 1fr;gap: 18px}.plan{padding: 32px 30px 34px;border-radius: var(--radius);background: var(--paper);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25)}.plan-pro{box-shadow: inset 0 0 0 2px rgba(0,112,255,0.55),0 14px 40px -20px rgba(0,92,242,0.45)}.plan h3{font-size: 26px}.plan .price{margin-top: 6px;font-size: 19px;font-weight: 700;color: var(--accent)}.plan ul,.ticks{list-style: none;margin: 18px 0 0;padding: 0;display: grid;gap: 10px}.plan li,.ticks li{display: flex;gap: 10px;align-items: flex-start;color: var(--ink-2)}.ck{flex: none;width: 18px;height: 18px;margin-top: 3px;color: var(--accent)}.terms{margin-top: 40px;display: flex;flex-direction: column;align-items: center;gap: 16px;text-align: center}.terms>p:first-child{max-width: 640px;font-size: 18px;font-weight: 500}@media (max-width: 760px){.plans{grid-template-columns: 1fr}}.faq{margin: clamp(32px,4vw,52px) auto 0;max-width: 860px}.faq details{border-bottom: 1px solid var(--hair)}.faq details:first-child{border-top: 1px solid var(--hair)}.faq summary{list-style: none;cursor: pointer;padding: 22px 44px 22px 0;position: relative}.faq summary::-webkit-details-marker{display: none}.faq summary::after{content: "";position: absolute;right: 6px;top: 50%;width: 14px;height: 14px;margin-top: -7px;background: linear-gradient(currentColor,currentColor) center / 14px 2px no-repeat,linear-gradient(currentColor,currentColor) center / 2px 14px no-repeat;color: var(--accent);transition: transform 0.3s var(--ease-out)}.faq details[open] summary::after{transform: rotate(45deg)}.faq summary h3{display: inline;font-size: clamp(18px,1.9vw,21px);font-weight: 600}.faq .answer{padding: 0 44px 24px 0;color: var(--ink-2)}.final{text-align: center;background: radial-gradient(40% 60% at 50% 30%,rgba(115,158,255,0.25),transparent 70%),var(--bg)}.final-icon{width: 128px;height: 128px;margin: 0 auto 26px;filter: drop-shadow(0 18px 30px rgba(20,40,110,0.25))}.final .subhead{margin-left: auto;margin-right: auto}.tool-hero{position: relative;overflow: hidden;padding: clamp(28px,4vw,56px) 0 clamp(20px,3vw,36px);background: radial-gradient(40% 60% at 12% 10%,rgba(115,158,255,0.34),transparent 70%),radial-gradient(34% 50% at 90% 30%,rgba(255,158,122,0.24),transparent 70%),linear-gradient(180deg,#f8f9fa,var(--bg))}.tool-hero .headline{max-width: 18em}.tool-hero .subhead{max-width: 760px}.tool-hero.hub{padding-bottom: clamp(28px,4vw,48px)}.crumbs ol{list-style: none;margin: 0 0 22px;padding: 0;display: flex;flex-wrap: wrap;gap: 6px;font-size: 13.5px;color: var(--ink-3)}.center .crumbs ol{justify-content: center}.crumbs li + li::before{content: "›";margin-right: 6px;color: var(--ink-3)}.crumbs a{color: var(--ink-2)}.tool-eyebrow{display: flex;align-items: center;gap: 8px}.tool-eyebrow .tg{width: 22px;height: 22px}.tool-figure{margin: 0}.tool-scene{border-radius: var(--radius);overflow: hidden;box-shadow: 0 30px 60px -30px rgba(20,40,100,0.45),0 0 0 1px var(--hair)}.tool-figure figcaption{margin-top: 14px;text-align: center;font-size: 15px;color: var(--ink-3)}.two-col{display: grid;grid-template-columns: 1fr 1fr;gap: clamp(28px,4vw,56px);align-items: start}@media (max-width: 820px){.two-col{grid-template-columns: 1fr}}.howto{margin: 0;padding: 0;list-style: none;counter-reset: s;display: grid;gap: 18px}.howto li{counter-increment: s;position: relative;padding-left: 46px}.howto li::before{content: counter(s);position: absolute;left: 0;top: 0;width: 30px;height: 30px;border-radius: 50%;display: grid;place-items: center;background: var(--btn);color: #fff;font-weight: 700;font-size: 15px}.howto h3{font-size: 18px;margin-bottom: 4px}.howto p{color: var(--ink-2)}.plan-note{padding: 26px 26px 28px;border-radius: var(--radius);background: var(--paper);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25)}.plan-note.free{box-shadow: inset 0 0 0 2px rgba(40,180,90,0.4)}.plan-note p{color: var(--ink-2)}.doc{padding: clamp(48px,7vw,90px) 0 clamp(64px,8vw,110px)}.doc .wrap{max-width: 760px}.doc h1{font-size: clamp(36px,5vw,52px);line-height: 1.08;letter-spacing: -0.03em}.doc .lead{margin-top: 16px;font-size: 21px;color: var(--ink-2)}.doc .updated{margin-top: 12px;font-size: 14px;color: var(--ink-3)}.doc h2{margin: 44px 0 10px;font-size: 26px}.doc h3{margin: 26px 0 6px;font-size: 19px}.doc p,.doc li{color: var(--ink-2)}.doc p + p{margin-top: 12px}.doc ul,.doc ol{padding-left: 1.3em}.doc li + li{margin-top: 6px}.summary,.contact-card{margin-top: 32px;padding: 24px 26px;border-radius: var(--radius);background: var(--paper);box-shadow: 0 1px 2px rgba(0,0,0,0.04),0 10px 30px -18px rgba(20,40,100,0.25)}.contact-card{display: flex;flex-wrap: wrap;gap: 16px;align-items: center;justify-content: space-between}.contact-card strong{font-size: 19px}.footer{background: #eceef3;color: var(--ink-3);font-size: 13px;padding: 44px 0 40px;border-top: 1px solid var(--hair)}.footer-cols{display: grid;grid-template-columns: 1.3fr 1fr 1fr 1fr;gap: 28px;padding-bottom: 26px;border-bottom: 1px solid var(--hair)}.footer-brand p{margin-top: 10px}.footer-h{font-size: 13px;font-weight: 600;color: var(--ink);margin-bottom: 10px}.footer-list{list-style: none;margin: 0;padding: 0;display: grid;gap: 6px}.footer-list a{color: var(--ink-2)}.footer-list a[aria-current="page"]{font-weight: 700;color: var(--ink)}.footer-bottom{padding-top: 18px;display: grid;gap: 6px}@media (max-width: 760px){.footer-cols{grid-template-columns: 1fr 1fr}}.reveal{transition: opacity 0.8s var(--ease-out),transform 0.8s var(--ease-out)}.js .reveal:not(.in){opacity: 0;transform: translateY(24px)}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{animation-duration: 0.001s !important;animation-delay: 0s !important;animation-iteration-count: 1 !important;transition-duration: 0.15s !important}.js .reveal:not(.in){opacity: 1;transform: none}.js .icon-stage .icon-final{opacity: 1}}