@font-face{font-family:Phosphor;src:url(/build/Phosphor-DtdjzkpE.woff2)format("woff2");font-display:block}.ph{-webkit-font-smoothing:antialiased;font-style:normal;font-weight:400;line-height:1;font-family:Phosphor!important}.ph.ph-image:before{content:""}.ph.ph-video-camera:before{content:""}.ph.ph-palette:before{content:""}.ph.ph-film-strip:before{content:""}.ph.ph-stack:before{content:""}.ph.ph-scan:before{content:""}.ph.ph-drop:before{content:""}.ph.ph-selection-background:before{content:""}.ph.ph-user-focus:before{content:""}.ph.ph-users:before{content:""}.ph.ph-terminal-window:before{content:""}.ph.ph-arrow-up-right:before{content:""}.ph.ph-sliders-horizontal:before{content:""}.ph.ph-x:before{content:""}.ph.ph-upload-simple:before{content:""}.ph.ph-info:before{content:""}.ph.ph-play:before{content:""}.ph.ph-download-simple:before{content:""}.ph.ph-caret-down:before{content:""}.ph.ph-arrow-right:before{content:""}.ph.ph-code:before{content:""}.ph.ph-copy:before{content:""}.ph.ph-caret-up:before{content:""}.ph.ph-magnifying-glass:before{content:""}.ph.ph-spinner:before{content:""}:root{--ink:#203b36;--muted:#68766f;--green:#456156;--orange:#b7623d;--line:#e1e7e1;--paper:#f7f8f5;--mono:ui-monospace,SFMono-Regular,Menlo,monospace}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}h1,h2,h3,p{margin:0}button,input,select{font:inherit}button,a,input,label,summary{touch-action:manipulation}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--orange);outline-offset:3px}[hidden]{display:none!important}.ph{vertical-align:middle;font-size:20px}.skip{z-index:20;background:#fff;padding:10px;position:fixed;top:-80px;left:16px}.skip:focus{top:8px}.topbar{border-bottom:1px solid var(--line);background:#fff}.header-main,.header-tools{min-width:0;max-width:1800px;margin:auto}.header-main{align-items:center;gap:20px;min-height:56px;padding:0 20px;display:flex}.brand{white-space:nowrap;font:700 22px Georgia,Songti SC,serif}.brand span{margin-left:8px;font-size:19px}.brand-line{color:var(--muted);border-left:1px solid var(--line);padding-left:20px;font-size:12px}.header-actions{flex-shrink:0;align-items:center;gap:18px;margin-left:auto;font-size:12px;display:flex}.header-actions a,.header-actions button{align-items:center;gap:6px;min-height:40px;display:flex}.header-actions b{font:10px var(--mono);background:#edf2eb;border-radius:3px;padding:2px 5px}#storage-status{color:var(--muted);font-size:11px}.header-tools{border-top:1px solid var(--line);align-items:flex-start;gap:16px;padding:6px 20px;display:flex}.nav-label{min-height:40px;color:var(--muted);flex-shrink:0;align-items:center;gap:7px;font-size:11px;display:flex}.nav-label span{font:10px var(--mono);color:var(--green)}#tool-nav{flex-wrap:wrap;flex:1;gap:4px;min-width:0;padding:2px;display:flex}.tool{text-align:left;border-radius:4px;flex-shrink:0;align-items:center;gap:7px;min-height:40px;padding:8px 10px;display:inline-flex}.tool .ph{flex-shrink:0;font-size:18px}.tool strong{white-space:nowrap;font-size:12px;font-weight:500}.tool:hover{background:#e5ebe2}.tool[aria-pressed=true]{background:var(--green);color:#fff}.app-shell{min-width:0;max-width:1800px;margin:auto}main{min-width:0;padding:18px 20px}.workspace-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.workspace-heading>div{align-items:baseline;gap:14px;min-width:0;display:flex}h1{font:600 25px/1.4 Songti SC,serif}.workspace-heading p{color:var(--muted);font-size:12px}.run-status{white-space:nowrap;color:var(--green);align-items:center;gap:6px;font-size:12px;display:flex}.run-status:before,.status-dot{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.run-status[data-state=error]{color:#ad432f}.run-status[data-state=running],.run-status[data-state=upload],.run-status[data-state=waiting],.run-status[data-state=queued]{color:#99601e}.run-status[data-state=cancelled]{color:var(--muted)}.editor-grid{grid-template-columns:minmax(0,1fr) 268px;align-items:start;gap:12px;display:grid}.canvas-panel,.settings-panel,.api-panel{border:1px solid var(--line);background:#fff;border-radius:6px;min-width:0;overflow:hidden}.canvas-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:5px 10px;display:flex}.segmented{gap:2px;display:flex}.segmented button{border-radius:4px;min-height:32px;padding:7px 10px;font-size:11px}.segmented button[aria-pressed=true]{color:var(--green);background:#ecf1e9}#canvas-state{color:var(--muted);font-size:10px}.image-canvas{aspect-ratio:1280/548;background:#e9eee5;width:100%;min-width:0;position:relative;overflow:hidden}.image-canvas>img,#original-layer,#original-layer img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}#original-layer{background:#e9eee5}.image-tag,.dimension{color:#fff;pointer-events:none;background:#20372dce;border-radius:3px;padding:4px 7px;font-size:10px;position:absolute}.original-tag{top:12px;left:12px}.result-tag{top:12px;right:12px}.dimension{font:10px var(--mono);bottom:12px}.original-dimension{left:12px}.result-dimension{right:12px}#divider{touch-action:none;cursor:ew-resize;background:#fff;width:2px;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 0 1px #26382935}#divider:before{content:"";position:absolute;inset:0 -17px}#divider span{background:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:22px;display:grid;position:absolute;top:46%;left:-17px;box-shadow:0 2px 8px #0002}#comparison-controls{background:#f5f8f2;align-items:center;gap:10px;padding:0 12px;font-size:10px;display:flex}#comparison-controls input{min-width:0;accent-color:var(--green);flex:1;height:30px}#comparison-controls label{white-space:nowrap}.canvas-footer{min-height:34px;color:var(--muted);align-items:center;gap:12px;padding:5px 12px;font-size:10px;display:flex}.canvas-footer>span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.canvas-footer button,.canvas-footer a{white-space:nowrap;min-height:30px;font-size:11px}.canvas-footer .ph{font-size:14px}.comparison-record{border-top:1px solid var(--line);font-size:10px}.comparison-record:has(#comparison-details[hidden]){display:none}.comparison-record>summary{cursor:pointer;color:var(--muted);padding:7px 12px}.comparison-details{background:#f6f8f3;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 12px;font-size:11px;display:grid}.comparison-details>div{align-content:start;gap:3px;min-width:0;display:grid}.comparison-details strong{font-size:12px}.comparison-details span,.comparison-details small{overflow-wrap:anywhere}.comparison-details small{color:var(--muted);font-size:10px}.comparison-details a{min-height:28px;text-decoration:underline}.comparison-binding{font:10px/1.6 var(--mono);color:var(--muted);overflow-wrap:anywhere;grid-column:1/-1}.video-canvas{background:#e9eee5;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;display:grid}.video-canvas.dual{grid-template-columns:repeat(2,minmax(0,1fr))}.video-canvas video{aspect-ratio:auto 1280/548;object-fit:contain;background:#17251f;width:100%;height:auto;display:block}.video-canvas span{margin-bottom:5px;font-size:11px;display:block}#video-timeline{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 12px;font-size:10px;display:flex}#video-time{min-width:80px;accent-color:var(--green);flex:1;height:28px}#video-time-label{font:10px var(--mono)}#pause-both{min-height:32px;font-size:11px}.empty-media{text-align:center;background:#f0f3eb;padding:70px 20px}.empty-media>.ph{color:#80927d;font-size:40px}.empty-media h2{margin:12px 0 6px;font-size:18px;font-weight:500}.empty-media p{color:var(--muted);font-size:12px}.settings-panel{padding:14px}.settings-panel h2{align-items:center;gap:8px;margin-bottom:12px;font-size:15px;font-weight:600;display:flex}.source-heading{justify-content:space-between;align-items:center;margin-bottom:5px;display:flex}.source-heading h3{font-size:12px;font-weight:500}.source-heading button{color:var(--green);min-height:32px;font-size:11px}.selected-file{border:1px solid var(--line);border-radius:4px;align-items:center;gap:8px;margin-bottom:8px;padding:8px;display:flex}.selected-file>img{object-fit:cover;border-radius:2px;width:40px;height:36px}.selected-file>div{flex:1;min-width:0}.selected-file strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;display:block;overflow:hidden}.selected-file small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.selected-file button{min-width:24px;min-height:32px;padding:0}.selected-file .ph{font-size:15px}.upload-zone{cursor:pointer;background:#fafbf8;border:1px dashed #b8c7b6;border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:40px;display:flex;position:relative}.upload-zone.dragging{border-color:var(--green);background:#e1ecd9}.upload-zone input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.upload-zone span{font-size:12px}.upload-zone small{color:var(--muted);margin-left:4px;font-size:10px}.fine-print{color:var(--muted);margin:6px 0 10px;font-size:10px;line-height:1.6}#parameters{margin-top:12px}#parameters>label{margin-bottom:6px;font-size:12px;display:block}.fixed-param,input[type=number],#parameters select{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#fff;border-radius:4px;width:100%;padding:7px 10px;font-size:16px}.fixed-param small{float:right;color:var(--muted);margin-top:4px;font-size:10px}.checkbox{align-items:center;gap:8px;min-height:36px;display:flex!important}.checkbox input{width:17px;height:17px;accent-color:var(--green)}.parameter-help{color:var(--muted);margin:7px 0 12px;font-size:10px}.parameter-help summary{cursor:pointer;align-items:center;min-height:28px;display:flex}.parameter-help summary:after{content:"＋";margin-left:auto}.parameter-help[open] summary:after{content:"−"}.parameter-help p{padding:4px 0 8px;font-size:11px;line-height:1.7}.primary,.download{border-radius:4px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;font-size:14px;font-weight:550;display:flex}.primary{background:var(--orange);color:#fff}.primary:hover{background:#9f512f}.download{color:var(--green);background:#f7f8f3;border:1px solid #d7ddcf;margin-top:7px}.download.disabled{display:none}.cancel{color:#a3442d;width:100%;min-height:34px;margin-top:7px;font-size:12px}.task-panel{background:#edf2e8;border:1px solid #dfe7d9;border-radius:5px;grid-column:1/-1;min-width:0;padding:8px 12px;font-size:11px}.task-panel>div:first-child{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.status-dot{color:var(--green)}#task-status{font-weight:550}#task-detail{color:var(--muted);overflow-wrap:anywhere}#task-debug{min-height:28px;margin-left:auto;font-size:11px}#task-debug .ph{font-size:13px}.task-panel.error{background:#fff0e9;border-color:#e5bdac}.task-panel.error .status-dot{color:#a7442b}.task-panel[data-state=running] .status-dot,.task-panel[data-state=upload] .status-dot{color:#98651f}#progress{width:100%;height:4px;accent-color:var(--green);margin-top:8px}#task-extra{overflow-wrap:anywhere}#task-extra>div{margin-top:10px}#task-extra button{background:var(--green);color:#fff;border-radius:4px;min-height:36px;padding:8px 12px}#task-extra input{max-width:100%;margin:8px 0}.detection{font:12px/1.8 var(--mono);white-space:pre-wrap}.mask-editor{gap:8px;display:grid}.mask-editor img{object-fit:contain;justify-self:start;max-width:100%;max-height:240px}.mask-editor button{justify-self:start}.mask-editor a{text-decoration:underline}.mask-canvas-wrap{width:100%;max-width:620px}.mask-canvas-wrap canvas{border:1px solid var(--line);cursor:crosshair;touch-action:none;background:#000;border-radius:4px;width:100%;height:auto;display:block}.mask-tools{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.mask-tools label{align-items:center;gap:6px;font-size:12px;display:flex}.mask-tools input[type=range]{width:150px}.mask-tools #mask-clear{color:var(--ink);background:#e7ece6}.api-panel{grid-column:1/-1}.panel-summary{cursor:pointer;align-items:center;gap:12px;padding:10px 14px;font-size:13px;list-style:none;display:flex}.panel-summary::-webkit-details-marker{display:none}.panel-summary>span{align-items:center;gap:8px;font-weight:550;display:flex}.panel-summary small{color:var(--muted);font-size:11px}.panel-summary>.ph{margin-left:auto;font-size:14px}.api-panel[open]>.panel-summary{border-bottom:1px solid var(--line)}.api-panel[open]>.panel-summary>.ph{transform:rotate(180deg)}.api-content{padding:14px}.api-grid{grid-template-columns:120px minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.api-steps{flex-direction:column;gap:5px;display:flex}.api-steps button{text-align:left;background:#f0f3ed;border-radius:4px;min-height:36px;padding:8px 10px;font-size:11px}.api-steps button[aria-pressed=true]{color:#fff;background:var(--green)}.code-panel{color:#dce7e3;background:#243339;border-radius:4px;min-width:0;padding:12px}.code-panel>div{border-bottom:1px solid #4d5b5d;justify-content:space-between;align-items:center;gap:8px;padding-bottom:8px;display:flex}.code-panel code{font:11px/1.6 var(--mono);overflow-wrap:anywhere}.code-panel button{color:#d4e2dc;min-height:28px}.code-panel .ph{font-size:16px}pre{font:11px/1.7 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0}#copy-status{font-size:10px}.params-panel{min-width:0}.params-panel h3{margin:2px 0 7px;font-size:12px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:11px}th{color:var(--muted);background:#f1f4ed;font-weight:500}th,td{border-bottom:1px solid var(--line);vertical-align:top;padding:7px}td:first-child{font-family:var(--mono)}#response-note{color:var(--muted);margin-top:9px;font-size:10px;line-height:1.7}.reference-panel{border-top:1px solid var(--line);min-width:0;margin-top:16px;padding-top:14px}.reference-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.reference-heading h3{font-size:13px;font-weight:550}.reference-heading a{font-size:11px}.reference-panel code{overflow-wrap:anywhere;font-size:11px}.file-rules{color:var(--muted);margin:10px 0;padding-left:18px;font-size:11px;line-height:1.7}.file-rules li{margin:5px 0}.source-chapter,.all-api{border-top:1px solid var(--line);margin-top:9px;padding-top:8px}.source-chapter summary,.all-api summary{cursor:pointer;min-height:32px;font-size:11px}.source-chapter pre{background:#f3f5ef;max-height:420px;padding:12px;overflow:auto}.all-api>a{font-size:11px;text-decoration:underline}#api-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0;display:grid}#api-catalog a{border:1px solid var(--line);gap:3px;padding:9px;font-size:11px;display:grid}#api-catalog small{overflow-wrap:anywhere;font-size:10px}.connection{color:var(--muted);max-width:430px;margin-top:10px;font-size:11px}.connection summary{cursor:pointer;align-items:center;gap:12px;min-height:32px;display:flex}.connection .ph{font-size:13px}.connection label{display:block}.connection input{border:1px solid var(--line);width:100%;font:11px var(--mono);border-radius:3px;margin:5px 0;padding:8px}.connection button{background:#edf2e9;width:100%;min-height:32px}#runtime{font:10px var(--mono);color:var(--muted);margin-top:9px;display:block}.logger{color:#b8cbd0;background:#182329;border:1px solid #293e46;border-radius:5px;grid-column:1/-1;min-width:0;overflow:hidden}.logger-heading{justify-content:space-between;align-items:center;min-height:40px;padding:5px 14px;display:flex}.logger-heading>div{align-items:center;gap:9px;display:flex}.logger h2{color:#e1ebeb;font-size:12px;font-weight:500}.logger-heading .ph{color:#87b5a7;font-size:17px}.stream-status{font:9px var(--mono);color:#a2dabb;border:1px solid #355d50;border-radius:3px;padding:1px 5px}.logger button{color:inherit;min-height:30px;font-size:10px}.logger-heading>button .ph{font-size:12px}.log-controls{border-top:1px solid #30404a;border-bottom:1px solid #30404a;flex-wrap:wrap;align-items:center;gap:10px;padding:7px 12px;display:flex}.log-filters{gap:3px;display:flex}.log-filters button{border-radius:3px;padding:5px 8px}.log-filters button[aria-pressed=true]{color:#e6f1ee;background:#334d54}.log-search{flex:1;align-items:center;gap:6px;min-width:140px;display:flex}.log-search .ph{font-size:14px}.log-search input{color:#d0e1e4;width:100%;min-width:0;font:10px var(--mono);background:0 0;border:0;padding:7px 0}.autoscroll{align-items:center;gap:4px;font-size:10px;display:flex}.autoscroll input{accent-color:#6bb09a}.log-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:260px;display:grid}.log-list{border-right:1px solid #30404a;overflow:auto}.log-row{text-align:left;border-bottom:1px solid #273840;grid-template-columns:62px 36px minmax(0,1fr) 32px 50px;align-items:center;gap:6px;width:100%;padding:7px 10px;display:grid;font:10px var(--mono)!important;min-height:34px!important}.log-row:hover,.log-row.selected{background:#263e46}.log-row .time{color:#93aab2}.log-row .method{color:#a8cbd0}.log-row .path{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.log-row .http{color:#a2dabb}.log-row.error .http,.log-row.error .path{color:#f39b86}.log-row .ms{text-align:right;color:#9db4bc}.log-empty{font:11px/1.8 var(--mono);color:#95b0b8;padding:22px 16px}.log-inspector{min-width:0;padding:10px 12px;overflow:auto}.log-inspector>div{font:10px var(--mono);justify-content:space-between;align-items:center;gap:8px;display:flex}.log-inspector strong{font-weight:400}.log-inspector pre{color:#b1d3c4;margin-top:7px;font-size:10px}.logger-footer{font:9px var(--mono);color:#8ca7b0;border-top:1px solid #30404a;justify-content:space-between;gap:10px;padding:7px 12px;display:flex}dialog{border:1px solid var(--line);width:calc(100% - 32px);max-width:780px;max-height:85dvh;color:var(--ink);background:#f9fbf6;border-radius:7px;padding:20px}dialog::backdrop{background:#18272077}.dialog-heading{justify-content:space-between;align-items:center;display:flex}.dialog-heading h2{font-size:20px}.dialog-heading p{color:var(--muted);margin-top:4px;font-size:11px}.dialog-heading button{min-width:40px;min-height:40px}.library-toolbar{justify-content:space-between;align-items:center;gap:10px;margin:16px 0 12px;display:flex}.library-toolbar span{font-size:12px}.library-toolbar input{border:1px solid var(--line);background:#fff;border-radius:4px;width:230px;max-width:65%;padding:8px 10px;font-size:12px}#library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.library-item{border:1px solid var(--line);text-align:left;background:#fff;border-radius:4px;padding:0;overflow:hidden}.library-item img,.library-item video{object-fit:cover;background:#e8ede6;width:100%;height:105px}.library-item>div{padding:9px}.library-item strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;display:block;overflow:hidden}.library-item small{color:var(--muted);margin-top:4px;font-size:10px;display:block}#toast{z-index:20;color:#fff;background:#233b31;border-radius:4px;max-width:85%;padding:10px 16px;font-size:12px;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 5px 24px #0002}@media (width<=1200px){.brand-line{display:none}.header-main{padding:0 14px}.header-tools{gap:12px;padding:6px 14px}main{padding:14px}.editor-grid{grid-template-columns:minmax(0,1fr) 248px;gap:10px}.workspace-heading>div{display:block}.workspace-heading p{margin-top:3px}.api-grid{grid-template-columns:110px minmax(0,1fr)}.params-panel{grid-column:1/-1}.canvas-toolbar{flex-wrap:wrap}#canvas-state{font-size:9px}}@media (width<=900px){.nav-label{display:none}#tool-nav{overscroll-behavior-x:contain;scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.tool{min-height:44px;padding:8px 10px}.log-grid{grid-template-columns:minmax(0,1fr);height:auto}.log-list{border-right:0;height:220px}.log-inspector{border-top:1px solid #30404a;min-height:130px;max-height:230px}.header-actions{gap:12px}}@media (width<=640px){.header-main{gap:8px;min-height:52px;padding:0 12px}.header-tools{padding:4px 10px}.brand{font-size:18px}.brand span{margin-left:4px;font-size:15px}.header-actions{gap:7px}.header-actions>a,#storage-status{display:none}.header-actions button{font-size:11px}.header-actions .ph{font-size:16px}main{padding:12px}.workspace-heading{margin-bottom:10px}h1{font-size:22px}.workspace-heading p{max-width:260px;font-size:11px}.run-status{font-size:11px}.editor-grid{grid-template-columns:minmax(0,1fr)}.settings-panel{padding:12px}.settings-panel h2{margin-bottom:6px}.canvas-toolbar{flex-wrap:nowrap}.segmented button{padding:7px 9px;font-size:10px}#canvas-state{text-align:right;max-width:98px}.image-tag,.dimension{font-size:9px}.source-heading button{min-height:36px}.upload-zone,.primary,.download{min-height:44px}.video-canvas span{font-size:10px}#task-detail{order:3;width:100%}.api-content{padding:10px}.api-grid{grid-template-columns:minmax(0,1fr)}.api-steps{flex-direction:row;overflow:auto}.api-steps button{flex-shrink:0}.panel-summary small{font-size:10px}.reference-heading{align-items:start}.reference-heading h3{font-size:12px}.reference-heading a{white-space:nowrap}.log-search{flex:auto;order:3;width:100%}.log-row{grid-template-columns:50px 30px minmax(0,1fr) 28px 40px;gap:5px;font-size:9px!important}.logger-footer>span:last-child{display:none}#library-grid,#api-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.library-item img,.library-item video{height:85px}.comparison-details{gap:8px}.comparison-details span{font-size:10px}.comparison-binding{font-size:9px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.task-panel:is([data-state=success],[data-state=error],[data-state=cancelled]) #progress{display:none}
