:root{--font-sans:"Microsoft YaHei","微软雅黑","PingFang SC","Source Han Sans SC","Noto Sans CJK SC","Heiti SC",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;--bg-app:#f7f5f3;--bg-primary:#ffffff;--bg-secondary:#efece9;--bg-tertiary:#e5e1dd;--text-primary:#1d1a17;--text-secondary:#5c554e;--text-tertiary:#918a82;--border:rgba(70,50,25,.11);--border-strong:rgba(70,50,25,.16);--scrollbar-thumb:rgba(70,50,25,.56);--scrollbar-thumb-hover:rgba(70,50,25,.74);--scrollbar-track:rgba(70,50,25,.05);--accent:#f2760f;--accent-weak:rgba(242,118,15,.10);--accent-strong:#e06a0a;--accent-ink:#fff;--done:#2e9e6b;--done-bg:rgba(46,158,107,.12);--running:#f2760f;--running-bg:rgba(242,118,15,.12);--waiting:#8b919a;--waiting-bg:rgba(139,145,154,.13);--failed:#d6584a;--failed-bg:rgba(214,88,74,.12);--stale:#bd8418;--stale-bg:rgba(189,132,24,.14);--failed-weak:var(--failed-bg);--stale-weak:var(--stale-bg);--danger:var(--failed);--shadow-card:0 1px 2px rgba(70,45,20,.05),0 7px 20px rgba(70,45,20,.08);--shadow-pop:0 8px 28px rgba(70,45,20,.14);--r-sm:6px;--r-md:8px;--r-lg:12px;--r-ctl:999px;--r-card:16px;--glow:none;--card-bg:linear-gradient(180deg,#ffffff,#fdfbf9);--card-top:rgba(255,255,255,.8);--card-hover-border:rgba(242,118,15,.42);--cta-bg:linear-gradient(180deg,#ff9033,#f2760f);--cta-shadow:0 4px 13px rgba(242,118,15,.26);--cta-inset:inset 0 1px 0 rgba(255,255,255,.42);--logo-mark:url(/brand/mark-dark.png);--logo-wordmark:url(/brand/wordmark-dark.png)}:root[data-theme=dark]{--bg-app:#0d0c0c;--bg-primary:#17161a;--bg-secondary:#1f1e22;--bg-tertiary:#29282d;--text-primary:#edeff2;--text-secondary:#9ea3ab;--text-tertiary:#696e76;--border:rgba(255,236,222,.08);--border-strong:rgba(255,236,222,.16);--scrollbar-thumb:rgba(255,240,228,.38);--scrollbar-thumb-hover:rgba(255,240,228,.58);--scrollbar-track:rgba(255,240,228,.04);--accent:#ff8524;--accent-weak:rgba(255,133,36,.14);--accent-strong:#ff9c46;--accent-ink:#1a0d02;--done:#48b486;--done-bg:rgba(72,180,134,.16);--running:#ff8524;--running-bg:rgba(255,133,36,.14);--glow:radial-gradient(760px 420px at 12% -10%,rgba(255,133,36,.10),transparent 58%),radial-gradient(620px 380px at 90% -8%,rgba(255,175,85,.05),transparent 56%);--waiting:#7c838b;--waiting-bg:rgba(124,131,139,.16);--failed:#e0705f;--failed-bg:rgba(224,112,95,.16);--stale:#d7a23c;--stale-bg:rgba(215,162,60,.16);--shadow-card:0 1px 2px rgba(0,0,0,.42),0 8px 22px rgba(0,0,0,.24);--shadow-pop:0 10px 34px rgba(0,0,0,.5);--card-bg:linear-gradient(180deg,rgba(255,250,245,.03),rgba(255,250,245,.004));--card-top:rgba(255,252,248,.06);--card-hover-border:rgba(255,150,60,.5);--cta-bg:linear-gradient(180deg,#ff9a3d,#ff8524 55%,#f5771b);--cta-shadow:0 5px 16px rgba(255,133,36,.3),0 1px 2px rgba(0,0,0,.35);--cta-inset:inset 0 1px 0 rgba(255,255,255,.3),inset 0 -1px 0 rgba(0,0,0,.14);--logo-mark:url(/brand/mark-white.png);--logo-wordmark:url(/brand/wordmark-white.png)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg-app);color:var(--text-primary);background-image:var(--glow);background-attachment:fixed;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--accent-weak)}button,input,select,textarea{font-family:inherit;color:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:8px;border:3px solid transparent;background-clip:padding-box;-webkit-transition:background .15s;transition:background .15s}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:8px}::-webkit-scrollbar-corner{background:transparent}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}}@keyframes mj-spin{to{transform:rotate(1turn)}}@keyframes mj-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes mj-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.hov-secondary{background:transparent;transition:background .15s}.hov-secondary:hover{background:var(--bg-secondary)}.btn-primary{background:var(--cta-bg);color:var(--accent-ink);border:none;box-shadow:var(--cta-shadow),var(--cta-inset);transition:filter .15s}.btn-primary:hover{filter:brightness(1.06)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-strong);transition:background .15s}.btn-secondary:hover{background:var(--bg-secondary)}.btn-danger{background:var(--failed);color:#fff;border:none;transition:filter .15s}.btn-danger:hover{filter:brightness(1.08)}.btn-danger,.btn-primary,.btn-secondary{border-radius:var(--r-ctl)!important}.qr-box>svg{width:100%;height:100%;display:block}button:disabled,button[aria-disabled=true]{cursor:not-allowed!important;opacity:.45;filter:grayscale(.35)}button:disabled:hover,button[aria-disabled=true]:hover{filter:grayscale(.35)}.field{background:var(--bg-primary);border:1px solid var(--border-strong);transition:border-color .15s;outline:none}.field:focus{border-color:var(--accent)}.proj-card{position:relative;background:var(--card-bg);border:1px solid var(--border);transition:border-color .15s,transform .15s,box-shadow .15s}.node-card:before,.proj-card:before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:var(--card-top);pointer-events:none;z-index:1}.proj-card:hover{border-color:var(--card-hover-border);transform:translateY(-2px)}.card-del{opacity:0;transition:opacity .15s,background .15s,color .15s}.proj-card:hover .card-del{opacity:1}.card-del:hover{background:var(--failed-bg);color:var(--failed)}.wv-card{transition:border-color .15s,transform .1s}.wv-card:hover{border-color:var(--accent);transform:translateY(-1px);background:#17191d}.wv-card:hover .wv-card-arrow,.wv-card:hover .wv-card-nm{color:var(--accent)}.card-edit{opacity:0;transition:opacity .15s,background .15s,color .15s}.proj-card:hover .card-edit{opacity:1}.card-edit:hover{background:var(--accent-weak);color:var(--accent)}.node-card{position:relative;background:var(--card-bg);border:1px solid var(--border);transition:border-color .12s,box-shadow .12s}.node-card:hover{border-color:var(--card-hover-border)}.hero-grad{color:var(--text-primary)}:root[data-theme=dark] .hero-grad{background:linear-gradient(102deg,#ffb26e,#ffe3c6 36%,#fff6ec 50%,#ffdcb6 64%,#ff9c46);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 0 22px rgba(255,150,60,.12))}:root[data-theme=dark] .node-card:hover,:root[data-theme=dark] .proj-card:hover{box-shadow:0 1px 2px rgba(0,0,0,.42),0 10px 28px rgba(0,0,0,.28),0 0 0 1px rgba(255,150,60,.1)}.asset-tr td{transition:background .12s}.asset-tr:hover td{background:var(--bg-secondary)}.anim-fade{animation:mj-fade .18s ease}.cv-hover{transition:background .12s}.cv-hover:hover{background:#2e2e33}.react-flow__handle.cv-handle{background:#4a4a52;border:2px solid #141416;transition:background .12s,box-shadow .12s,scale .12s}.react-flow__handle.cv-handle:hover,.react-flow__node:hover .react-flow__handle.cv-handle{background:#ff8524;box-shadow:0 0 0 4px rgba(255,133,36,.18);scale:1.34}.brand-mark,.brand-wordmark{background-repeat:no-repeat;background-position:50%;background-size:contain}.brand-mark{background-image:var(--logo-mark)}.brand-wordmark{background-image:var(--logo-wordmark)}.creditsCols{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);grid-gap:18px;gap:18px}@media (max-width:1100px){.creditsCols{grid-template-columns:minmax(0,1fr);overflow-y:auto}}.novelCols{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);grid-gap:16px;gap:16px}@media (max-width:1180px){.novelCols{grid-template-columns:minmax(0,1fr);overflow-y:auto}.novelCols>*{overflow-y:visible!important;min-height:auto!important}}.epSideCols{display:grid;grid-template-columns:240px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:stretch;min-height:0}@media (max-width:1100px){.epSideCols{grid-template-columns:minmax(0,1fr)}.epSideCols>aside{display:none!important}.epSideCols>div{overflow-y:visible!important;min-height:auto!important}.epAssetsBody{overflow-y:auto!important}}.appScroll:has(.epAssetsBody),.appScroll:has(.shotWorkBody){overflow-y:hidden}@media (max-width:1000px){.shotWorkBody{overflow-y:auto!important}.shotWorkCols{flex:0 0 auto!important;min-height:auto!important;align-items:flex-start!important}.shotWorkCols>*{flex:0 0 100%!important;width:100%!important;min-width:0!important}.shotWorkCols>*,.shotWorkCols>*>*{max-height:none!important;overflow-y:visible!important;min-height:auto!important}.shotWorkCols>*>*{flex:0 0 auto!important}.shotGridBody{overflow-y:auto!important}.shotGridRow2{flex-direction:column!important}.shotGridCard,.shotGridRow2{flex:0 0 auto!important;min-height:auto!important}.shotGridCard{overflow:visible!important}.shotGridRow{flex-wrap:wrap!important}.shotGridRow>*{flex:0 0 100%!important;width:100%!important;min-width:0!important}.shotGridRow>*,.shotGridRow>*>*{min-height:auto!important;overflow-y:visible!important}.shotGridRow>*>*{max-height:none!important}.shotVidBody{flex-direction:column!important;overflow-y:auto!important}.shotVidPrompt{overflow-y:visible!important}.shotVidRow{flex-wrap:wrap!important;align-items:flex-start!important}.shotVidBody>*,.shotVidRow,.shotVidRow>*{min-height:auto!important}.shotVidBody>*{flex:0 0 auto!important;width:100%!important;min-width:0!important;overflow-y:visible!important;border-left:none!important;padding-left:0!important}}.novelCols>:first-child{container-type:inline-size}@container (max-width: 560px){.novelAnalysisCols{grid-template-columns:minmax(0,1fr)!important}}