:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#505652;background:#f2f3f5;font-synthesis:none;--bg: #f2f3f5;--surface: #ffffff;--surface-soft: #f7f8f9;--surface-raised: #ffffff;--line: rgba(31, 37, 34, .08);--line-strong: rgba(31, 37, 34, .11);--text: #303633;--muted: #858c88;--green: #44c69a;--green-deep: #239f78;--green-soft: #e9f9f3;--red: #e36363;--red-soft: #fff2f2;--shadow: 0 20px 55px rgba(28, 35, 31, .075), 0 2px 8px rgba(28, 35, 31, .035);--mono: "SFMono-Regular", "Cascadia Code", Consolas, "Liberation Mono", monospace}:root[data-theme=dark]{color:#b8c2bc;background:#111613;--bg: #111613;--surface: #18201c;--surface-soft: #141b17;--surface-raised: #1d2722;--line: #29352f;--line-strong: #36433d;--text: #e4ebe7;--muted: #849089;--green-soft: #18392e;--red-soft: #3b2223;--shadow: 0 12px 36px rgba(0, 0, 0, .24)}*{box-sizing:border-box}html{height:100%;overflow:hidden;scroll-behavior:smooth}body,#root{width:100%;height:100%;overflow:hidden}body{margin:0;min-width:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}.site-shell{width:100%;height:100%;overflow:hidden}.workspace{width:100%;height:100%;max-width:none;margin:0;padding:18px;overflow:hidden}.workbench{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:var(--surface);border:1px solid rgba(31,37,34,.09);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.parse-status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);font-weight:450}.parse-status i{width:6px;height:6px;border-radius:50%;background:#b8bfbb}.parse-status.valid{color:var(--green-deep)}.parse-status.valid i{background:var(--green)}.parse-status.error{color:var(--red)}.parse-status.error i{background:var(--red)}.editor-grid{display:grid;grid-template-columns:minmax(0,41%) minmax(0,59%);min-height:0;flex:1;overflow:hidden}.editor-pane,.result-pane{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.editor-pane{border-right:1px solid var(--line-strong)}.pane-heading{height:44px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;border-bottom:1px solid var(--line);background:var(--surface-soft)}.pane-heading span{font-size:13px;font-weight:650;color:var(--text);letter-spacing:-.01em}.pane-heading small{font-size:12px;color:var(--muted)}.editor-wrap{min-height:0;flex:1;display:flex;position:relative;background:var(--surface)}.line-numbers{width:51px;padding:18px 10px;flex:0 0 auto;overflow:hidden;background:#f8f9fa;border-right:1px solid var(--line);color:#b1b7b4;font:11px/22px var(--mono);text-align:right;-webkit-user-select:none;user-select:none}.line-numbers span{display:block;height:22px}textarea{flex:1;min-width:0;min-height:0;overflow:auto;resize:none;border:0;outline:0;padding:18px 20px;background:var(--surface);color:var(--text);font:13px/22px var(--mono);-moz-tab-size:2;tab-size:2;caret-color:var(--green-deep)}textarea::placeholder{color:#b5bcb8}.result-content{min-height:0;flex:1;overflow:auto;background:#fdfdfd}.empty-state{height:100%;min-height:330px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--muted);padding:30px}.empty-state svg{color:#aebbb4;margin-bottom:15px}.empty-state strong{color:var(--text);font-size:17px;font-weight:650;letter-spacing:-.02em}.empty-state span{margin-top:8px;font-size:13px}.empty-state button{margin-top:22px;border:1px solid #c6e8dc;color:var(--green-deep);background:var(--green-soft);border-radius:10px;padding:9px 14px;display:flex;gap:7px;align-items:center;cursor:pointer;font-size:13px}.tree-root{padding:16px 16px 20px;min-width:max-content;font:12.5px/23px var(--mono)}.tree-row{min-height:23px;display:flex;align-items:baseline;padding-left:calc(var(--depth) * 20px);white-space:nowrap;border-radius:7px}.tree-spacer{width:15px;flex:0 0 15px}.tree-toggle{width:100%;border:0;background:transparent;text-align:left;font:inherit;padding-top:0;padding-right:12px;padding-bottom:0;cursor:pointer}.tree-toggle:hover{background:var(--surface-soft)}.tree-toggle svg{align-self:center;flex:0 0 auto;margin-right:1px;color:#9ba59f}.tree-close{color:#909b95}.tree-summary{color:var(--muted);margin:0 7px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:11px}.token-key{color:#7b4db3}.token-string{color:#c35f38}.token-number{color:#2285af}.token-boolean{color:#d58a16}.token-null{color:#9b52a8;font-style:italic}.token-punctuation{color:#7e8882}:root[data-theme=dark] .token-key{color:#bd91ed}:root[data-theme=dark] .token-string{color:#e5906e}:root[data-theme=dark] .token-number{color:#67b7d7}.record-list{padding:10px;display:grid;gap:8px}.record-card{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);box-shadow:0 2px 8px #1d242006}.record-meta{position:absolute;z-index:1;top:9px;right:10px;height:22px;display:flex;align-items:center;gap:6px;padding:0 7px;border:1px solid var(--line);border-radius:7px;background:#f7f8f9eb;color:var(--muted)}.record-meta span{color:var(--green-deep);font-size:10px;font-weight:700}.record-meta small{font-size:10px}.record-card .tree-root{padding:10px 86px 10px 12px}.error-list{padding:18px}.error-summary{display:flex;flex-direction:column;margin-bottom:14px}.error-summary strong{color:var(--red);font-size:14px}.error-summary span{color:var(--muted);font-size:11px;margin-top:3px}.error-card{width:100%;text-align:left;border:1px solid #f2caca;background:var(--red-soft);border-radius:12px;padding:13px 14px;display:grid;grid-template-columns:78px 1fr;align-items:start;gap:7px 11px;margin-bottom:10px;cursor:pointer}.error-line{color:var(--red);font-weight:700;font-size:11px}.error-card code{font:11px/1.5 var(--mono);color:var(--text);overflow-wrap:anywhere}.error-card small{grid-column:2;font:10px/1.5 var(--mono);color:var(--muted);overflow-wrap:anywhere}.partial-note{margin-top:12px;color:var(--green-deep);font-size:11px}.action-bar{min-height:52px;flex:0 0 52px;overflow:hidden;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 12px;gap:10px;background:var(--surface-soft)}.action-scroll{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none}.action-scroll::-webkit-scrollbar{display:none}.tool-button,.focus-button{height:36px;border:0;background:transparent;border-radius:9px;display:flex;align-items:center;gap:7px;padding:0 11px;font-size:13px;white-space:nowrap;cursor:pointer;color:#6d7570;transition:background-color .18s ease,color .18s ease,transform .18s ease}.tool-button:hover,.tool-button.active,.focus-button:hover{background:var(--green-soft);color:var(--green-deep)}.tool-button:active,.focus-button:active{transform:scale(.98)}.tool-button:disabled{opacity:.38;cursor:default;background:transparent}.focus-button{flex:0 0 auto;border-left:1px solid var(--line);border-radius:0 9px 9px 0;padding-left:17px}.focus-mode .workspace{max-width:none;padding:0}.focus-mode .workbench{border:0;box-shadow:none}.focus-mode .workbench{border-radius:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
