:root{--i-cube:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 8.5 12 4l8 4.5v8L12 21l-8-4.5z' fill='%23C20F2F'/%3E%3Cpath d='M4 8.5 12 13l8-4.5L12 4z' fill='%23FE4F70'/%3E%3Cpath d='M12 13v8l8-4.5v-8z' fill='%231B0E16' opacity='.3'/%3E%3Cpath d='M4 8.5 12 13v8l-8-4.5z' fill='%23fff' opacity='.1'/%3E%3C/svg%3E");--i-door:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 56'%3E%3Crect x='2' y='8' width='32' height='48' rx='2' fill='%23FBEEF2'/%3E%3Crect x='2' y='8' width='7' height='48' rx='2' fill='%23C20F2F'/%3E%3Crect x='27' y='8' width='7' height='48' rx='2' fill='%23C20F2F'/%3E%3Crect x='0' y='3' width='36' height='7' rx='2.5' fill='%23D8143A'/%3E%3Crect x='3' y='0' width='30' height='4' rx='2' fill='%23FE4F70'/%3E%3Crect x='3.5' y='11' width='2' height='43' rx='1' fill='%23fff' opacity='.28'/%3E%3Crect x='28.5' y='11' width='2' height='43' rx='1' fill='%23fff' opacity='.28'/%3E%3C/svg%3E");--i-env:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 58'%3E%3Cellipse cx='32' cy='54' rx='30' ry='4' fill='%232B1522' opacity='.16'/%3E%3Cpath d='M4 18 32 2l28 16z' fill='%23FE4F70'/%3E%3Crect x='13' y='8' width='38' height='30' rx='2' fill='%23FFFCFD'/%3E%3Crect x='19' y='15' width='18' height='3' rx='1.5' fill='%233B2A33' opacity='.7'/%3E%3Crect x='19' y='22' width='26' height='3' rx='1.5' fill='%23E6C9D6'/%3E%3Cpath d='M4 18v30a4 4 0 0 0 4 4h48a4 4 0 0 0 4-4V18L32 36z' fill='%23C20F2F'/%3E%3Cpath d='M4 18l28 18 28-18' fill='none' stroke='%23FF8AA0' stroke-opacity='.7' stroke-width='1.5'/%3E%3C/svg%3E");--shadow-lift:0 30px 80px color-mix(in srgb,var(--wine) 30%,transparent);--shadow-rose:0 24px 60px color-mix(in srgb,var(--wine) 16%,transparent);--badge:radial-gradient(circle at 35% 30%,var(--coral),var(--crimson) 72%)}
.pbanner{position:relative;isolation:isolate;overflow:hidden;background:var(--night);color:var(--moon);min-height:clamp(300px,33vw,460px);display:grid;align-items:center;padding-block:clamp(40px,5vw,64px)}
.bn-pic{position:absolute;inset:0;z-index:-2;display:block;overflow:hidden}
.bn-pic img{position:absolute;top:0;left:var(--bn-x,0);width:var(--bn-w,100%);height:100%;max-width:none;object-fit:cover;object-position:var(--bn-pos,50% 42%)}
.bn-veil{position:absolute;inset:0;z-index:-1;background:linear-gradient(var(--bn-dir,90deg),color-mix(in srgb,var(--wine) 95%,transparent) 0,color-mix(in srgb,var(--wine) 90%,transparent) 34%,color-mix(in srgb,var(--wine) 74%,transparent) 46%,color-mix(in srgb,var(--wine) 28%,transparent) 58%,transparent 68%),linear-gradient(180deg,color-mix(in srgb,var(--wine) 24%,transparent),transparent 36%)}
.bn-verifier{--bn-pos:50% 0}
.bn-finder{--bn-pos:50% 0}
.bn-tool .bn-veil{background:linear-gradient(90deg,rgba(27,14,22,.9) 0,rgba(27,14,22,.84) 34%,rgba(27,14,22,.5) 54%,rgba(27,14,22,.3) 76%,rgba(27,14,22,.26) 100%)}
.bn-pricing,.bn-api,.bn-blog,.bn-integrations,.bn-integration,.bn-post,.bn-contact,.bn-help,.bn-freeapi,.bn-generic,.bn-404{--bn-pos:50% 8%}
.bn-about{--bn-pos:100% 30%}
.bn-post .bn-veil{background:linear-gradient(90deg,color-mix(in srgb,var(--wine) 95%,transparent) 0,color-mix(in srgb,var(--wine) 90%,transparent) 42%,color-mix(in srgb,var(--wine) 70%,transparent) 56%,color-mix(in srgb,var(--wine) 30%,transparent) 70%,transparent 84%)}
.bn-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:center}
.bn-copy{min-width:0;max-width:min(100%,590px - 2vw,48vw - var(--gutter))}
.bn-grid-2{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,4vw,56px)}
.bn-grid-2 .bn-copy{max-width:none}
.pbanner h1{color:#fff;font-stretch:108%;font-weight:800;font-size:clamp(2.1rem,1.5rem + 2.2vw,3.5rem);margin-bottom:.3em;text-shadow:0 2px 28px color-mix(in srgb,var(--wine) 65%,transparent)}
.pbanner .lead{color:var(--moon);margin-bottom:0;text-shadow:0 1px 18px color-mix(in srgb,var(--wine) 70%,transparent)}
.pbanner .breadcrumbs{color:var(--mist);margin-bottom:14px}
.pbanner .breadcrumbs a{color:var(--mist)}
.pbanner .breadcrumbs a:hover{color:#fff}
.pbanner .breadcrumbs li+li::before{color:color-mix(in srgb,var(--mist) 45%,transparent)}
.pbanner .post-meta{color:var(--mist);margin:14px 0 0}
.pbanner .post-meta a{color:var(--moon);text-decoration:none;padding:3px 11px;border-radius:var(--r-pill);background:color-mix(in srgb,#fff 12%,transparent)}
.pbanner .post-meta a:hover{background:var(--crimson);color:#fff}
.bn-art{position:relative;justify-self:end;width:min(100%,clamp(240px,34vw,440px))}
.bn-svg{display:block;width:100%;height:100%;overflow:visible}
.bn-art-fig{width:min(100%,clamp(260px,36vw,460px))}
.bn-art-fig .post-hero{margin:0;padding:10px;border-radius:14px;background:var(--white);box-shadow:var(--shadow-lift);transform:rotate(-2.5deg)}
.bn-art-fig .post-hero img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;border-radius:6px;margin:0}
.bn-actions{margin-top:24px;display:flex;flex-wrap:wrap;gap:12px}
.bn-intro{margin-top:14px;max-width:60ch;font-size:clamp(1rem,.95rem + .3vw,1.15rem);color:var(--mist)}
.bn-intro p{margin:0 0 .6em;color:var(--mist)}
.bn-intro p:last-child{margin-bottom:0}
.bn-intro strong{color:#fff}
.bn-intro a{color:var(--crimson-lit)}
.bn-404 .bn-actions .btn-ghost{color:var(--moon)}
.bn-tall{min-height:clamp(380px,40vw,560px)}
.bn-stage{padding-bottom:clamp(120px,14vw,190px)}
.bn-tool.bn-stage{min-height:clamp(380px,40vw,560px);padding-bottom:clamp(120px,13vw,176px)}
.bn-grid-tool{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(16px,3vw,40px)}
.bn-grid-tool .bn-copy{max-width:min(100%,640px)}
.bn-art-tool{width:clamp(130px,16vw,216px);aspect-ratio:1;margin-bottom:-4px;filter:drop-shadow(0 24px 30px color-mix(in srgb,var(--wine) 45%,transparent))}
.bn-art-tool::before{content:"";position:absolute;inset:-30%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--coral) 38%,transparent),transparent 62%);z-index:-1}
.tool-stage{background:linear-gradient(180deg,var(--paper),var(--white) 260px);padding-bottom:clamp(8px,2vw,24px)}
.tool-wrap{width:min(920px,100% - 2 * var(--gutter));margin-inline:auto;position:relative;z-index:2;margin-top:-64px}
.ah-ring{stroke-dasharray:1571 1571;stroke-dashoffset:1571;animation:bn-draw 1.1s cubic-bezier(.2,.7,.2,1) .15s forwards}
.ah-white{stroke-dasharray:1508 1508;stroke-dashoffset:1508;animation:bn-draw .9s cubic-bezier(.2,.7,.2,1) .35s forwards}
.ah-ball{transform-box:fill-box;transform-origin:center;animation:bn-blink .26s ease-in-out 2s 1}
.ah-scan{opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .25s ease}
.ah-scan-on{opacity:.95;animation:bn-fade .6s ease 1.2s both}
.ah-wink,.ah-shut,.ah-sq{opacity:0;transition:opacity 120ms ease}
.ah-eye .ah-ball{transition:opacity 120ms ease}
.tool-head[data-state="checking"] .ah-scan{opacity:1;animation:bn-spin .9s linear infinite}
.tool-head[data-state="ok"] .ah-eye-r .ah-ball{opacity:0}
.tool-head[data-state="ok"] .ah-wink{opacity:1}
.tool-head[data-state="ko"] .ah-ball{opacity:0}
.tool-head[data-state="ko"] .ah-shut{opacity:1}
.tool-head[data-state="mb"] .ah-ball{opacity:0}
.tool-head[data-state="mb"] .ah-sq{opacity:1}
.tool-head .ah{transform-box:fill-box;transform-origin:center;transition:transform .5s var(--ease-out)}
.tool-head[data-state="mb"] .ah{transform:rotate(-6deg)}
@keyframes bn-draw{to{stroke-dashoffset:0}}
@keyframes bn-blink{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.08)}}
@keyframes bn-fade{from{opacity:0}to{opacity:.95}}
@keyframes bn-spin{to{transform:rotate(360deg)}}
.mini-head{display:block;width:100%;height:auto}
.pg{padding-block:clamp(36px,5vw,64px);background:linear-gradient(180deg,var(--paper),var(--white) 240px)}
.pg[data-kind="verifier"],.pg[data-kind="finder"]{background:var(--white)}
.pg-grid{display:grid;grid-template-columns:minmax(0,1fr) 296px;column-gap:clamp(32px,5vw,80px);align-items:start}
.pg-main{min-width:0}
.pg-main .prose{max-width:var(--prose)}
.pg-wide .prose{max-width:none}
.pg-intro{margin-bottom:clamp(24px,4vw,40px)}
.pg-aside{position:sticky;top:calc(var(--header-h) + 20px);display:grid;gap:22px;min-width:0}
.toc-nav{font-size:.9rem}
.toc-nav ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--rule)}
.toc-nav li{margin:0}
.toc-nav a{display:block;padding:5px 0 5px 14px;margin-left:-2px;border-left:2px solid transparent;color:var(--steel);text-decoration:none;line-height:1.35;transition:color 160ms ease,border-color 160ms ease}
.toc-nav a:hover{color:var(--ink)}
.toc-nav a.is-on{color:var(--ink);border-left-color:var(--crimson);font-weight:600}
.toc-nav .lvl3 a{padding-left:26px;font-size:.84rem}
.toc-nav[hidden]{display:none}
.sheet,.card-paper,.price-card,.quote-card,.int-card,.key-box,.token-box,.contact-box,.faq details,.prose details,.content .step,.content .stat,.content .toc,.content .email,.content .box,.content .callout,.content figure.inf,.content .table-scroll,.fr-body .card,.fr-body .plan,.fr-body .step,.fr-body .tbl,.fr-body .band{background:linear-gradient(180deg,#fff 0,var(--white) 72px);border:1px solid var(--rule);border-radius:18px;box-shadow:var(--shadow-sheet)}
.card-paper::after,.int-card::after{content:none}
.aside-card{padding:22px;display:grid;grid-template-columns:76px minmax(0,1fr);gap:16px;align-items:center;position:relative;overflow:hidden}
.aside-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle 150px at 16% 40%,color-mix(in srgb,var(--coral) 28%,transparent),transparent 70%);pointer-events:none}
.aside-card .mini-head{width:76px;height:76px;position:relative;filter:drop-shadow(0 10px 14px color-mix(in srgb,var(--wine) 25%,transparent))}
.aside-links{display:grid;gap:8px;position:relative}
.aside-links .btn{width:100%}
.aside-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.aside-cats .tag{text-decoration:none}
.aside-cats .tag:hover{background:var(--crimson);color:#fff}
.pg-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);gap:clamp(28px,5vw,72px);align-items:start}
.pg-duo .prose{max-width:none}
.ill-card{position:sticky;top:calc(var(--header-h) + 20px);overflow:hidden;border-radius:22px;aspect-ratio:4/5;max-height:calc(100vh - var(--header-h) - 40px);display:grid;place-items:center;min-width:0;background:radial-gradient(circle at 30% 18%,#fff,var(--paper) 52%,color-mix(in srgb,var(--coral-soft) 38%,var(--paper)) 100%)}
.ill-card::before{content:"";position:absolute;left:12%;right:12%;bottom:9%;height:12%;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--wine) 16%,transparent),transparent 70%)}
.ill-svg{width:78%;max-width:340px;height:auto;position:relative;filter:drop-shadow(0 20px 26px color-mix(in srgb,var(--wine) 22%,transparent))}
.pg-lift{position:relative;z-index:2;margin-top:calc(-1 * clamp(64px,9vw,124px))}
.pg-after{margin-top:clamp(36px,5vw,64px)}
.pg-pricing{padding-top:0}
.price-grid.pg-lift .price-card{box-shadow:var(--shadow-lift)}
.price-card{position:relative;padding:28px;display:flex;flex-direction:column;gap:14px}
.price-card.featured{border:2px solid var(--crimson)}
.price-card .tag{position:absolute;top:18px;right:18px;background:var(--crimson);color:#fff}
.price-card .amount{font-size:2.4rem;font-weight:800;letter-spacing:-.03em;line-height:1;margin:0;font-variant-numeric:tabular-nums}
.price-card h3{margin:0}
.price-card .per{margin:0}
.price-card .secured{font-size:.82rem;color:var(--steel);text-align:center;margin:0}
.price-card ul li{position:relative;padding-left:26px}
.price-card ul li::before{content:"";position:absolute;left:0;top:.95em;width:14px;height:14px;border-radius:3px;transform:rotate(-7deg);box-shadow:inset 0 0 0 1.5px var(--ok),inset 0 0 0 3px #fff,inset 0 0 0 4.5px var(--ok)}
.pricing-note{margin-top:28px;color:var(--steel)}
.pricing-tagline{font-size:clamp(1.15rem,1rem + .8vw,1.5rem);font-weight:600;color:#fff;margin:0 0 .6em}
.bn-pricing .lead{margin-bottom:14px}
.pricing-quote{color:var(--mist);max-width:62ch;margin:0;padding-left:16px;border-left:3px solid var(--crimson-lit)}
.pricing-quote strong{color:#fff}
.crypto{margin-top:28px}
.key-box,.token-box{padding:clamp(22px,3vw,34px);box-shadow:var(--shadow-lift)}
.key-box h2{font-size:1.3rem;margin-bottom:.6em}
.ninja_key{font-family:var(--mono);font-size:.9rem}
.key-msg{color:var(--ko);font-weight:600}
.key-msg:empty{display:none}
.contact-box{margin-top:40px;padding:clamp(20px,3vw,32px);position:relative}
.contact-box::before{content:"";position:absolute;right:26px;top:-26px;width:66px;height:60px;background:var(--i-env) center/contain no-repeat;filter:drop-shadow(0 8px 10px color-mix(in srgb,var(--wine) 22%,transparent))}
.contact-box form>div{margin-bottom:16px}
.pg-contact .prose p:last-child{margin-bottom:1.2em}
#ts-contact:empty{display:none}
.token-box h2{font-size:1.35rem;margin-bottom:.4em}
#mtn-fa-ts{min-height:0}
#mtn-fa-ts:empty{display:none}
.token-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.token-row .input{flex:1;min-width:220px;font-family:var(--mono);font-size:.85rem}
.terminal.wrap{white-space:pre-wrap;word-break:break-all}
.terminal,.prose pre{background:var(--night-deep);color:var(--moon);border-radius:14px;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 10%,transparent),var(--shadow-sheet)}
.terminal .k{color:var(--coral-soft)}
.terminal .s{color:var(--mb-d)}
.terminal .dim{color:var(--steel-2)}
.terminal .c{color:var(--ok-d)}
.video{background:var(--night-deep);border-radius:18px;box-shadow:var(--shadow-sheet)}
.tile{background:var(--white);border:1px solid var(--rule);box-shadow:var(--shadow-sheet)}
.tile-ink,.ribbon{background:var(--night)}
.airmail{border-image:none;border:1px solid var(--rule);border-radius:18px;box-shadow:var(--shadow-sheet)}
.airmail h2{color:var(--ink)}
.enso,.ensō,.steps h3::before{border:0;transform:none;background:var(--badge);color:#fff;box-shadow:0 .25em .6em color-mix(in srgb,var(--wine) 24%,transparent)}
.enso span{transform:none}
.notice{border-radius:14px}
.card-paper{padding:22px 24px;overflow:hidden;transition:transform 220ms var(--ease-out),box-shadow 220ms ease}
.card-paper img{border-radius:10px;margin-bottom:14px;aspect-ratio:3/2;object-fit:cover;width:100%;border:0;box-shadow:none}
@media (hover:hover) and (pointer:fine){.card-paper:hover{transform:translateY(-4px);border-color:var(--rule);box-shadow:var(--shadow-rose)}.card-paper:hover h3 a{color:var(--crimson)}}
.quote-card{padding:22px 24px}
.share a:hover{border-color:var(--crimson);color:var(--crimson)}
.latest h2{margin-bottom:1.2em}
.pbanner .seal-text{font-family:var(--font)}
.int-head{display:flex;align-items:center;gap:18px;margin:.2rem 0 1.6rem}
.int-head img{width:64px;height:64px;margin:0;padding:12px;background:#fff;border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow-sheet)}
.int-head span{font-size:1.6em;color:var(--steel-2);font-weight:300}
.int-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:.8rem 0 2rem}
.int-card{position:relative;padding:20px 22px;display:flex;flex-direction:column;transition:transform 220ms var(--ease-out),box-shadow 220ms ease}
.int-card .name{margin:0 0 .6rem;font-weight:700;display:flex;align-items:center;gap:12px;color:var(--ink)}
.int-card .name img{width:40px;height:40px;flex:none;margin:0;border-radius:10px;padding:7px;background:var(--paper);border:1px solid var(--rule)}
.int-card p{margin:0 0 .9rem;font-size:.95rem;color:var(--ink-2)}
.int-card>a{margin-top:auto;font-weight:650;font-size:.92rem;text-decoration:none}
.int-card .int-links{margin:auto 0 0;font-weight:650;font-size:.92rem;color:var(--steel)}
.int-card .int-links a{text-decoration:none}
.nowrap{white-space:nowrap}
.int-card .name img{transition:transform 220ms var(--ease-out),box-shadow 220ms ease,border-color 220ms ease;will-change:transform}
@keyframes int-wiggle{0%{transform:translateY(0) rotate(0) scale(1)}30%{transform:translateY(-6px) rotate(-8deg) scale(1.14)}60%{transform:translateY(-2px) rotate(6deg) scale(1.1)}80%{transform:translateY(-3px) rotate(-2deg) scale(1.08)}100%{transform:translateY(-2px) rotate(0) scale(1.08)}}
@media (hover:hover) and (pointer:fine){.int-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-rose)}.int-card:hover .name img{animation:int-wiggle 520ms var(--ease-out) both;border-color:var(--crimson);box-shadow:0 8px 18px color-mix(in srgb,var(--crimson) 25%,transparent)}}
@media (prefers-reduced-motion:reduce){.int-card:hover .name img{animation:none;transform:scale(1.06)}}
.pg-wide .prose>div:not([class])>.int-card{margin-bottom:14px}
.box{margin:1.4rem 0;padding:18px 20px}
.box p:last-child{margin-bottom:0}
.box-accent{margin:1.8rem 0 .5rem;padding:18px 20px 18px 24px;border-left:4px solid var(--crimson);border-radius:0 14px 14px 0;background:var(--paper)}
.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1.5px solid var(--crimson);border-radius:var(--r-pill);color:var(--crimson);text-decoration:none;font-weight:600;font-size:.95rem;margin:0 6px 8px 0}
.pill:hover{background:var(--crimson);color:#fff}
.pill-solid{display:inline-block;padding:10px 20px;border-radius:var(--r-pill);background:var(--crimson);color:#fff;font-weight:600;text-decoration:none}
.pill-solid:hover{background:var(--crimson-hi);color:#fff}
.h-anchor{display:flex;align-items:center;gap:10px;scroll-margin-top:90px}
.h-anchor img{width:28px;height:28px;margin:0;border-radius:0;border:0;box-shadow:none;background:none}
.prose pre.code{white-space:pre;overflow:auto;max-height:520px;margin:.3rem 0 1rem;padding:12px 14px;font-size:.85em;line-height:1.5}
.fr-body section{margin:3.4rem 0}
.fr-body section>h2{text-align:center;margin:0 0 1.6rem}
.fr-body .lead,.fr-body .prose .lead{background:none;border:0;padding:0;text-align:center;max-width:64ch;margin:.4rem auto 1.4rem;font-size:1.15em;color:var(--ink-2)}
.fr-body .intro{text-align:center;color:var(--steel);max-width:62ch;margin:-.6rem auto 1.6rem}
.fr-body .note{font-size:.92em;color:var(--steel);text-align:center;margin:.9rem 0 0;background:none;padding:0;border:0}
.fr-body .note::before{display:none}
.fr-body .en{font-size:.9em;color:var(--steel);text-align:center;margin:1.4rem 0 0}
.fr-body .mt-wrap{display:flex;justify-content:center;margin:1.2rem 0}
.fr-body .mt-card{width:min(760px,100%)}
.fr-body .mt-form{display:flex;align-items:center;gap:6px;background:#fff;border:2px solid var(--rule);border-radius:var(--r-pill);padding:5px 5px 5px 20px;box-shadow:var(--shadow-sheet);transition:border-color 160ms ease,box-shadow 160ms ease}
.fr-body .mt-form:focus-within{border-color:var(--navy);box-shadow:0 0 0 4px var(--navy-soft)}
.fr-body .mt-input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:1.05rem;color:var(--ink);min-height:44px;outline:none}
.fr-body .mt-btn{flex:0 0 auto;min-height:46px;padding:0 22px;border-radius:var(--r-pill);border:0;background:var(--crimson);color:#fff;font:inherit;font-weight:650;cursor:pointer}
.fr-body .mt-btn:hover{background:var(--crimson-hi)}
.fr-body .chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 10px;margin:0;padding:0;list-style:none}
.fr-body .chips li{margin:0;padding:6px 13px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--rule);font-size:.9em;color:var(--ink)}
.fr-body .chips li::before{content:"\2713";color:var(--crimson);font-weight:700;margin-right:6px}
.fr-body .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:2.4rem 0 0}
.fr-body .stat{padding:20px 16px;border-radius:18px;background:#fff;border:1px solid var(--rule);box-shadow:var(--shadow-sheet);text-align:center}
.fr-body .stat b{display:block;font-size:2em;line-height:1.15;font-weight:800;letter-spacing:-.03em;color:var(--crimson)}
.fr-body .stat span{font-size:.92em;color:var(--steel)}
.fr-body .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.fr-body .card{padding:22px}
.fr-body .card h3{font-size:1.08em;margin:0 0 .45rem}
.fr-body .card p{margin:0;font-size:.96em}
.fr-body .ico{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--coral),var(--crimson));color:#fff;margin-bottom:14px;box-shadow:0 8px 18px color-mix(in srgb,var(--crimson) 30%,transparent)}
.fr-body .ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fr-body .steps{counter-reset:st;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px 16px;padding-top:14px;list-style:none}
.fr-body .step{display:block;position:relative;padding:28px 20px 20px}
.fr-body .step::before{counter-increment:st;content:counter(st);position:absolute;top:-18px;left:18px;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--badge);color:#fff;font-weight:800;box-shadow:0 6px 14px color-mix(in srgb,var(--wine) 24%,transparent)}
.fr-body .step h3{font-size:1.05em;margin:0 0 .4rem}
.fr-body .step p{margin:0;font-size:.95em}
.fr-body .tbl{overflow-x:auto}
.fr-body .tbl table{margin:0}
.fr-body .b{display:inline-block;padding:4px 11px;border-radius:var(--r-pill);font-weight:600;font-size:.86em;white-space:nowrap;margin:0 4px 4px 0}
.fr-body .b-ok{background:color-mix(in srgb,var(--ok) 12%,#fff);color:var(--ok)}
.fr-body .b-ko{background:color-mix(in srgb,var(--ko) 10%,#fff);color:var(--ko)}
.fr-body .b-mb{background:color-mix(in srgb,var(--mb) 12%,#fff);color:var(--mb)}
.fr-body .b-na{background:var(--paper);color:var(--steel)}
.fr-body .uses{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:1.4rem 0 0;padding:0;list-style:none}
.fr-body .uses li{margin:0;padding:14px 16px 14px 46px;position:relative;border-radius:14px;background:#fff;border:1px solid var(--rule)}
.fr-body .uses li::before{content:"\2713";position:absolute;left:14px;top:13px;width:22px;height:22px;border-radius:50%;background:var(--badge);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8em;font-weight:700}
.fr-body .duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;align-items:stretch}
.fr-body .duo .card{padding:26px}
.fr-body .duo h2{text-align:left;font-size:1.45em;margin:0 0 1.2rem}
.fr-body .duo ul{margin:.8rem 0 0;padding-left:1.1rem}
.fr-body .duo li{margin:.25rem 0}
.fr-body .duo .note{text-align:left}
.fr-body pre.code{white-space:pre-wrap;word-break:break-all;padding:14px 16px;font-size:.84em;margin:.9rem 0 0}
.fr-body .plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.fr-body .plan{text-align:center;padding:26px 18px 22px;border-radius:22px}
.fr-body .plan h3{margin:0 0 .6rem;font-size:1.1em}
.fr-body .plan .price{font-size:2.1em;font-weight:800;letter-spacing:-.03em;line-height:1.1}
.fr-body .plan .per{color:var(--steel);font-size:.9em}
.fr-body .plan .vol{margin:.9rem 0 1.1rem;padding:8px;border-radius:var(--r-sm);background:var(--paper);font-size:.95em}
.fr-body .btn{text-decoration:none}
.fr-body .btn:not(.alt){background:var(--crimson);color:#fff}
.fr-body .btn.alt{background:#fff;color:var(--crimson);border-color:var(--crimson)}
.fr-body .band{display:flex;gap:20px;align-items:flex-start;padding:28px;border-radius:22px}
.fr-body .band .ico{flex:0 0 auto;margin:0}
.fr-body .band h2{text-align:left;margin:0 0 1rem;font-size:1.45em}
.fr-body .band p{margin:0}
.fr-body .official{padding:32px 28px;border-radius:22px;background:var(--night);color:var(--mist);box-shadow:var(--shadow-rose)}
.fr-body .official h2{color:#fff;margin-bottom:1.4rem}
.fr-body .official strong{color:#fff}
.fr-body .official a{color:var(--crimson-lit)}
.fr-body .official p{max-width:72ch;margin:0 auto .9rem;text-align:center}
.fr-body .doms{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:1.2rem 0 1.3rem;padding:0;list-style:none}
.fr-body .doms li{margin:0;padding:8px 14px;border-radius:var(--r-sm);background:color-mix(in srgb,#fff 8%,transparent);border:1px solid color-mix(in srgb,#fff 16%,transparent);font-size:.92em}
.fr-body .doms code{background:none;border:0;color:#fff;font-weight:600;padding:0}
.fr-body .faq{max-width:860px;margin:0 auto}
.fr-body .faq summary h3{display:inline;font-size:1em;margin:0}
.fr-body .final{padding:36px 24px;border-radius:22px;background:var(--night);color:#fff;text-align:center;box-shadow:var(--shadow-rose)}
.fr-body .final h2{color:#fff;margin-bottom:1.2rem}
.fr-body .final p{margin:0 auto 1.2rem;max-width:60ch;color:var(--mist)}
.fr-body .final a{color:#fff;font-weight:700}
.fr-body .final .mt-wrap{margin:0}
.fr-body .final .mt-card{max-width:720px;margin:0 auto}
@media (max-width:640px){.fr-body .band{flex-direction:column}.fr-body .official{padding:26px 18px}.fr-body .mt-form{flex-direction:column;align-items:stretch;border-radius:var(--r);padding:8px}.fr-body .mt-btn{width:100%}}
.prose .int-card img{margin:0}
.ls{display:flex;justify-content:center;padding:14px 0 10px}
.ls-stage{position:relative;width:176px;height:176px;perspective:720px;transform-style:preserve-3d}
.ls-head{position:absolute;inset:18px;width:auto;height:auto;transform:translateZ(0) rotateY(0deg);animation:ls-float 5.2s ease-in-out infinite}
.ls-shadow{position:absolute;left:24px;right:24px;bottom:-16px;height:26px;border-radius:50%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--wine) 32%,transparent),transparent 70%);transform:translateZ(-60px);animation:ls-shade 5.2s ease-in-out infinite}
.ls-orbit{position:absolute;inset:-8px;transform-style:preserve-3d;transform:rotateX(74deg) rotateZ(0deg);animation:ls-orbit 7s linear infinite}
.ls-o2{inset:2px;transform:rotateY(-34deg) rotateX(68deg) rotateZ(0deg);animation:ls-orbit2 11s linear infinite}
.ls-ring{position:absolute;inset:0;border-radius:50%;border:3px solid color-mix(in srgb,var(--coral) 22%,transparent);border-top-color:var(--crimson);border-right-color:color-mix(in srgb,var(--crimson) 50%,transparent);transform-style:preserve-3d}
.ls-o2 .ls-ring{border-width:2px;border-color:color-mix(in srgb,var(--coral) 16%,transparent);border-top-color:var(--coral);border-left-color:color-mix(in srgb,var(--coral) 55%,transparent)}
.ls-ring::before{content:"";position:absolute;left:50%;top:-7px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0,var(--coral-soft) 25%,var(--crimson) 70%);box-shadow:0 0 10px color-mix(in srgb,var(--coral) 60%,transparent)}
.ls-o2 .ls-ring::before{width:9px;height:9px;top:-5px;margin-left:-4.5px;background:radial-gradient(circle at 35% 30%,#fff 0,var(--coral) 35%,var(--crimson-hi) 75%);box-shadow:0 0 8px color-mix(in srgb,var(--coral) 50%,transparent)}
@keyframes ls-float{0%,100%{transform:translateZ(0) translateY(0) rotateY(-7deg)}50%{transform:translateZ(0) translateY(-7px) rotateY(7deg)}}
@keyframes ls-shade{0%,100%{transform:translateZ(-60px) scale(1);opacity:1}50%{transform:translateZ(-60px) scale(.9);opacity:.7}}
@keyframes ls-orbit{to{transform:rotateX(74deg) rotateZ(360deg)}}
@keyframes ls-orbit2{to{transform:rotateY(-34deg) rotateX(68deg) rotateZ(-360deg)}}
.prose h2 .h2-ico{display:inline-block;width:.95em;height:.95em;vertical-align:-.1em;margin-right:.4em;flex:none;filter:drop-shadow(0 3px 4px color-mix(in srgb,var(--wine) 22%,transparent))}
.prose h2 .h2-ico svg{width:100%;height:100%;display:block;overflow:visible}
.h2-ico .f1{fill:var(--crimson)}
.h2-ico .f2{fill:var(--coral)}
.h2-ico .f3{fill:var(--night-deep);opacity:.3}
.h2-ico .f4{fill:#fff;opacity:.1}
@media (max-width:1000px){
.bn-copy{max-width:min(100%,58vw)}
.bn-veil{background:linear-gradient(var(--bn-dir,90deg),color-mix(in srgb,var(--wine) 95%,transparent) 0,color-mix(in srgb,var(--wine) 90%,transparent) 42%,color-mix(in srgb,var(--wine) 72%,transparent) 56%,color-mix(in srgb,var(--wine) 26%,transparent) 68%,transparent 78%)}
}
@media (max-width:980px){
.pg-grid{grid-template-columns:1fr}
.pg-aside{position:static;margin-top:40px;max-width:480px}
.toc-nav{display:none}
}
@media (max-width:860px){
.pg-duo{grid-template-columns:1fr}
.ill-card{aspect-ratio:16/9;max-height:300px;position:static}
.ill-svg{width:38%}
.pg-contact .ill-card{display:none}
}
@media (max-width:699px){
.pbanner,.bn-tall{min-height:0;display:block;padding:22px 0 var(--bn-band,230px)}
.bn-pic{inset:auto 0 0 0;height:var(--bn-band,230px)}
.bn-pic img{width:100%;left:0;object-position:50% 10%}
.bn-about .bn-pic img{object-position:70% 30%}
.bn-tool{--bn-band:212px}
.bn-tool .bn-pic img{object-position:50% 0}
.bn-veil{background:linear-gradient(180deg,var(--wine) 0,var(--wine) calc(100% - var(--bn-band,230px)),color-mix(in srgb,var(--wine) 62%,transparent) calc(100% - var(--bn-band,230px) + 40px),transparent calc(100% - var(--bn-band,230px) + 130px))}
.bn-grid,.bn-grid-2,.bn-copy,.bn-about .bn-copy,.bn-grid-tool .bn-copy{max-width:none;grid-column:auto;padding-left:0}
.bn-grid-2{grid-template-columns:minmax(0,1fr)}
.bn-post{--bn-band:300px;padding-bottom:36px}
.bn-art,.bn-art-fig{justify-self:stretch;width:100%}
.bn-art-fig{position:relative;z-index:1;margin:14px 0 0}
.bn-art-fig .post-hero{transform:rotate(-1.5deg)}
.bn-stage{--bn-band:280px;padding-bottom:280px}
.bn-tool.bn-stage{--bn-band:212px;padding-bottom:212px}
.bn-tool .bn-pic img{object-position:50% 46%}
.bn-tool .bn-veil{background:linear-gradient(180deg,var(--wine) 0,var(--wine) calc(100% - var(--bn-band)),color-mix(in srgb,var(--wine) 40%,transparent) calc(100% - var(--bn-band) + 12px),transparent calc(100% - var(--bn-band) + 36px))}
.bn-grid-tool{grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center}
.bn-grid-tool .bn-copy{display:contents}
.bn-tool .breadcrumbs{grid-column:1/-1;margin-bottom:6px}
.bn-tool h1{grid-column:1;margin:0}
.bn-tool .lead{grid-column:1/-1;margin-top:6px}
.bn-art-tool{grid-column:2;grid-row:2;width:clamp(96px,26vw,130px);justify-self:end;margin-bottom:0}
.tool-wrap{margin-top:-30px}
.pg-lift{margin-top:-120px}
.aside-nav{display:none}
.pbanner h1{font-size:clamp(1.9rem,1.3rem + 3vw,2.5rem)}
.pbanner .post-meta{font-size:.86rem}
.pricing-quote{font-size:.95rem}
.pbanner .breadcrumbs{font-size:.82rem}
}
@media (max-width:480px){
.int-head img{width:52px;height:52px;padding:9px}
.pg-aside{max-width:none}
}
@media (prefers-reduced-motion:reduce){
.ah-ring,.ah-white{stroke-dashoffset:0;animation:none}
.ah-ball{animation:none}
.ah-scan-on{animation:none;opacity:.95}
.tool-head[data-state="checking"] .ah-scan{animation:none;transform:rotate(40deg)}
.ls-head,.ls-shadow,.ls-orbit,.ls-o2{animation:none}
}
.int-frame{display:flex;align-items:center;justify-content:center;gap:clamp(14px,3vw,30px);aspect-ratio:16/9;border-radius:6px;background:linear-gradient(160deg,var(--white),var(--blush) 70%,#F8DCE4)}
.int-frame span{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:300;line-height:1;color:var(--steel-2)}
.bn-art-fig .post-hero .int-frame img{width:clamp(64px,9vw,108px);height:auto;aspect-ratio:1;object-fit:contain;border-radius:22%;background:#fff;padding:clamp(8px,1.2vw,14px);box-shadow:var(--shadow-sheet);border:0}
.aside-nav{padding:20px 22px}
.aside-nav h4{font-size:.78rem;color:var(--steel);margin:16px 0 4px;font-weight:650;letter-spacing:.01em}
.aside-nav h4:first-child{margin-top:0}
.aside-nav ul{list-style:none;margin:0;padding:0}
.aside-nav li{margin:0}
.aside-nav a{display:block;padding:5px 0;color:var(--ink);text-decoration:none;font-size:.92rem;line-height:1.35;transition:color 160ms ease}
.aside-nav a:hover{color:var(--crimson)}
.pg-aside:has(.aside-nav){position:static}
.fr-body .steps h3::before,.prose.fr-body .step::after{content:none}
.prose.fr-body .step{padding:28px 20px 20px;margin:0}
.fr-body section>h2::after,.fr-body .final h2::after{left:calc(50% - 28px);transform-origin:center}
.fr-body .final .mt-card{max-width:520px}
.fr-body .final .mt-form{padding:4px 4px 4px 18px}
.fr-body .final .mt-input{font-size:1rem;min-height:40px}
.fr-body .final .mt-btn{min-height:40px;padding:0 18px}
