:root{--bg:#ebe8e3;--bg-glass:#ebe8e3d1;--ink:#0e0e0e;--muted:#4a4842;--faint:#8a857c;--line:#c9c4bb;--rule:#0e0e0e;--orange:#ff5a1f;--onorange:#fff;--panel:#e2ded8;--vx:#4b49aa;--sh:#ff5a1f;--tools:#1f7a5a;--apps:#c9962a;--font:"Inter Tight", "Helvetica Neue", Arial, sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d0d0e;--bg-glass:#0d0d0ecc;--ink:#ece9e4;--muted:#a29d94;--faint:#6d6961;--line:#262628;--rule:#ece9e4;--panel:#161618;color-scheme:dark}}:root[data-theme=dark]{--bg:#0d0d0e;--bg-glass:#0d0d0ecc;--ink:#ece9e4;--muted:#a29d94;--faint:#6d6961;--line:#262628;--rule:#ece9e4;--panel:#161618;color-scheme:dark}:root[data-theme=light]{color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}a{color:inherit}:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:4px}.wrap{max-width:1240px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}.bar-top{top:env(safe-area-inset-top,0px);z-index:20;background:var(--bg-glass);backdrop-filter:blur(14px);border-bottom:1px solid #0000;transition:border-color .3s;position:sticky}.bar-top.scrolled{border-bottom-color:var(--line)}.bar-top nav{justify-content:space-between;align-items:center;gap:16px;height:68px;font-size:15px;font-weight:500;transition:height .3s;display:flex}.bar-top.scrolled nav{height:58px}.wm{letter-spacing:-.03em;align-items:center;gap:9px;font-size:21px;font-weight:700;text-decoration:none;display:flex}.wm svg{width:21px;height:21px;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.wm:hover svg{transform:translate(2px,-2px)}.navr{align-items:center;gap:22px;display:flex}.links{gap:22px;display:flex}.links a{color:var(--muted);text-decoration:none}.links a:hover,.links a[aria-current=page]{color:var(--ink)}.iconbtn{border:1px solid var(--line);width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;transition:transform .3s;display:grid}.iconbtn:hover{transform:rotate(-20deg)}.iconbtn svg{width:17px;height:17px}.menu{display:none}.drawer{border-top:1px solid var(--line);padding-block:8px 18px}.drawer a{letter-spacing:-.02em;border-bottom:1px solid var(--line);padding-block:12px;font-size:20px;font-weight:600;text-decoration:none;display:block}.btn{height:44px;font:600 15px var(--font);cursor:pointer;border:1px solid var(--rule);color:var(--ink);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:10px;padding-inline:20px;text-decoration:none;transition:transform .25s,background .25s,color .25s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--orange);border-color:var(--orange);color:var(--onorange)}.btn .arr{transition:transform .3s cubic-bezier(.2,.8,.2,1)}.btn:hover .arr{transform:translate(3px,-3px)}.btn.sm{height:38px;padding-inline:16px;font-size:14px}.lbl{text-transform:uppercase;letter-spacing:.1em;color:var(--orange);font-size:12px;font-weight:600}.foot{border-top:2px solid var(--rule);margin-top:clamp(64px,9vw,120px);padding-block:40px 32px}.fgrid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;display:grid}.fgrid h3{text-transform:uppercase;letter-spacing:.1em;color:var(--faint);margin:0 0 14px;font-size:12px;font-weight:600}.fgrid p,.fgrid li{color:var(--muted);margin:0;font-size:15px;line-height:1.7}.fgrid ul{margin:0;padding:0;list-style:none}.fgrid a{text-decoration:none}.fgrid a:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.fgrid .brand p{max-width:30ch;margin-top:12px}.mono{font-variant-numeric:tabular-nums;letter-spacing:.02em}.fbottom{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:48px;display:flex}.fbottom small{color:var(--faint);max-width:46ch;font-size:13px;line-height:1.6}.sign{letter-spacing:-.045em;font-size:clamp(40px,8vw,96px);font-weight:700;line-height:.9}.sign span{color:var(--orange)}@keyframes rise{0%{transform:translateY(105%)}to{transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width<=980px){.links{display:none}.menu{display:grid}}@media (width<=900px){.fgrid{grid-template-columns:1fr 1fr}}@media (width<=600px){.navr .btn.sm{display:none}.fgrid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before{transition:none!important;animation:none!important}}.fgrid{grid-template-columns:1.4fr repeat(4,1fr)}@media (width<=1000px){.fgrid{grid-template-columns:1fr 1fr 1fr}.fgrid .brand{grid-column:1/-1}}@media (width<=600px){.fgrid{grid-template-columns:1fr 1fr}}.sample{color:var(--faint);margin-top:16px;font-size:13px}.crumb{color:var(--faint);padding-top:28px;font-size:14px}.crumb a{text-decoration:none}.crumb a:hover{color:var(--ink)}.ph{border-bottom:2px solid var(--rule);grid-template-columns:1fr minmax(260px,380px);align-items:end;gap:32px;padding-block:clamp(28px,6vw,72px) 28px;display:grid}.ph h1{letter-spacing:-.045em;overflow-wrap:anywhere;margin:0;font-size:clamp(56px,12vw,156px);font-weight:700;line-height:.9}.ph h1 .line{padding-bottom:.04em;display:block;overflow:hidden}.ph h1 .line>span{animation:1s cubic-bezier(.2,.8,.2,1) both rise;display:inline-block}.ph .side{flex-direction:column;gap:16px;min-width:0;animation:.8s .5s both fade;display:flex}.ph p{color:var(--muted);margin:0;font-size:17px;line-height:1.5}.pill{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--rule);border-radius:99px;align-self:flex-start;padding:6px 10px;font-size:11px;font-weight:700}.pill.hot{background:var(--orange);border-color:var(--orange);color:var(--onorange)}.sec{padding-block:clamp(56px,8vw,96px) 0}.sec h2{letter-spacing:-.03em;text-wrap:balance;max-width:24ch;margin:12px 0 0;font-size:clamp(26px,3vw,38px);font-weight:700;line-height:1.08}.sec .lead{color:var(--muted);max-width:62ch;margin:14px 0 0;font-size:17px;line-height:1.55}.rowlist{border-top:1px solid var(--line);margin:28px 0 0;padding:0;list-style:none}.rowlist li{border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,.7fr) 1.6fr;align-items:baseline;gap:20px;padding-block:18px;display:grid}.rowlist b{letter-spacing:-.02em;font-size:clamp(18px,1.8vw,22px);font-weight:700}.rowlist span{color:var(--muted);min-width:0;font-size:15px;line-height:1.5}.steps{counter-reset:s;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,32px);margin:28px 0 0;padding:0;list-style:none;display:grid}.steps li{border-top:2px solid var(--rule);counter-increment:s;min-width:0;padding-top:16px}.steps li:before{content:counter(s);color:var(--orange);font-variant-numeric:tabular-nums;margin-bottom:10px;font-size:14px;font-weight:600;display:block}.steps b{letter-spacing:-.02em;font-size:clamp(19px,1.9vw,23px);line-height:1.2;display:block}.steps p{color:var(--muted);margin:8px 0 0;font-size:15px;line-height:1.5}.nums{grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,40px);margin-top:28px;display:grid}.nums div{border-top:2px solid var(--rule);min-width:0;padding-top:16px}.nums b{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(48px,7vw,96px);font-weight:700;line-height:.9;display:block}.nums p{color:var(--muted);margin:10px 0 0;font-size:15px}.box{background:var(--panel);border-radius:24px;padding:clamp(24px,4vw,48px)}.form{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.form input{border:1px solid var(--line);background:var(--bg);min-width:0;height:44px;color:var(--ink);font:500 15px var(--font);border-radius:999px;flex:220px;padding-inline:18px}.form+.msg{color:var(--muted);margin:12px 0 0;font-size:14px}.acts{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=900px){.ph,.steps{grid-template-columns:1fr}}@media (width<=600px){.nums{gap:12px}.nums b{font-size:clamp(34px,11vw,48px)}.nums p{font-size:13px;line-height:1.35}.rowlist li{grid-template-columns:1fr;gap:4px}}.fn-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:24px;display:flex}.fn-search{flex:280px;max-width:420px;position:relative}.fn-search input{border:1px solid var(--line);width:100%;height:46px;color:var(--ink);font:500 15px var(--font);background:0 0;border-radius:999px;padding-inline:44px 18px}.fn-search svg{width:17px;height:17px;color:var(--faint);position:absolute;top:50%;left:16px;transform:translateY(-50%)}.fn-count{color:var(--faint);font-size:14px}.boxes{grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,20px);display:grid}.sbox{border:1px solid var(--line);border-radius:22px;flex-direction:column;min-width:0;padding:22px 22px 10px;transition:border-color .25s,transform .3s cubic-bezier(.2,.8,.2,1);display:flex}.sbox:hover{border-color:var(--ink)}.sbox-head{justify-content:space-between;align-items:baseline;gap:10px;text-decoration:none;display:flex}.sbox-head:hover h2{color:var(--orange)}.sbox h2{transition:color .2s}.sbox-all{border-top:1px solid var(--line);justify-content:space-between;margin-top:auto;padding-block:14px 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.sbox-all:hover{color:var(--orange)}.sbox ul{margin-bottom:4px}.sbox h2{letter-spacing:-.03em;margin:0;font-size:24px;font-weight:700}.sbox .cnt{color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.sbox .about{color:var(--muted);margin:6px 0 14px;font-size:14.5px;line-height:1.45}.sbox ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.sbox li a{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:12px;padding-block:12px;text-decoration:none;display:grid}.sbox li:last-child a{border-bottom:0}.sbox li a span{letter-spacing:-.01em;font-size:15.5px;font-weight:600;line-height:1.35;transition:color .2s}.sbox li a em{color:var(--faint);white-space:nowrap;font-size:12px;font-style:normal}.sbox li a:hover span{color:var(--orange)}.kind{letter-spacing:.06em;text-transform:uppercase;color:var(--orange);margin-right:6px;font-size:11px;font-weight:700;display:inline-block}.fn-empty{color:var(--faint);padding-block:24px}@media (width<=1000px){.boxes{grid-template-columns:1fr 1fr}}@media (width<=640px){.boxes{grid-template-columns:1fr}}.reader{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:clamp(28px,5vw,72px);padding-top:28px;display:grid}.tree{top:calc(env(safe-area-inset-top,0px) + 84px);max-height:calc(100vh - 110px);padding-right:6px;font-size:14.5px;position:sticky;overflow:auto}.tree>a{margin-bottom:12px;font-weight:700;text-decoration:none;display:block}.tree details{border-top:1px solid var(--line)}.tree summary{cursor:pointer;justify-content:space-between;padding-block:10px;font-weight:600;list-style:none;display:flex}.tree summary::-webkit-details-marker{display:none}.tree summary:after{content:"+";color:var(--faint)}.tree details[open] summary:after{content:"−"}.tree ul{border-left:1px solid var(--line);margin:0 0 10px;padding:0 0 0 12px;list-style:none}.tree li a{color:var(--muted);padding:6px 0 6px 10px;line-height:1.35;text-decoration:none;display:block}.tree li a:hover{color:var(--ink)}.tree li a[aria-current=page]{color:var(--orange);border-left:2px solid var(--orange);margin-left:-1px;padding-left:9px;font-weight:600}.art{min-width:0;max-width:70ch}.art .bc{color:var(--faint);font-size:14px}.art .bc a{text-decoration:none}.art .bc a:hover{color:var(--ink)}.art h1{letter-spacing:-.035em;text-wrap:balance;margin:14px 0 0;font-size:clamp(34px,4.6vw,58px);font-weight:700;line-height:1.02}.art .meta{color:var(--faint);flex-wrap:wrap;gap:8px 16px;margin-top:16px;font-size:14px;display:flex}.art .meta a{color:var(--ink)}.art .flag{background:var(--panel);color:var(--muted);border-radius:14px;margin-top:22px;padding:12px 16px;font-size:14px}.art .body{margin-top:28px;font-size:18px;line-height:1.65}.art .body h2{letter-spacing:-.025em;margin:40px 0 0;font-size:26px;line-height:1.15}.art .body p{margin:16px 0 0}.art .body ol{margin:16px 0 0;padding-left:22px}.art .body li{margin-top:10px}.art .body code{background:var(--panel);border-radius:6px;padding:2px 6px;font-size:.88em}.more{border-top:2px solid var(--rule);margin-top:56px;padding-top:18px}.more h2{text-transform:uppercase;letter-spacing:.1em;color:var(--faint);margin:0;font-size:13px;font-weight:600}.more ul{margin:10px 0 0;padding:0;list-style:none}.more li a{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding-block:14px;font-weight:600;text-decoration:none;display:flex}.more li a:hover{color:var(--orange)}.tree-m{display:none}@media (width<=900px){.reader{grid-template-columns:1fr}.tree{display:none}.tree-m{border:1px solid var(--line);border-radius:16px;padding:4px 16px;display:block}.tree-m>summary{cursor:pointer;padding-block:12px;font-weight:600}.tree-m .tree{max-height:none;padding-bottom:10px;display:block;position:static}}.legal{max-width:72ch}.legal h2{letter-spacing:-.02em;margin:40px 0 0;font-size:24px}.legal p,.legal li{color:var(--muted);font-size:16.5px;line-height:1.65}.legal p{margin:12px 0 0}.legal ul{margin:12px 0 0;padding-left:20px}.legal strong{color:var(--ink)}.legal .upd{color:var(--faint);margin-top:18px;font-size:14px}.tree summary a{color:inherit;flex:1;text-decoration:none}.tree summary a[aria-current=page]{color:var(--orange)}.tree .tc{color:var(--faint);font-variant-numeric:tabular-nums;margin-left:auto;margin-right:10px;font-size:12px;font-weight:500}.lead-s{color:var(--muted);margin:14px 0 0;font-size:17px;line-height:1.5}.slist{border-top:2px solid var(--rule);margin:28px 0 0;padding:0;list-style:none}.slist a{border-bottom:1px solid var(--line);grid-template-columns:110px 1fr 64px;align-items:baseline;gap:16px;padding-block:18px;text-decoration:none;display:grid}.slist .k{letter-spacing:.06em;text-transform:uppercase;color:var(--orange);font-size:11px;font-weight:700}.slist .tt{letter-spacing:-.015em;font-size:clamp(18px,1.8vw,21px);font-weight:600;line-height:1.3;transition:color .2s}.slist .m{color:var(--faint);text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.slist a:hover .tt{color:var(--orange)}.pnav{grid-template-columns:1fr 1fr;gap:14px;margin-top:48px;display:grid}.pn{border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:6px;padding:16px 18px;font-weight:600;line-height:1.3;text-decoration:none;transition:border-color .2s;display:flex}.pn:hover{border-color:var(--ink)}.pn small{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-size:12px;font-weight:600}.pn.nx{text-align:right;grid-column:2}@media (width<=600px){.slist a{grid-template-columns:1fr auto}.slist .k{grid-column:1/-1}.pnav{grid-template-columns:1fr}.pn.nx{grid-column:1}}.state{letter-spacing:.06em;text-transform:uppercase;border:1px dashed var(--orange);color:var(--orange);border-radius:99px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:700}.cover{aspect-ratio:16/9;background:var(--panel);border-radius:20px;margin-top:24px;overflow:hidden}.cover img{object-fit:cover;width:100%;height:100%;display:block}.cover.typo{aspect-ratio:auto;justify-content:space-between;align-items:flex-end;height:clamp(84px,12vw,128px);padding:clamp(16px,3vw,28px);display:flex}.cover.typo span{text-transform:uppercase;letter-spacing:.1em;color:var(--orange);font-size:13px;font-weight:600}.cover.typo svg{width:clamp(36px,5vw,56px);height:auto;color:var(--ink)}.art .body img{border-radius:14px;max-width:100%;height:auto}.slist .thumb{aspect-ratio:4/3;background:var(--panel);border-radius:10px;width:96px;overflow:hidden}.slist .thumb img{object-fit:cover;width:100%;height:100%;display:block}.slist a.has-thumb{grid-template-columns:110px 96px 1fr 64px}@media (width<=600px){.slist .thumb{display:none}.slist a.has-thumb{grid-template-columns:1fr auto}}.sbox .empty{color:var(--faint);border-bottom:0;padding-block:14px;font-size:14.5px}.form+.msg:empty{display:none}.tree .soon{color:var(--faint);padding:6px 0 6px 10px;font-size:13.5px;display:block}.art .orig{color:var(--faint);margin-top:32px;font-size:14px}.art .orig a{color:var(--ink)}.art .body hr{border:0;border-top:1px solid var(--line);margin:36px 0}.art .body h3{letter-spacing:-.02em;margin:36px 0 0;font-size:21px;line-height:1.2}.art .body ul{margin:16px 0 0;padding-left:22px}.art .body em{color:var(--muted)}
