@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#152137;font-synthesis:none;text-rendering:optimizelegibility;--ink:#152137;--muted:#637083;--line:#dbe2e0;--paper:#fff;--navy:#172a46;--teal:#13a38b;--teal-dark:#0d7d6c;--amber:#e99b2e;--blue:#4a72e8;--shadow:0 18px 50px #192f3e17;background:#f2f5f4;font-family:Manrope,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 92% 2%,#13a38b1f,#0000 26rem),#f2f5f4;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,select{outline-offset:3px}button:focus-visible,select:focus-visible{outline:3px solid #4a72e86b}.app-shell{width:min(1480px,100% - 48px);margin:0 auto;padding:40px 0 28px}.hero{justify-content:space-between;align-items:flex-end;gap:40px;padding:10px 4px 34px;display:flex}.hero-copy{max-width:860px}.hero-kicker,.eyebrow{color:var(--teal-dark);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:.7rem;font-weight:800}.hero-kicker{align-items:center;gap:9px;display:flex}.hero-kicker span{background:var(--teal);width:23px;height:2px}.hero h1{max-width:820px;color:var(--navy);letter-spacing:-.055em;margin:0;font-size:clamp(1.8rem,3.2vw,3.4rem);font-weight:800;line-height:1.03}.hero-copy>p:last-child{max-width:720px;color:var(--muted);margin:20px 0 0;font-size:clamp(.95rem,1.5vw,1.12rem);line-height:1.75}.hero-state{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffbf;border:1px solid #15213717;border-radius:14px;flex:none;align-items:center;gap:13px;min-width:210px;padding:16px 19px;display:flex}.hero-state small,.hero-state strong{display:block}.hero-state small{color:var(--muted);margin-bottom:3px;font-size:.7rem}.hero-state strong{color:var(--navy);font-size:.88rem}.state-orb{background:#aeb7c1;border:3px solid #fff;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 3px #aeb7c138}.state-running{background:var(--amber);animation:1.1s infinite pulse;box-shadow:0 0 0 3px #e99b2e33}.state-complete{background:var(--teal);box-shadow:0 0 0 3px #13a38b33}.control-bar{border:1px solid var(--line);background:var(--paper);border-radius:16px 16px 0 0;justify-content:space-between;align-items:center;gap:18px;padding:15px;display:flex}.control-actions{gap:9px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:.82rem;font-weight:700;transition:all .15s;display:inline-flex}.button-primary{color:#fff;background:var(--navy)}.button-secondary{color:var(--navy);border-color:var(--line);background:#f8faf9}.button-ghost{color:var(--teal-dark);background:0 0}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #172a461f}.button:disabled{cursor:not-allowed;opacity:.42}.speed-control{color:var(--muted);align-items:center;gap:10px;font-size:.78rem;font-weight:700;display:flex}.speed-control select{border:1px solid var(--line);min-height:39px;color:var(--ink);background:#f8faf9;border-radius:8px;padding:0 32px 0 12px}.pipeline{border:solid var(--line);background:#f8faf9;border-width:0 1px 1px;border-radius:0 0 16px 16px;grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:17px 14px;list-style:none;display:grid}.pipeline li{opacity:.38;align-items:center;gap:8px;min-width:0;padding:0 15px;transition:all .24s;display:flex;position:relative}.pipeline li+li{border-left:1px solid var(--line)}.pipeline li.pipeline-active{opacity:1}.pipeline-number{color:#fff;background:#9ca8b4;border-radius:50%;flex:none;place-items:center;width:27px;height:27px;font-family:DM Mono,monospace;font-size:.65rem;display:grid}.pipeline-active .pipeline-number{background:var(--teal);box-shadow:0 0 0 4px #13a38b1c}.pipeline strong,.pipeline small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.pipeline strong{color:var(--navy);font-size:.68rem}.pipeline small{color:var(--muted);margin-top:3px;font-size:.6rem}.pipeline i{z-index:1;color:#98a3ae;font-style:normal;position:absolute;right:-5px}.workspace{border:1px solid var(--line);box-shadow:var(--shadow);background:#e9efed;border-radius:18px;margin-top:28px;padding:26px}.workspace-heading,.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.workspace-heading{margin-bottom:18px}.workspace-heading h2,.section-heading h2{color:var(--navy);letter-spacing:-.03em;margin:0;font-size:1.4rem}.workspace-heading>p,.section-heading>p{max-width:540px;color:var(--muted);text-align:right;margin:0;font-size:.79rem;line-height:1.6}.canvas-empty{text-align:center;background:#ffffff9e;border:1px dashed #bac5c1;border-radius:14px;align-content:center;place-items:center;min-height:340px;padding:40px;display:grid}.canvas-empty-icon{color:#fff;background:var(--teal);border-radius:16px;place-items:center;width:54px;height:54px;margin-bottom:15px;font-weight:800;display:grid}.canvas-empty h3{color:var(--navy);margin:0 0 8px}.canvas-empty p{color:var(--muted);margin:0;font-size:.86rem}.render-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-height:340px;display:grid}.render-card{background:var(--paper);border:1px solid #15213714;border-radius:14px;min-width:0;animation:.28s both card-in;overflow:hidden;box-shadow:0 12px 26px #243c450f}.markdown-card{grid-column:1/-1}.markdown-skeleton{min-height:220px;padding:26px 24px}.markdown-skeleton>p{color:var(--muted);text-align:center;margin:22px 0 0;font-size:.75rem}.markdown-body{color:#334158;min-height:220px;padding:26px 28px 30px;font-size:.86rem;line-height:1.8}.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--navy);letter-spacing:-.025em;margin:0 0 14px}.markdown-body p{margin:0 0 15px}.markdown-body ul{margin:4px 0;padding-left:22px}.markdown-body li::marker{color:var(--teal)}.markdown-incomplete{color:#69778a}.markdown-code{background:#15263c;border:1px solid #2c405b;border-radius:10px;margin:20px 0 0;overflow:hidden}.markdown-code.incomplete{border-color:#a7772c}.markdown-code figcaption{color:#9cadbe;background:#00000024;border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;margin:0;padding:8px 13px;font-family:DM Mono,monospace;font-size:.62rem;display:flex}.markdown-code figcaption strong{color:#f1b85f;font-weight:500}.markdown-code pre{color:#bfebe1;white-space:pre-wrap;margin:0;padding:16px;font-family:DM Mono,monospace;font-size:.72rem;line-height:1.7;overflow-x:auto}.embedded-component-shell{background:#f5f8f7;border:1px solid #dce5e2;border-radius:14px;margin:22px 0;padding:12px}.embedded-component-shell>.render-card{box-shadow:none}.embedded-stream-note{color:var(--muted);justify-content:center;align-items:center;gap:7px;font-family:DM Mono,monospace;font-size:.65rem;display:flex;margin:10px 0 0!important}.embedded-form{background:#fff;border:1px solid #15213717;border-radius:12px;overflow:hidden}.embedded-form-header{border-bottom:1px solid #edf0ef;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px 16px;display:flex}.embedded-form h4{color:var(--navy);margin:0;font-size:1rem}.form-skeleton{gap:14px;min-height:210px;padding:24px;display:grid}.fake-input{background:#f5f8f7;border:1px solid #e1e7e5;border-radius:8px;height:42px}.stream-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:24px;display:grid}.form-field{flex-direction:column;gap:7px;min-width:0;display:flex}.form-field label{color:var(--navy);font-size:.73rem;font-weight:700}.form-field label>span:first-of-type{color:#cc653b}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:42px;color:var(--ink);background:#fbfcfc;border:1px solid #d8e0de;border-radius:8px;padding:10px 12px}.form-field textarea{resize:vertical}.form-field small{color:#a26b21;font-size:.62rem}.embedded-submit{color:#fff;background:var(--teal-dark);cursor:pointer;border:0;border-radius:8px;align-self:end;min-height:42px;padding:0 18px;font-weight:700}.render-card-header{border-bottom:1px solid #edf0ef;justify-content:space-between;align-items:flex-start;gap:14px;min-height:89px;padding:20px 22px 15px;display:flex}.render-card h3{color:var(--navy);letter-spacing:-.02em;margin:0;font-size:1.05rem}.muted-title{color:#99a3ad;font-weight:600}.typing-cursor{vertical-align:-.12em;background:var(--teal);width:2px;height:1em;margin-left:3px;animation:.8s step-end infinite blink;display:inline-block}.status-badge{border:1px solid #0000;border-radius:999px;flex:none;align-items:center;min-height:25px;padding:0 9px;font-size:.62rem;font-weight:800;display:inline-flex}.status-PendingNode{color:#8a601b;background:#fff7e7;border-color:#efd39e}.status-SkeletonNode,.status-IncompleteNode{color:#3159bb;background:#eef3ff;border-color:#cdd9f9}.status-StableNode,.status-FinalNode{color:#087161;background:#e8f7f3;border-color:#bce3d9}.chart-skeleton,.chart-wrap{min-height:250px;padding:22px;position:relative}.chart-skeleton p{color:var(--muted);text-align:center;margin:18px 0 0;font-size:.76rem}.skeleton-block{gap:9px;display:grid}.skeleton-line{background:linear-gradient(90deg,#edf1f0 25%,#f8faf9 48%,#edf1f0 72%) 0 0/220% 100%;border-radius:999px;height:10px;animation:1.5s linear infinite shimmer;display:block}.skeleton-line-short{width:34%}.skeleton-line-medium{width:68%}.ghost-bars{border-bottom:1px solid #dfe6e3;justify-content:space-around;align-items:flex-end;height:125px;margin-top:20px;padding:0 6%;display:flex}.ghost-bars i{background:#e9eeec;border-radius:7px 7px 0 0;width:13%}.ghost-bars i:first-child{height:38%}.ghost-bars i:nth-child(2){height:62%}.ghost-bars i:nth-child(3){height:82%}.ghost-bars i:nth-child(4){height:54%}.chart-svg{width:100%;min-height:210px;overflow:visible}.chart-svg>line{stroke:#bdc9c6;stroke-width:1px}.chart-svg .grid-line{stroke:#edf1f0}.chart-bar-group rect{fill:var(--teal);transform-origin:bottom;animation:.32s both grow-bar}.chart-bar-group text{fill:var(--navy);text-anchor:middle;font-family:DM Mono,monospace;font-size:11px}.chart-bar-group .axis-label{fill:var(--muted)}.stream-note{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin:4px 0 0;font-size:.7rem;display:flex}.live-dot{background:var(--amber);border-radius:50%;width:7px;height:7px;animation:1s infinite pulse}.table-scroll{min-height:250px;padding:16px 20px 24px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.78rem}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid #e9edec;padding:13px 12px}th{color:#667486;background:#f7f9f8;font-size:.68rem}td{color:var(--ink)}.row-incomplete td{background:#fffaf1}.empty-cell{height:120px;color:var(--muted);text-align:center}.cell-pending{color:#a87528;min-width:54px;font-size:.66rem;display:inline-block}.section-heading{margin:44px 4px 18px}.debug-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;display:grid}.debug-card{border:1px solid var(--line);background:var(--paper);border-radius:14px;min-width:0;overflow:hidden;box-shadow:0 10px 26px #1c303d0b}.debug-card>header{border-bottom:1px solid #edf0ef;justify-content:space-between;align-items:flex-start;gap:15px;padding:17px 18px 12px;display:flex}.debug-card h3{color:var(--navy);margin:0;font-size:.94rem}.buffer-card{grid-column:span 7}.syntax-card,.recovery-card{grid-column:span 5}.tree-card{grid-column:span 7}.patches-card{grid-column:span 12}.counter{min-width:33px;min-height:25px;color:var(--muted);background:#edf1f0;border-radius:6px;place-items:center;padding:0 7px;font-family:DM Mono,monospace;font-size:.65rem;display:inline-grid}.progress-track{background:#edf1f0;height:3px}.progress-track i{background:var(--teal);height:100%;transition:width .18s;display:block}.token-buffer,.tree-code{color:#bfebe1;white-space:pre-wrap;overflow-wrap:anywhere;background:#15263c;min-height:264px;max-height:360px;margin:0;font-family:DM Mono,monospace;font-size:.68rem;line-height:1.75;overflow:auto}.token-buffer{padding:20px}.tree-code{padding:18px}.code-caret{vertical-align:-.18em;background:#61d7c2;width:7px;height:1.1em;animation:.8s step-end infinite blink;display:inline-block}.parser-light{background:var(--amber);border-radius:50%;width:10px;height:10px;margin-top:7px;box-shadow:0 0 0 4px #e99b2e29}.parser-light.ready{background:var(--teal);box-shadow:0 0 0 4px #13a38b29}.syntax-list{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.syntax-list div{background:#fff;padding:16px 18px}.syntax-list dt{color:var(--muted);font-size:.67rem}.syntax-list dd{color:var(--navy);margin:5px 0 0;font-family:DM Mono,monospace;font-size:.83rem;font-weight:500}.parser-message{border-left:3px solid var(--teal);background:#f1f8f6;flex-direction:column;gap:5px;margin:16px;padding:13px 14px;font-size:.72rem;display:flex}.parser-message span{color:var(--muted)}.recovery-list,.patch-list{max-height:324px;margin:0;list-style:none;overflow:auto}.recovery-list{padding:5px 18px 16px}.recovery-list li{border-bottom:1px solid #edf0ef;align-items:flex-start;gap:10px;padding:12px 0;display:flex}.recovery-list strong,.recovery-list small{display:block}.recovery-list strong{color:var(--navy);margin-bottom:4px;font-family:DM Mono,monospace;font-size:.68rem}.recovery-list small{color:var(--muted);font-size:.68rem;line-height:1.45}.empty-message{min-height:130px;color:var(--muted);text-align:center;margin:0;padding:35px 22px;font-size:.76rem;line-height:1.7}.patch-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding:8px 18px 18px;display:grid}.patch-list li{min-width:0;color:var(--muted);border-bottom:1px solid #edf0ef;align-items:center;gap:12px;padding:12px 0;font-size:.69rem;display:flex}.patch-list code{color:#3159bb;background:#eef3ff;border-radius:5px;flex:none;padding:5px 7px;font-size:.59rem}.patch-list span,.patch-list strong{display:block}.patch-list strong{color:var(--navy);margin-bottom:3px}footer{color:#7d8895;text-align:center;padding:28px 4px 0;font-size:.67rem}.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}@keyframes blink{50%{opacity:0}}@keyframes pulse{50%{opacity:.38}}@keyframes shimmer{to{background-position:-220% 0}}@keyframes card-in{0%{opacity:0;transform:translateY(8px)}}@keyframes grow-bar{0%{opacity:0;transform:scaleY(.12)}}@media (width<=1120px){.pipeline{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:16px}.pipeline li:nth-child(5){border-left:0}.render-stack{grid-template-columns:1fr}}@media (width<=820px){.app-shell{width:min(100% - 24px,720px);padding-top:22px}.hero,.control-bar,.workspace-heading,.section-heading{flex-direction:column;align-items:stretch}.hero{gap:24px}.hero-state{min-width:0}.control-bar{align-items:stretch}.speed-control{justify-content:space-between}.pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}.pipeline li:nth-child(odd){border-left:0}.workspace-heading>p,.section-heading>p{text-align:left}.buffer-card,.syntax-card,.recovery-card,.tree-card,.patches-card{grid-column:span 12}.patch-list{grid-template-columns:1fr}}@media (width<=520px){.control-actions{grid-template-columns:1fr 1fr;display:grid}.button-ghost{grid-column:span 2}.pipeline{grid-template-columns:1fr}.pipeline li,.pipeline li:nth-child(odd){border-left:0}.pipeline li+li{border-top:1px solid var(--line);padding-top:11px}.pipeline i{display:none}.workspace{padding:16px}.render-card-header{padding-inline:16px}.stream-form{grid-template-columns:1fr;padding:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
