:root{color:#d4d5d4;font-synthesis:none;--muted:#777c7b;--line:#2a2d2c;--accent:#c6d5aa;--surface:#191b1c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#101112;font-family:Inter,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{color:#bfc4c1;cursor:pointer;background:#202322;border:1px solid #303433;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:33px;padding:7px 10px;font-size:12px;transition:background .15s,color .15s,transform .15s;display:inline-flex}button:hover{color:#fff;background:#303632}button:disabled{opacity:.35;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.primary{background:var(--accent);border-color:var(--accent);color:#20271a;font-weight:600}button.primary:hover{background:#dce9c2}button.icon-only{background:0 0;border-color:#0000;width:32px;padding:5px}.app{flex-direction:column;height:100dvh;min-height:620px;display:flex;overflow:hidden}header{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:22px;height:70px;padding:0 25px;display:flex}.brand{color:inherit;flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{color:var(--accent);font-size:38px;font-weight:200;line-height:1}.brand strong{letter-spacing:3px;font-size:19px;font-weight:500}.brand strong span{color:#8a928b;letter-spacing:1.8px;margin-top:3px;font-size:8px;display:block}.brand sup{color:#777f79;letter-spacing:0;align-self:flex-start;margin-top:5px;font-size:9px}.header-divider{background:var(--line);width:1px;height:22px}.project-title{color:#9ca29f;background:0 0;border:0;width:180px;min-width:0;font-size:12px}.header-actions{align-items:center;gap:7px;margin-left:auto;display:flex}.workspace{flex:1;min-height:0;display:flex}.tool-rail{border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;align-items:center;gap:10px;width:72px;padding:25px 0;display:flex}.tool-rail>button{color:#838b86;background:0 0;border-color:#0000;flex-direction:column;gap:6px;width:47px;height:56px}.tool-rail>button span{font-size:10px}.tool-rail>button.active{color:var(--accent);background:#242c25;border-color:#3b4938}.rail-bottom{margin-top:auto}.rail-bottom button{background:0 0;border:0}.stage{background:radial-gradient(#222525 0,#151718 64%,#111314 100%);flex-direction:column;flex:1;align-items:center;min-width:0;padding:30px 42px 25px;display:flex;position:relative;overflow:hidden}.stage-heading{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-bottom:26px;display:flex}.eyebrow{letter-spacing:2.2px;color:#8e988e;font-size:9px;font-weight:500}h1{letter-spacing:1px;color:#dedfdc;margin:10px 0 0;font-size:23px;font-weight:400}h1 span{color:var(--accent)}.upload-action{white-space:nowrap;background:0 0;border-color:#3a403c;padding:9px 12px;font-size:11px}.canvas-wrap{background:#151718;border:1px solid #3c403b;border-radius:3px;flex:1;width:100%;max-width:900px;min-height:0;position:relative;overflow:hidden;box-shadow:0 20px 60px #0003}.checker{background-color:#1a1c1d;background-image:linear-gradient(45deg,#1e2021 25%,#0000 25%),linear-gradient(-45deg,#1e2021 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#1e2021 75%),linear-gradient(-45deg,#0000 75%,#1e2021 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.canvas-wrap>canvas{touch-action:none;width:100%;height:100%;display:block}.canvas-wrap>canvas.source-preview{object-fit:contain;pointer-events:none;background:#171a1b;padding:10%;position:absolute;inset:0}.canvas-badge{color:#acb5aa;pointer-events:none;background:#161918d9;border:1px solid #384038;border-radius:30px;align-items:center;gap:8px;padding:6px 10px;font-size:10px;display:flex;position:absolute;top:15px;left:16px}.dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.badge-divider{background:#535b52;width:1px;height:9px}.stage-bottom{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:21px;display:flex}.view-controls{z-index:3;background:#171c17ed;border:1px solid #424c40;border-radius:7px;gap:3px;padding:3px;display:flex;position:absolute;top:15px;right:15px}.view-controls button{background:0 0;border:0;border-radius:4px;min-height:28px;padding:6px 9px;font-size:10px}.view-controls button[aria-pressed=true]{color:#d0e3bd;background:#344030}@media (width<=760px){.view-controls{top:auto;bottom:12px;right:12px}}.tool-hint{color:#939b95;align-items:center;gap:8px;font-size:11px;display:flex}.hint-line{background:#6d7e61;width:20px;height:1px}.play-controls{background:#1b1e1c;border:1px solid #353a36;border-radius:8px;gap:3px;padding:3px;display:flex}.play-controls button{background:0 0;border:0;min-height:29px;padding:5px 9px;font-size:10px}.properties{border-left:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#3f4540 transparent;background:#181a1b;flex-shrink:0;width:296px;padding:22px 20px 0;overflow:auto}.panel-heading{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.panel-heading h2{letter-spacing:.6px;margin:0;font-size:14px;font-weight:500}.source-card{background:#202322;border:1px solid #333934;border-radius:8px;align-items:center;gap:10px;margin-bottom:12px;padding:10px;display:flex}.source-card img,.source-card canvas{object-fit:cover;border-radius:4px;width:42px;height:48px}.source-card div{flex:1;min-width:0}.source-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500;display:block;overflow:hidden}.source-card span,.source-card small{color:#858f86;margin-top:4px;font-size:9px;display:block}section{border-bottom:1px solid var(--line);padding:18px 0}.section-title{align-items:center;gap:8px;margin-bottom:15px;display:flex}.section-title>span:first-child{color:#717c71;font-family:monospace;font-size:9px}.section-title h3{letter-spacing:.4px;margin:0;font-size:12px;font-weight:500}.section-title small,.subtle{color:#7e8c7d;margin-left:auto;font-size:9px}.text-button{color:#abbf9c;background:0 0;border:0;min-height:0;margin-left:auto;padding:0;font-size:9px}.segmented{background:#121514;border:1px solid #333b34;border-radius:7px;gap:2px;margin-bottom:14px;padding:3px;display:flex}.segmented button{color:#8a968c;background:0 0;border:0;flex:1;min-height:28px;padding:6px 2px;font-size:10px}.segmented button.selected{color:#d0dbca;background:#303931;box-shadow:0 1px 5px #0003}.slider{margin:12px 0;display:block}.slider>span{color:#a6afa8;justify-content:space-between;font-size:11px;display:flex}.slider small{color:#7d887e;font-size:9px}.slider-row{align-items:center;gap:12px;margin-top:7px;display:flex}.slider input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;height:3px}.slider input[type=number]{text-align:center;color:#c3cfc0;-moz-appearance:textfield;background:#1b201c;border:1px solid #3b423c;border-radius:4px;width:43px;height:25px;padding:1px;font-size:10px}.slider input::-webkit-inner-spin-button{display:none}.microcopy{color:#7f8a80;margin:12px 0 0;font-size:9px;line-height:1.8}.switch-row,.select-row,.color-row{color:#a6afa8;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;font-size:11px;display:flex}.switch-row input{accent-color:var(--accent);width:15px;height:15px}.select-row select,section>select{color:#c5cfc3;background:#222824;border:1px solid #3b443c;border-radius:5px;max-width:160px;padding:7px;font-size:10px}.color-row input{background:0 0;border:1px solid #465144;border-radius:3px;width:32px;height:22px;padding:1px}.expand-control{color:#9bab97;background:0 0;border:0;justify-content:space-between;width:100%;margin-top:18px;font-size:10px;display:flex}.button-row{gap:6px;margin-top:12px;display:flex}.button-row>*{flex:1;font-size:10px}.local-note{color:#a5b19f;gap:10px;padding:22px 0;font-size:10px;line-height:1.9;display:flex}.local-note .dot{margin-top:7px}.local-note small{color:#687767;font-size:9px}footer{border-top:1px solid var(--line);color:#737e77;background:#131515;flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;height:37px;padding:0 24px;font-size:10px;display:flex}footer>div{align-items:center;gap:8px;display:flex}footer strong{color:#b7c3b5;font-size:10px;font-weight:500}footer small{color:#727b72;font-size:9px}.footer-divider{background:#343a35;width:1px;height:10px;margin:0 6px}.diagnostics{font-size:9px;position:relative}.diagnostics summary{cursor:pointer}.diagnostics[open]{z-index:25;background:#1d2420;border:1px solid #465044;border-radius:8px;padding:15px;position:absolute;bottom:40px;right:10px}.save-status{margin-left:auto}.danger{color:#eeb5a7}.toast{z-index:30;background:#252e26ef;border:1px solid #4d5a45;border-radius:7px;align-items:center;gap:10px;max-width:min(600px,92vw);padding:10px 12px;font-size:11px;line-height:1.6;display:flex;position:fixed;top:80px;bottom:auto;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #0004}.toast.error{color:#f0c7ba;background:#3a2825;border-color:#77554e}.toast>button:last-child{background:0 0;border:0;min-height:20px;padding:0}.loading{color:#adbea5;z-index:15;background:#141916e8;flex-direction:column;justify-content:center;align-items:center;gap:18px;font-size:12px;display:flex;position:absolute;inset:0}.orbit-loader{border:1px solid #3b4c37;border-top-color:var(--accent);border-radius:50%;width:36px;height:36px;animation:1.2s linear infinite orbit}@keyframes orbit{to{transform:rotate(360deg)}}.modal-backdrop{z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060908a8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#1a201c;border:1px solid #424b40;border-radius:14px;width:430px;max-width:100%;max-height:88dvh;padding:32px;position:relative;overflow:auto;box-shadow:0 30px 100px #0008}.modal h2{letter-spacing:1px;margin:13px 0;font-size:25px;font-weight:400}.modal p{color:#96a291;font-size:11px;line-height:1.9}.modal a{color:var(--accent);font-size:11px}.modal-close{background:0 0;border:0;position:absolute;top:13px;right:13px}.wide{width:100%;margin-top:12px}.dimensions{align-items:center;gap:15px;margin:22px 0;display:flex}.dimensions label{color:#94a08f;flex:1;font-size:10px}.dimensions input,.preset-input input{color:#d0daca;background:#121714;border:1px solid #3e4a3a;border-radius:5px;width:100%;margin-top:7px;padding:9px;font-size:12px;display:block}.project-list{margin-top:22px}.project-list>div{border-top:1px solid #3b4538;flex-wrap:wrap;gap:6px;padding:12px 0;display:flex}.project-list>div>button:first-child{background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start}.project-list strong{font-size:12px}.project-list small{color:#85927e;font-size:9px;font-weight:400}.project-list select{background:#20291d;border:1px solid #3c4638;border-radius:4px;width:100%;padding:6px;font-size:10px}.shortcuts{color:#a1ae99;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0;font-size:11px;display:grid}.shortcuts dt{color:#d0d8ca}.shortcuts dd{margin:0}.mask-surface{z-index:5;background:#111512;flex-direction:column;justify-content:center;align-items:center;padding:25px;display:flex;position:absolute;inset:0}.mask-surface canvas{object-fit:contain;touch-action:none;cursor:crosshair;max-width:100%;max-height:calc(100% - 30px)}.mask-surface span{color:#aabb9c;margin-top:12px;font-size:10px}.mask-controls{border:1px solid #4d5d40;border-radius:7px;margin:10px 0;padding:15px}.depth-surface{padding:16px;right:42%}.canvas-wrap>canvas.depth-live-preview{z-index:6;pointer-events:none;border-left:1px solid #394238;width:40%;height:100%;position:absolute;top:0;right:0}.depth-preview-label{z-index:7;color:#bdc8b5;pointer-events:none;font-size:10px;position:absolute;top:12px;right:12px}.depth-edit-button{justify-content:center;align-items:center;gap:7px;width:100%;margin-top:10px;display:flex}@media (width<=760px){.depth-surface{bottom:37%;right:0}.canvas-wrap>canvas.depth-live-preview{border-top:1px solid #394238;border-left:0;width:100%;height:35%;top:auto;bottom:0}.depth-preview-label{top:auto;bottom:12px}}.frame-guide{pointer-events:none;z-index:4;border:1px dashed #d3dfb080;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.frame-guide span{color:#d3dfb0;background:#151d12bb;padding:4px;font-size:9px;position:absolute;top:0;left:0}.frame-16-9{aspect-ratio:16/9;top:50%;bottom:auto;transform:translateY(-50%)}.frame-9-16{aspect-ratio:9/16;width:40%;inset:5% auto 5% 50%;transform:translate(-50%)}.frame-1-1{aspect-ratio:1;width:60%;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.preset-input{align-items:end;gap:5px;display:flex}.preset-input input{min-width:0;font-size:10px}.preset{justify-content:space-between;width:100%;margin-top:6px;font-size:10px}.unsupported{text-align:center;background:#182018;flex-direction:column;justify-content:center;align-items:center;padding:35px;display:flex;position:absolute;inset:0}.unsupported h2{font-weight:400}.unsupported p{color:#abbba3;font-size:13px}.showcase .properties,.showcase .tool-rail,.showcase .stage-heading,.showcase .project-title,.showcase .header-actions>button:not([aria-label=返回编辑]){display:none}.showcase .stage{padding:25px}.showcase .stage-bottom{max-width:900px}.showcase .header-divider{display:none}input[type=range]{touch-action:pan-y}@media (width>=1600px){.properties{width:320px;padding-inline:25px}.stage{padding:35px 65px}h1{font-size:26px}}@media (width<=1100px){header{gap:12px;padding:0 15px}.project-title{width:100px}.stage{padding:25px 22px}.properties{width:260px;padding-inline:15px}h1{font-size:19px}.upload-action{font-size:10px}.tool-hint{max-width:130px;font-size:9px}.play-controls button{padding:5px 6px}.header-actions button>span{display:none}}@media (width<=760px){.app{height:auto;min-height:100dvh;overflow:visible}header{gap:8px;height:60px;padding:0 14px}.brand strong{font-size:16px}.brand-mark{font-size:30px}.brand sup,.project-title,.header-divider,.header-actions>button:not(.primary):not([aria-label=展示模式]):not([aria-label=返回编辑]){display:none}.brand strong span{font-size:7px}.header-actions{gap:2px}.header-actions .primary{min-height:30px;font-size:10px}.workspace{display:block;position:relative}.stage{height:calc(100dvh - 146px);min-height:420px;padding:22px 15px 15px}.stage-heading{margin-bottom:18px}h1{margin-top:6px;font-size:18px}.eyebrow{letter-spacing:1.5px;font-size:7px}.upload-action{padding:7px;font-size:9px}.stage-bottom{margin-top:14px}.tool-hint{max-width:none;font-size:9px}.tool-rail{z-index:10;background:#1c221d;border:0;border-top:1px solid #353e33;flex-direction:row;justify-content:center;gap:14px;width:100%;height:46px;padding:3px;display:flex;position:absolute;top:calc(100dvh - 146px)}.tool-rail>button{flex-direction:row;gap:6px;width:auto;min-width:75px;height:36px}.tool-rail>button[aria-label=构图],.tool-rail>button[aria-label=选择],.tool-rail>button[aria-label=保护],.rail-bottom{display:none}.properties{border-top:1px solid #353d31;border-left:0;width:100%;margin-top:46px;padding:20px}.panel-heading,.source-card{display:none}.properties>section{max-width:560px;margin:auto}.properties>section:first-of-type{padding-top:0}.desktop-advanced{display:none}.local-note{max-width:560px;margin:auto}.slider input[type=range]{height:6px}.slider input[type=number]{width:55px;height:30px;font-size:12px}.slider>span,.select-row,.switch-row{font-size:12px}.section-title h3{font-size:13px}.segmented button{height:34px;font-size:12px}.properties .local-note{padding-bottom:50px}footer{z-index:20;height:34px;padding:0 12px;position:fixed;bottom:0;left:0;right:0}footer .save-status{font-size:8px}footer small{display:none}.toast{font-size:10px;top:72px}.showcase .stage{height:calc(100dvh - 94px)}.showcase .properties{display:none}.showcase header{justify-content:space-between}.showcase .header-actions>button[aria-label=返回编辑]{display:inline-flex}.frame-guide{font-size:8px}.modal{padding:25px}.play-controls button{min-height:30px}.canvas-badge{padding:5px 8px;font-size:9px;top:10px;left:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset:disabled{opacity:.5}.recover-prompt{color:#b8c4ae;background:#222c21;border:1px solid #3e4c36;border-radius:6px;justify-content:space-between;align-items:center;gap:15px;width:100%;margin-bottom:12px;padding:8px 12px;font-size:10px;display:flex}.recover-prompt button{background:0 0;border:0;padding:4px;font-size:10px}.unsupported.has-preview{background:#1c251cee;border:1px solid #41523a;border-radius:8px;padding:12px;inset:auto 15px 15px}.unsupported.has-preview svg{display:none}.unsupported.has-preview h2{margin:4px;font-size:14px}.unsupported.has-preview p{margin:6px;font-size:10px}.slider>span{align-items:center;gap:5px;display:flex}.parameter-reset{color:var(--muted);background:0 0;border:0;margin-left:auto;padding:0 4px;font-size:15px}.presentation-controls details{border-top:1px solid var(--line);padding:14px 0}.presentation-controls summary{cursor:pointer;color:#d4d5d4;font-size:12px;list-style:none}.presentation-controls summary:before{content:"＋";color:var(--accent);margin-right:8px}.presentation-controls details[open] summary:before{content:"−"}.presentation-controls summary small{color:var(--muted);margin:4px 0 12px 20px;font-size:10px;display:block}.presentation-controls fieldset{gap:10px;display:grid}.presentation-controls textarea{resize:vertical;width:100%;font:inherit;min-height:64px;padding:8px}.presentation-controls input,.presentation-controls select,.presentation-controls textarea{background:var(--surface);color:#d4d5d4;border:1px solid var(--line);border-radius:5px;min-width:0}.presentation-controls button{padding:7px 9px;font-size:11px}.presentation-controls .button-row{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.inline-form,.bookmark-row{align-items:center;gap:6px;display:flex}.inline-form input,.bookmark-row button:first-child{flex:1;min-width:0}.inline-form input{width:100px;padding:7px}.recording-status{color:#d2dfb7;background:#263222;border-radius:6px;padding:10px;font-size:12px}.recording-status button{margin-top:6px;display:block}.presentation-controls .check-row{align-items:center;gap:8px;font-size:11px;display:flex}.card-entry{color:var(--accent);border:1px solid var(--line);white-space:nowrap;background:#20251e;border-radius:8px;align-items:center;gap:8px;margin-left:auto;padding:10px 12px;display:inline-flex}.stage-heading>.upload-action{margin-left:8px}.card-maker{padding:8px 4px}.modal.card-dialog{width:680px}.card-maker h2{margin:10px 0}.card-maker>p{color:#b3b8b0;line-height:1.7}.card-maker fieldset{border:0;min-width:0;margin:0;padding:0}.card-title{flex-direction:column;gap:10px;margin:16px 0;display:flex}.card-title input{color:#eceee9;border:1px solid var(--line);background:#191c1b;border-radius:8px;width:100%;padding:12px}.card-templates{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.card-templates button{text-align:left;border:1px solid var(--line);color:#d7dbd3;background:#171b1a;border-radius:10px;flex-direction:column;gap:10px;padding:16px 12px;line-height:1.6;display:flex}.card-templates button[aria-pressed=true]{background:#242d20;border-color:#a6bc82}.card-templates span{color:#aab0a6;font-size:12px}.card-templates small{color:#c4d4ad}.card-maker .select-row{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.card-maker select{color:#dedfdc;border:1px solid var(--line);background:#191c1b;border-radius:6px;max-width:72%;padding:8px}.card-maker .button-row{gap:10px;margin-top:16px;display:flex}.card-maker .button-row button{border:1px solid var(--line);border-radius:8px;flex:1;padding:12px}.card-maker .primary{color:#17200e;background:#cddcb0}.music-name{overflow-wrap:anywhere;color:#c3cbbb;line-height:1.6}.music-meter{background:#262c26;border-radius:6px;height:5px;margin-top:12px;overflow:hidden}.music-meter span{background:#cbdcaf;height:100%;transition:width .15s;display:block}.card-workbench{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding:16px 0;display:flex}.card-workbench span{color:#9da793;font-size:12px}@media (width<=700px){.card-templates{grid-template-columns:1fr}.card-templates button{gap:3px;padding:10px}.stage-heading{flex-wrap:wrap;gap:10px}.card-entry,.stage-heading>.upload-action{margin-left:0}}
