@font-face{font-family:"ToolBox Mono";src:url("/static/fonts/toolbox-mono.woff2") format("woff2");font-display:swap;font-weight:400;unicode-range:U+0020-007E,U+00A0-00FF,U+2000-206F}
:root{--bg:#F7F6F3;--surface:#fff;--sunken:#F0EEEA;--border:#E6E4DF;--control-border:#8A877E;--text:#1A1A18;--text-2:#6B6A65;--text-3:#6D6C66;--accent:#C93A1E;--accent-text:#fff;--ok:#187245;--warn:#805B16;--err:#C93A1E;--font-ui:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei UI","Noto Sans SC",system-ui,sans-serif;--font-mono:"ToolBox Mono","Sarasa Mono SC",ui-monospace,"SF Mono",Menlo,Consolas,monospace;color-scheme:light}
[data-theme="dark"]{--bg:#0E0E0D;--surface:#161615;--sunken:#101010;--border:#262624;--control-border:#6E6D68;--text:#EDEDEA;--text-2:#A09F99;--text-3:#86857F;--accent:#FF6B4A;--accent-text:#161615;--ok:#3DC98A;--warn:#E3A93B;--err:#FF6B6B;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/22px var(--font-ui)}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select,summary{outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent)}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default;color:var(--text-3)}button,a{transition:background-color 140ms ease-out,opacity 140ms ease-out}svg.icon{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}kbd{font:11px/18px var(--font-mono);border:1px solid var(--border);border-radius:4px;padding:0 5px;color:var(--text-3);white-space:nowrap}h1{font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.01em;margin:0 0 8px}h2{font-size:15px;line-height:24px;font-weight:600;margin:0}p{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-60px;padding:10px;background:var(--surface);z-index:10}.skip-link:focus{top:8px}.topbar{height:56px;display:flex;align-items:center;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:3;gap:16px;padding-right:24px}.brand{width:220px;flex-shrink:0;display:flex;align-items:center;padding:0 24px;gap:10px;font-size:18px;font-weight:600;letter-spacing:-.02em}.brand-mark{width:14px;height:14px;border:3px solid var(--text);outline:1px solid var(--text);outline-offset:2px}.search-launch{display:flex;align-items:center;gap:10px;width:320px;height:36px;padding:0 12px;background:transparent;border:1px solid var(--control-border);border-radius:6px;color:var(--text-3);text-align:left}.search-launch kbd{margin-left:auto}.top-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.icon-button{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:6px}.icon-button:hover{background:var(--sunken)}.network-status{display:inline-flex;padding:12px;cursor:help}.status-dot{display:inline-block;width:6px;height:6px;background:var(--ok);border-radius:50%;flex-shrink:0}.network-status.offline .status-dot{background:var(--warn)}.sidebar{position:fixed;top:56px;bottom:0;left:0;width:220px;border-right:1px solid var(--border);padding:24px 12px 16px;display:flex;flex-direction:column;background:var(--bg);overflow:auto}.nav-group{margin:0 0 24px}.nav-label{font-size:12px;color:var(--text-2);margin:0 12px 8px}.nav-item{position:relative;display:flex;align-items:center;gap:12px;min-height:36px;padding:0 12px;border-radius:4px;font-size:13px}.nav-item:hover{background:var(--sunken)}.nav-item[aria-current="page"]{background:var(--sunken);font-weight:600}.nav-item[aria-current="page"]:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:2px;background:var(--accent)}.nav-item kbd{margin-left:auto}.sidebar-foot{margin-top:auto;padding:12px;font-size:12px;line-height:20px;color:var(--text-3);display:grid;gap:4px}.sidebar-foot a:hover{text-decoration:underline}#workspace{margin-left:220px;padding:40px 32px 24px;min-height:calc(100vh - 56px)}.workspace-content{max-width:960px;margin:0 auto}.intro{color:var(--text-2);max-width:640px}.page-head{margin-bottom:28px}.eyebrow{font:12px/18px var(--font-mono);color:var(--text-3);margin-bottom:12px}.index-head{display:flex;justify-content:space-between;align-items:baseline;margin:32px 0 12px;color:var(--text-2);font-size:12px}.index-list{border-top:1px solid var(--border)}.index-row{display:grid;grid-template-columns:24px 170px 1fr auto;align-items:center;gap:16px;padding:20px 8px;border-bottom:1px solid var(--border)}.index-row:hover{background:var(--sunken)}.index-name{font-weight:600}.index-description{color:var(--text-2)}.index-row .arrow{color:var(--text-3)}.footnote{font-size:12px;line-height:18px;color:var(--text-3);margin-top:20px}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.toolbar .push{margin-left:auto}.segments{display:inline-flex;padding:3px;gap:2px;background:var(--sunken);border:1px solid var(--border);border-radius:6px}.segments button{border:0;background:transparent;border-radius:4px;min-height:32px;padding:4px 12px;color:var(--text-2)}.segments button[aria-pressed="true"]{background:var(--surface);color:var(--text);font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 12px;border:1px solid var(--control-border);border-radius:6px;background:var(--surface);font-size:13px}.button:hover{background:var(--sunken)}.button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.button.primary:hover{opacity:.88}.button:disabled{opacity:.65}.button.small{min-height:28px;padding:2px 8px;font-size:12px}.panels{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;position:relative}.panel{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden;min-width:0}.panel-head{min-height:48px;display:flex;align-items:center;gap:12px;justify-content:space-between;padding:8px 16px;border-bottom:1px solid var(--border)}.panel-label{font-size:13px;font-weight:600}.meta{font:11px/18px var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums}.data-input,.data-output{width:100%;min-height:340px;display:block;resize:vertical;padding:16px;border:0;border-radius:0;outline-offset:-3px;font:13.5px/22px var(--font-mono);background:transparent;color:var(--text);tab-size:2;white-space:pre;overflow:auto}.data-input::placeholder{color:var(--text-3)}.data-output{background:var(--sunken)}.data-output::placeholder{color:var(--text-3)}.input-wrap{position:relative}.input-ghost{position:absolute;inset:0;pointer-events:none;margin:0;white-space:pre;overflow:hidden;min-height:0;color:transparent;background:none;resize:none}.error-mark{color:transparent;text-decoration:underline wavy var(--err);text-underline-offset:3px}.input-wrap.error{outline:1px solid var(--err);outline-offset:-1px}.status-line{min-height:24px;margin:12px 0 0;color:var(--text-2);font-size:12px}.status-line.error{color:var(--err)}.status-line.warning{color:var(--warn)}.result-note{display:flex;align-items:center;gap:8px}.swap-button{position:absolute;left:50%;top:180px;transform:translateX(-50%);border:1px solid var(--control-border);background:var(--surface);z-index:1;min-width:36px;min-height:36px}.checkbox-label{display:flex;gap:8px;align-items:center;min-height:36px}.checkbox-label input{accent-color:var(--accent);width:16px;height:16px}.compact-label{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--text-2)}select{border:1px solid var(--control-border);border-radius:6px;background:var(--surface);min-height:36px;padding:4px 28px 4px 8px}.json-view{min-height:340px;max-height:70vh;overflow:auto;padding:16px;background:var(--sunken);font:13.5px/22px var(--font-mono);white-space:pre}.json-view:empty:before{content:"格式化结果显示在这里";color:var(--text-3)}.json-view summary{cursor:pointer;min-height:22px;list-style-position:outside;margin-left:12px}.json-view details{margin:0}.json-children{margin-left:2ch}.indent-4 .json-children{margin-left:4ch}.json-key{font-weight:600;color:var(--text)}.json-string{color:var(--text-2)}.json-number{color:var(--text)}.json-literal{color:var(--text-3)}.json-closed{color:var(--text-3)}details[open]>summary .json-closed{display:none}.json-error{color:var(--err);white-space:pre-wrap;font-family:var(--font-ui)}.plain-json{margin:0;white-space:pre;font:inherit}.query-panel{padding:20px;position:relative}.query-form{display:flex;align-items:end;gap:12px}.field{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.field label{font-size:13px;font-weight:600}.field input{border:1px solid var(--control-border);border-radius:6px;padding:10px 12px;min-height:44px;background:var(--surface);font-family:var(--font-mono);font-size:13px}.field input::placeholder{color:var(--text-3)}.query-form .button{min-height:44px}.progress-line{height:2px;background:var(--accent);position:absolute;top:0;left:0;width:100%;opacity:0}.query-panel[aria-busy="true"] .progress-line{opacity:1}.query-result{margin-top:20px;min-height:48px}.result-heading{display:flex;align-items:center;gap:12px;margin-bottom:16px}.status-badge{display:inline-block;padding:2px 8px;border:1px solid currentColor;border-radius:4px;font:12px/20px var(--font-mono)}.success{color:var(--ok)}.warning{color:var(--warn)}.error{color:var(--err)}.data-table{width:100%;border-collapse:collapse;table-layout:fixed;font:12px/20px var(--font-mono)}.data-table th,.data-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);overflow-wrap:anywhere;vertical-align:top}.data-table th{font-family:var(--font-ui);font-weight:500;color:var(--text-2)}.data-table td:first-child{color:var(--text-2)}.data-table td:last-child.ttl{text-align:right;font-variant-numeric:tabular-nums}.data-table tr:hover{background:var(--sunken)}.header-copy{opacity:0}.data-table tr:hover .header-copy,.header-copy:focus-visible{opacity:1}.header-table td:last-child{width:70px}.dns-types{margin-top:20px;flex-wrap:wrap}.clock-panel{padding:20px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.clock-caption{font-size:12px;color:var(--text-2);margin-bottom:8px}.clock-value{font:26px/34px var(--font-mono);font-variant-numeric:tabular-nums;border:0;background:transparent;cursor:pointer;padding:0;text-align:left;overflow-wrap:anywhere}.timestamp-grid{display:grid;gap:24px}.timestamp-grid .query-panel{overflow:visible}.timestamp-grid .data-table{margin-top:16px}.mobile-menu{display:none}dialog{color:var(--text);background:var(--surface);border:1px solid var(--control-border);padding:20px;border-radius:10px}dialog::backdrop{background:rgb(0 0 0 / .35)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.command-dialog{width:min(560px,calc(100vw - 32px));box-shadow:0 16px 48px rgb(0 0 0 / .16)}#command-search{width:100%;padding:10px 12px;border:1px solid var(--control-border);border-radius:6px;background:var(--surface);font-size:16px}.command-results{margin-top:12px;max-height:50vh;overflow:auto}.command-item{display:flex;gap:12px;align-items:center;width:100%;border:0;border-radius:6px;background:transparent;min-height:44px;padding:10px 12px;text-align:left}.command-item[aria-current="true"],.command-item:hover{background:var(--sunken)}.command-item .command-description{margin-left:auto;color:var(--text-3);font-size:12px}.command-help{font-size:12px;color:var(--text-3);margin-top:12px}.nav-dialog{margin:0;height:100dvh;max-height:100dvh;width:min(300px,90vw);border-radius:0;border:0;border-right:1px solid var(--border)}
@media(max-width:900px){.index-row{grid-template-columns:24px 150px 1fr auto;gap:12px}.index-description{font-size:12px}.panels{grid-template-columns:1fr}.swap-button{top:50%;left:auto;right:16px;transform:translateY(-50%)}.data-input,.data-output{min-height:250px}.json-view{min-height:250px}.header-copy{opacity:1}}
@media(max-width:700px){.mobile-menu{display:inline-flex}.sidebar{display:none}.topbar{padding:0 12px;gap:4px}.brand{width:auto;padding:0 8px;font-size:16px;gap:8px}.brand-mark{width:12px;height:12px}.search-launch{margin-left:auto;width:44px;min-height:44px;padding:0;justify-content:center;border:0}.search-launch span,.search-launch kbd{display:none}.top-actions{margin-left:0;gap:0}.network-status{padding:8px}#workspace{margin-left:0;padding:28px 16px 24px}.page-head{margin-bottom:24px}.index-row{grid-template-columns:24px 1fr auto;gap:12px;padding:16px 4px}.index-description{grid-column:2 / 4;font-size:13px}.index-row .arrow{grid-column:3;grid-row:1}.index-head span:last-child{display:none}.query-form{flex-wrap:wrap}.query-form .field{flex-basis:100%}.query-panel{padding:16px}.query-form .button.primary{flex:1}.toolbar{gap:8px}.toolbar .push{margin-left:0}.data-input,.data-output{font-size:16px;line-height:24px}.input-ghost{font-size:16px;line-height:24px}.field input{font-size:16px}select{font-size:16px}.segments button,.button,.nav-item{min-height:44px}.button.small{min-height:44px}.panel-head{padding:4px 12px;min-height:52px}.meta{font-size:10px}.command-item .command-description{display:none}.clock-panel{padding:16px;align-items:flex-start}.clock-value{font-size:23px;line-height:32px}.data-table th,.data-table td{padding:10px 8px}.header-table td:last-child{width:64px}.swap-button{min-height:44px;min-width:44px}.checkbox-label{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
@media(hover:none){.header-copy{opacity:1}}
