@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:dark;--c-bg: #0A0D0B;--c-surface: #101512;--c-surface-2: #0C100E;--c-border: #223029;--c-border-soft: #1B241F;--c-text: #CCD6CF;--c-text-2: #93A69A;--c-text-3: #5D6F63;--c-green: #7FB98A;--c-green-bright: #A8D8B3;--c-gold: #D9B36A;--c-blue: #6FA3C7;--c-danger: #E2827A;--c-danger-weak: #2A1714;--c-warn: #D9B36A;--c-warn-weak: #2A2213;--c-ok: #7FB98A;--c-ok-weak: #14231A;--c-brand: var(--c-blue);--c-brand-strong: #9CC8E8;--c-brand-weak: rgba(111, 163, 199, .13);--c-accent: var(--c-gold);--radius: 6px;--radius-sm: 4px;--maxw: 1120px;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", "Noto Sans CJK SC", monospace;--font-sans: var(--font-mono)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-mono);font-size:16px;line-height:1.8;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:#d9b36a47;color:#f0f4ef}:focus-visible{outline:2px solid var(--c-green);outline-offset:2px;border-radius:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--c-bg)}::-webkit-scrollbar-thumb{background:#233229;border-radius:5px;border:2px solid var(--c-bg)}::-webkit-scrollbar-thumb:hover{background:#2e4237}a{color:var(--c-green);text-decoration:none}a:hover{color:var(--c-green-bright);text-decoration:underline;text-underline-offset:3px}img{max-width:100%;height:auto}h1,h2,h3,h4{line-height:1.4;color:var(--c-text);font-weight:700}h1{font-size:1.8rem;margin:0 0 .6em;letter-spacing:-.01em}h2{font-size:1.3rem;margin:2.2em 0 .7em}h3{font-size:1.05rem;margin:1.6em 0 .5em}h1,h2,h3{scroll-margin-top:70px}code,pre,kbd{font-family:var(--font-mono);font-size:.9em}code{background:#7fb98a1a;color:#a9d2b4;border-radius:3px;padding:.12em .38em}pre{background:var(--c-surface-2);color:#c7d8cb;border:1px solid var(--c-border-soft);border-radius:var(--radius-sm);padding:1rem 1.2rem;overflow-x:auto;line-height:1.7}pre code{background:none;padding:0;color:inherit;font-size:.85rem}blockquote{margin:1.2em 0;padding:.5em 1.2em;border-left:2px solid var(--c-gold);background:var(--c-surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--c-text-2)}table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.9rem}th,td{border:1px solid var(--c-border);padding:.5em .8em;text-align:left}th{background:#7fb98a12;color:var(--c-text);font-weight:700}hr{border:none;border-top:1px solid var(--c-border);margin:2em 0}strong{color:var(--c-text)}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}main{padding:32px 0 0}.site-header{background:#0c100eeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--c-border);position:sticky;top:0;z-index:50}.site-header .inner{display:flex;align-items:center;gap:18px;height:46px}.site-header .logo{font-weight:700;font-size:.95rem;color:var(--c-green);letter-spacing:.02em;white-space:nowrap}.site-header .logo:hover{text-decoration:none;color:var(--c-green-bright)}.site-header .logo .tld{color:#5e8f6b}.site-header nav{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap;counter-reset:tmux -1}.site-header nav a{counter-increment:tmux;color:var(--c-text-2);font-size:.82rem;padding:3px 8px;border-radius:3px;transition:color .15s ease,background-color .15s ease}.site-header nav a:before{content:counter(tmux) ":";color:var(--c-text-3);margin-right:2px;font-size:.76rem}.site-header nav a:hover{color:var(--c-text);background:#7fb98a0f;text-decoration:none}.site-header nav a.active{color:var(--c-green);background:#7fb98a14}.site-header nav a.active:after{content:"*";color:var(--c-gold);margin-left:1px;animation:tmux-pulse 2.6s ease-in-out infinite alternate}@keyframes tmux-pulse{0%{opacity:.55}to{opacity:1}}.nav-toggle{display:none}.site-footer{margin-top:72px;border-top:1px solid var(--c-border);background:var(--c-surface-2);color:var(--c-text-3);font-size:.85rem;padding:36px 0 44px}.site-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.site-footer h4{margin:0 0 .6em;font-size:.88rem;color:var(--c-text-2)}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin:.35em 0}.site-footer a{color:var(--c-text-2)}.site-footer a:hover{color:var(--c-green-bright)}.site-footer .foot-desc{margin:0;line-height:1.8}.site-footer .foot-sign{margin-top:30px;font-size:.82rem;color:var(--c-text-3)}.site-footer .foot-prompt{color:var(--c-green);margin-right:.4em}.site-footer .foot-q{color:var(--c-green-bright)}.site-footer .foot-cmt{color:var(--c-text-3)}.site-footer .copy{margin-top:14px;border-top:1px solid var(--c-border-soft);padding-top:16px;font-size:.78rem;line-height:1.8}.hero{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--radius);margin-bottom:40px;overflow:hidden}.hero-bar{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--c-border-soft);background:#10151299}.hero-dots{display:flex;gap:5px}.hero-dots i{width:8px;height:8px;border-radius:50%}.hero-dots i:nth-child(1){background:#7d5a52}.hero-dots i:nth-child(2){background:#7d7352}.hero-dots i:nth-child(3){background:#5a7d5f}.hero-title{font-size:.76rem;color:var(--c-text-2);letter-spacing:.04em}.hero-mode{margin-left:auto;font-size:.62rem;font-weight:700;letter-spacing:.15em;color:var(--c-gold);border:1px solid rgba(217,179,106,.4);border-radius:3px;padding:2px 6px}.hero-screen{display:grid;grid-template-columns:1fr;gap:26px;padding:28px 26px 30px}.hero-cmd{font-size:.8rem;margin:0 0 4px;color:var(--c-text-2)}.hero-cmd .user{color:var(--c-green)}.hero-cmd .path{color:var(--c-text-3)}.hero-cmd .cmd{color:var(--c-text)}.hero h1{font-size:1.7rem;margin:10px 0 12px;line-height:1.45;overflow-wrap:break-word}.hero-prompt{color:var(--c-green);font-weight:400;margin-right:.5em}.cursor{display:inline-block;width:.55em;height:1.02em;background:var(--c-gold);margin-left:.18em;vertical-align:-.12em;animation:cursor-blink 1.1s steps(2,start) infinite}@keyframes cursor-blink{to{visibility:hidden}}.hero-sub{color:var(--c-text-2);max-width:46em;margin:0 0 1.2em;font-size:.92rem}.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.hero-out{align-self:start;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:12px 14px 10px}.out-label{display:inline-block;font-size:.64rem;font-weight:700;letter-spacing:.18em;color:var(--c-text-3);border:1px solid var(--c-border);border-radius:3px;padding:1px 8px;margin:0 0 6px 6px}.out-row{display:flex;align-items:baseline;gap:8px;padding:6px 2px;font-size:.8rem}.out-row+.out-row{border-top:1px dashed var(--c-border-soft)}.out-row span{color:var(--c-text-3);flex:none}.out-row u{flex:1;border-bottom:1px dotted #24302A;transform:translateY(-3px)}.out-row b{font-weight:500;color:var(--c-text);text-align:right;font-variant-numeric:tabular-nums}.out-row b.hot{color:var(--c-gold)}.out-row.warn b{color:var(--c-gold);font-weight:700}.out-status{margin-top:6px;padding:8px 2px 2px;border-top:1px solid var(--c-border-soft);font-size:.7rem;color:var(--c-text-3)}.out-status b{color:var(--c-green);font-weight:500}.sec-title{font-size:1.15rem;margin:2.4em 0 .8em}.sec-title:before{content:"-- ";color:var(--c-text-3);font-weight:400}.sec-title .tool-note{font-weight:400}.btn{display:inline-block;padding:8px 18px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-weight:700;font-size:.9rem;letter-spacing:.02em;border:1px solid transparent;cursor:pointer;line-height:1.6;transition:color .15s ease,background-color .15s ease,border-color .15s ease}.btn:hover{text-decoration:none}.btn-primary{background:#d9b36a1f;color:var(--c-gold);border-color:#d9b36a8c}.btn-primary:hover{background:var(--c-gold);color:#1a1508;border-color:var(--c-gold)}.btn-ghost{background:transparent;color:var(--c-green);border-color:#7fb98a66}.btn-ghost:hover{background:#7fb98a14;border-color:var(--c-green);color:var(--c-green-bright)}.btn-outline{background:var(--c-surface);color:var(--c-green);border-color:var(--c-border)}.btn-outline:hover{border-color:#7fb98a8c;color:var(--c-green-bright)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin:24px 0}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:18px 20px;transition:border-color .15s ease,box-shadow .15s ease}.card:hover{border-color:#7fb98a73}.card h3{margin:0 0 .5em;font-size:1rem}.card h3 a{color:var(--c-text)}.card h3 a:before{content:"▸ ";color:var(--c-green)}.card h3 a:hover{color:var(--c-green-bright)}.card p{margin:0;color:var(--c-text-2);font-size:.88rem}.card .meta{margin-top:10px;color:var(--c-text-3);font-size:.74rem}.tag{display:inline-block;background:#7fb98a1a;color:var(--c-green);border:1px solid rgba(127,185,138,.22);border-radius:3px;padding:0 8px;font-size:.72rem;margin-right:6px}.badge{display:inline-block;border-radius:3px;padding:0 8px;font-size:.72rem;font-weight:700;letter-spacing:.04em}.badge-sponsor{background:#d9b36a21;color:var(--c-gold);border:1px solid rgba(217,179,106,.4)}.badge-affiliate{background:#6fa3c721;color:var(--c-blue);border:1px solid rgba(111,163,199,.4)}.badge-paid{background:var(--c-gold);color:var(--c-bg);border:1px solid var(--c-gold)}.weekly-sponsor{border:1px solid rgba(217,179,106,.4);background:#d9b36a12;border-radius:4px;padding:10px 14px;margin:10px 0 2px;font-size:.92rem}.weekly-sponsor a{color:var(--c-gold)}.page-title-row{margin-bottom:10px;color:var(--c-text-3);font-size:.78rem;letter-spacing:.03em}.page-title-row a{color:var(--c-text-2)}.page-title-row a:hover{color:var(--c-green-bright)}.page-title-row .crumb-here{color:var(--c-green)}.prose{max-width:760px}.prose section.footnote{color:var(--c-text-3);font-size:.82rem}.ad-slot{position:relative;margin:28px 0;padding:16px 14px 14px;background:#f2f4f3;border:1px solid #D9E0DB;border-radius:var(--radius);text-align:center;overflow:hidden}.ad-slot .ad-tag{position:absolute;top:6px;left:10px;font-size:.6rem;font-weight:700;letter-spacing:.14em;color:#7a897f;text-transform:uppercase}.sponsor-tier{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:22px 0}.sponsor-tier .tier{position:relative;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:20px;text-align:center}.sponsor-tier .tier.hot{border-color:var(--c-gold);box-shadow:0 0 0 1px #d9b36a4d}.tier-flag{position:absolute;top:10px;right:10px;font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.14em;color:#1a1508;background:var(--c-gold);border-radius:3px;padding:2px 7px}.sponsor-tier .price{font-size:1.4rem;font-weight:700;color:var(--c-brand-strong);margin:.3em 0;font-variant-numeric:tabular-nums}.sponsor-tier ul{list-style:none;padding:0;margin:.8em 0 0;font-size:.85rem;color:var(--c-text-2);text-align:left}.sponsor-tier li{margin:.35em 0}.sponsor-tier li:before{content:"· ";color:var(--c-text-3)}.sponsor-steps li{margin:7px 0}.sponsor-steps strong{color:var(--c-green-bright)}.tool-shell{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--radius);padding:18px}.shell-label{display:block;font-size:.8rem;color:var(--c-text-2);margin-bottom:8px}.shell-label:before{content:"-- ";color:var(--c-text-3)}.tool-shell textarea{width:100%;min-height:220px;font-family:var(--font-mono);font-size:.85rem;line-height:1.6;border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:12px;color:var(--c-text);background:var(--c-bg);resize:vertical}.tool-shell textarea::placeholder{color:var(--c-text-3)}.tool-shell textarea:focus{outline:none;border-color:var(--c-green);box-shadow:0 0 0 1px var(--c-green)}.tool-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0 0}.tool-note{color:var(--c-text-3);font-size:.78rem;font-weight:400}.parse-error{color:var(--c-danger);font-size:.85rem;margin:10px 0 0}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.stat-cards .stat{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:12px 14px}.stat-cards .stat b{display:block;font-size:1.15rem;font-weight:700;color:var(--c-green);font-variant-numeric:tabular-nums;line-height:1.4}.stat-cards .stat span{color:var(--c-text-3);font-size:.72rem}.plan-tree,.plan-tree ul{list-style:none;margin:0;padding:0}.plan-tree ul{padding-left:20px;border-left:1px dashed #2C3A31;margin-left:7px}.plan-node{border:1px solid var(--c-border);border-left:2px solid var(--c-green);border-radius:var(--radius-sm);background:var(--c-surface);padding:8px 12px;margin:6px 0;font-size:.85rem}.plan-node.sev-danger{border-left-color:var(--c-danger);background:var(--c-danger-weak)}.plan-node.sev-warn{border-left-color:var(--c-warn);background:var(--c-warn-weak)}.plan-node .node-head{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;cursor:pointer}.plan-node .node-note{color:var(--c-text-2);font-size:.8rem;line-height:1.6;margin:2px 0 0 14px}.plan-node .node-note:before{content:"※ ";color:var(--c-green)}.plan-tree-static .plan-node .node-head{cursor:default}.plan-tree-static .plan-node .node-head:before{content:""}.plan-tree-static .plan-node .node-detail{display:block}.report-cta{margin-top:22px;padding-top:14px;border-top:1px dashed var(--c-border-soft)}.plan-node .node-head:before{content:"▸";color:var(--c-text-3);flex:none}.plan-node.open .node-head:before{content:"▾";color:var(--c-green)}.plan-node .node-type{font-weight:700;font-family:var(--font-mono);font-size:.86rem;color:var(--c-text)}.plan-node .node-meta{color:var(--c-text-3);font-size:.74rem;font-family:var(--font-mono)}.plan-node .node-detail{display:none;margin-top:8px;color:var(--c-text-2);font-size:.76rem;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-all;background:var(--c-bg);border:1px solid var(--c-border-soft);border-radius:3px;padding:8px 10px}.plan-node.open .node-detail{display:block}.finding{display:flex;gap:12px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:12px 14px;margin:8px 0}.finding .sev{flex:none;min-width:52px;height:24px;line-height:22px;padding:0 8px;text-align:center;border-radius:3px;font-size:.72rem;font-weight:700;font-family:var(--font-mono)}.sev-danger .sev,.finding .sev.danger{background:#e2827a24;color:var(--c-danger);border:1px solid rgba(226,130,122,.4)}.sev-warn .sev,.finding .sev.warn{background:#d9b36a21;color:var(--c-gold);border:1px solid rgba(217,179,106,.4)}.finding .sev.info{background:#7fb98a21;color:var(--c-green);border:1px solid rgba(127,185,138,.4)}.finding .body{min-width:0}.finding .body b{display:block;margin-bottom:2px;color:var(--c-text)}.finding .body p{margin:0;color:var(--c-text-2);font-size:.85rem}.finding .body code{background:#7fb98a1a}.err404{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--radius);padding:64px 24px 56px;text-align:center;margin:32px 0}.err404 h1{font-family:var(--font-mono);font-size:clamp(1rem,2.6vw,1.4rem);font-weight:400;margin:0 0 20px;line-height:1.7;overflow-wrap:break-word}.err-p{color:var(--c-green)}.err-fatal{color:var(--c-danger);font-weight:700}.err-str{color:var(--c-gold)}.err-hint{color:var(--c-text-2);margin:0 0 4px;font-size:.9rem}.err-hint2{color:var(--c-text-3);margin:0;font-size:.8rem}.err-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}@media(prefers-reduced-motion:no-preference){a:hover{text-shadow:0 0 12px rgba(127,185,138,.45)}.btn-primary:hover{box-shadow:0 0 18px #d9b36a4d}.btn-ghost:hover,.btn-outline:hover{box-shadow:0 0 14px #7fb98a38}.card:hover{box-shadow:0 0 16px #7fb98a14}.site-header nav a:hover{text-shadow:0 0 10px rgba(127,185,138,.4)}}@media(max-width:760px){.site-header .inner{height:auto;flex-wrap:wrap;padding:9px 0;gap:10px}.site-header .logo{font-size:1rem}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;background:none;border:1px solid var(--c-border);color:var(--c-green);border-radius:var(--radius-sm);padding:3px 12px;font-family:var(--font-mono);font-size:.85rem;cursor:pointer;transition:transform .15s ease}.site-header.nav-open .nav-toggle{transform:rotate(180deg);color:var(--c-gold);border-color:#d9b36a80}.site-header nav{display:none;width:100%;flex-direction:column;gap:2px;border-top:1px solid var(--c-border-soft);padding-top:8px;margin-left:0}.site-header.nav-open nav{display:flex}.site-header nav a{padding:8px 10px;font-size:.88rem}.hero-screen{padding:20px 18px 22px}.hero h1{font-size:1.35rem}.hero .cta-row .btn{flex:1 1 auto;text-align:center}.site-footer .cols{grid-template-columns:1fr;gap:20px}h1{font-size:1.45rem}h2{font-size:1.15rem}.err404{padding:44px 16px 40px}}@media(min-width:1200px){.container{padding:0 24px}.hero-screen{grid-template-columns:1.15fr .85fr;gap:40px;padding:32px 32px 36px}.hero h1{font-size:1.85rem}.hero-out{min-width:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.cursor{visibility:visible}}.support-banner{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0;padding:10px 14px;border:1px dashed var(--c-border);border-radius:4px;color:var(--c-text-2);font-size:.88rem}
