:root{--agar: #ffffff;--panel: #f4f4f1;--raise: #ffffff;--ink: #14160f;--muted: #555849;--faint: #676a5d;--line: #e6e6e2;--line-strong: #c9c9c2;--dye: #1e4ed8;--dye-deep: #173da8;--dye-soft: #e4eafa;--seal: #2e6b3a;--bad: #b3403a;--r-xs: 2px;--r-sm: 3px;--r-md: 6px;--r-lg: 10px;--r-pill: 999px;--sans: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Spline Sans Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ease: cubic-bezier(.2, .7, .2, 1);--t-micro: .2s;--t-theme: .45s;--t-enter: .6s}html[data-theme=dark]{--agar: #0f1110;--panel: #1b1e1b;--raise: #141614;--ink: #f2f2ee;--muted: #a9aca2;--faint: #8e918a;--line: #2a2e2a;--line-strong: #3a3f3a;--dye: #5b82f0;--dye-deep: #9fb6f7;--dye-soft: #1a2440;--seal: #6fbf7e;--bad: #e08a84}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--agar);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color var(--t-theme) ease,color var(--t-theme) ease}::selection{background:var(--dye);color:#fff}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}:focus-visible{outline:2px solid var(--dye);outline-offset:2px;border-radius:var(--r-xs)}img,svg,canvas{display:block;max-width:100%}.wrap{max-width:1080px;margin:0 auto;padding:0 24px}.narrow{max-width:720px;margin:0 auto}.main{min-height:60vh}.shell{display:flex;flex-direction:column;min-height:100vh}.mono,.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.kicker{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}.kicker b{color:var(--dye);font-weight:500}.label{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.muted{color:var(--muted)}.sym{font-family:var(--mono);font-weight:600;font-size:14px;color:var(--ink)}.num{color:var(--ink)}.up{color:var(--seal)}.dn{color:var(--bad)}.num.up,.num.dn{font-family:var(--mono);font-variant-numeric:tabular-nums}.r{text-align:right}.bar{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--agar) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:background-color var(--t-theme) ease,border-color var(--t-theme) ease}.bar-in{display:flex;align-items:center;gap:26px;height:64px}.brandmark{display:inline-flex;align-items:center;gap:10px}.brandmark .coin{border-radius:var(--r-sm)}.wordmark{font-weight:800;letter-spacing:.18em;font-size:14.5px;white-space:nowrap}.wordmark i{font-style:normal;color:var(--dye)}.nav{display:flex;gap:20px;margin-left:6px}.nav a{font-size:14px;font-weight:500;color:var(--muted);position:relative;padding:4px 0;transition:color var(--t-micro) ease}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--dye);transition:right .25s var(--ease)}.nav a:hover,.nav a.active{color:var(--ink)}.nav a.active:after,.nav a:hover:after{right:0}.nav-x{display:inline-flex;align-items:center;color:var(--muted);transition:color var(--t-micro) ease}.nav-x:hover{color:var(--dye)}.bar .grow{flex:1}.bar-actions{display:flex;align-items:center;gap:10px}.tbtn{width:38px;height:38px;border-radius:var(--r-pill);border:1px solid var(--line);background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;flex:none;transition:border-color var(--t-micro) ease,color var(--t-micro) ease,transform var(--t-micro) ease}.tbtn:hover{border-color:var(--ink);color:var(--ink);transform:rotate(14deg)}html[data-theme=light] .ic-moon{display:block}html[data-theme=light] .ic-sun,html[data-theme=dark] .ic-moon{display:none}html[data-theme=dark] .ic-sun{display:block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--r-pill);font-weight:600;font-size:14px;line-height:1;padding:12px 20px;border:1px solid transparent;white-space:nowrap;transition:background-color var(--t-micro) ease,color var(--t-micro) ease,border-color var(--t-micro) ease,transform var(--t-micro) ease}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-ink{background:var(--ink);color:var(--agar)}.btn-ink:hover:not(:disabled){background:var(--dye);color:#fff}.btn-dye{background:var(--dye);color:#fff}.btn-dye:hover:not(:disabled){background:var(--dye-deep)}html[data-theme=dark] .btn-dye:hover:not(:disabled){background:var(--dye);color:var(--agar)}.btn-ghost{border-color:var(--line);color:var(--ink);background:transparent}.btn-ghost:hover:not(:disabled){border-color:var(--ink)}.btn-ghost svg{transition:transform var(--t-micro) ease}.btn-ghost:hover:not(:disabled) svg{transform:translate(3px)}.btn-danger{background:transparent;border-color:var(--bad);color:var(--bad)}.btn-danger:hover:not(:disabled){background:var(--bad);color:var(--agar)}.btn.big{padding:14px 26px;font-size:15px}.btn.wide{width:100%}.arr{transition:transform var(--t-micro) ease}.btn:hover:not(:disabled) .arr{transform:translate(3px)}.textlink{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line-strong);padding-bottom:2px;transition:color var(--t-micro) ease,border-color var(--t-micro) ease}.textlink:hover{color:var(--dye);border-color:var(--dye)}.hero{padding:84px 0 44px;text-align:center}.hero .kicker{opacity:0;animation:up .7s var(--ease) .05s forwards}.hero h1{font-size:clamp(2.5rem,6.4vw,4.5rem);line-height:1.05;font-weight:800;letter-spacing:-.02em;margin:22px auto 20px;max-width:15ch;text-wrap:balance}.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.hero h1 .ln span{display:block;transform:translateY(112%);animation:rise .8s var(--ease) forwards}.hero h1 .ln:nth-child(2) span{animation-delay:.18s;color:var(--dye)}.hero .cur{display:inline-block;width:.5em;height:.82em;vertical-align:-.06em;background:var(--ink);margin-left:.1em;animation:blink 1.1s steps(2,start) infinite}.hero .sub{color:var(--muted);max-width:54ch;margin:0 auto 30px;font-size:17px;line-height:1.65;opacity:0;animation:up .7s var(--ease) .45s forwards}.hero .sub b{color:var(--ink);font-weight:600}.cta-row{display:flex;gap:14px;justify-content:center;align-items:center;flex-wrap:wrap;opacity:0;animation:up .7s var(--ease) .62s forwards}.hero-quote{display:inline-flex;align-items:baseline;gap:18px;flex-wrap:wrap;justify-content:center;margin-top:30px;font-family:var(--mono);font-size:13px;color:var(--faint);opacity:0;animation:up .7s var(--ease) .78s forwards}.hero-quote .t{color:var(--dye);font-weight:600;font-variant-numeric:tabular-nums;transition:color var(--t-theme) ease}.fig{max-width:560px;margin:54px auto 0;opacity:0;animation:fade .9s var(--ease) .85s forwards}.fig-frame{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);padding:10px;transition:border-color var(--t-theme) ease,background-color var(--t-theme) ease}.fig-frame canvas{width:100%;aspect-ratio:1 / 1;border-radius:var(--r-md)}.fig figcaption{font-family:var(--mono);font-size:12px;color:var(--faint);margin-top:12px;display:flex;flex-wrap:wrap;gap:4px 18px;justify-content:space-between}.fig figcaption .n{color:var(--dye)}section{padding:80px 0;border-top:1px solid var(--line)}.snum{font-family:var(--mono);font-size:12px;color:var(--dye);letter-spacing:.14em}h2{font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:800;letter-spacing:-.015em;line-height:1.15;margin:14px 0 20px;text-wrap:balance}h2 .dim{color:var(--muted)}.sub{color:var(--muted);font-size:16.5px;line-height:1.65;max-width:68ch}.prose p{color:var(--muted);margin-bottom:18px;max-width:68ch}.prose p b{color:var(--ink);font-weight:600}.prose p .dye{color:var(--dye);font-weight:600}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.stat{background:var(--agar);padding:26px 22px;transition:background-color var(--t-theme) ease;min-width:0}.stat .v{font-family:var(--mono);font-size:34px;font-weight:600;color:var(--dye);font-variant-numeric:tabular-nums;letter-spacing:-.01em;overflow-wrap:anywhere}.stat .v .dims{color:var(--faint)}.stat .l{font-size:13px;color:var(--muted);margin-top:6px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.step{border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;background:var(--agar);transition:border-color .25s ease,transform .25s var(--ease)}.step:hover{border-color:var(--ink);transform:translateY(-3px)}.step .sn{font-family:var(--mono);font-size:12px;color:var(--dye);letter-spacing:.14em}.step h3{font-size:19px;font-weight:700;margin:10px 0}.step p{font-size:14.5px;color:var(--muted);line-height:1.6}.step .mono-note{display:block;margin-top:14px;font-family:var(--mono);font-size:12px;color:var(--faint);letter-spacing:.02em;overflow-wrap:anywhere}.tbl-card{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--agar);transition:border-color var(--t-theme) ease}.tscroll{overflow-x:auto;scrollbar-width:thin}table.tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}.tbl thead th{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-weight:500;padding:12px 18px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl tbody td{padding:13px 18px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl tbody tr:last-child td{border-bottom:none}.tbl tbody tr{transition:background-color .6s ease}.tbl tbody tr:hover,.tbl tbody tr.flash{background:var(--dye-soft)}.tbl tbody tr.clickable{cursor:pointer}.tbl tbody tr.sel{background:var(--dye-soft);box-shadow:inset 2px 0 0 var(--dye)}.tbl .kind{color:var(--muted);font-size:13px}.tbl .route{font-family:var(--mono);font-size:12.5px;color:var(--muted)}.tbl a.rowlink{color:var(--dye);font-weight:600;font-size:13.5px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.tbl a.rowlink:hover{text-decoration:underline;text-underline-offset:3px}.card{display:flex;flex-direction:column;gap:12px;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;background:var(--agar);transition:border-color .25s ease,transform .25s var(--ease)}a.card:hover{border-color:var(--ink);transform:translateY(-3px)}.trow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.card>.trow:first-of-type{border-top:none}.who{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.02em}.who b{color:var(--ink);font-weight:600;display:block;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.term-btn{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:var(--r-pill);padding:9px 16px;font-size:13px;font-weight:600;color:var(--ink);transition:border-color var(--t-micro) ease,background-color var(--t-micro) ease,color var(--t-micro) ease}a.card:hover .term-btn{background:var(--dye);border-color:var(--dye);color:#fff}.rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 24px 18px;scrollbar-width:thin;cursor:grab}.rail.dragging{cursor:grabbing;scroll-snap-type:none}.rail>*{scroll-snap-align:start}.rail-hint{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);text-align:center;margin-top:10px}.chips{display:inline-flex;gap:8px;flex-wrap:wrap}.chip{font-family:var(--mono);font-size:12px;letter-spacing:.04em;padding:7px 13px;border:1px solid var(--line);border-radius:var(--r-pill);color:var(--muted);background:transparent;transition:border-color var(--t-micro) ease,color var(--t-micro) ease,background-color var(--t-micro) ease}.chip:hover{border-color:var(--ink);color:var(--ink)}.chip.on{background:var(--ink);border-color:var(--ink);color:var(--agar)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-pill);padding:3px;gap:2px;background:var(--agar)}.seg button{font-size:13px;font-weight:600;padding:8px 16px;border-radius:var(--r-pill);color:var(--muted);display:inline-flex;align-items:center;gap:6px;transition:background-color var(--t-micro) ease,color var(--t-micro) ease}.seg button:hover{color:var(--ink)}.seg button.active{background:var(--ink);color:var(--agar)}.panel{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--agar);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--line)}.panel-body{padding:18px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.input{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:15px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;min-width:0;width:100%;transition:border-color var(--t-micro) ease,background-color var(--t-theme) ease}.input:focus{outline:none;border-color:var(--dye);background:var(--agar)}.input::placeholder{color:var(--faint)}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--faint) 50%),linear-gradient(135deg,var(--faint) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:34px;cursor:pointer}.kv{display:flex;justify-content:space-between;align-items:baseline;gap:14px;min-width:0}.kv .num{overflow-wrap:anywhere}.divider{border:none;border-top:1px solid var(--line);margin:6px 0}.notice{font-size:13.5px;line-height:1.6;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 16px;overflow-wrap:anywhere}.notice.warn{color:var(--bad);border-color:var(--bad);background:transparent}.stat-cell{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;background:var(--agar);min-width:0}.stat-big{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.page{max-width:1080px;margin:0 auto;padding:56px 24px 90px;width:100%}.page-head{margin-bottom:30px}.page-head h1{font-size:clamp(2rem,4.4vw,3rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:12px 0 14px}.page-head .sub{font-size:16px}.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.meter{height:4px;border-radius:var(--r-xs);background:var(--line);overflow:hidden}.meter i{display:block;height:100%;background:var(--seal);border-radius:var(--r-xs);transition:width .6s var(--ease),background-color var(--t-micro) ease}.meter.bad i{background:var(--bad)}.wbar{display:flex;height:6px;border-radius:var(--r-xs);overflow:hidden;background:var(--line);flex:1;min-width:60px}.wbar i{display:block;height:100%;transition:width .9s var(--ease)}.spark{flex:none}.slip{font-family:var(--mono);font-size:12.5px;line-height:2;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;overflow-x:auto;white-space:pre;transition:background-color var(--t-theme) ease,border-color var(--t-theme) ease}.slip .fl{display:block;opacity:0;animation:up .5s var(--ease) forwards}.slip .ok{color:var(--seal)}.slip .usd{color:var(--ink)}.slip .fin{color:var(--dye);font-weight:600}.faq{display:flex;flex-direction:column;gap:10px;max-width:760px;margin:0 auto}.faq-item{border:1px solid var(--line);border-radius:var(--r-md);background:var(--agar);overflow:hidden;transition:border-color var(--t-micro) ease}.faq-item:hover{border-color:var(--line-strong)}.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;font-size:15.5px;font-weight:600;padding:17px 20px;color:var(--ink)}.faq-q .pm{position:relative;width:12px;height:12px;flex:none}.faq-q .pm i{position:absolute;top:5px;right:0;bottom:5px;left:0;height:2px;background:var(--faint);border-radius:var(--r-xs);transition:transform .25s var(--ease),background-color var(--t-micro) ease}.faq-q .pm i:last-child{transform:rotate(90deg)}.faq-q.open .pm i:first-child{background:var(--dye)}.faq-q.open .pm i:last-child{transform:rotate(0);background:var(--dye)}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.faq-a.open{grid-template-rows:1fr}.faq-a>div{overflow:hidden}.faq-a p{font-size:14.5px;line-height:1.65;color:var(--muted);padding:0 20px 18px}.final{text-align:center}.final .status{margin-top:34px;font-family:var(--mono);font-size:12.5px;color:var(--faint);display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.final .status .dot{width:7px;height:7px;border-radius:var(--r-pill);background:var(--seal);display:inline-block;margin-right:7px;position:relative;top:1px}.foot{border-top:1px solid var(--line);padding:52px 0 120px;color:var(--muted);background:var(--agar);transition:background-color var(--t-theme) ease}.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}.fgrid h5{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin-bottom:14px;font-weight:500}.fgrid a{display:block;font-size:14px;padding:4px 0;color:var(--muted);transition:color var(--t-micro) ease}.fgrid a:hover{color:var(--dye)}.foot .desc{font-size:13.5px;line-height:1.6;margin-top:12px;max-width:34ch}.fmeta{margin-top:44px;font-family:var(--mono);font-size:12px;color:var(--faint);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:70;background:color-mix(in srgb,var(--agar) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);display:none;transition:background-color var(--t-theme) ease,border-color var(--t-theme) ease}.tabbar-in{display:flex;justify-content:space-around;gap:2px;overflow-x:auto;scrollbar-width:none;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.tabbar-in a{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);padding:8px 7px;white-space:nowrap;border-radius:var(--r-sm);transition:color var(--t-micro) ease,background-color var(--t-micro) ease}.tabbar-in a.active{color:var(--dye);background:var(--dye-soft)}.scrollprog{position:fixed;top:0;left:0;right:0;height:2px;background:var(--dye);transform-origin:0 50%;z-index:80}.risk{font-size:12.5px;line-height:1.6;color:var(--faint);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 16px}.risk b{color:var(--muted)}.rv{opacity:0;transform:translateY(16px);transition:opacity var(--t-enter) var(--ease),transform var(--t-enter) var(--ease)}.rv.on{opacity:1;transform:none}.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}.stagger.on>*{animation:up .55s var(--ease) both}.stagger.on>*:nth-child(2){animation-delay:.08s}.stagger.on>*:nth-child(3){animation-delay:.16s}.stagger.on>*:nth-child(4){animation-delay:.24s}.stagger.on>*:nth-child(5){animation-delay:.32s}.stagger.on>*:nth-child(6){animation-delay:.4s}.stagger.on>*:nth-child(7){animation-delay:.48s}.stagger.on>*:nth-child(8){animation-delay:.56s}.draw{stroke-dasharray:1200;stroke-dashoffset:1200;animation:draw 1.6s var(--ease) forwards}@keyframes draw{to{stroke-dashoffset:0}}@keyframes up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes rise{to{transform:none}}@keyframes blink{50%{opacity:0}}@media (max-width: 900px){.nav{display:none}.tabbar{display:block}.stats{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr 1fr}.foot{padding-bottom:130px}section{padding:60px 0}.hero{padding:56px 0 30px}.page{padding:40px 20px 110px}.hero-quote{gap:8px 14px}}@media (max-width: 480px){.stats{grid-template-columns:1fr}.stat .v{font-size:28px}.hero .sub{font-size:15.5px}.fig-frame{padding:7px}.bar-in{gap:12px}.wordmark{font-size:13px;letter-spacing:.14em}.fgrid{grid-template-columns:1fr;gap:24px}.tscroll table.tbl{min-width:560px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.rv{opacity:1;transform:none}.hero h1 .ln span{transform:none}.hero .kicker,.hero .sub,.cta-row,.hero-quote,.fig{opacity:1}}
