.hero{isolation:isolate;text-align:center;padding-block:88px 72px;position:relative}.hero:before{content:"";z-index:-1;pointer-events:none;background-size:40px 40px;background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);opacity:.15;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 40%,#0000 100%);mask-image:radial-gradient(circle,#000 40%,#0000 100%)}.edition{max-width:none;font-family:var(--font-mono);color:var(--text-faint);flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:0 auto 36px;font-size:12px;display:inline-flex}.edition span+span:before{content:"·";color:var(--text-ghost);margin-right:14px}.wm{font-family:var(--font-mono);letter-spacing:-.03em;align-items:center;gap:.28em;font-size:clamp(38px,8.4vw,92px);font-weight:700;line-height:1;display:inline-flex}.wm .mark{width:.86em;height:.86em;box-shadow:4px 4px 0 var(--ink)}.wm .more{color:var(--text-muted)}.slogan{letter-spacing:-.01em;max-width:none;color:var(--text);margin:28px auto 0;font-size:clamp(22px,3vw,30px);font-weight:300;line-height:1.3}.what{max-width:52ch;color:var(--text-muted);text-wrap:balance;margin:14px auto 0;font-size:17px}.what strong{color:var(--text);font-weight:500}.qbox{text-align:left;background:var(--code-bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);max-width:780px;box-shadow:var(--shadow-lg);align-items:center;gap:14px;margin:44px auto 0;padding:0 16px 0 20px;transition:border-color .15s;display:flex}.qbox:focus-within{border-color:var(--accent-yellow)}.qbox svg{color:var(--text-faint);flex:none}.qbox input{min-width:0;color:var(--text);line-height:normal;font-family:var(--font-sans);background:0 0;border:0;outline:none;flex:1;padding:22px 0;font-size:19px}.qbox input::placeholder{font-family:var(--font-hand);letter-spacing:.02em;color:var(--text-ghost);font-size:24px}.qbox input::-webkit-search-cancel-button{display:none}.qbox .keys{font-family:var(--font-mono);color:var(--text-ghost);align-items:center;gap:6px;font-size:11px;display:flex}.quick{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:780px;margin:22px auto 0;display:flex}.quick .label{color:var(--text-faint);margin-right:4px}.hero-foot{max-width:none;font-family:var(--font-mono);color:var(--text-faint);flex-wrap:wrap;justify-content:center;gap:6px 22px;margin:40px auto 0;font-size:12px;display:flex}.hero-foot a{color:var(--text-muted)}.hero-foot a:hover{color:var(--accent-pink)}.sec-label{margin-bottom:12px;display:block}.sec h2{letter-spacing:-.01em;font-size:clamp(24px,3vw,30px);font-weight:600;line-height:1.25}.sec-sub{color:var(--text-muted);margin:12px 0 0}.start{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:40px 72px;display:grid}.start>*{min-width:0}.start-head .btn-sketch{margin-top:28px}.start-head .note{max-width:26ch;margin-top:22px;display:block}.routes{border-top:1px solid var(--border-2);margin:0;padding:0;list-style:none}.routes li{border-bottom:1px dashed var(--border)}.routes a{color:var(--text);grid-template-columns:34px minmax(0,1fr);gap:4px 16px;padding:20px 4px 20px 0;display:grid}.routes a:hover{color:var(--text)}.routes .lt{width:28px;height:28px;font-family:var(--font-mono);background:var(--code-bg);border:1px solid var(--border-2);border-radius:var(--radius-sm);grid-row:1/span 2;place-items:center;font-size:13px;font-weight:700;transition:background .12s,color .12s,border-color .12s;display:grid}.routes .lead-line .t{font-size:17px;font-weight:500;transition:color .12s}.routes .lead-line .d{color:var(--text-muted);font-size:12.5px}.routes .lead-line .d b{color:var(--text-ghost);margin:0 6px;font-weight:400}.routes small{color:var(--text-faint);grid-column:2;font-size:14px}.routes a:hover .t{color:var(--accent-pink)}.routes a:hover .lt{color:var(--ink);background:var(--accent-yellow);border-color:var(--accent-yellow)}.ix-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px 48px;margin-bottom:56px;display:grid}.ix-head>*{min-width:0}.ix-legend{text-align:right;font-family:var(--font-mono);color:var(--text-faint);flex-direction:column;gap:4px;margin:0;font-size:12px;display:flex}.ix-legend em{color:var(--accent-yellow);font-style:normal}.ix-jump{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap;grid-column:1/-1;margin-top:8px;display:flex}.ix-jump a{font-family:var(--font-mono);color:var(--text-muted);align-items:baseline;gap:8px;margin-right:18px;padding:12px 18px 12px 0;font-size:13px;display:inline-flex}.ix-jump a b{color:var(--text-faint);font-weight:500}.ix-jump a:hover,.ix-jump a:hover b{color:var(--accent-pink)}.ix-part{border-top:1px solid var(--border);grid-template-columns:250px minmax(0,1fr);gap:32px 56px;padding-block:52px;display:grid}.ix-part:first-of-type{border-top:0;padding-top:8px}.ix-part>*{min-width:0}.ix-ph .in{top:calc(var(--header-h) + 28px);position:sticky}.ix-ph .num{font-family:var(--font-mono);letter-spacing:-.04em;color:var(--border-2);margin-bottom:18px;font-size:64px;font-weight:700;line-height:.9;display:block}.ix-ph .num:before{content:attr(data-num)}.ix-ph h3{letter-spacing:-.01em;font-size:26px;font-weight:600;line-height:1.2}.ix-ph p{max-width:30ch;color:var(--text-muted);margin:10px 0 16px;font-size:14.5px}.ix-ph .count{font-family:var(--font-mono);color:var(--text-faint);font-size:12px}.ix-chs{columns:2;column-gap:56px}.ix-ch{break-inside:avoid;padding-bottom:40px;display:block}.ix-ch h4 a{color:var(--text);border-bottom:1px solid var(--border-2);align-items:baseline;margin-bottom:6px;padding:0 0 10px;display:flex}.ix-ch h4 .n{width:30px;font-family:var(--font-mono);color:var(--text-faint);flex:none;font-size:13px;font-weight:500}.ix-ch h4 .t{font-size:17.5px;font-weight:600;line-height:1.35;transition:color .12s}.ix-ch h4 .d{color:var(--text-muted)}.ix-ch h4 a:hover{color:var(--text)}.ix-ch h4 a:hover .t{color:var(--accent-pink)}.ix-ch ol{margin:0;padding:0;list-style:none}.ix-ch li a{color:var(--text-2);border-radius:var(--radius-sm);align-items:baseline;padding:6px 0;display:flex}.ix-ch li .n{width:30px;font-family:var(--font-mono);color:var(--text-faint);font-variant-numeric:tabular-nums;flex:none;font-size:11.5px}.ix-ch li .t{font-size:15px;line-height:1.45;transition:color .12s}.ix-ch li a:hover{color:var(--text)}.ix-ch li a:hover .t{color:var(--accent-pink)}.ix-ch li a:hover>i{background-image:radial-gradient(circle, var(--text-faint) .9px, transparent 1.2px)}.ix-ch li a:hover .d{color:var(--text)}.ix-ch .note{margin:14px 0 0 30px;font-size:18px}.ix-colophon{border-top:1px dashed var(--border);max-width:none;font-family:var(--font-mono);color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;gap:10px 24px;margin-top:8px;padding-top:20px;font-size:12px;display:flex}.ess{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px 0;display:grid}.ess>*{min-width:0}.ess-main{padding-right:64px}.ess-meta{font-family:var(--font-mono);color:var(--text-faint);flex-wrap:wrap;gap:6px 16px;margin:0 0 16px;font-size:12px;display:flex}.ess-main h2 a{color:var(--text)}.ess-main h2 a:hover{color:var(--accent-pink)}.ess-main .ex{max-width:58ch;color:var(--text-2);margin:18px 0 22px;font-size:17px;font-weight:300}.ess-prev{margin-top:44px}.ess-prev .label{color:var(--text-faint);margin-bottom:10px;display:block}.ess-prev ul{margin:0;padding:0;list-style:none}.ess-prev a{color:var(--text-2);border-top:1px dashed var(--border);padding:8px 0}.ess-prev a .t{font-size:15px}.ess-prev a:hover .t{color:var(--accent-pink)}.news{border-left:1px dashed var(--border-2);padding-left:56px}.news h3{margin-top:4px;font-size:22px;font-weight:600;line-height:1.3}.news p{color:var(--text-muted);margin:12px 0 0}.news form{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.news form .input{flex:220px}.news .fine{font-family:var(--font-mono);color:var(--text-faint);margin-top:18px;font-size:12px;line-height:1.7}.news .last{border-top:1px dashed var(--border);margin-top:28px;padding-top:16px}.news .last a{color:var(--text-2)}.news .last a:hover .t{color:var(--accent-pink)}.mani-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 40px;margin-bottom:44px;display:flex}.mani-head>div{min-width:0;max-width:640px}.mani{border-top:1px solid var(--border-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.mani>div{min-width:0;padding:26px 28px 0 0}.mani>div+div{border-left:1px dashed var(--border);padding-left:28px}.mani .n{font-family:var(--font-mono);color:var(--text-faint);margin-bottom:12px;font-size:12px;display:block}.mani h3{margin-bottom:8px;font-size:17px;font-weight:600}.mani p{color:var(--text-muted);margin:0;font-size:14.5px}@media (width<=1000px){.start{grid-template-columns:minmax(0,1fr)}.start-head .note{max-width:none}.ix-part{grid-template-columns:minmax(0,1fr);gap:28px}.ix-ph .in{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:4px 22px;display:grid;position:static}.ix-ph .num{grid-row:1/span 3;margin:0;font-size:48px}.ix-ph p{max-width:60ch;margin:6px 0 8px}.ess{grid-template-columns:minmax(0,1fr)}.ess-main{padding-right:0}.news{border-left:0;border-top:1px dashed var(--border-2);padding:44px 0 0}.mani{grid-template-columns:repeat(2,minmax(0,1fr))}.mani>div{padding-bottom:26px}.mani>div:nth-child(3){border-left:0;padding-left:0}.mani>div:nth-child(n+3){border-top:1px dashed var(--border)}}@media (width<=760px){.ix-chs{columns:1}.ix-head{grid-template-columns:minmax(0,1fr)}.ix-legend{text-align:left}}@media (width<=680px){.hero{padding-block:56px}.edition{margin-bottom:28px}.qbox{gap:10px;margin-top:36px;padding:0 12px 0 14px}.qbox input{padding:18px 0;font-size:17px}.qbox input::placeholder{font-size:20px}.qbox .keys{display:none}.what{font-size:16px}.routes .lead-line{flex-wrap:wrap}.routes .lead-line>i{display:none}.routes .lead-line .t{flex-basis:100%}.routes .lead-line .d{white-space:normal;margin-top:4px}.ix-jump a{margin-right:16px;padding-right:0}.ix-ch li .t{font-size:14.5px}.mani{grid-template-columns:minmax(0,1fr)}.mani>div,.mani>div+div{border-left:0;padding:22px 0}.mani>div+div{border-top:1px dashed var(--border)}.news form .btn{flex:100%}}@media (width<=420px){.ix-ch li .n,.ix-ch h4 .n{width:26px}.lead-line>i{margin:0 6px}}
