:root{--paper:#f3f2ee;--paper-2:#ecebe4;--card:#fbfaf7;--sand:#dcd8ce;--rule:#d9d6ce;--rule-2:#e4e1d9;--ink:#111110;--ink-2:#3b3a36;--muted:#5e5c57;--accent:#e8461e;--accent-ink:#b8350f;--ok:#1f6b3f;--serif:"Instrument Serif","Noto Serif SC",Georgia,serif;--sans:"Inter Tight","PingFang SC","Noto Sans SC",system-ui,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,monospace;--ease:cubic-bezier(0.2,0.7,0.1,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}::selection{background:var(--ink);color:var(--paper)}a{color:var(--ink)}a:hover{color:var(--accent-ink)}img{max-width:100%}button{font:inherit;color:inherit}input,select,textarea{font:inherit;color:var(--ink)}code,pre{font-family:var(--mono)}.wrap{max-width:1320px;margin:0 auto;padding-inline:40px}@media (max-width:640px){.wrap{padding-inline:18px}}.stack{flex-direction:column}.row,.stack{display:flex}.row{flex-wrap:wrap}.between{justify-content:space-between}.center{align-items:center}.end{align-items:flex-end}.base{align-items:baseline}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.display,.serif{font-family:var(--serif);font-weight:400}.display{letter-spacing:-.025em;line-height:.98;margin:0}.h1{font-size:clamp(40px,5vw,68px)}.h2{font-size:clamp(32px,4vw,56px);line-height:1.04}.h3{font-size:28px;line-height:1.08}.kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.lead{font-size:16.5px;line-height:1.7;color:var(--ink-2)}.muted{color:var(--muted)}.small{font-size:13px}.accent{color:var(--accent)}em{font-style:italic}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);text-decoration:none;font-size:15px;cursor:pointer;transition:transform .3s var(--ease),background .2s}.btn,.btn:hover{color:var(--paper)}.btn:hover{transform:translateY(-2px)}.btn.ghost{background:transparent}.btn.accent,.btn.ghost,.btn.ghost:hover{color:var(--ink)}.btn.accent{background:var(--accent);border-color:var(--accent)}.btn.sm{min-height:38px;padding:0 16px;font-size:13px}.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}.pill{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--rule);background:transparent;font-size:13px;text-decoration:none;cursor:pointer}.pill.on{background:var(--ink);border-color:var(--ink)}.pill.on,.pill.on:hover{color:var(--paper)}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.input{min-height:46px;padding:0 14px;border:1px solid var(--rule);background:var(--paper);font-size:15px;outline:none;width:100%}.input:focus{border-color:var(--ink)}textarea.input{padding:12px 14px;font-family:var(--mono);font-size:13px;line-height:1.6}.tag{display:inline-block;padding:4px 10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--rule)}.tag.ink{background:var(--ink);color:var(--paper);border-color:var(--ink)}.tag.acc{background:var(--accent);border-color:var(--accent)}.notice{padding:14px 18px;border:1px solid var(--ink);background:var(--card);font-size:14px}.notice.acc{background:var(--accent);border-color:var(--accent)}.notice.err{border-color:var(--accent-ink);color:var(--accent-ink)}.panel{border:1px solid var(--ink);background:var(--card)}.panel-h{padding:18px 24px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.panel-h h2{margin:0;font-family:var(--serif);font-weight:400;font-size:24px}.card,.panel-b{padding:24px}.card{display:flex;flex-direction:column;gap:10px;min-width:0;overflow-wrap:anywhere;background:var(--card);border:1px solid var(--rule);text-decoration:none;color:var(--ink);min-height:200px;transition:transform .4s var(--ease),border-color .3s}.card:hover{transform:translateY(-3px);border-color:var(--ink);color:var(--ink)}.card .arw{display:inline-block;transition:transform .4s var(--ease)}.card:hover .arw{transform:translateX(5px)}.card-foot{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:12px;border-top:1px solid var(--rule-2);font-size:13px;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--rule)}.stat{padding:24px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--card)}.stat .v{margin-top:10px;font-family:var(--serif);font-size:40px;line-height:1}.bar{height:4px;background:var(--rule-2)}.bar>div{height:100%;background:var(--ink)}.table{width:100%;border-collapse:collapse;font-size:15px}.table th{text-align:left;font-weight:400;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:14px 12px;border-bottom:1px solid var(--rule)}.table td{padding:16px 12px;border-bottom:1px solid var(--rule-2);vertical-align:middle}.table td:first-child,.table th:first-child{padding-left:24px}.table td:last-child,.table th:last-child{padding-right:24px}.scroll-x{overflow-x:auto}.dark{background:var(--ink)}.dark,.dark a{color:var(--paper)}.site-h{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:rgba(243,242,238,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--ink)}.site-h nav{position:relative;min-height:68px;display:flex;align-items:center;gap:28px;flex-wrap:wrap}.logo{font-family:var(--serif);font-size:26px;text-decoration:none;letter-spacing:-.01em}.logo span{color:var(--accent)}.navl{text-decoration:none;position:relative;font-size:14px}.navl:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}.navl.on:after,.navl:hover:after{transform:scaleX(1);transform-origin:left}.mm{display:flex;align-items:center;min-height:68px}.mm-panel{position:absolute;left:40px;right:40px;top:100%;display:flex;flex-wrap:wrap;background:var(--card);border:1px solid var(--ink);box-shadow:0 30px 70px rgba(17,17,16,.14);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .3s,transform .4s var(--ease),visibility .3s}.mm:focus-within .mm-panel,.mm:hover .mm-panel{opacity:1;visibility:visible;transform:none}.mm-col{flex:1 1 200px;padding:28px;border-right:1px solid var(--rule-2)}.mm-col a{text-decoration:none}.mm-col ul{margin:16px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:14px}.shell{display:flex;flex-wrap:wrap;align-items:flex-start}.side{flex:1 1 220px;max-width:260px;padding:28px 16px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:2px}.side a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 14px;text-decoration:none;font-size:15px;transition:background .25s}.side a:hover{background:var(--rule-2)}.side a.on{background:var(--ink);color:var(--paper)}.side .grp{margin:20px 14px 8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.main{flex:999 1 720px;min-width:0;padding:40px 40px 96px}@media (max-width:760px){.side{max-width:none;border-right:0;border-bottom:1px solid var(--rule)}.main{padding:28px 18px 72px}}@keyframes up{0%{transform:translateY(110%)}to{transform:none}}@keyframes fadein{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes px{0%{transform:translate3d(0,var(--f,0),0) rotate(var(--rf,0deg))}to{transform:translate3d(0,var(--t,0),0) rotate(var(--rt,0deg))}}@keyframes pxx{0%{transform:translate3d(var(--f,0),0,0)}to{transform:translate3d(var(--t,0),0,0)}}@keyframes rise{0%{opacity:0;transform:translate3d(0,48px,0)}to{opacity:1;transform:none}}@keyframes ink{0%{color:#cfcbc2}to{color:var(--ink)}}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes sink{to{transform:scale(.94);filter:brightness(.92)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.line{display:block;overflow:hidden;padding-bottom:.04em}.line>span{display:block;animation:up 1.2s var(--ease) both;animation-delay:var(--d,0s)}.fin{animation:fadein .9s var(--ease) both;animation-delay:var(--d,0s)}.bob{display:inline-block;animation:bob 2.4s ease-in-out infinite}@supports (animation-timeline:view()){.px{animation:px linear both;animation-timeline:view();animation-range:cover}.pxx{animation:pxx linear both;animation-timeline:view();animation-range:cover}.rise{animation:rise linear both;animation-timeline:view();animation-range:entry 0 entry 85%}.ink{animation:ink linear both;animation-timeline:view();animation-range:entry 100% cover 45%}.grow{transform-origin:left;animation:grow linear both;animation-timeline:view();animation-range:entry 20% cover 45%}.spread{view-timeline-name:--spread}.spread-track{animation:pxx linear both;animation-timeline:--spread;animation-range:contain 0 contain 100%}.stack-card{animation:sink linear both;animation-timeline:view();animation-range:exit-crossing 0 exit-crossing 100%}}@media (max-width:760px){.spread{height:auto!important}.spread-sticky{position:relative!important;overflow-x:auto!important}.spread-track{animation:none!important}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;padding:22px 0;font-family:var(--serif);font-size:21px;line-height:1.25}.faq summary::-webkit-details-marker{display:none}.faq details{border-bottom:1px solid var(--rule)}.faq details[open] .pm{transform:rotate(45deg)}.faq .pm{transition:transform .35s;font-family:var(--sans);font-weight:300}.code{display:block;padding:14px 16px;background:var(--ink);color:#e4e1d9;font-size:12.5px;line-height:1.7;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:0}.idx{display:flex;align-items:baseline;gap:32px;padding:30px 0;border-bottom:1px solid var(--rule);text-decoration:none;flex-wrap:wrap}.idx .arw,.idx .ttl{transition:transform .45s var(--ease);display:inline-block}.idx:hover .ttl{transform:translateX(14px)}.idx:hover .arw{transform:translateX(10px)}.avatar{width:36px;height:36px;border-radius:99px;display:inline-flex;justify-content:center;font-size:14px;flex:none;background:var(--ink);color:var(--paper)}.avatar,.rd{align-items:center}.rd{margin:0;display:grid;grid-template-columns:minmax(0,1fr) 140px minmax(220px,1.1fr) 140px minmax(0,1.3fr);grid-template-rows:auto 440px;grid-column-gap:0;column-gap:0;grid-row-gap:18px;row-gap:18px}.rd-head{grid-row:1}.rd-head-a{grid-column:1}.rd-head-r{grid-column:3;text-align:center}.rd-head-c{grid-column:5}.rd-agents,.rd-caps{grid-row:2;display:grid;align-items:center}.rd-agents{grid-column:1;grid-template-rows:repeat(4,1fr)}.rd-caps{grid-column:5;grid-template-rows:repeat(5,1fr)}.rd-wire-in{grid-column:2;grid-row:2}.rd-wire-out{grid-column:4;grid-row:2}.rd-wire{display:block;overflow:visible}.rd-core{grid-column:3;grid-row:2;position:relative;background:var(--ink);color:var(--paper);padding:28px 26px;display:flex;flex-direction:column;gap:14px;box-shadow:0 30px 60px rgba(17,17,16,.18)}.rd-brand{font-size:clamp(30px,2.6vw,40px);line-height:1}.rd-brand span{color:var(--accent)}.rd-core ul{margin:6px 0 0;padding:14px 0 0;list-style:none;border-top:1px solid #3b3a36;display:flex;flex-direction:column;gap:8px;font-size:13.5px;color:#d9d6ce}.rd-core li:before{content:"— ";color:var(--accent)}.rd-pulse{position:absolute;inset:-1px;border:1px solid var(--accent);pointer-events:none;animation:rdpulse 2.6s ease-out infinite}@keyframes rdpulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.06)}}.rd-cap,.rd-chip{display:flex;flex-direction:column;gap:3px;padding:12px 16px;border:1px solid var(--ink);background:var(--card);min-width:0}.rd-cap.acc{background:var(--accent)}.rd-name{font-weight:500;font-size:15px}.rd-note{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}.rd-cap.acc .rd-note{color:var(--ink)}.rd-count{font-size:22px;line-height:1;white-space:nowrap}.rd-count small{font-family:var(--sans);font-size:12px;color:var(--muted)}.rd-flow{display:none}@keyframes rdflow{0%{background-position:0 0}to{background-position:0 16px}}@media (max-width:900px){.rd{display:flex;flex-direction:column;align-items:stretch;gap:0}.rd-head-a{order:1;margin-bottom:10px}.rd-agents{order:2;height:auto!important;grid-template-columns:1fr 1fr;grid-template-rows:none;gap:8px}.rd-flow-in{order:3}.rd-head-r{display:none}.rd-core{order:4}.rd-flow-out{order:5}.rd-head-c{order:6;margin-bottom:10px}.rd-caps{order:7;height:auto!important;grid-template-columns:1fr 1fr;grid-template-rows:none;gap:8px}.rd-caps .rd-cap:last-child{grid-column:1/-1}.rd-wire-in,.rd-wire-out{display:none}.rd-flow{display:block;align-self:center;width:2px;height:44px;margin:6px 0;background:repeating-linear-gradient(to bottom,var(--accent) 0 6px,transparent 6px 16px);animation:rdflow .7s linear infinite}}@media (prefers-reduced-motion:reduce){.rd-dot,.rd-pulse{display:none}}.m-nav{display:none}.sec{padding-block:112px}@media (max-width:760px){.sec{padding-block:64px}.site-h nav{flex-wrap:nowrap;gap:12px;min-height:56px}.desk-login,.desk-nav{display:none!important}.site-h .btn.sm{max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-nav{display:block}.m-nav>summary{white-space:nowrap;flex:none;list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--ink);border-radius:999px;font-size:14px}.m-nav>summary::-webkit-details-marker{display:none}.m-nav[open]>summary{background:var(--ink);color:var(--paper)}.m-nav-panel{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--ink);padding:8px 18px 20px;max-height:calc(100dvh - 56px);overflow-y:auto;box-shadow:0 30px 60px rgba(17,17,16,.12)}.m-nav-panel a{display:block;padding:13px 0;text-decoration:none;font-size:16px}.m-nav-panel .m-sub,.m-nav-panel a{border-bottom:1px solid var(--rule-2)}.m-nav-panel .m-sub{display:flex;flex-wrap:wrap;gap:6px 14px;padding:4px 0 12px}.m-nav-panel .m-sub a{display:inline;padding:0;border:0;font-size:13px;color:var(--muted)}.hero-card{display:none!important}.hero-body{min-height:0!important;padding-top:36px!important;padding-bottom:64px!important}.hero-kinds{gap:10px!important;font-size:10px}.hero-more{margin-top:48px!important}.step-card{width:min(640px,84vw)!important;min-height:0!important;padding:28px 24px!important}.step-card .step-no{font-size:72px!important}.step-card h3{font-size:28px!important}.promise{padding:28px 22px!important;min-height:0!important;gap:24px!important}.feat-fig{height:400px!important}.feat-fig>div{padding:22px!important}}.lang{display:inline-flex;flex:none;white-space:nowrap;align-items:center;border:1px solid var(--rule);border-radius:999px;overflow:hidden;font-size:12px}.lang a{display:inline-block;line-height:1.2;padding:6px 10px;text-decoration:none;color:var(--muted)}.lang a.on{background:var(--ink);color:var(--paper)}@media (max-width:760px){.site-h .lang a{padding:6px 8px}}@media (max-width:440px){.site-h nav{gap:8px}.site-h .logo{font-size:22px}.site-h .btn.sm{padding:0 12px}.m-nav>summary{padding:0 10px}}