*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:16px}body{background-color:var(--mp-paper);background-image:linear-gradient(var(--mp-grid) 1px, transparent 1px), linear-gradient(90deg, var(--mp-grid) 1px, transparent 1px);color:var(--mp-fg);font-family:var(--mp-font-sans);background-size:32px 32px;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:var(--mp-ok)}a:hover{color:var(--mp-ok-hover)}:focus-visible{outline:2px solid var(--mp-ok);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:10;background:var(--mp-ok);color:var(--mp-paper);padding:10px 14px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:16px}.skip:focus{color:var(--mp-paper);top:12px}.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,24px)}.sec{border-top:1px solid var(--mp-line);padding:clamp(64px,9vw,96px) 0}.two{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));align-items:center;gap:clamp(32px,5vw,56px);display:grid}.two.top{align-items:start}.stack{flex-direction:column;gap:18px;min-width:0;display:flex}.grid3{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;display:grid}.cap{font-family:var(--mp-font-mono);color:var(--mp-muted);margin:0;font-size:12.5px}h1.hero{letter-spacing:-.025em;margin:0;font-size:clamp(40px,5vw,64px);font-weight:700;line-height:1.04}.h2{letter-spacing:-.02em;margin:0;font-size:clamp(30px,3.4vw,44px);font-weight:600;line-height:1.12}.lead{font-family:var(--mp-font-serif);color:var(--mp-body);max-width:34em;margin:0;font-size:clamp(18px,1.6vw,20px);line-height:1.5}.txt{font-family:var(--mp-font-serif);color:var(--mp-body);margin:0;font-size:17px;line-height:1.55}.txt.sm{font-size:16px}.code{font-family:var(--mp-font-mono);color:var(--mp-fg);border:1px solid var(--mp-line-2);white-space:nowrap;padding:0 5px;font-size:.86em}.mono{font-family:var(--mp-font-mono)}.list{font-family:var(--mp-font-mono);flex-direction:column;gap:8px;margin:0;padding:0;font-size:13.5px;list-style:none;display:flex}.list.muted{color:var(--mp-muted);font-size:13px}.more{color:var(--mp-ok);font-size:15px;font-weight:600;text-decoration:none}.more:hover{text-decoration:underline}.k-ok{color:var(--mp-ok)}.k-st{color:var(--mp-stale)}.k-un{color:var(--mp-unc)}.k-bad{color:var(--mp-bad)}.num{color:var(--mp-faint)}.top-bar{border-bottom:1px solid var(--mp-line);background:var(--mp-paper)}.nav{flex-wrap:wrap;align-items:center;gap:4px 24px;min-height:68px;padding-top:10px;padding-bottom:10px;display:flex}.brand{color:var(--mp-fg);align-items:center;gap:10px;min-height:44px;margin-right:auto;text-decoration:none;display:flex}.brand:hover{color:var(--mp-fg)}.brand-name{letter-spacing:-.01em;font-size:18px;font-weight:600}.navl{color:var(--mp-muted);align-items:center;min-height:44px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.navl:hover,.navl[aria-current=page]{color:var(--mp-fg)}.foot{border-top:1px solid var(--mp-line);background:var(--mp-paper)}.foot .wrap{color:var(--mp-muted);flex-wrap:wrap;align-items:center;gap:4px 24px;padding-top:24px;padding-bottom:40px;font-size:14px;display:flex}.foot .navl{font-size:14px}.foot-name{color:var(--mp-fg);margin-right:auto;font-weight:600}@media (width<=640px){.nav{column-gap:18px}.nav .navl.opt{display:none}}@media (width<=420px){.nav .nav-cta{display:none}}.btn,.btn2{border-radius:2px;justify-content:center;align-items:center;min-height:46px;padding:0 20px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn{background:var(--mp-ok);color:var(--mp-paper)}.btn:hover{background:var(--mp-ok-hover);color:var(--mp-paper)}.btn.small{min-height:40px;padding:0 16px;font-size:14px}.btn2{border:1px solid var(--mp-line-2);background:var(--mp-paper);color:var(--mp-fg)}.btn2:hover{border-color:var(--mp-ok);color:var(--mp-fg)}.btns{flex-wrap:wrap;gap:12px;display:flex}.panel{border:1px solid var(--mp-line);background:var(--mp-panel);min-width:0}.phead{border-bottom:1px solid var(--mp-line);font-family:var(--mp-font-mono);color:var(--mp-muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:9px 14px;font-size:12px;display:flex}.pbody{flex-direction:column;gap:14px;padding:20px;display:flex}.lines{font-family:var(--mp-font-mono);grid-template-columns:28px minmax(0,1fr);column-gap:12px;padding:14px;font-size:13px;line-height:1.85;display:grid}.lines.notes{grid-template-columns:28px minmax(0,1fr) auto}.lines .l{white-space:pre-wrap;overflow-wrap:anywhere}.lines .note{color:var(--mp-muted);white-space:nowrap;padding-left:8px}.lines .gap{color:var(--mp-faint)}@media (width<=640px){.lines.notes{grid-template-columns:24px minmax(0,1fr)}.lines.notes .note{grid-column:2;margin-bottom:6px;padding-left:0}}.cmd{font-family:var(--mp-font-mono);border:1px solid var(--mp-line-2);white-space:nowrap;padding:8px 10px;font-size:13px;display:block;overflow-x:auto}.chip{font-family:var(--mp-font-mono);border:1px solid var(--mp-line-2);padding:3px 9px;font-size:13px}.chip.w{border-color:var(--mp-ok);color:var(--mp-ok)}.chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.facts{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.fact{border-bottom:1px solid var(--mp-line);grid-template-columns:34px minmax(0,1fr);align-items:start;gap:0 12px;padding:10px 0;display:grid}.fact:last-child{border-bottom:0}.sq{border:1px solid var(--mp-line);justify-content:center;align-items:center;width:34px;height:34px;font-size:20px;line-height:1;transition:color .25s;display:flex}.fact-text{font-family:var(--mp-font-serif);color:var(--mp-fg);font-size:16px;line-height:1.4}.fact-meta{font-family:var(--mp-font-mono);color:var(--mp-muted);margin-top:2px;font-size:12px}.legend{font-family:var(--mp-font-mono);color:var(--mp-muted);flex-wrap:wrap;gap:6px 18px;font-size:12px;display:flex}.legend .count{color:var(--mp-fg);margin-left:auto}.events{border-top:1px solid var(--mp-line);font-family:var(--mp-font-mono);margin:0;padding-top:10px;padding-left:0;font-size:12.5px;line-height:1.8;list-style:none}.events li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.js .ev{opacity:.28;transition:opacity .3s}.js .ev.on{opacity:1}.head-chip{transition:color .25s}.verdicts{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));display:grid}.verdict{border-right:1px solid var(--mp-line);border-bottom:1px solid var(--mp-line);flex-direction:column;gap:10px;margin:0 -1px -1px 0;padding:20px;display:flex}.vword{font-family:var(--mp-font-mono);font-size:15px;font-weight:600}.vword .s{font-size:22px}.stale-line{box-shadow:inset 2px 0 0 var(--mp-stale);background:#f6f0e8;flex-wrap:wrap;justify-content:space-between;gap:0 12px;padding-left:10px;display:flex}.cmp{border-collapse:collapse;width:100%;min-width:560px;font-size:16px}.cmp th{text-align:left;border-bottom:1px solid var(--mp-line);font-weight:400;font-family:var(--mp-font-mono);color:var(--mp-muted);padding:10px 14px;font-size:12px}.cmp td{border-bottom:1px solid var(--mp-line);vertical-align:top;padding:14px}.cmp td.who{font-family:var(--mp-font-serif);color:var(--mp-body)}.cmp tr.us{box-shadow:inset 2px 0 0 var(--mp-ok);background:#ecf0eb}.cmp tr.us td{color:var(--mp-fg);border-bottom:0;font-weight:600}.cmp tr.us td.k-ok{color:var(--mp-ok)}@media (width<=640px){.cmp{min-width:0}.cmp thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.cmp tr{border-bottom:1px solid var(--mp-line);grid-template-columns:36px minmax(0,1fr);padding:12px 14px;display:grid}.cmp tr.us{border-bottom:0}.cmp td{border-bottom:0;padding:0;display:block}.cmp td:nth-child(3){grid-column:2;padding-top:6px}.cmp td:nth-child(3):before{content:"who decides: ";font-family:var(--mp-font-mono);color:var(--mp-muted);font-size:12px;font-weight:400}}.scroll-x{overflow-x:auto}.rule{grid-template-columns:36px minmax(0,1fr);margin:0;padding:6px 0;font-size:16px;display:grid}.rule dt{font-family:var(--mp-font-mono);color:var(--mp-faint);padding:12px 0 12px 14px;font-size:13px}.rule dd{border-bottom:1px solid var(--mp-line);margin:0;padding:12px 14px 12px 0}.rule dd:last-of-type{border-bottom:0}.pfoot{border-top:1px solid var(--mp-line);font-family:var(--mp-font-mono);color:var(--mp-muted);padding:12px 14px;font-size:12.5px;line-height:1.7}.term{--t-ok:var(--mp-t-ok);background:var(--mp-term);border:1px solid var(--mp-term-border);font-family:var(--mp-font-mono);color:var(--mp-term-fg);border-radius:10px;min-width:0;position:relative;overflow:hidden;box-shadow:0 18px 48px #14161a38}.term .k-ok{color:var(--mp-t-ok)}.term .k-st{color:var(--mp-t-stale)}.term .k-un{color:var(--mp-t-unc)}.term .k-bad{color:var(--mp-t-bad)}.thead{border-bottom:1px solid var(--mp-term-line);min-height:44px;color:var(--mp-term-muted);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;font-size:12px;display:flex}.thead .title{margin-left:6px;margin-right:auto}.dot{background:var(--mp-term-line-2);border-radius:50%;flex:none;width:10px;height:10px}.tbody{padding:16px 18px 18px;font-size:13px;line-height:1.75;overflow-x:auto}.tbody .ln{white-space:pre}.tbody .ln.hang{white-space:pre-wrap;overflow-wrap:anywhere;text-indent:-2ch;padding-left:2ch}.tbody .wrapline{white-space:pre-wrap;overflow-wrap:anywhere}.tbody .dim{color:var(--mp-term-muted)}.glow{color:var(--mp-t-ok);text-shadow:0 0 8px #5ccf978c,0 0 22px #5ccf9733}.cur{background:var(--mp-t-ok);vertical-align:-.2em;width:.62em;height:1.15em;margin-left:2px;animation:1.05s step-end infinite mp-blink;display:inline-block;box-shadow:0 0 10px #5ccf97b3}.scan{pointer-events:none;background-image:repeating-linear-gradient(#ffffff09 0 1px,#0000 1px 3px);animation:7s ease-in-out infinite mp-flicker;position:absolute;inset:0}.tabs{gap:2px;display:flex}.tab{font-family:var(--mp-font-mono);min-width:44px;min-height:36px;color:var(--mp-term-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:0 10px;font-size:12px}.tab:hover{color:var(--mp-term-fg)}.tab[aria-selected=true]{border-color:var(--mp-term-line-2);color:var(--mp-term-fg);background:#11151b}.tab:focus-visible,.replay:focus-visible{outline-color:var(--mp-t-ok)}.pane-label{color:var(--mp-term-muted)}.js .pane-label,.js .pane[hidden]{display:none}.pane+.pane{margin-top:10px}.js .pane+.pane{margin-top:0}.replay{font-family:var(--mp-font-mono);color:var(--mp-term-muted);border:1px solid var(--mp-term-border);cursor:pointer;background:0 0;border-radius:6px;min-height:36px;padding:0 12px;font-size:12px}.replay:hover{color:var(--mp-term);background:var(--mp-t-ok);border-color:var(--mp-t-ok)}.term .btn{background:var(--mp-t-ok);color:var(--mp-term)}.term .btn:hover{color:var(--mp-term);background:#86e0b4}.term .btn2{color:var(--mp-term-fg);border-color:var(--mp-term-line-2);background:0 0}.term .btn2:hover{border-color:var(--mp-t-ok);color:var(--mp-term-fg)}.js .step{opacity:0;transition:opacity .25s}.js .step.on{opacity:1}.ascii{max-width:100%;margin:0;font-size:clamp(5.5px,.95vw,13px);line-height:1.08;overflow:hidden}.ascii span{white-space:pre;display:block}.closing{text-align:center;flex-direction:column;align-items:center;gap:28px;padding:44px clamp(16px,4vw,32px) 48px;display:flex}.closing .h2{color:var(--mp-term-fg)}@keyframes mp-blink{50%{opacity:0}}@keyframes mp-flicker{0%,to{opacity:.55}50%{opacity:.75}}@media (prefers-reduced-motion:reduce){.cur,.scan{animation:none}.sq,.js .ev,.js .step,.head-chip{transition:none}}.page{padding:clamp(56px,8vw,88px) 0 clamp(64px,9vw,96px)}.prose{flex-direction:column;gap:20px;max-width:720px;display:flex}.prose h2{letter-spacing:-.015em;margin:24px 0 0;font-size:26px;font-weight:600}.prose p,.prose li{font-family:var(--mp-font-serif);color:var(--mp-body);margin:0;font-size:18px;line-height:1.6}.prose ul{flex-direction:column;gap:8px;margin:0;padding-left:1.2em;display:flex}.prose code{font-family:var(--mp-font-mono);border:1px solid var(--mp-line-2);padding:0 4px;font-size:.85em}.copy{font-family:var(--mp-font-sans);border:1px solid var(--mp-term-line-2);min-width:44px;min-height:32px;color:var(--mp-term-muted);cursor:pointer;z-index:1;background:0 0;border-radius:6px;padding:0 10px;font-size:12px;display:none;position:relative}.js .copy{display:inline-block}.copy:hover{color:var(--mp-term-fg)}.copy:focus-visible{outline-color:var(--mp-t-ok)}.zh{--mp-font-cjk:"Inter", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", "Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", system-ui, sans-serif;font-family:var(--mp-font-cjk)}.zh .prose{max-width:760px}.zh .h2,.zh .prose h2,.zh .prose h3{font-family:var(--mp-font-cjk);letter-spacing:0}.zh .prose h3{margin:12px 0 0;font-size:20px;font-weight:600}.zh .prose p,.zh .prose li{font-family:var(--mp-font-cjk);font-size:17px;line-height:1.85}.zh .prose li code{word-break:break-all}.zh .prose .note{color:var(--mp-muted);border-left:2px solid var(--mp-line-2);padding-left:14px;font-size:15px}.zh .term{margin:2px 0}
